fms服务器端呼叫所有的客户端(广播)

有些时候需要服务器广播数据给所有连接上的客户端,这里就用到了广播的概念

广播其实SharedObject的时候已经讲过了一种实现,就是把数据放到remote SharedObject中,当数据改变了,自然所有客户端都会onSync
这里再讲一种用call来实现的:

下边是很常见的一个情况,当某人下线了的时候要通知所有客户端,某某已经下线了

server端:

application.onDisconnect=function(newClient){
//遍历客户端列表,分别call他们
for(var i=0;i<application.clients.length;i++) {
application.clients[i].call("client_fun",null,sendvar);
}

}

Client端:

nc.client_fun=function(myvar){....... }

这个自己完善一下吧,这里就不贴fla了

还有:

关于广播,不只有服务器端广播给所有客户,还有可能某一个客户端对所有客户端直接进行广播,当然上边的例子你如果都看懂了的话,你已经可以自己做某一个客户端对所有客户端的广播了。怎么做?

第1步 某一个客户端呼叫服务器
第2步 服务器广播给所有客户端

这样就形成了,某客户端对所有客户端的广播,当然如果你能细心的耐心的看看帮助的话,你会发现Shared Object 和 NetStream都有send方法就是做这件事的,而且更为简洁,服务端不用写代码 :)

好了,看到这里,fms常用的大部分概念都说到了,这个教程也就基本结束了,想学更多的,你可能需要多翻翻手册,多找找教程,英文有不少很好的教程进阶,下边我也会贴些资源。
原文地址:https://www.cnblogs.com/taobataoma/p/930328.html