Подключение к Prosody через JAXL: "Этот сервер не обслуживает имя пользователя"

У меня есть собственный сервер просодии, и я могу подключиться к нему через Windows XMPP-клиент. На сервере есть две учетные записи, и я могу подключиться к ним обеим и обмениваться сообщениями между ними (я использую встроенный клиент в Mozilla Thunderbird).

У меня есть Virtualhost, настроенный на сервере ("domain.com").

Сейчас я пытаюсь подключиться к серверу через 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'));

перед началом () я получаю "Этот сервер не обслуживает...". в обоих форматах JID.

Что может быть не так? Это работает на PHP 7.1 и последних версиях JAXL и просодии.

0 ответов

Другие вопросы по тегам