无法从 xmpphp 获取用户列表(名单)



我有一个应用程序,我可以向某些设备发送xmpp消息。这成功了。但是现在我想接收花名册(连接的用户列表)并且我得到空数组,但是那里有 4 个用户。这是我的代码

   require_once($_SERVER["DOCUMENT_ROOT"]."/lib/xmpphp/XMPP.php");
    $con=$conf->getXMPPObj();
    try {
            $con->useEncryption(false);
            $con->connect();
            $con->processUntil('session_start');
            $con->presence();
            $roster=$con->roster->getRoster();
            var_dump($roster);
            //$con->processUntil('roster_received');
            if (strpos($_POST['msg'],'CamMode')!==false)
            {
                $con->message("user@host" ,$_POST['msg']);
            }
            else
            {
                $con->message("user@host",$_POST['msg']);
            }     
            $con->disconnect();
        } 
        catch(XMPPHP_Exception $e) 
        {
            die($e->getMessage());
        }

消息已成功发送,但转储$roster为空。怎么了?

我添加这个:$con->processUntil(array('session_start', 'roster_received'));$con->processTime(5); 它对我有用。

        ...
        $con->connect();
        $payloads = $con->processUntil(array('session_start', 'roster_received'));
        $con->presence();
        $con->processTime(5);
        $roster = $con->roster->getRoster();
        ...

最新更新