如题。比如说不在workerman环境下,如何根据client_id,判断用户是否在线,并且发送消息。
直接使用GatewayClient即可。 http://workerman.net/gatewaydoc/advanced/push.html
以下回复是针对老版本GatewayWorker的,已经过期了,不再适用当前版本。
其实比较简单,就是要引用到Lib/Gateway.php这个文件
如果两个项目在同一台服务器上 直接引用require /your/path/workerman-xxx/applications/XXX/Lib/Gateway.php 就可以直接调用了
如果是不同机器上调用workerman的接口 也很简单,需要以下步骤 以applications/Demo为例,你只需要将applications/Demo的代码拷贝到你的新项目中任意目录,然后引用新项目中Demo/Lib/Gateway.php即可。 注意:不同服务器上远程调用workerman接口需要开启memcache,在 Config/Store.php 中配置public static $driver = self::DRIVER_MC,并配置memcache服务端的ip和端口
public static $gateway = array( '192.168.0.1:11211', ); // 如果还有其它的话 // public static $xxx=array(...
外部项目引用Lib\Gateway.php后就可以直接像下面这样调用
use \Lib\Gateway; Gateway::sendToClient($client_id, $message); Gateway::sendToAll($message); Gateway::isOnline($client_id); Gateway....
注意 新项目中的Demo/Config 下的配置文件与你的workerman下的applications/Demo/Config要一致
mark
直接使用GatewayClient即可。 见手册http://workerman.net/gatewaydoc/advanced/push.html
代码类似:
require_once '/your/path/GatewayClient/Gateway.php'; Gateway::$registerAddress = 'xxx.xxx.xxx.xxx:xx'; Gateway::isOnline($client_id); Gateway::sendToClient($client_id, $msg);
以上代码可以在任意项目中运行
直接使用GatewayClient即可。
http://workerman.net/gatewaydoc/advanced/push.html
以下回复是针对老版本GatewayWorker的,已经过期了,不再适用当前版本。
其实比较简单,就是要引用到Lib/Gateway.php这个文件
如果两个项目在同一台服务器上
直接引用require /your/path/workerman-xxx/applications/XXX/Lib/Gateway.php 就可以直接调用了
如果是不同机器上调用workerman的接口
也很简单,需要以下步骤
以applications/Demo为例,你只需要将applications/Demo的代码拷贝到你的新项目中任意目录,然后引用新项目中Demo/Lib/Gateway.php即可。
注意:不同服务器上远程调用workerman接口需要开启memcache,在 Config/Store.php 中配置public static $driver = self::DRIVER_MC,并配置memcache服务端的ip和端口
public static $gateway = array(
'192.168.0.1:11211',
);
// 如果还有其它的话
// public static $xxx=array(...
外部项目引用Lib\Gateway.php后就可以直接像下面这样调用
use \Lib\Gateway;
Gateway::sendToClient($client_id, $message);
Gateway::sendToAll($message);
Gateway::isOnline($client_id);
Gateway....
注意 新项目中的Demo/Config 下的配置文件与你的workerman下的applications/Demo/Config要一致
mark
直接使用GatewayClient即可。
见手册http://workerman.net/gatewaydoc/advanced/push.html
代码类似:
以上代码可以在任意项目中运行