From b2c3457d1a90421b1ca82812915c37022721bb29 Mon Sep 17 00:00:00 2001 From: Eion Robb Date: Thu, 14 Jul 2016 17:20:24 +1200 Subject: Add support for setting mood messages --- skypeweb/skypeweb_contacts.c | 22 ++++++++++++++++++++++ skypeweb/skypeweb_contacts.h | 2 ++ skypeweb/skypeweb_messages.c | 1 + 3 files changed, 25 insertions(+) diff --git a/skypeweb/skypeweb_contacts.c b/skypeweb/skypeweb_contacts.c index 3dc762c..9de89fa 100644 --- a/skypeweb/skypeweb_contacts.c +++ b/skypeweb/skypeweb_contacts.c @@ -1430,3 +1430,25 @@ skypeweb_buddy_unblock(PurpleConnection *pc, const char *name) g_free(url); } + + +void +skypeweb_set_mood_message(SkypeWebAccount *sa, const gchar *mood) +{ + JsonObject *obj, *payload; + gchar *post; + + g_return_if_fail(mood); + + obj = json_object_new(); + payload = json_object_new(); + + json_object_set_string_member(payload, "mood", mood); + json_object_set_object_member(obj, "payload", payload); + post = skypeweb_jsonobj_to_string(obj); + + skypeweb_post_or_get(sa, SKYPEWEB_METHOD_POST | SKYPEWEB_METHOD_SSL, SKYPEWEB_CONTACTS_HOST, "/users/self/profile/partial", post, NULL, NULL, TRUE); + + g_free(post); + json_object_unref(obj); +} diff --git a/skypeweb/skypeweb_contacts.h b/skypeweb/skypeweb_contacts.h index 0fc0d0e..bba3198 100644 --- a/skypeweb/skypeweb_contacts.h +++ b/skypeweb/skypeweb_contacts.h @@ -47,4 +47,6 @@ void skypeweb_buddy_unblock(PurpleConnection *pc, const char *name); gboolean skypeweb_check_authrequests(SkypeWebAccount *sa); +void skypeweb_set_mood_message(SkypeWebAccount *sa, const gchar *mood); + #endif /* SKYPEWEB_CONTACTS_H */ diff --git a/skypeweb/skypeweb_messages.c b/skypeweb/skypeweb_messages.c index 61266d8..a1d58b8 100644 --- a/skypeweb/skypeweb_messages.c +++ b/skypeweb/skypeweb_messages.c @@ -1149,6 +1149,7 @@ skypeweb_set_status(PurpleAccount *account, PurpleStatus *status) SkypeWebAccount *sa = purple_connection_get_protocol_data(pc); skypeweb_set_statusid(sa, purple_status_get_id(status)); + skypeweb_set_mood_message(sa, purple_status_get_attr_string(status, "message")); } void -- cgit v1.2.3