From f485dbdaf0f6372b9815be3d78ae2839e80d6946 Mon Sep 17 00:00:00 2001 From: default Date: Tue, 12 Mar 2024 17:54:54 +0100 Subject: Added actor refreshing via the user queue. --- activitypub.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'activitypub.c') diff --git a/activitypub.c b/activitypub.c index b6a07c9..08f79ed 100644 --- a/activitypub.c +++ b/activitypub.c @@ -2244,6 +2244,22 @@ void process_user_queue_item(snac *snac, xs_dict *q_item) if (strcmp(type, "verify_links") == 0) { verify_links(snac); } + else + if (strcmp(type, "actor_request") == 0) { + const char *actor = xs_dict_get(q_item, "actor"); + double mtime = object_mtime(actor); + double max_time = 3600.0 * 36.0; + + if (mtime + max_time < (double) time(NULL)) { + xs *actor_o = NULL; + int status; + + if (valid_status((status = activitypub_request(snac, actor, &actor_o)))) + actor_add(actor, actor_o); + + snac_log(snac, xs_fmt("refresh actor %s %d", actor, status)); + } + } else snac_log(snac, xs_fmt("unexpected user q_item type '%s'", type)); } -- cgit v1.2.3