1

私は独自の韻律サーバーをセットアップしており、Windows XMPP クライアントを介して接続できます。サーバーには 2 つのアカウントがあり、それらの両方として接続し、それらの間でメッセージを交換できます (私は Mozilla Thunderbird の組み込みクライアントを使用しています)。

サーバー (「domain.com」) で仮想ホストを構成しています。

私は今、アカウントの 1 つとして PHP 経由でサーバーに接続し、他のアカウントにメッセージを送信しようとしています。私はそれを行うためにJAXLを選択しました。

    $client = new JAXL(array(
        'jid' => 'username',
        'host' => 'domain.com',
        'pass' => 'mylongcomplicatedpassword',
        'auth_type' => 'SCRAM-SHA-1',
        'log_level' => JAXLLogger::DEBUG,
        'log_path' => './jaxl.log',
        'strict' => false,
    ));
    $client->start();

「jid」の形式に注意してください。これにより、「このサーバーはユーザー名を提供していません」というエラーが発生します。

jid を username@domain.com に変更すると、代わりに「無効なユーザー名」と表示されます。

追加すると

$client->require_xep(array('0114'));

start() の前に、「このサーバーはサービスを提供していません...」というメッセージが表示されます。JID の両方の形式で。

何が間違っている可能性がありますか?これは、PHP 7.1 および最新バージョンの JAXL と prosody で実行されています。

4

0 に答える 0