如何使用openfire服务器接收消息?

时间:2015-04-03 10:35:51

标签: php openfire xmpphp

我正在使用Openfire(V 3.9.1)服务器从PHP向Android发送通知。 我正在Android中正确接收消息。但是我无法接收并向PHP显示回复消息。

  • 我正在使用XMPPHP库从PHP向openfire服务器发送通知消息。
  • 我正在使用smack库。 Android-to-android工作正常。

如何在浏览器上接收/显示消息。我应该使用不同的库吗? enter image description here

2 个答案:

答案 0 :(得分:2)

我已经制作了向openfire发送消息的代码,但我不知道如何重新发送消息。

我觉得这可以帮到你。

include './XMPPHP/XMPP_Old.php';
    $host = 'XXX.XXX.XXX.XXX'; // ex.192.168.2.1  
    $port = '5222'; // its defauls xmpp port 
    $username = 'prashant76@mypc'; // ex vivek@host 
    $pass = '########';
    $conn = new XMPPHP_XMPP($host , $port, $username, $pass, 'localhost','localhost', $printlog=false, 

$loglevel=XMPPHP_Log::LEVEL_INFO);  
    try {
       $conn->useEncryption(FALSE);
        //$conn->useSSL(FALSE);
        $str='hello this is messge form php';
        $conn->connect();
        $conn->processUntil('session_start');
        $conn->presence();
        $str= $conn->message('XXXX@XXXXXXXXX', $str); // for sending the message.
        $conn->disconnect(); 
    } catch(XMPPHP_Exception $e) {
             die($e->getMessage()); 
    } 

答案 1 :(得分:0)

您可以配置openfire将消息保存到mysql数据库。然后你可以使用' ajax long polling'方法或websockets从数据库中获取新记录并在浏览器上显示它们。有关详细信息,请参阅以下链接。

Websockets:http://www.html5rocks.com/en/tutorials/websockets/basics/

Ajax长轮询PHP:How do I implement basic "Long Polling"?