summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--activitypub.c6
-rw-r--r--data.c13
-rw-r--r--main.c2
-rw-r--r--snac.h1
4 files changed, 21 insertions, 1 deletions
diff --git a/activitypub.c b/activitypub.c
index b9ef86b..c186095 100644
--- a/activitypub.c
+++ b/activitypub.c
@@ -3080,6 +3080,12 @@ void process_user_queue_item(snac *user, xs_dict *q_item)
3080 collect_replies(user, post); 3080 collect_replies(user, post);
3081 } 3081 }
3082 else 3082 else
3083 if (strcmp(type, "collect_outbox") == 0) {
3084 const char *actor_id = xs_dict_get(q_item, "message");
3085
3086 collect_outbox(user, actor_id);
3087 }
3088 else
3083 snac_log(user, xs_fmt("unexpected user q_item type '%s'", type)); 3089 snac_log(user, xs_fmt("unexpected user q_item type '%s'", type));
3084} 3090}
3085 3091
diff --git a/data.c b/data.c
index ca5e3ed..0ea74b7 100644
--- a/data.c
+++ b/data.c
@@ -3589,6 +3589,19 @@ void enqueue_collect_replies(snac *user, const char *post)
3589} 3589}
3590 3590
3591 3591
3592void enqueue_collect_outbox(snac *user, const char *actor_id)
3593/* enqueues a collect outbox request */
3594{
3595 xs *qmsg = _new_qmsg("collect_outbox", actor_id, 0);
3596 const char *ntid = xs_dict_get(qmsg, "ntid");
3597 xs *fn = xs_fmt("%s/queue/%s.json", user->basedir, ntid);
3598
3599 qmsg = _enqueue_put(fn, qmsg);
3600
3601 snac_debug(user, 1, xs_fmt("enqueue_collect_outbox %s", actor_id));
3602}
3603
3604
3592int was_question_voted(snac *user, const char *id) 3605int was_question_voted(snac *user, const char *id)
3593/* returns true if the user voted in this poll */ 3606/* returns true if the user voted in this poll */
3594{ 3607{
diff --git a/main.c b/main.c
index 474d684..6abac61 100644
--- a/main.c
+++ b/main.c
@@ -739,7 +739,7 @@ int main(int argc, char *argv[])
739 } 739 }
740 740
741 if (strcmp(cmd, "collect_outbox") == 0) { /** **/ 741 if (strcmp(cmd, "collect_outbox") == 0) { /** **/
742 collect_outbox(&snac, url); 742 enqueue_collect_outbox(&snac, url);
743 return 0; 743 return 0;
744 } 744 }
745 745
diff --git a/snac.h b/snac.h
index 1366d04..5cbfcae 100644
--- a/snac.h
+++ b/snac.h
@@ -298,6 +298,7 @@ void enqueue_actor_refresh(snac *user, const char *actor, int forward_secs);
298void enqueue_webmention(const xs_dict *msg); 298void enqueue_webmention(const xs_dict *msg);
299void enqueue_notify_webhook(snac *user, const xs_dict *noti, int retries); 299void enqueue_notify_webhook(snac *user, const xs_dict *noti, int retries);
300void enqueue_collect_replies(snac *user, const char *post); 300void enqueue_collect_replies(snac *user, const char *post);
301void enqueue_collect_outbox(snac *user, const char *actor_id);
301 302
302int was_question_voted(snac *user, const char *id); 303int was_question_voted(snac *user, const char *id);
303 304