我有点困惑。我想将消息从我的 Red5 服务器发送到我的 Flash 应用程序......但我没有找到任何信息如何做到这一点......
谁能帮我?
我有点困惑。我想将消息从我的 Red5 服务器发送到我的 Flash 应用程序......但我没有找到任何信息如何做到这一点......
谁能帮我?
这看起来是一个好的开始: http ://www.red5tutorials.net/index.php/Tutorials:Getting_Started_With_Red5_Server
在底部附近查看他们的简单 Flash 客户端。
编辑:现在给出更多选项,很明显我们是从服务器客户端开始的:
看起来你需要做这样的事情:http: //livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/NetConnection.html
和
http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/NetStream.html
这意味着使用“NetStream.play()”让服务器将数据流式传输到客户端。
或者您可能想查看 Socket 类并在客户端和服务器之间手动创建直接套接字连接。
请记住,我从未使用过 Red5。只是想帮忙:)
For anyone who didn't find an answer until today: I am working in red5, and you can send message from red5 to flash by a RemoteSharedObject in AS3 connecting to a sharedobject in red5.
Server Code:
ISharedObject so = getSharedObject(scope, "chat");
so.setAttribute("message","Welcome");
Client Code:
so = SharedObject.getRemote("chat", connection.uri, false);
so.connect(connection);
so.addEventListener(SyncEvent.SYNC, syncChatHandler);
private function syncChatHandler(event:SyncEvent):void {
Alert.show(so.data.message,"Information");
}
This code will show an alert on users connected with the message "Welcome". From here read a lot of documentation and use your imagination.
嗯,根据定义,服务器服务和客户端请求。因此,要创建推送场景,您仍然必须首先初始化从客户端到服务器的连接。然后你可以让连接保持空闲,直到你需要向客户端发送一些东西。轮询是另一种方法,服务器保留消息,客户端经常检查以查看是否有新消息可用。服务器无法启动与客户端的连接。这将使客户端成为服务器。换句话说,您可以让 Flash 客户端向服务器注册它的当前 IP,并自己打开一个端口,将自己建立为服务器。然后Red5服务器成为客户端,可以连接到flash客户端里面的服务器。但我想许多安全限制会阻止您的闪存程序在现实世界中充当服务器。