snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit c4b2d3bc692f39ddca814b104e52939261a0bf6e
parent 5a3c7cf98532d7ae74c79cc1198f902895e2209a
Author: default <nobody@localhost>
Date:   Mon, 18 Sep 2023 11:24:30 +0200

If an account has metadata, return them as attachment PropertyValues in msg_actor().

Diffstat:
Mactivitypub.c | 20++++++++++++++++++++
1 file changed, 20 insertions(+), 0 deletions(-)

diff --git a/activitypub.c b/activitypub.c @@ -972,6 +972,26 @@ xs_dict *msg_actor(snac *snac) msg = xs_dict_set(msg, "image", d); } + /* add the metadata as attachments of PropertyValue */ + xs_dict *metadata = xs_dict_get(snac->config, "metadata"); + if (xs_type(metadata) == XSTYPE_DICT) { + xs *attach = xs_list_new(); + xs_str *k; + xs_str *v; + + while (xs_dict_iter(&metadata, &k, &v)) { + xs *d = xs_dict_new(); + + d = xs_dict_append(d, "type", "PropertyValue"); + d = xs_dict_append(d, "name", k); + d = xs_dict_append(d, "value", v); + + attach = xs_list_append(attach, d); + } + + msg = xs_dict_set(msg, "attachment", attach); + } + return msg; }