summaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
Diffstat (limited to 'data.c')
-rw-r--r--data.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/data.c b/data.c
index a426957..20bf9ed 100644
--- a/data.c
+++ b/data.c
@@ -1336,7 +1336,7 @@ static xs_dict *_new_qmsg(const char *type, const xs_dict *msg, int retries)
1336} 1336}
1337 1337
1338 1338
1339void enqueue_input(snac *snac, char *msg, char *req, int retries) 1339void enqueue_input(snac *snac, xs_dict *msg, xs_dict *req, int retries)
1340/* enqueues an input message */ 1340/* enqueues an input message */
1341{ 1341{
1342 xs *qmsg = _new_qmsg("input", msg, retries); 1342 xs *qmsg = _new_qmsg("input", msg, retries);
@@ -1351,7 +1351,7 @@ void enqueue_input(snac *snac, char *msg, char *req, int retries)
1351} 1351}
1352 1352
1353 1353
1354void enqueue_output(snac *snac, char *msg, char *inbox, int retries) 1354void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries)
1355/* enqueues an output message to an inbox */ 1355/* enqueues an output message to an inbox */
1356{ 1356{
1357 if (xs_startswith(inbox, snac->actor)) { 1357 if (xs_startswith(inbox, snac->actor)) {
@@ -1359,16 +1359,11 @@ void enqueue_output(snac *snac, char *msg, char *inbox, int retries)
1359 return; 1359 return;
1360 } 1360 }
1361 1361
1362 int qrt = xs_number_get(xs_dict_get(srv_config, "queue_retry_minutes")); 1362 xs *qmsg = _new_qmsg("output", msg, retries);
1363 xs *ntid = tid(retries * 60 * qrt); 1363 char *ntid = xs_dict_get(qmsg, "ntid");
1364 xs *fn = xs_fmt("%s/queue/%s.json", snac->basedir, ntid); 1364 xs *fn = xs_fmt("%s/queue/%s.json", snac->basedir, ntid);
1365 xs *qmsg = xs_dict_new();
1366 xs *rn = xs_number_new(retries);
1367 1365
1368 qmsg = xs_dict_append(qmsg, "type", "output"); 1366 qmsg = xs_dict_append(qmsg, "inbox", inbox);
1369 qmsg = xs_dict_append(qmsg, "inbox", inbox);
1370 qmsg = xs_dict_append(qmsg, "message", msg);
1371 qmsg = xs_dict_append(qmsg, "retries", rn);
1372 1367
1373 qmsg = _enqueue_put(fn, qmsg); 1368 qmsg = _enqueue_put(fn, qmsg);
1374 1369