# 消息通讯
SATRDA支持客户端之间以及客户端与网页之间的相互通讯,消息通讯基于WebSocket协议,可用于实现即时提醒和互发消息。消息通讯单服务器可以支持数十万并发连接。
# 通讯说明
CS示例运行显示界面:
参数 | 说明 |
---|---|
服务端地址 | 填写连接服务器的ip和端口号本机默认是127.0.0.1:5555 |
订阅主题 | 表示客户端想要接收的主题,多个以;分隔 如user1;user2表示user1和user2的主题消息都能接收 |
发送主题 | 需要发送的主题 |
发送消息 | 发送的内容 |
# 浏览器示例
在浏览器中输入 http://127.0.0.1:5555/websocket.html 可以打开示例的网页界面,界面和应用程序的界面差不多。 websocket.html文件可以在server/public目录下面找到 在应用程序和网页中点击连接,并发送消息,可以验证互相通讯
# PB示例
- 添加自定义u_pushclient对象到使用的窗口上,定义名称uo_client
- 调用uo_client.of_start(as_server,as_topic)
/*
* 启动PushClient,启动后可以接收或者推送消息,PushClient启动后会一直与服务器连接
* 如果服务器或者网络不可用,会一直尝试重连,直到Stop
* as_server 服务器地址 ip:port
* as_topics 启动后订阅的主题,多个主题以‘;’号分隔 topic1;topic2
*/
- 在uo_client.的ue_msgevent事件中接收消息
- 在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
*/
- 在uo_client.的ue_msgerror事件中接收出错信息
- 如果需要停止消息推送调用uo_client.of_stop
