summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordefault <nobody@localhost>2024-07-31 06:22:13 +0200
committerdefault <nobody@localhost>2024-07-31 06:22:13 +0200
commit1001744ddb48ed3cb49d1d6d1a607852d6d385de (patch)
tree9d28c3b2abe8bf2264531d1f8526ff8bab35e74b
parenta09ea11f551969e2239cbf65293205da9cae37fe (diff)
Notify objects include the original message.
-rw-r--r--activitypub.c4
-rw-r--r--data.c3
-rw-r--r--snac.h2
3 files changed, 6 insertions, 3 deletions
diff --git a/activitypub.c b/activitypub.c
index 9a16521..36624a1 100644
--- a/activitypub.c
+++ b/activitypub.c
@@ -949,7 +949,7 @@ void notify(snac *snac, const char *type, const char *utype, const char *actor,
if (strcmp(utype, "Follow") == 0)
objid = actor;
- notify_add(snac, type, utype, actor, objid != NULL ? objid : id);
+ notify_add(snac, type, utype, actor, objid != NULL ? objid : id, msg);
}
/** messages **/
@@ -2180,6 +2180,8 @@ int process_input_message(snac *snac, const xs_dict *msg, const xs_dict *req)
snac_log(snac, xs_fmt("'Move': unfollowing %s", old_account));
}
+
+ do_notify = 1;
}
else
snac_log(snac, xs_fmt("'Move' error: old actor %s not found in %s 'alsoKnownAs'",
diff --git a/data.c b/data.c
index 121407f..1a4551d 100644
--- a/data.c
+++ b/data.c
@@ -2517,7 +2517,7 @@ xs_str *notify_check_time(snac *snac, int reset)
void notify_add(snac *snac, const char *type, const char *utype,
- const char *actor, const char *objid)
+ const char *actor, const char *objid, const xs_dict *msg)
/* adds a new notification */
{
xs *ntid = tid(0);
@@ -2537,6 +2537,7 @@ void notify_add(snac *snac, const char *type, const char *utype,
noti = xs_dict_append(noti, "utype", utype);
noti = xs_dict_append(noti, "actor", actor);
noti = xs_dict_append(noti, "date", date);
+ noti = xs_dict_append(noti, "msg", msg);
if (!xs_is_null(objid))
noti = xs_dict_append(noti, "objid", objid);
diff --git a/snac.h b/snac.h
index 280dc15..0ebaa62 100644
--- a/snac.h
+++ b/snac.h
@@ -207,7 +207,7 @@ void lastlog_write(snac *snac, const char *source);
xs_str *notify_check_time(snac *snac, int reset);
void notify_add(snac *snac, const char *type, const char *utype,
- const char *actor, const char *objid);
+ const char *actor, const char *objid, const xs_dict *msg);
xs_dict *notify_get(snac *snac, const char *id);
int notify_new_num(snac *snac);
xs_list *notify_list(snac *snac, int skip, int show);