From 3963eca8caa0d678327dfb5b8a0a8fed9d805099 Mon Sep 17 00:00:00 2001 From: luckydonald Date: Wed, 20 May 2015 00:33:10 +0200 Subject: [PATCH] added missing "user" attribute to "online-status" event. E.g. ```{"event": "online-status", "online": true, "when": "2015-05-20 00:16:40", "state": 1, "user": {"username": ... }}``` --- interface.c | 2 +- json-tg.c | 7 ++++++- json-tg.h | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/interface.c b/interface.c index 16c3c33..ff18968 100644 --- a/interface.c +++ b/interface.c @@ -2574,7 +2574,7 @@ void user_status_upd (struct tgl_state *TLS, struct tgl_user *U) { mpop_color (ev); } else { #ifdef USE_JSON - json_t *res = json_pack_user_status(&U->status); + json_t *res = json_pack_user_status(U); char *s = json_dumps (res, 0); mprintf (ev, "%s\n", s); json_decref (res); diff --git a/json-tg.c b/json-tg.c index 3d201d6..a8cb49d 100644 --- a/json-tg.c +++ b/json-tg.c @@ -389,8 +389,13 @@ int str_format_time(long when, char* string) return sprintf (string, "%04d-%02d-%02d %02d:%02d:%02d", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec); } -json_t *json_pack_user_status (struct tgl_user_status *S) { +json_t *json_pack_user_status (struct tgl_user *U) { json_t *res = json_object (); + struct tgl_user_status *S = &U->status; + json_object (); + json_t *user_res = json_object (); + json_pack_user(user_res, (void *) U); + assert (json_object_set (res, "user", user_res) >= 0); assert (json_object_set (res, "online", json_boolean (S->online == 1)) >= 0); assert (json_object_set (res, "state", json_integer (S->online)) >= 0); if (S->online > 0 || S->online == -1) { diff --git a/json-tg.h b/json-tg.h index 8ceaf4e..bd34b4b 100644 --- a/json-tg.h +++ b/json-tg.h @@ -9,6 +9,6 @@ json_t *json_pack_message (struct tgl_message *M); json_t *json_pack_updates (unsigned flags); json_t *json_pack_peer (tgl_peer_id_t id, tgl_peer_t *P); json_t *json_pack_read (struct tgl_message *M); -json_t *json_pack_user_status (struct tgl_user_status *S); +json_t *json_pack_user_status (struct tgl_user *U); #endif #endif