野火IM是開源通用即時通訊組件,通過它用戶可以根據自己的需求來搭建IM通訊框架,從而使得用戶可以自己搭建便宜有效的IM通訊能力。為用戶提供了免費可控高效易用的IM組件,能夠更加容易地賦予客戶IM能力,使客戶可以快速的在自有產品上添加聊天功能。軟件分為社區版和專業版,社區辦是完全免費的,大家可以根據自己的需求來選擇。

軟件特色
使用了微信Mars連接庫,序列化使用protobuf,協議使用MQTT修改的私有協議,借鑒了微軟ActiveSync的思路。
做到不丟消息,完美地支持多端。另外針對安全性做了仔細的設計,鏈路層全程加密,本地數據庫加密。
提供了UI庫,大大減少開發者的工作量。
野火IM可能是世界上內核最像微信的一個IM(使用了微信的連接庫,使用了微信類似的協議)。
提供能力庫和UI庫,支持單聊、群聊、聊天室、頻道(類似與微信的公眾號)和機器人。
支持Server API。提供用戶信息、好友關系和群組信息托管。支持常見消息類型和自定義消息。
提供音視頻通話能力,支持音視頻會議功能。支持國產化系統,支持全平臺客戶端。

社區版與專業版區別
•社區版是開源的,問題的修復需要客戶自主解決或等待我們解決,但時間不能保障。專業版閉源,我們會快速修復問題。
•社區版是單機版,專業版支持集群。社區版雖然是單機,但性能也很高,使用高性能服務器,足夠滿足上百萬用戶;商業版除了通過集群部署能夠支撐比社區版更多用戶外,還能夠提供高可靠性。
•社區版使用的數據庫是mysql,我們已經做了分表處理,但還是需要按月刪除舊消息。專業版使用了mysql+mongodb,消息能保存更久,場景搭配也更合理。
•專業版附帶對象存儲服務,可以支持純私有化部署,所有的環節都經過加密處理。社區版依賴于七牛云存儲,文件上傳沒有加密。
•專業版支持Web、小程序接入,社區版不支持Web、小程序接入。
•專業版特有消息送達報告和消息閱讀報告功能,可以提高辦公場景下的體驗。
•專業版支持國產化系統,支持任意國產CPU+國產操作系統,支持達夢金倉等國產數據庫。
•社區版僅支持mysql數據庫,專業版還可以除了國產數據庫外的更多數據庫,比如sqlserver等。
•專業版進行了極致的性能優化,同樣用戶下所需要的硬件資源更少。
•專業版支持文件記錄功能,可以查詢/管理發送和接收到的文件,適用于辦公環境。
•專業版可以支持最大4GB的大文件傳輸。
•專業版支持音視頻高級版,可以提供更優質的音視頻服務,并且可以支持會議模式。
•專業版支持雙網環境,可以用在內外網同時使用的雙網環境。

專業版適用場景
如果有以下任意需求之一都可以考慮適用專業版:
•對安全性有較高要求。野火IM專業版對所有環節都有加密處理,安全無漏洞。
•用戶規模較大,或者有較多千人以上的群聊,對性能需求較高的場景。野火IM專業版具有更高的單機性能,而且可以水平擴展,提供高可能能力。
•對數據信息保密性要求較高,需要存私有化部署。野火IM專業版可以做到除了推送以外,完全脫離對外網的依賴。可以對推送服務適用防火墻白名單或者改為拉取等方案,確保您對信息萬無一失,適用于軍工企業和保密單位。
•需要國產化系統或者特殊的數據庫系統。
•需要支持Web或小程序時,只能選擇專業版。
•想要更好的音視頻通話體驗,需要在線會議功能。
•辦公場景下使用,文件管理和閱讀報告能提高辦公體驗。
技術支持規范
野火IM團隊沒有對應的人力和財力進行無條件的技術支持服務,但又不能讓客戶被阻礙無法順暢使用。因此我們必須折中找到一個平衡點,經歸納大概有以下三部分的技術支持,提供的技術支持情況如下:
•開放源碼的問題和BUG,理論上所有問題歸客戶自己來解決,客戶解決后可以給我們提PR。也可以給我們提issue,我們也會按照我們當前的人力情況來評估問題的輕重緩急并進行處理。社區版IM Server除外。
•閉源組件的問題和BUG,包括協議棧,音視頻SDK,PCSDK和專業版等,都歸我們來解決,問題提交給我們后,我們會無條件第一時間去解決。
•使用方法和其它咨詢問題,客戶需要自己來查閱文檔,搜索BBS和查看源代碼。如果無法找到對應問題描述,我們會第一時間負責補充說明。
•社區版IM Server強烈不建議客戶自己修改。如果沒有修改的情況下,如果發現問題可以報告給我們,我們會第一時間負責修復。如果修改了,我們就無法對您修改過的版本進行支持,購買過的SDK可能會有各種各樣的問題,我們不會再提供技術支持。“私自拆開不再保修”是各行各業的普遍做法。
環境依賴
mac系統
1.最新版本的Xcode
2.nodejs 10.16.X
3.npm 6.9.0
4.python 2.7.X
5.git
6.npm install -g node-gyp
windows系統
1.nodejs v10.16.x
2.python 2.7.X
3.git
4.npm 6.9.0
5.npm install --global --vs2015 windows-build-tools
6.npm install -g node-gyp
第5步安裝windows開發環境的安裝內容較多,如果網絡情況不好可能需要等較長時間,選擇早上網絡較好時安裝是個好的選擇
linux系統
1.nodejs10.16.X
2.python2.7X
3.git
常見問題
•如何調試?PC使用了Electron,內嵌Chrome瀏覽器,跟在瀏覽器上開發調試是一樣的。快捷鍵Ctrl +g(MAC下是CMD+g)打開開發者模式。
•打包時,如果一直顯示installing production dependencies platform=win32 arch=ia32 appDir=C:\
// windows
C:\Users\<你的用戶名>\.electron-gyp
// mac/linux
~/.electron-gyp
•打包時,如果下載electron版本超時,可以使用我們下載好的electron放到緩存目錄。
•windows上需要嚴格按照環境進行安裝,mac上環境比較簡單一些,安裝node和node-gyp就可以了 另外如果還有問題,請試試命令npm cache clean --force ,然后刪掉node_modules,再重新在非管理員權限下npm install
•有些殺毒軟件會對electron打包的軟件報病毒,詳情請參考electron報病毒 。安裝時可能被殺毒軟件限制安裝,這時候可以讓用戶使用綠色免安裝版(打包后release目錄下的unpacked目錄)。如果運行時報錯,請在殺毒軟件里加上例外。另外有條件的公司可以考慮去360官方或其他殺軟的官方提交檢測。
•ubuntu下,啟動時,若提示,A JavaScript error occurred in the main process Uncaught Exception:Error: Cannot open /opt/wildfirechat/resources/app.asar/marswrapper.node: Error: libdouble-conversion.so.1: cannot open shared object file: No such file or directory,可安裝libdouble-conversion1解決
•win平臺野火客戶端依賴Visual C++ Redistributable Package runtime。如果用戶PC上沒有安裝就需要安裝之后才能運行,請從微軟官方下載安裝 https://www.microsoft.com/zh-CN/download/details.aspx?id=48145 。注意這個安裝包是有32位/64位區分的,需要安裝對應架構的版本。
•MAC應用截屏時只能截屏空白桌面,無法截圖窗口內容。這是因為沒有通過mac系統的安全許可,在設置-》安全與隱私-》切換到隱私那個標簽-》屏幕錄制-》在野火IM PC應用前打勾,并重啟應用。
•使用cnpm后打包失敗,在某些平臺cnpm是會出現問題的,請使用npm。
•npm install 報Unexpected end of JSON input while parsing near...錯誤
如果常見問題4解決不了,可以嘗試 npm config set registry http://registry.npm.taobao.org/ ,然后在按常見問題4的步驟進行
標簽: 即時通訊
裝機必備軟件



網友評論