diff options
author | Sébastien Helleu <flashcode@flashtux.org> | 2024-03-10 14:28:44 +0100 |
---|---|---|
committer | Sébastien Helleu <flashcode@flashtux.org> | 2024-03-12 20:37:52 +0100 |
commit | bb346f8c6c62655a6ef8fe4bc848d179258ce008 (patch) | |
tree | ae39e41292cb6304da407bcdc589f9100fac956a | |
parent | 48ca390f79de87689b2ce63c830bf19377907583 (diff) | |
download | weechat-bb346f8c6c62655a6ef8fe4bc848d179258ce008.zip |
relay/api: replace "context" by "buffer_id" (issue #2081)
-rw-r--r-- | src/plugins/relay/api/relay-api-msg.c | 27 | ||||
-rw-r--r-- | src/plugins/relay/api/relay-api-msg.h | 2 | ||||
-rw-r--r-- | src/plugins/relay/api/relay-api-protocol.c | 26 |
3 files changed, 27 insertions, 28 deletions
diff --git a/src/plugins/relay/api/relay-api-msg.c b/src/plugins/relay/api/relay-api-msg.c index 4a5bfdfbc..6dde683a5 100644 --- a/src/plugins/relay/api/relay-api-msg.c +++ b/src/plugins/relay/api/relay-api-msg.c @@ -116,13 +116,15 @@ relay_api_msg_send_json_internal (struct t_relay_client *client, const char *message, const char *event_name, const char *event_type, - const char *event_context, + struct t_gui_buffer *event_buffer, const char *headers, cJSON *json_body) { cJSON *json, *json_event; int num_bytes; - char *string; + const char *ptr_id; + char *string, *error; + long long id; if (!client || !message) return -1; @@ -151,9 +153,18 @@ relay_api_msg_send_json_internal (struct t_relay_client *client, cJSON_AddItemToObject ( json_event, "type", cJSON_CreateString ((event_type) ? event_type : "")); + id = -1; + if (event_buffer) + { + ptr_id = weechat_buffer_get_string (event_buffer, "id"); + error = NULL; + id = strtoll (ptr_id, &error, 10); + if (!error || error[0]) + id = -1; + } cJSON_AddItemToObject ( - json_event, "context", - cJSON_CreateString ((event_context) ? event_context : "")); + json_event, "buffer_id", + cJSON_CreateNumber (id)); cJSON_AddItemToObject (json, "event", json_event); } } @@ -200,7 +211,7 @@ relay_api_msg_send_json (struct t_relay_client *client, message, NULL, /* event_name */ NULL, /* event_type */ - NULL, /* event_context */ + NULL, /* event_buffer */ NULL, /* headers */ json_body); } @@ -247,7 +258,7 @@ relay_api_msg_send_error_json (struct t_relay_client *client, message, NULL, /* event_name */ NULL, /* event_type */ - NULL, /* event_context */ + NULL, /* event_buffer */ headers, json); cJSON_Delete (json); @@ -285,14 +296,14 @@ int relay_api_msg_send_event (struct t_relay_client *client, const char *name, const char *type, - const char *context, + struct t_gui_buffer *buffer, cJSON *json_body) { return relay_api_msg_send_json_internal (client, RELAY_API_HTTP_0_EVENT, name, type, - context, + buffer, NULL, /* headers */ json_body); } diff --git a/src/plugins/relay/api/relay-api-msg.h b/src/plugins/relay/api/relay-api-msg.h index 8a2b7835c..33f0dd690 100644 --- a/src/plugins/relay/api/relay-api-msg.h +++ b/src/plugins/relay/api/relay-api-msg.h @@ -34,7 +34,7 @@ extern int relay_api_msg_send_error_json (struct t_relay_client *client, extern int relay_api_msg_send_event (struct t_relay_client *client, const char *name, const char *type, - const char *context, + struct t_gui_buffer *buffer, cJSON *json_body); extern cJSON *relay_api_msg_buffer_to_json (struct t_gui_buffer *buffer, long lines, diff --git a/src/plugins/relay/api/relay-api-protocol.c b/src/plugins/relay/api/relay-api-protocol.c index 70f3cc9c3..cdfa25516 100644 --- a/src/plugins/relay/api/relay-api-protocol.c +++ b/src/plugins/relay/api/relay-api-protocol.c @@ -103,7 +103,7 @@ relay_api_protocol_signal_buffer_cb (const void *pointer, void *data, ptr_buffer, lines, 0, RELAY_API_DATA(ptr_client, sync_colors)); if (json) { - relay_api_msg_send_event (ptr_client, signal, "buffer", "", json); + relay_api_msg_send_event (ptr_client, signal, "buffer", NULL, json); cJSON_Delete (json); } } @@ -127,12 +127,8 @@ relay_api_protocol_signal_buffer_cb (const void *pointer, void *data, ptr_line_data, RELAY_API_DATA(ptr_client, sync_colors)); if (json) { - relay_api_msg_send_event ( - ptr_client, - signal, - "line", - weechat_buffer_get_string (ptr_buffer, "full_name"), - json); + relay_api_msg_send_event (ptr_client, signal, "line", ptr_buffer, + json); cJSON_Delete (json); } } @@ -178,12 +174,8 @@ relay_api_protocol_hsignal_nicklist_cb (const void *pointer, void *data, json = relay_api_msg_nick_group_to_json (ptr_group); if (json) { - relay_api_msg_send_event ( - ptr_client, - signal, - "nick_group", - weechat_buffer_get_string (ptr_buffer, "full_name"), - json); + relay_api_msg_send_event (ptr_client, signal, "nick_group", + ptr_buffer, json); cJSON_Delete (json); } } @@ -194,12 +186,8 @@ relay_api_protocol_hsignal_nicklist_cb (const void *pointer, void *data, json = relay_api_msg_nick_to_json (ptr_nick); if (json) { - relay_api_msg_send_event ( - ptr_client, - signal, - "nick", - weechat_buffer_get_string (ptr_buffer, "full_name"), - json); + relay_api_msg_send_event (ptr_client, signal, "nick", ptr_buffer, + json); cJSON_Delete (json); } } |