|
Definition at line 4 of file status.c.
References jab_c, jab_connect_time, jab_contype_to_ascii(), jwg_c, jwg_servsend(), list_agents(), MACHINE_TYPE, NULL, jid_struct::resource, jid_struct::server, jabconn_struct::state, jid_struct::user, jabconn_struct::user, xode, xode_free(), xode_insert_cdata(), xode_insert_tag(), and xode_new().
Referenced by jwg_on_event_handler(). 00005 {
00006 char retstr[255];
00007 char tmpstr[50];
00008 time_t curtime;
00009 xode x, y;
00010
00011 x = xode_new("status");
00012 y = xode_insert_tag(x, "user");
00013 xode_insert_cdata(y, jab_c->user->user, strlen(jab_c->user->user) + 1);
00014 y = xode_insert_tag(x, "server");
00015 xode_insert_cdata(y, jab_c->user->server, strlen(jab_c->user->server) + 1);
00016 y = xode_insert_tag(x, "resource");
00017 xode_insert_cdata(y, jab_c->user->resource, strlen(jab_c->user->resource) + 1);
00018 y = xode_insert_tag(x, "version");
00019 xode_insert_cdata(y, VERSION, strlen(VERSION) + 1);
00020 y = xode_insert_tag(x, "machinetype");
00021 xode_insert_cdata(y, MACHINE_TYPE, strlen(MACHINE_TYPE) + 1);
00022
00023 curtime = time(NULL);
00024 strftime(tmpstr, 50, "%A %B %e, %Y %I:%M %p", localtime(&curtime));
00025 y = xode_insert_tag(x, "localtime");
00026 xode_insert_cdata(y, tmpstr, strlen(tmpstr) + 1);
00027
00028 strftime(tmpstr, 50, "%A %B %e, %Y %I:%M %p", localtime(&jab_connect_time));
00029 y = xode_insert_tag(x, "connecttime");
00030 xode_insert_cdata(y, tmpstr, strlen(tmpstr) + 1);
00031
00032 y = xode_insert_tag(x, "connectstate");
00033 xode_insert_cdata(y, jab_contype_to_ascii(jab_c->state),
00034 strlen(jab_contype_to_ascii(jab_c->state)) + 1);
00035
00036 list_agents(x);
00037
00038 y = xode_insert_tag(x, "bugreport");
00039 xode_insert_cdata(y, PACKAGE_BUGREPORT, strlen(PACKAGE_BUGREPORT) + 1);
00040
00041 jwg_servsend(jwg_c, x);
00042 xode_free(x);
00043 }
|