xmppejabberdejabberd-moduleejabberd-hooks

mod_zeropush not working with ejabberd 16.03


I am working with mod_zeropush and I was working fine with 15.07 until I switched to the ejabberd version 16.03.

I am using Ubuntu OS 14.04 Copied all beam files again to ebin directory

Here's the last error:

===
2016-05-12 15:40:08.706 [error] <0.499.0>@ejabberd_hooks:run1:332 
{undef,[{xml,get_tag_attr_s,[<<"type">>,{xmlel,<<"message">>,[{<<"type">>,
<<"chat">>},{<<"image">>,<<"http://example.com/web-services/user_images
/personal_image/support_team_01.03.2016.png">>},{<<"id">>,
<<"183872511984980">>},{<<"name">>,<<"Support Team">>}2016-05-12 15:40:08.706 
[error] <0.499.0>@ejabberd_hooks:run1:332 {undef,[{xml,get_tag_attr_s,
[<<"type">>,{xmlel,<<"message">>,[{<<"type">>,<<"chat">>},{<<"image">>,
<<"http://example.com/web-services/user_images/personal_image
/support_team_01.03.2016.png">>},{<<"id">>,<<"183872511984980">>},{<<"name">>,
<<"Support Team">>},{<<"to">>,<<"994150860669617@example.com">>}],[{xmlel,
<<"body">>,[],[{xmlcdata,<<"444">>}]}]}],[]},{mod_zeropush,send_notice,3,
[{file,"src/mod_zeropush.erl"},{line,63}]},{ejabberd_hooks,safe_apply,3,
[{file,"src/ejabberd_hooks.erl"},{line,382}]},{ejabberd_hooks,run1,3,
[{file,"src/ejabberd_hooks.erl"},{line,329}]},{ejabberd_sm,route,3,[{file,"src
/ejabberd_sm.erl"},{line,114}]},{ejabberd_local,route,3,[{file,"src
/ejabberd_local.erl"},{line,112}]},{ejabberd_router,route,3,[{file,"src
/ejabberd_router.erl"},{line,77}]},{ejabberd_c2s,check_privacy_route,5,
[{file,"src/ejabberd_c2s.erl"},{line,2110}]}]},{<<"to">>,
<<"994150860669617@example.com">>}],[{xmlel,<<"body">>,[],[{xmlcdata,
<<"444">>}]}]}],[]},{mod_zeropush,send_notice,3,
[{file,"src/mod_zeropush.erl"},{line,63}]},{ejabberd_hooks,safe_apply,3,
[{file,"src/ejabberd_hooks.erl"},{line,382}]},{ejabberd_hooks,run1,3,
[{file,"src/ejabberd_hooks.erl"},{line,329}]},{ejabberd_sm,route,3,[{file,"src
/ejabberd_sm.erl"},{line,114}]},{ejabberd_local,route,3,[{file,"src
/ejabberd_local.erl"},{line,112}]},{ejabberd_router,route,3,[{file,"src
/ejabberd_router.erl"},{line,77}]},{ejabberd_c2s,check_privacy_route,5,
[{file,"src/ejabberd_c2s.erl"},{line,2110}]}]}

Solution

  • Latest version of ejabberd use Fast XML module instead of p1_xml. The module need to be updated for new API. (fxml: and possibly a few other stuffs).