關於融雲在APIcloud中的整合

2021-07-16 15:25:12 字數 2413 閱讀 6331

個人理解的簡單的即時通訊的實現流程

1、a做出傳送訊息給b的動作

2、b收到a發來的訊息

3、通過聊天的視窗顯示出來

下面的步驟可以省略

4、b返回a乙個已經檢視的訊息

5、a收到b已經檢視的訊息通過聊天的視窗顯示出來

實現這個流程的基礎要素

1、ab雙方的融雲模組都應經開啟,並且網路連線沒有問題。

2、ab雙方都已經是融雲的使用者,取得融雲的token。

3、連線融雲的伺服器

在程式中的操作如下:

服務端:配置獲取融雲token的程式

客戶端:

1、配置融雲的引數

在 config.xml 中設定內容如下:

name="rongcloud2">

feature>

2、對融雲進行初始化

init(callback(ret, err))

var rong = api.require('rongcloud2');

rong.init(function

(ret, err));

});

返回值的**如下

//錯誤的返回碼

3、監聽連線狀態

setconnectionstatuslistener(callback(ret, err))

var rong = api.require('rongcloud2');

// 之前呼叫 init 的**省略

rong.setconnectionstatuslistener(function

(ret, err));

});// 之後呼叫 connect 的**省略

返回值如下

}

4、監聽所有訊息(根據文件規定是在connect之前呼叫)

所有接收到的訊息、通知、狀態都經由此處設定的***處理。包括私聊訊息、討論組訊息、群組訊息、聊天室訊息以及各種其他訊息、通知、狀態等

setonreceivemessagelistener(callback(ret, err))

var rong = api.require('rongcloud2');

// 之前呼叫 init 的**省略

rong.setonreceivemessagelistener(function

(ret, err) );

api.toast();

})// 之後呼叫 connect 的**省略

返回值特別注意下

,// 訊息內容

conversationtype: 'private',// 參見 會話型別 列舉

messagedirection: 'send',// 訊息方向:send 或者 receive

targetid: '55',// 這裡對應訊息傳送者的 userid

objectname: 'rc:txtmsg',// 訊息型別,參見 內建內容類訊息

sentstatus: 'sending',// 傳送狀態:sending, sent 或 failed

senderuserid: '55',// 傳送者 userid

messageid: 608,// 本地訊息 id

senttime: 1418971531533,// 傳送訊息的時間戳,從 1970 年 1 月 1 日 0 點 0 分 0 秒開始到現在的毫秒數

receivedtime: 0

// 收到訊息的時間戳,從 1970 年 1 月 1 日 0 點 0 分 0 秒開始到現在的毫秒數

},left: 0

// 剩餘未拉取的訊息數目

}}

5、連線融雲 im 伺服器

connect(, callback(ret, err))

這裡就需要傳遞引數了,引數只有乙個token,用於伺服器識別當前登入的賬號,並返回賬號的id

var rong = api.require('rongcloud2');

rong.init(function

(ret, err));

});rong.connect(,

function

(ret, err));

});

返回值

}

整合到這裡,通過寫死乙個傳送的函式。固定傳送給使用者b,這是登入使用者b的手機就會收到傳送的訊息。可以通過列印出來觀摩一下。至此融雲的整合基本完成一半了。

接下來我會寫一下怎麼把接收到的資料展示到聊天介面。

關於融雲 SDK 在使用 p8 證書的坎坷

新上的專案使用了融雲的 im sdk,但在專案整合 apns 推送的時候,嘗鮮使用了一下開發者後台的 p8 證書,此文記錄使用 p8 的辛酸史 想想那一堆證書 腦闊痛!起因是這樣的,在融雲開發者後台上傳了 p8 之後,發現 debug 環境,一直無法收到推送,在經過和融雲提供的推送文件進行嚴格的比對...

關於融雲 SDK 在使用 p8 證書的坎坷

新上的專案使用了融雲的 im sdk,但在專案整合 apns 推送的時候,嘗鮮使用了一下開發者後台的 p8 證書,此文記錄使用 p8 的辛酸史 想想那一堆證書 腦闊痛!起因是這樣的,在融雲開發者後台上傳了 p8 之後,發現 debug 環境,一直無法收到推送,在經過和融雲提供的推送文件進行嚴格的比對...

融雲im callkit 會話遇到的坑融雲研究

1.應用收不到訊息 下面是來自融雲的官方解釋 1.1首先,需要搞清楚兩個概念 push 訊息,後台訊息。收到這兩種訊息的時候,在終端上的表現形式是一樣的,都是在通知欄顯示一條通知。但實際上它們走的壓根就不是一條通道。它們的區別是 push 訊息是指呼叫 rongim.disconnect 斷開與融雲...