基于会话的本地聊天协议
对于希望进行双向通信的应用程序,FME服务器支持基于会话的“聊天”协议。该协议利用了FME Server的原生WebSocket支持。
支持的客户端包括以下基于html5的web浏览器:
- ie 10 +
- Firefox 11 +
- Chrome 16 +
- Safari 6 +
- Opera 12.10 +
注意:默认情况下,FME Server使用7078端口进行WebSocket通信。如果有必要,请确保配置任何防火墙设置,以允许在端口7078上开放通信。
“聊天”协议发送消息给所有具有相同<sessionkey>价值。在上面的例子中,黑色的双向箭头表示会话键“black”,红色的双向箭头表示会话键“red”。客户端A、客户端B、客户端C可以相互通信,因为它们有相同的聊天会话密钥。客户端D和客户端E可以相互通信,因为它们有相同的聊天会话密钥。
chat_open消息操作建立一个基于会话的聊天会话。
{
ws_op: chat_open,
ws_sessionkey: < sessionkey >
}
chat_send消息操作向所有聊天客户端发送消息。
{
ws_op: chat_send,
ws_sessionkey: < sessionkey >,
ws_msg: <味精>
}
chat_send操作的接收方使用以下模式接收消息:
{
ws_msg: <味精>
}
chat_close操作从聊天会话中删除客户端。
{
ws_op: chat_close,
ws_sessionkey: < sessionkey >
}
注意:如果chat_close没有被调用,WebSocket服务器在接收到通道关闭事件时清理连接。
另请参阅