Issue with webpresence and Conversations
Closed this issue · 4 comments
fx02 commented
When I use Conversations client, opening webpresence xml path:
https://domain.com:5280/presence/jid/my_xmpp_username/domain.com/xml
outputs 404 in browser saying "not found"
ejabberd gives this error log:
2018-10-19 20:35:28.981 [debug] <0.831.0>@ejabberd_http:process_header:304 ({tlssock,#Port<0.30>,#Ref<0.3230567563.3563454465.162688>}) http query: 'GET' <<"/presence/jid/my_xmpp_username/domain.com/xml">>
2018-10-19 20:35:28.981 [debug] <0.831.0>@ejabberd_http:process:391 [<<"presence">>,<<"jid">>,<<"my_xmpp_username">>,<<"domain.com">>,<<"xml">>] matches [<<"presence">>]
2018-10-19 20:35:28.982 [debug] <0.831.0>@mod_webpresence:process:881 {request,'GET',[<<"presence">>,<<"jid">>,<<"my_xmpp_username">>,<<"domain.com">>,<<"xml">>],[{nokey,<<>>}],{<<>>,<<>>},undefined,<<"en-US">>,<<>>,{{1,2,3,4},54038},<<"domain.com">>,5280,[{dhfile,<<"/etc/letsencrypt/dhparam.pem">>},{protocol_options,<<"no_sslv2">>},{ciphers,<<"ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256">>},{register,true},{web_admin,true},{tls,true},{request_handlers,[{[<<"ws">>],ejabberd_http_ws},{[<<"bosh">>],mod_bosh},{[<<"oauth">>],ejabberd_oauth},{[<<"api">>],mod_http_api},{[<<"presence">>],mod_webpresence}]}],https,[{'Accept-Language',<<"en-US,en;q=0.9,hr;q=0.8">>},{'Accept-Encoding',<<"gzip, deflate, br">>},{'Accept',<<"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8">>},{<<"Dnt">>,<<"1">>},{'User-Agent',<<"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36">>},{<<"Upgrade-Insecure-Requests">>,<<"1">>},{'Cache-Control',<<"max-age=0">>},{'Connection',<<"keep-alive">>},{'Host',<<"domain.com:5280">>}],0,fast_tls,{tlssock,#Port<0.30>,#Ref<0.3230567563.3563454465.162688>}}
2018-10-19 20:35:28.983 [debug] <0.831.0>@mod_webpresence:process:882 The call to path [<<"jid">>,<<"my_xmpp_username">>,<<"domain.com">>,<<"xml">>] in the
request: {request,'GET',[<<"presence">>,<<"jid">>,<<"my_xmpp_username">>,<<"domain.com">>,<<"xml">>],[{nokey,<<>>}],{<<>>,<<>>},undefined,<<"en-US">>,<<>>,{{213,149,62,194},54038},<<"domain.com">>,5280,[{dhfile,<<"/etc/letsencrypt/dhparam.pem">>},{protocol_options,<<"no_sslv2">>},{ciphers,<<"ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256">>},{register,true},{web_admin,true},{tls,true},{request_handlers,[{[<<"ws">>],ejabberd_http_ws},{[<<"bosh">>],mod_bosh},{[<<"oauth">>],ejabberd_oauth},{[<<"api">>],mod_http_api},{[<<"presence">>],mod_webpresence}]}],https,[{'Accept-Language',<<"en-US,en;q=0.9,hr;q=0.8">>},{'Accept-Encoding',<<"gzip, deflate, br">>},{'Accept',<<"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8">>},{<<"Dnt">>,<<"1">>},{'User-Agent',<<"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36">>},{<<"Upgrade-Insecure-Requests">>,<<"1">>},{'Cache-Control',<<"max-age=0">>},{'Connection',<<"keep-alive">>},{'Host',<<"domain.com:5280">>}],0,fast_tls,{tlssock,#Port<0.30>,#Ref<0.3230567563.3563454465.162688>}}
crashed with error: {noproc,{p1_server,call,[<0.810.0>,get_presence,1000]}}
badlop commented
Does the crash appear only when requesting xml, or also when requesting js, text, ...?
Does the crash appear only when using Conversations client, or also when using other clients?
What happens if you request for an account that is logged out?
What happens if the account you request does not exist?
What ejabberd version are you using?
fx02 commented
- Does the crash appear only when requesting xml, or also when requesting js, text, ...?
- Crashes only when requesting XML, text shows status, and works fine when I change it to something custom
- Does the crash appear only when using Conversations client, or also when using other clients?
- Only when using Conversations client, with Xabber, Miranda, AstraChat, PSI, Pidgin works fine but I must turn off Conversations.
Hmm, when I think a bit, this might be Conversations bug, but still ejabbered should not "crash" on this.
- What happens if you request for an account that is logged out?
- What happens if the account you request does not exist?
- Shows unavailable
- What ejabberd version are you using?
- 18.09
badlop commented
Ok, I can reproduce the problem, even if I don't get those lines in the log. I've pushed a fix, try it and tell me if it's solved for you too.
fx02 commented
Fixed!