Gateway::getAllGroupIdList

说明:

  1. array Gateway::getAllGroupIdList(void);

(要求Gateway版本>=3.0.8) 如何查看Gateway版本

获取全局所有在线group id列表。

返回值

返回group id为key同时group id为值的数组。 类似下面的格式

  1. array(
  2. 'room-1' => 'room-1',
  3. 'room-2' => 'room-2'
  4. )

注意:如果是客户端断网断电等极端情况掉线,客户端的onClose回调可能无法及时触发,参见onClose说明。也就是说对应客户端出现断网断电等极端掉线情况返回值中可能包含了不准确的数据。这种情况需要心跳来检测已经掉线的客户端。

范例

  1. use \GatewayWorker\Lib\Gateway;
  2. class Events
  3. {
  4. ...
  5. public onMessage($client_id, $message)
  6. {
  7. $group = 'room-1';
  8. Gateway::joinGroup($client_id, $group);
  9. var_export(Gateway::getAllGroupIdList());
  10. }
  11. ...
  12. }

打印出的数据类似如下:

  1. array(
  2. 'room-1' => 'room-1',
  3. 'room-2' => 'room-2'
  4. )