首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

基于宝贝鱼(CshBBrain)开发聊天类应用 群发消息的有关问题

2013-01-23 
基于宝贝鱼(CshBBrain)开发聊天类应用 群发消息的问题最近有网友 基于宝贝鱼(CshBBrain)开发聊天类应用 遇

基于宝贝鱼(CshBBrain)开发聊天类应用 群发消息的问题

最近有网友 基于宝贝鱼(CshBBrain)开发聊天类应用 遇到群发、广播消息的问题,现已处理,将处理过程贴出来 供开发这方面应用的朋友参考,少走弯路。(宝贝鱼(CshBBrain) 的使用问题本想开一个群组讨论的,在iteye上我无法再创建群组了,只有贴到专栏来了)




请教一个在使用Websocket服务端时关于消息广播的问题

?你好,想跟你请教个问题:?

在运行股票的那个示例程序时,配置文件中broadSwitch=1。?

但运行两个客户端页面时,只会有一个页面可以成功接收到消息,而另一个页面会进入onerror方法,请问这是为什么?我如何能查看onerror(event)的详细错误信息?event.data和event.text两个属性不行。?

谢谢!Re: 请教一个在使用Websocket服务端时关于消息广播的问题

?下载新版本的程序,这是一个bug,老版本的程序有,已经解决这个缺陷。?
http://cshbbrain.iteye.com/blog/1724397

请教一个在使用Websocket服务端时关于消息广播的问题

请问我如何才能在WebSocketProcesser或Service中接收客户端请求中的数据再把它广播出去?MasterServer.addBroadMessage(rs);调用这个方法会报错。?

谢谢!

?

请教一个在使用Websocket服务端时关于消息广播的问题

我想模仿Tomcat7的那几个WebSocket示例基于您的服务端实现一下,但对广播的使用目前还搞不清楚,做chat.html和snake.html两个实例时有困难,麻烦您能给简要说一说实现的思路吗?谢谢。

?

请教一个消息广播的问题

?

?

?

?请问,在Service中我如何广播消息。我尝试过这样

?

?

但是会报如下错误信息

?

????Re: 请教一个消息广播的问题

?

看了下你的问题,CshBBrain最新版本有个问题修改下就可以了。我直接贴代码:

MyStringUtil.java

添加属性:
public static final String CSHBBRAIN_CONTENT = "CSHBBRAIN_CONTENT";

修改方法:

public static HashMap<String,String> parseKeyValue(String msg){????
??? if(isBlank(msg)){
??????????? return null;
??????? }
????
??? String values = null;
??????? try{
??????? values = URLDecoder.decode(msg, CoderUtils.UTF8);
??????? }catch(UnsupportedEncodingException e){
??????????? throw new UnsupportedCharsetException(CoderUtils.UTF8);
??????? }
????????
??????? HashMap<String,String> requestData = new HashMap<String,String>();
????????
??????? requestData.put(CSHBBRAIN_CONTENT, values);// 所有信息
????
??????? Matcher m = PARAM_PATTERN.matcher(values);
??????? int pos = 0;
??????? while (m.find(pos)) {
??????????? pos = m.end();????????????
??????????? requestData.put(m.group(1), m.group(2));?
??????? }
????????
??????? return requestData;
??? }


Service.java
public Response service(Client sockector, HashMap<String, String> requestData){
if(requestData == null){
return null;
}

Response responseMessage = null;

try{
if(!MyStringUtil.isBlank(requestData.get(Constants.HANDSHAKE))){
responseMessage = Response.msgOnlyBody(requestData.get(Constants.FILED_MSG));
}else{
MasterServer.addBroadMessage(Response.msgOnlyBody("hello " + requestData.get(MyStringUtil.CSHBBRAIN_CONTENT)));
responseMessage = Response.msgOnlyBody("hello " + requestData.get(MyStringUtil.CSHBBRAIN_CONTENT));
//responseMessage = Response.msgOnlyBody("var taskKey= " + requestData.get("taskKey")? + "; var resultData= '<-" + requestData.get("taskKey") +"->'");
}
}catch(Exception e){
e.printStackTrace();
responseMessage = Response.msgOnlyBody("500处理失败了");
}

return responseMessage;
}

?

????Re: 请教一个消息广播的问题

?以上代码务必请下载最新版本?
http://code.google.com/p/cshbbrain/downloads/list

由于新版本的功能尚未开发完毕,这个问题将在下次更新版本时一并提交。

?

?

1 楼 CshBBrain 2013-01-12   这段时间遇到请教此类问题的情况较多,所有整理下放出来 供有需要的参考

热点排行