Class Imservice Constructors
参数说明: * `observer` 回调对象(可选)
Set the current user's access token
属性名:String accessToken功能:在调用start之前必须要设置用户的accessToken,token是由第三方应用服务器调用IM服务器RestAPI所得。
Start accepting messages
方法名:start功能:用户登陆成功后,连接im服务器来接受在线消息。返回值:无返回值
Stop accepting messages
方法名:stop功能:用户注销后,断开和im服务器的连接,从而终止接受在线消息。返回值:无返回值
Send Message
方法名: sendPeerMessage功能:发送im消息,如果当前连接处于断开状态,消息会发送失败, 函数返回YES,也不能表明服务器已经接收到消息。参数说明: *msg 消息对象返回值:bool返回值
Imservice observeronconnectstate
功能:连接状态变更通知参数说明: * state 连接状态
News
方法名: handlePeerMessage功能:接受到一条im消息参数说明: *msg 消息对象返回值:无返回值
Message ack
方法名: handleMessageACK功能:服务器对收到消息的ack,此时这条消息才能标志为发送成功参数说明: *msgLocalID(`Number`) 消息的本地ID *uid(`Number`) 消息接受者返回值:无返回值
Message recipient Ack
方法名: handleMessageRemoteACK功能:消息已经被对端接收到。参数说明: *msgLocalID(`Number`) 消息的本地ID *uid(`Number`) 消息接受者返回值:无返回值
Message failed to send
方法名: handleMessageFailure功能:消息发出后,未收到服务器的ack,在和服务器的连接断开后,会通知消息发送失败。参数说明: *msgLocalID(`Number`) 消息的本地ID *uid(`Number`) 消息接受者返回值:无返回值
Example
<script src= "/engine.io.js" ></script><script src= "/json2.js" ></script><script src= "/ Im.js "></script><script>varObserver ={handlepeermessage:function(msg) {Console.log ("MSG sender:", Msg.sender, "Receiver:", Msg.receiver, "content:", Msg.content, "timestamp:", Msg.timestamp)}, Handlemessageack:function(Msglocalid, receiver) {Console.log ("Message ack Local ID:", msglocalid, "Receiver:", Receiver)}, Handlemessagefailure:function(Msglocalid, receiver) {Console.log ("Message fail Local ID:", msglocalid, "Receiver:", Receiver)}, Onconnectstate:function(state) {if(state = =imservice.state_connected) {Console.log ("Im Connected"); } Else if(state = =imservice.state_connecting) {Console.log ("Im Connecting"); } Else if(state = =imservice.state_connectfail) {Console.log ("Im Connect fail"); } Else if(state = =imservice.state_unconnected) {Console.log ("Im unconnected"); }}, OnReset:function() {Console.log ("Reset"); } } varim =NewImservice (Observer); Im.accesstoken= "????"; Im.start ()varmsg = {sender:100, receiver:200, content: "One", msglocalid:1000} //Connectstate = = state_connecting varR =im.sendpeermessage (msg); //r = = FalseConsole.log ("Send message Result:", R); functionSend () {varmsg = {sender:100, receiver:100, content: "One", msglocalid:1000} if(Im.connectstate = =imservice.state_connected) {im.sendpeermessage (msg); }} setTimeout (send,2000)</script>
Gobelieve JS IM SDK Access Memo