自製即時通訊App(取代Line)成功案例分享
- 撰文者:
- 2017/02/03 瀏覽數:16221
本組承接104年台南市政府工務局工程管理資訊系統,其中有一項需求是建置類似Line的即時通訊App功能,而針對此項功能,其無法直接引用市面已有的Line App 的原因有三,首先是基於安全理由,即時通訊主機必須建置在工務局機房中,如此配合通訊加密,無疑可將資訊做最完善保護及管理。其次,通訊內容並不像Line單純只是兩人間的溝通,是有公務性質,資料必須要留存運用統計等後續作業,所以必須要建置自己的通訊資料庫。第三點,通訊功能有客製化需求,如群組等都以各單位為限及人員位置追蹤等Line並無提供的功能。基於以上三點,是有自行開發建置類似Line通訊App的理由,而本組因緣際會承接此項專案,並圓滿達成任務,客戶使用的反應情況也極良好。有鑑於可能有與台南市政府類似狀況,相同需求的單位應該不少,所以特撰此文分享建置經驗以供參考。
為避免此文的讀者難以理解電腦生澀理論及太專業的電腦語法,本文將先展示此案的成果,然後再說明建置架構過程,最後再略述一下其技術上的重點部分。
首先,如圖一,使用者執行此App後會條列各單位及其成員,此為通訊通話的對象,此部分結合台南市政府員工資料庫,使用者無法任意添加以維安全。

圖一
然後,如圖二,選取你要通訊的對象,選取你要通訊方式,如同Line,此有分『通話』及『傳訊』兩種功能,通話還可分是否有視訊。

圖二
至於通話的功能,如圖三,有靜音擴音等功能,一如Line。而關於傳訊功能除一般文字交談功能外,如圖四,與Line一樣附加傳檔及傳圖片等功能,如圖五,可針對交談的對象,傳送各種可能訊息型式。

圖三

圖四

圖五
除了與Line相同的功能外,系統還擴充Line所沒有的功能,如線上使用者目前地理位置,如圖六,此系統的使用者目前位置可以透過PC端的地圖觀看,並可透過PC版的即時通訊軟體進行通話及傳訊。

圖六
以上即是自製通訊程式取代Line App的概要成果描述,以完成前述安全、自有資料庫及特殊需求的目的,並使這項原本看來似乎頗為困難遙不可及的任務獲得完美的成果,讓Line功能與個別的需求並存,魚與熊掌兼得。
以下接著說明製作過程,使有興趣的讀者能有一參考方向。先談通訊系統硬體架構,如圖七,最左側的SIP SERVER 即是我們要建置的主機,SIP 為 Session Initiation Protocol的縮寫,其是一種通話用的通訊協定,ATA 是一種橋接器可將數位訊號轉類比,簡單說就是除手機互撥免費外,也可撥到一般電話機。PBX是電話交換機,如同一般類比式的電話交換機,PBX用的是網路IP。

圖七
上圖乍看複雜,其實我們要建置的即是最左邊的SIP SERVER,要撰寫的即是SIP SERVER SDK程式,其他都只是硬體。這部分完成後,手機端或PC端只要撰寫與之交談的介面,再加上操作畫面即可,細節不看,好像也不如想像中困難。
上面的架構嚴格說來是『通話』用,我們還有『傳訊』的功能沒講,這部分其實與通話硬體架構完全無關,傳訊走的是一般傳統的網際網路HTTP PORT 80通訊協定,這部份程式實作上其實也是完全類似PC電腦網頁的AP般,所以上硬體架構圖最左邊的主機應該是兩台,一個服務通話,一個服務傳訊,雖然此兩個服務可擺在一台主機中。
最後講一下開發工具供有意建置的讀者參考,首先是開發平台,主機我們用的是Visual Studio,使用VC++ 開發,資料庫使用的是 MS SQL SERVER,『通話』功能用的SDK,因考慮到將來還是有許多狀況需要自行解決,所以仍採自行開發,讀者其實可以採用市面上免費或付費SDK,以加快開發期程。至於通訊主機則因是一般網際網路服務程式,完全可以自行開發,此處省略。
關於手機Android的部份,用的是Eclipse Java,蘋果手機用的是iOS Xcode。
在通訊還有一些技術上的『眉角』,略提一下,如Client端保持不斷線的責任,Server端則一段時間後自動斷線,以防止Client端關機等不正常使用。又如Server端應採『送後不理』,以防止多人使用下整個咬死。諸如此類的防呆防不正常使用的機制,這在此多人複雜使用下非常重要。
Line App 多年來受全球客戶喜愛,其功能堪稱完美,但因其強調方便使用,造成其在某些作業上有安全疑慮,此尤其在公部門的使用上常有資訊外洩的問題發生,但通訊日漸發達的今天,不管是通話或傳訊又對業務極有助益,綜合起來建置自有的通訊系統極有意義,本文即是對於有此考慮的讀者注入一劑強心針,讓本有意建置但想到Line Skype 等大公司才能開發,因此而望之卻步,透過本文可發現並非如此,相信讀者只要按本文所展示及提點的方式,必定可以如同台南市政府一般,在一年內即可建置及使用。撰寫此文是因筆者相信光一個『安全』的理由,未來如同我們這樣建置,必定比比皆是。
數位轉型卓越經營服務團
以「因應數位轉型需求與融合企業經管理論」為基礎,發揮數位盤點、系統整合、顧客體驗、商模再造、資源引導、產學鏈結及卓越營運之核心能量,協助企業規劃由諮詢診斷(改觀念)、教育訓練(育人才)、顧問輔導(伴輔導)、建置導入(導系統)、平台租賃(建平台)等五個構面展開。主要服務範疇提供包括知識數位化、經管數位化、製造效能優化、服務體驗優化、商業模式轉型、產學資源介接等數位轉型服務。
BC1職場與職務之認知與溝通協調 - 【關鍵就業力】 - 第一梯
上課時間 2026/06/24 ~ 2026/06/24
防火管理人訓練複訓班 - (臺南班)
上課時間 2026/05/27 ~ 2026/05/27
職業安全衛生管理人員安全衛生在職教育訓練班 - 日班 - 具職安員.安全師.衛生師結業證書或甲.乙技術士證照 - 請勿先繳款
上課時間 2026/11/17 ~ 2026/11/18
超越競爭的賽局理論與實務應用 - <決策力>
上課時間 2026/11/11 ~ 2026/11/11
急救人員安全衛生在職教育訓練 - 每3年需回訓3小時 - 報名時請上傳初訓證書掃描檔 - 講師:方政千
上課時間 2026/06/17 ~ 2026/06/17
新版AIAG-VDA FMEA:2019 失效模式分析研習班
上課時間 2026/04/16 ~ 2026/04/16
生成式AI輔助工作說明書與職能建置應用
上課時間 2026/09/17 ~ 2026/09/17
AI x Excel最強整合術:效率爆發的工作秘技 - 實體上課與視訊同步 - 請攜帶電腦 - 假日班
上課時間 2026/06/13 ~ 2026/06/13
績效目標管理
上課時間 2026/09/08 ~ 2026/09/08
採購 × 合約管理的 AI 導航圖 - 生命週期的全流程應用 - 需攜帶設備演練
上課時間 2026/05/27 ~ 2026/05/27