日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

从0搭建在线聊天室,只需4步!

發布時間:2025/3/8 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从0搭建在线聊天室,只需4步! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Vol. 5

聊天室不同于單聊和群聊,是一類集成了多種?IM 功能一體的大規模實時消息分發系統。在跨入新世紀的2000年,聊天室作為新型的即時通訊場景迅速在年輕人群體中火熱起來,“網易聊天室”“碧海銀沙”引領了當時語音聊天的熱潮。

時至今日,聊天室的勢頭也不減當年,廣泛運用于在線 KTV 、連麥開黑、主播 PK 、在線秀場等場景,還具備文本、表情、點贊、撒花等互動方式,架起溝通橋梁的同時,玩法也更加多變。

本期云信小課堂就教大家如何快速集成聊天室,并實現進出聊天室、簡單的消息收發、權限管理等功能。

視頻講解

8分鐘視頻,手把手教你接入

集成聊天室-基礎篇

?Step 1 初始化并進入聊天室

進入聊天室可以有兩種方式:以獨立模式進入聊天室和非獨立模式進入聊天室。

  • 獨立模式是指在 IM 處于未登錄的情況下,進入聊天室的方式,針對只需要聊天室功能的業務場景。請引入 NIM_Web_Chatroom_*.js ,并通過 Chatroom.getInstance({...}) 來初始化聊天室實例。

  • 非獨立模式是指先完成 IM 登錄,再進入聊天室的方式,針對需要 IM 和聊天室功能的業務場景。請引入 NIM_Web_SDK_*.js ,并請通過? SDK.NIM.getInstance({...}) 和 SDK.Chatroom.getInstance({...}) 來分別初始化 IM 和聊天室的實例。

這里為了方便演示,選擇獨立模式:

//引入SDK,import/require引入的方式可以參考官方文檔 <script src="NIM_Web_Chatroom_*.js">// 非匿名方式登錄(可以演示收發消息); //此接口為單例模式, 對于同一個賬號, 永遠返回同一份實例, 即只有第一次調用會初始化一個實例 var chatroom = Chatroom.getInstance({appKey: 'appKey', //在云信管理后臺查看應用的 appKeyaccount: 'account', //帳號,應用內唯一token: 'token', //通過服務器API創建IM賬號時獲取chatroomId: 'chatroomId', //聊天室 id,通過服務端API https://api.netease.im/nimserver/chatroom/create.action創建chatroomAddresses: [ //聊天室地址,通過服務端API https://api.netease.im/nimserver/chatroom/requestAddr.action 獲取'address1','address2'],onconnect: onChatroomConnect,onerror: onChatroomError,onwillreconnect: onChatroomWillReconnect,ondisconnect: onChatroomDisconnect,// 收到消息的回調, 會傳入消息數組,這個會是高頻使用的回調onmsgs: onChatroomMsgs }); function onChatroomConnect(obj) {console.log('進入聊天室', obj);// 連接建立后的回調,表示已成功進入聊天室,這個時候才能去發消息 } function onChatroomWillReconnect(obj) {// 此時說明 `SDK` 已經斷開連接, 請開發者在界面上提示用戶連接已斷開, 而且正在重新建立連接console.log('即將重連', obj); } function onChatroomDisconnect(error) {// 此時說明 `SDK` 處于斷開狀態, 開發者此時應該根據錯誤碼提示相應的錯誤信息, 并且跳轉到登錄頁面console.log('連接斷開', error);if (error) {switch (error.code) {// 賬號或者密碼錯誤, 請跳轉到登錄頁面并提示錯誤case 302:break;// 被踢, 請提示錯誤后跳轉到登錄頁面case 'kicked':break;default:break;}} } function onChatroomError(error, obj) {console.log('發生錯誤', error, obj); } function onChatroomMsgs(msgs) {console.log('收到聊天室消息', msgs); }

?Step 2 收發消息

進入聊天室成功后才能發送/接受消息:

//發送消息 var msg = chatroom.sendText({text: 'hello',done: sendChatroomMsgDone }); console.log('正在發送聊天室text消息, id=' + msg.idClient); function sendChatroomMsgDone(error, msg) {console.log('發送聊天室' + msg.type + '消息' + (!error?'成功':'失敗') + ', id=' + msg.idClient, error, msg);//發送成功后,聊天室其他人會收到onmsgs的回調; }//接收普通消息和通知消息,通過初始化時注冊的回調onmsgs來接收消息 function onChatroomMsgs(msgs) {console.log('收到聊天室消息', msgs); }

Step 3 權限管理

聊天室成員管理和聊天室信息查詢:

//設置管理員權限,只有聊天室創建者才有權限 var Manager = chatroom.markChatroomManager({account: 'account', //需要設置為管理員的accidisAdd: true,done: markChatroomManagerDone }); function markChatroomManagerDone(error, obj) {console.log('添加聊天室管理員' + (!error?'成功':'失敗'), error, obj.member); }//設置禁言,只有管理員和聊天室創建者有這個權限 var Gaglist = chatroom.markChatroomGaglist({account: 'account',//需要禁言的accidisAdd: true,done: markChatroomGaglistDone }); function markChatroomGaglistDone(error, obj) {console.log('添加聊天室禁言名單' + (!error?'成功':'失敗'), error, obj.member); }//設置黑名單,只有管理員和聊天室創建者有這個權限 var Blacklist = chatroom.markChatroomBlacklist({account: 'account', //需要拉黑的accidisAdd: true,done: markChatroomBlacklistDone }); function markChatroomBlacklistDone(error, obj) {console.log('添加聊天室黑名單' + (!error?'成功':'失敗'), error, obj.member); }//聊天室信息查詢,可以查詢到當前聊天室在線人數onlineMemberNum var roomInfo = chatroom.getChatroom({done: getChatroomDone }); function getChatroomDone(error, obj) {console.log('獲取聊天室信息' + (!error?'成功':'失敗'), error, obj); }

?Step 4 離開聊天室

離開或切換聊天室:

// 離開聊天室,在收到進入聊天室成功的回調后就可以調用disconnect來退出聊天室 chatroom.disconnect()// 切換聊天室,先斷開聊天室再更新token然后重新連接 chatroom.disconnect() //斷開聊天室 chatroom.setOptions({ // 更新 token,參數列表和格式跟Chatroom.getInstance保持一致token: 'newToken' }); chatroom.connect()?//?重新連接

集成聊天室-Demo篇

?Step 1 下載 Demo

Demo 鏈接:

https://github.com/netease-kit/NIM_Web_Demo,下載到本地,解壓后通過 IDE 打開,下載期間,率先獲取 APP_KEY ;

如何獲取 APP_KEY ?

如果已經是網易云信開發者,可以直接從網易云信的控制后臺獲取 APP_KEY ;

如果是第一次體驗,則需要前往網易云信官網(http://163.lu/f04GM3)注冊云信賬號-創建應用-點擊 App_Key 管理即可獲取相關信息。

?Step 2 運行 Demo

在?

NIM_Web_Demo-master\webdemo\imNew\js\config.js?

里面輸入對應環境的 APP_KEY ,然后在 Demo 根目錄下執行 npm install 和 node app命令。

?Step 3 體驗 Demo 功能

打開

http://127.0.0.1:8182/webdemo/imNew/index.html

體驗 Demo 功能(建議先登錄賬號);

Demo 中實現收發消息、禁言、拉黑等相關功能的代碼在 NIM_Web_Demo-master\webdemo\imNew\chatroom\src\js\link.js 和 room.js 里面,大家可以參考 API 文檔自行補充更多功能。

總結

以上就是網易云信聊天室解決方案 Demo Web 端接入流程的詳細解說,按照如上步驟就可以輕松完成聊天室的搭建。

任何系統的搭建都不是一蹴而就的,尤其是對于娛樂社交產品而言,自研搭建聊天室意味著較高的人力成本、時間成本和資金成本。而融合通信云服務專家網易云信所提供的聊天室解決方案,可實現快速上線,1天即可完成集成工作,輕松應對億級日活的高并發場景。網易云信也會繼續打磨底層技術能力、為開發者提供更多簡單集成,快速接入的音視頻和即時通訊解決方案。

如果感興趣或者有需求的開發者可以閱讀《技術干貨|網易云信大規模聊天室系統架構解析》,或點擊閱讀原文,免費試用。

云信小課堂推薦閱讀

第一期:如何實現音視頻通話

第二期:5步構建本土「Clubhouse」

第三期:5分鐘實現安卓端PK連麥場景

第四期:5分鐘快速實現iOS端PK連麥場景

關于網易云信

網易云信是集網易21年IM以及音視頻技術打造的融合通信云服務專家,穩定易用的通信與視頻 PaaS 平臺。

提供融合通信與視頻的核心能力與組件,包含 IM 即時通訊、5G 消息平臺、一鍵登錄、信令、短信與號碼隱私保護等通信服務,音視頻通話、直播、點播、互動直播與互動白板等音視頻服務,視頻會議等組件服務。

網易云信服務于網易云音樂、好未來、新東方、科大訊飛、南京銀行等各行各業客戶,已有100w+ 企業開發者接入云信服務。

總結

以上是生活随笔為你收集整理的从0搭建在线聊天室,只需4步!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 杨贵妃颤抖双乳呻吟求欢小说 | 深夜精品 | 亚洲永久精品ww.7491进入 | 999热精品视频 | a级黄色网址| 乱淫的女高中暑假调教h | 国语对白永久免费 | 寂寞d奶大胸少妇 | 日本一级免费视频 | 欧美亚洲久久 | 播金莲一级淫片aaaaaaa | 黄色av中文字幕 | 私密spa按摩按到高潮 | 中文欧美日韩 | 一卡二卡精品 | 日本韩国欧美中文字幕 | 成人国产精品视频 | 欧美在线日韩在线 | 黄网站色 | 精品视频无码一区二区三区 | 亚洲午夜免费视频 | 99热官网| 中文字幕一区久久 | 白石茉莉奈中文字幕在 | 女生和男生一起插插插 | 国产毛片视频 | 91视频黄 | 亚洲精品国产精品国自产网站按摩 | 色综合天天网 | 国产日韩欧美一区二区 | 国产成人在线视频网站 | 乱色熟女综合一区二区三区 | 免费在线观看亚洲 | 男人懂的网站 | 天天操天天操天天干 | 日韩一区二区三区免费在线观看 | 国产乱码一区二区三区在线观看 | 欧美另类第一页 | 久久久国产片 | 久久3p | 色七七视频 | 伊人手机在线视频 | www.youjizz国产| 熟女少妇内射日韩亚洲 | 欧美精品久久久久久久久 | eeuss一区| 91精品人妻一区二区三区蜜桃2 | 波多野结衣在线免费观看视频 | 国产免费观看一区 | avtt国产| 91偷拍精品一区二区三区 | 亚洲在线一区二区三区 | 久久久久久久久久久久久久久久久久久 | 欧美日韩高清丝袜 | 干综合网 | 黄频网站在线观看 | asian性开放少妇pics | 亚洲无毛| av鲁丝一区鲁丝二区鲁丝三区 | 91区国产| 张柏芝亚洲一区二区三区 | 日韩欧美亚洲国产精品字幕久久久 | 高清视频一区二区三区 | 免费久久久久久 | 成人爽站w47pw | 欧美日韩国产一级 | 精精国产 | 法国空姐 在线 | 日韩一区二区三区精品视频 | 亚色视频| 求个黄色网址 | 日韩毛片在线看 | 看国产一级片 | 性色视频 | 漂亮人妻被中出中文字幕 | 日本一级二级视频 | 日韩精品一区二区三 | 处女朱莉 | 白丝女仆被免费网站 | 无码人妻丰满熟妇奶水区码 | 国产麻豆免费观看 | 成人福利社 | 国产内射合集颜射 | 久久一热 | 国产精品自拍第一页 | 亚洲av毛片一区二二区三三区 | 综合久久亚洲 | 青青草97国产精品麻豆 | 日本www| 国产综合视频在线 | 狠狠干伊人 | 99热国内精品 | 中文字幕色片 | 国产卡一卡二卡三无线乱码新区 | 黄色在线免费观看网站 | 国产一级18片视频 | 欧美午夜精品 | 国产一区二区视频网站 | 亚洲综合国产精品 |