怎样把接收的数据显示到前台?并且在前台发送对应数据给特定的设备?

0

应用场景
有一些硬件设备(3G模块),注册上之后会去连接服务器,服务端开了一个socket,走的是http协议,$webserver = new WebServer('http://0.0.0.0:8080');
这些设备连上之后,需要人工操作在前端发送一些指令给设备,需要怎么做?

已邀请:

walkor

赞同来自: huagaojian

前台和workerman之间用websocket协议,workerman和设备之间用socket连接
可以使用gatewayWorker去做,开两个端口,一个websocket协议端口与前端连,一个tcp端口与设备连。
业务逻辑都在event.php中写,在这个event.php中可以控制二者通讯,具体参考gatewayWorker手册


多协议支持部分:
http://workerman.net/gatewaydoc/advanced/multi-protocols.html


gatewayWorker代码:
https://github.com/walkor/GatewayWorker


websoket demo
http://www.workerman.net/workerman-chat

huagaojian - 入门程序员

赞同来自:

gatewayWorker我没用过,在event中的onMessage可以写逻辑,那这边onMessage是否可以同时支持websocket和设备的socket的回调?然后可以向指定的id发送具体消息?


/**
* 当客户端发来消息时触发
* @param int $client_id 连接id
* @param string $message 具体消息
* @link http://gatewayworker-doc.workerman.net/gateway-worker-development/onmessage.html
*/
public static function onMessage($client_id, $message)
{
// 向所有人发送 @see http://gatewayworker-doc.workerman.net/gateway-worker-development/send-to-all.html
Gateway::sendToAll("$client_id said $message");
}

walkor

赞同来自:


gatewayWorker我没用过,在event中的onMessage可以写逻辑,那这边onMessage是否可以同时支持websocket和设备的socket的回调?然后可以向指定的id发送具体消息?



支持

要回复问题请先登录注册