使用satrda实现即时通讯

通过satrda的消息通讯模块,PB,VB,Delphi,JS等各种语言可以实现客户端之间或客户端与网页之间的相互通讯,消息通讯基于WebSocket协议,可用于实现即时提醒和互发消息。消息通讯单服务器可以支持数十万并发连接。

实现方法

1.下载SATRDA

最新版本和示例可在QQ群:345559891 下载

 

2.运行服务端

运行示例server目录下面的satserver.exe

3.源码

PB源码(参考pb示例中w_push窗口)

//连接服务端
uo_client.of_start("127.0.0.1:5555","user1;user2")

//发送消息
uo_client.of_publish( "user1", "发送消息测试")

//停止
uo_client.of_stop()

VB源码(参考vb示例中form2窗口)

//连接服务器
Client.StartClient "127.0.0.1:5555","user1;user2"

//发送消息
Call Client.Publish("user1", "发送消息测试", LenB("发送消息测试"))

//停止服务
Client.StopClient

Delphi源码(参考delphi示例中unit1窗口)

//连接服务器
PushClient_Start(_client,PAnsiChar('127.0.0.1:5555'),PAnsiChar('user1;user2'));

//发送消息
PushClient_Pulish(_client,PAnsiChar('user1'),PAnsiChar('发送消息测试'), length('发送消息测试'));

//停止服务
PushClient_Stop(_client);

易语言

.版本 2

.程序集 窗口程序集_启动窗口
.程序集变量 消息通讯, 消息通讯类
.程序集变量 旧窗口回调函数, 子程序指针

.子程序 _打开_被单击

消息通讯.开启 (编辑框_服务器.内容, 编辑框_订阅主题.内容)

.子程序 _停止_被单击

消息通讯.停止 ()

.子程序 _发送_被单击

消息通讯.发送消息 (编辑框_发送主题.内容, 编辑框_消息.内容)

.子程序 __启动窗口_创建完毕

消息通讯.设置事件 (取窗口句柄 ())
附加到页面 (取窗口句柄 ())
旧窗口回调函数 = 替换窗口回调 (取窗口句柄 (), -4, &新窗口回调函数)


.子程序 新窗口回调函数, 整数型
.参数 窗口句柄_, 整数型
.参数 消息, 整数型
.参数 参数1, 整数型
.参数 参数2, 整数型
.局部变量 收到消息, 文本型

.判断开始 (消息 = #消息通讯_状态)
    .如果真 (参数1 = #状态_正在连接)
        加入日志 (“正在连接”)
    .如果真结束
    .如果真 (参数1 = #状态_正在关闭)
        加入日志 (“正在关闭”)
    .如果真结束
    .如果真 (参数1 = #状态_已连接)
        加入日志 (“已连接”)
    .如果真结束
    .如果真 (参数1 = #状态_已关闭)
        加入日志 (“已关闭”)
    .如果真结束

.判断 (消息 = #消息通讯_事件)
    收到消息 = 消息通讯.取消息 (参数1, 参数2)
    加入日志 (到文本 (收到消息))
.默认

.判断结束
' 下面调用原来的回调来处理其它消息,去掉就假死
返回 (执行原窗口回调 (旧窗口回调函数, 窗口句柄_, 消息, 参数1, 参数2))



.子程序 加入日志
.参数 日志, 文本型

编辑框_显示.内容 = 编辑框_显示.内容 + 日志 + #换行符

 

4.运行显示界面

说明

服务端地址:填写连接服务器的ip和端口号本机默认是127.0.0.1:5555

订阅主题:表示客户端想要接收的主题,多个以;分隔

比如:user1;user2表示user1和user2的主题消息都能接收

发送主题:需要发送的主题

发送消息:发送的内容

在浏览器中输入 http://127.0.0.1:5555/websocket.html 可以打开示例的网页界面,界面和应用程序的界面差不多。

websocket.html文件可以在server/public目录下面找到

5.消息通讯

在应用程序和网页中点击连接,并发送消息,可以验证互相通讯

 HTTP推送消息

可以通过Http Get方法进行推送,url如例

http://127.0.0.1:5555/pushmessage?topic=user1&message=11234234

topic表示主题

message表示要推送的消息

A梦 Chat online 是A梦工作室最新推出的一款即时通信产品。以其清爽的界面、简洁轻便、安全稳定的通信,为您提供一站式即时通讯体验。 ☆A梦工作室: http://www.amgzs.tk *——————————————————————* 2011年4月2日 A梦Chat online2011公测版 Beta 2.2.4.2 What's new : ====================== 1、更换 登录LOGO; 2、修正 Beta 2.1.4.1 关于表情的错误更新,重新设计表情系统; 3、修正了其他几个小BUG。 2011年4月1日 A梦Chat online2011公测版 Beta 2.1.4.1 What's new : ====================== 1、修正表情显示不正确的BUG; 2、发现 当用户总数超过1时自定义表情功能异常的BUG,目前尚未找到错误原因所在,暂停 自定义表情 功能,我们将全力修复,对此对您造成的不便请多多包涵; 3、修正了其他几个小BUG。 2011年3月26日 A梦Chat online2011公测版 Beta 2.0.3.26 What's new : ====================== 1、简化启动过程,程序更加易用,更便捷! 2、修正 无法在信息显示框显示表情及图片 的重大缺陷,收发表情随心所欲! 3、全面美化界面,提升软件综合品质! 3、增加多款皮肤,并提供无限皮肤扩展与皮肤编辑功能,真正做到 我的界面,我做主! 4、大幅提升服务器反应速度,同等配置下传输速度提升30%! 5、升级信息显示功能,字体颜色对比显示。 拒绝误读,全新感受,我们在行动! 6、修正 收到消息播放提示音延迟的问题; 7、修正了其他几个小BUG。 2011年3月18日 A梦Chat online2011内测版 Beta 1.5.3.18 What's new : ====================== 1、修正特殊情况下CPU占用过高的问题; 2、限制 发送编辑框 文本最大长度,防止用户发送大量数据致使软件阻塞; 3、优化服务端界面; 4、加入已输入文本长度提示; 5、优化 表情 功能(根本问题没有解决:不能在 信息框 内直接显示。欢迎给我提建议。); 6、增加图片传输功能,即自定义表情; 7、修正托盘菜单中无 退出 的BUG; 8、增加 聊天记录 功能; 9、压缩并加密通讯过程; 10、修正 表情附言 显示不完整的BUF 11、修正了其他几个小BUG。 2011年3月17日 A梦Chat online2011内测版 Beta 1.4.3.17 What's new : ====================== 1、增加 表情 功能(尚不完善,将考虑解决办法,欢迎与我讨论。); 2、增加 窗口抖动功能; 3、优化 老板键; 4、修正其他几个BUG。 2011年3月6日 A梦Chat online2011内测版 Beta 1.3.3.6 What's new : ====================== 1、加入消息声音提示,可选择发生设备(蜂鸣器或声卡设备); 2、加入托盘图标; 3、完善对时系统; 4、增加系统消息功能; 5、修正点击 发送 按钮后编辑框失去焦点的问题; 6、修正 皮肤DIY 功能; 7、大大优化系统资源占用,达到已知同类软件中旗舰水品,内存占用量最低 384K,通常 500K-1200K。); 8、增加 快速隐藏(即 "老板键") 功能; 9、增加 环境设置 功能,可以依据使用环境个性化设置; 10、修正了其他几个小BUG。 2011年3月5日 A梦Chat online2011内测版 Beta1.1.2.3.5 What's new : ====================== 1、更换全新炫肤——悦动2011; 2、优化窗口布局; 3、在醒目位置注明 程序开源、开发工具、以及作者联系方式; 4、优化服务端自定义信息发送功能,支持换行符等的使用; 5、修正了其他几个小BUG。 2011年3月2日 A梦Chat online2011内测版 Beta1 1.1.3.2 What's new : ====================== 1、优化服务端信息记录显示; 2、增加服务端消息监视功能与自定义信息发送功能。 2011年2月27日 A梦Chat online2011内测版 Beta1 1.0.2.27 What's new : ====================== 1、A梦Chat online2011内测版全新诞生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值