即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

介紹

OpenIM:由前微信技術專家打造的基於 Go 實現的即時通訊(IM)開源專案,包括IM服務端和客戶端SDK。開發者私有化部署,基於SDK二次開發,可以輕鬆替代第三方IM雲服務,打造具備聊天、社交功能的app。無論是開發同城交友、企業辦公亦或是當今最熱門的元宇宙,還是在應用中整合IM功能,都非常便捷。OpenIM程式碼100%開源,開源協議Apache-2。0 License任何企業和個人都可以免費使用(包括商用)。

請各位看官多多支援,轉發和宣傳,助力OpenIM成為開源IM的No1

web端體驗地址

http://121。37。25。71:23232/

專案成果

即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

截止到今天,github star數量達到6k,開源IM專案的領跑者

開發者文件:https://doc。rentsoft。cn/

github地址:https://github。com/OpenIMSDK/Open-IM-Server

OpenIM不是個人兼職專案, 是商業化全職團隊運作,有針對性VIP客戶的收費服務,保證專案長期健康發展。

本週重點特性

客戶端SDK v1。0。7

特性

類別

pc web demo第二版釋出,多端同步,群組功能完善

新特性

支援免打擾功能:設定接收訊息不提醒;設定不接收訊息

新特性

修復bug:同一個手機重複登入和踢出

bug修復

服務端 v1。0。6

特性

類別

支援免打擾功能:設定接收訊息不提醒;設定不接收訊息

新特性

支援iOS推送

新特性

docker已更新,請拉取最新映象,docker部署常見問題總結分析和解決辦法 見文件: https://doc。rentsoft。cn/demo/server_deploy/docker_singe。html

OpenIM每週都會迭代釋出新版本,主要針對bug修復和系統最佳化,特別值得注意的是,版本號的第一位數字代表大版本,一般是做了協議改造升級,伺服器和客戶端兩者必須保持大版本一致。

分支說明:

(1)dev:外部開發者在此分支上提交pr;

(2)tuoyun:OpenIM內部專用;

(3)main:最新可用分支;

服務端一鍵部署

docker 安裝、啟動

安裝

curl -sSL https://get。daocloud。io/docker | sh

或者

curl -fsSL https://get。docker。com | bash -s docker ——mirror Aliyun

啟動、停止

重啟docker服務

sudo service docker restart

關閉docker

sudo service docker stop

docker-compose安裝

sudo curl -L “https://github。com/docker/compose/releases/download/1。24。1/docker-compose-$(uname -s)-$(uname -m)” -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose

部署

如果確定是首次安裝,可以直接採用如下命令完成1-4步

git clone https://github。com/OpenIMSDK/Open-IM-Server。git ——recursive; cd Open-IM-Server/script ; chmod +x *。sh ; 。/env_check。sh;cd 。。 ; docker-compose up -d;cd script ; 。/docker_check_service。sh

即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

埠開放

需要開通外網埠(TCP):17778(訊息,必須開),10000(API,必須開), 30000(jssdk專用,需要才開), 42233 (簡訊驗證碼埠,需要才開),25(郵箱驗證碼埠,需要才開)

如果check成功,但是埠連線不上,一般是埠開放或者防火牆問題導致。

當然也可以不開通以上埠,而透過nginx做轉發。

web端一鍵部署

環境要求

node 14。17。5+

開發測試

拉取專案

git clone https://github。com/OpenIMSDK/Open-IM-PC-Web-Demo。git

安裝依賴

npm install

修改配置

配置檔案位置為:

src/config/index.ts

專案預設配置地址為OpenIM測試伺服器地址,若您已部署OpenIM-Server在自己的伺服器上,需要修改為對應地址,否則可跳過此步驟。專案預設使用騰訊雲COS服務,可根據需求自行更改檔案儲存服務。

// 註冊服務地址

export

const

AXIOSURL

=

“http://47。112。160。66:42233”

// axios請求超時時間

export

const

AXIOSTIMEOUT

=

60000

// OpenIM-Server JS SDK port

export

const

IMURL

=

“ws://47。112。160。66:30000”

// 獲取cos臨時金鑰地址

export

const

COSAUTHORIZATIONURL

=

“http://47。112。160。66:10000”

// cos bucket

export

const

COSBUCKET

=

“echat-1302656840”

// cos region

export

const

COSREGION

=

“ap-chengdu”

// cos 縮圖格式配置

export

const

PICMESSAGETHUMOPTION

=

“?imageView2/1/w/200/h/200/rq/80”

Web執行除錯

預設執行埠為3000

npm run start:renderer

打包部署

打包生成檔案在專案根目錄build資料夾下,將資料夾內容上傳伺服器部署即可。

npm run build:renderer

重點特性展示

即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

關於我們

託雲資訊科技(成都)有限公司

我們致力於透過開源模式,為全球企業/開發者提供簡單、易用、高效的IM服務和實時音影片通訊能力,幫助開發者降低專案的開發成本,並讓開發者掌控業務的核心資料。

開源的價值

從公司成立之初就將“開源”作為核心戰略來推進,開源充分體現了自由、平等、分享的網際網路精神。

全球範圍頻繁發生的資料洩露、勒索病毒、隱私濫用等安全事件一次次給企業敲響警鐘,企業管理者對資料資產的價值、資料安全的重要性有了更清晰的認識,資料安全成就企業核心價值。

IM作為核心業務資料,安全的重要性毋庸置疑,OpenIM開源以及私有化部署讓企業能更放心使用。

即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

我們的團隊

創始團隊來自前微信技術團隊,我們致力於用開源技術創造服務價值,打造輕量級、高可用的IM架構,開發者只需簡單呼叫 SDK,即可在應用內構建多種即時通訊及實時音影片互動場景。

OpenIM邀請全球技術極客參與技術最佳化,讓開發者輕鬆整合,讓每一個應用都具備IM功能,同時考慮企業的接入成本、伺服器資源以及最重要的資料安全性和私密性。

即時通訊(IM)開源專案OpenIM本週版本釋出- v1.0.7web端一鍵部署

OpenIM有什麼特色

(1) 開源永久免費

程式碼全部開源,永久免費,包括客戶端和服務端,由前微信技術專家打造,並邀請全球技術極客參與建設。開源協議Apache-2。0 License任何企業和個人都可以免費使用(包括商用),但必須在應用啟動頁加上 :由OpenIM提供技術支援

(2) 易擴充套件

服務端採用golang實現,首創“一切皆訊息”的通訊模型,輕鬆實現自定義訊息和擴充套件功能。,無論是已讀回執,群通知等都採用此模型,複用訊息通道。

(3) 專業技術服務

每個技術人員都承擔技術客服的角色,強化社群,及時解答。搭建微信社群,telegram群組,github上issue和社群互動,提升問題解決效率。

(4) 高效能

借鑑並最佳化通訊架構,抽象線上訊息、離線訊息、歷史訊息儲存模型,分層治理架構,支援叢集部署,平行擴充套件。

(5) 安全

程式碼全部開源,服務端私有化部署,資料自我掌控。資料安全大於天,中華人民共和國個人資訊保護法有效保護使用者資訊不受侵犯。

(6) 全平臺支援

sdk透過golang實現,透過gomobile生成 aar和framework,統一架構,支援Andorid、iOS原生開發,支援Flutter、uni-app跨端開發,支援小程式、React等所有主流web前端技術框架, PC支援Electron,Flutter、iOS、uni-app、pc已有成熟demo可以體驗。

開發者可以使用OpenIM替代市場上各種IM雲服務,除了降低成本,還賦予開發者更多的靈活性和自主性。我們透過開源的方式,邀請全球技術極客來參與OpenIM建設,使每位開發者都能免費使用最優秀的IM元件,讓每個app都具備即時通訊能力。