无法使 ejabberd 预绑定工作

无法使 ejabberd 预绑定工作

我正在尝试使 BOSH 会话的预绑定正常工作。

我希望能够在我的 CMS 中对用户进行身份验证,然后在他访问聊天时让他登录,为此,我发现https://github.com/smokeclouds/http_prebind,一切正常,我能够按照以下步骤进行编译:

rake configure
sed -i 's/AUTH_USER/a_user/g' src/http_prebind.erl
sed -i 's/AUTH_PASSWORD/a_password/g' src/http_prebind.erl
sed -i 's/EJABBERD_DOMAIN/jabber.my.tld/g' src/http_prebind.erl
rake build
rake install

然后将 http 请求绑定添加到配置中:

  {5280, ejabberd_http, [
                         {request_handlers,
                          [
                           {["http-prebind"], http_prebind}
                          ]},
                         %%captcha,
                         http_bind,
                         http_poll,
                         http_prebind,
                         web_admin
                        ]}

 ]}.

据我了解,我现在应该能够简单地请求一个新的会话,如下所示:

curl -u a_user:a_password http://jabber.my.tld:5280/http-prebind/some_user

但无论怎样我总能得到Unauthorized回应。

对这个有什么想法吗?

PS:我也尝试了 Mod-Http-Pre-Bind,但由于它不需要密码,所以我更喜欢使用 http_prebind。

PPS:用户名为 AUTH_USER 、密码为 AUTH_PASSWORD 的用户是否必须存在?我目前正在使用管理员帐户。

相关内容