# 消息通讯

SATRDA支持客户端之间以及客户端与网页之间的相互通讯,消息通讯基于WebSocket协议,可用于实现即时提醒和互发消息。消息通讯单服务器可以支持数十万并发连接。

# 通讯说明

CS示例运行显示界面: message

参数 说明
服务端地址 填写连接服务器的ip和端口号本机默认是127.0.0.1:5555
订阅主题 表示客户端想要接收的主题,多个以;分隔 如user1;user2表示user1和user2的主题消息都能接收
发送主题 需要发送的主题
发送消息 发送的内容

# 浏览器示例

在浏览器中输入 http://127.0.0.1:5555/websocket.html 可以打开示例的网页界面,界面和应用程序的界面差不多。 websocket.html文件可以在server/public目录下面找到 在应用程序和网页中点击连接,并发送消息,可以验证互相通讯

# PB示例

  1. 添加自定义u_pushclient对象到使用的窗口上,定义名称uo_client
  2. 调用uo_client.of_start(as_server,as_topic)
  /*
  *	启动PushClient,启动后可以接收或者推送消息,PushClient启动后会一直与服务器连接
  *  如果服务器或者网络不可用,会一直尝试重连,直到Stop
  *		as_server  服务器地址 ip:port
  *		as_topics  启动后订阅的主题,多个主题以‘;’号分隔   topic1;topic2
  */
  1. 在uo_client.的ue_msgevent事件中接收消息
  2. 在uo_client.的ue_msgstate事件中判断当前的状态
/*状态改变事件
ai_state取值
constant int STATE_CLOSING = 0
constant int STATE_CLOSED = 1
constant int STATE_CONNECTING = 2
constant int STATE_OPEN = 3
*/
  1. 在uo_client.的ue_msgerror事件中接收出错信息
  2. 如果需要停止消息推送调用uo_client.of_stop
demo