Hi all,
I have a stanzas logger (via mod_service_log) and i`ve found that messages sent via mod_rest "come into effect" only when destination user come online.
I can see these sent messages in real-time in ejabberd.log but not in the stream from mod_service_log (until user come online, sorry for multiple repeating that). Meanwhile everything is fine with ordinary offline messages (type='chat').
=INFO REPORT==== 2011-07-01 17:44:49 ===
I(<0.27704.0>:mod_rest:73) : Got valid request from system
with IP {{172,20,2,75},51593}
to 2002@vps172202135.mtu.immo:
{xmlelement,"message",
[{"to","2002@vps172202135.mtu.immo"},
{"from","system"},
{"type","wall"},
{"xmlns","http://jabber.org/protocol/httpbind"}],
[{xmlelement,"body",[],
[{xmlcdata,<<"{\"uid\":\"b00932db4042267ac86f8ab63d09bd05\",\"text\":\"\\u041e\\u0441\\u0442\\u0430\\u0432\\u0438\\u043b \\u043a\\u043e\\u043c\\u043c\\u043
5\\u043d\\u0442\\u0430\\u0440\\u0438\\u0439 \\u043d\\u0430 \\u0441\\u0432\\u043e\\u0435\\u0439 ">>},
{xmlcdata,<<"<">>},
{xmlcdata,<<"a href='4001\\/wall'">>},
{xmlcdata,<<">">>},
{xmlcdata,<<"\\u0441\\u0442\\u0435\\u043d\\u0435">>},
{xmlcdata,<<"<">>},
{xmlcdata,<<"\\/a">>},
{xmlcdata,<<">">>},
{xmlcdata,<<"\",\"created_timestamp\":1309527889,\"user_id\":\"4001\"}">>}]}]}
Ejabberd is storing rosters and vcard in Postgres.
I have turned mod_offline off because messages need to be logged at the moment they are sent.
{modules,
[
{mod_adhoc, []},
{mod_admin_extra, []},
{mod_announce, [{access, announce}]},
{mod_caps, []},
{mod_configure,[]},
{mod_http_bind, []},
{mod_http_fileserver, [
{docroot, "/var/www/html"},
{content_types, [{".xml", "text/xml"}]},
{directory_indices, ["index.html"]},
{accesslog, "/var/log/ejabberd/http-access.log"}
]},
{mod_ping, []},
{mod_rest, [
{allowed_ips, [{127,0,0,1}, {1,2,3,4}]}
]},
{mod_roster_odbc, []},
{mod_statsdx, [{hooks,true}]},
{mod_time, []},
{mod_service_log,[{loggers, ["logger.server.tld"]}]},
{mod_vcard_odbc, []},
{mod_version, []}
]}.
Are there any ways to solve that behaviour?