snac2

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

commit 0233d732485a546db829696ad082d7941725f604
parent cabbdbe20980ba4e1c106c8982f10860d52b339b
Author: default <nobody@localhost>
Date:   Tue, 31 Jan 2023 21:03:59 +0100

Started rewriting the queue.

Diffstat:
Mdata.c | 25+++++++++++++++++++------
1 file changed, 19 insertions(+), 6 deletions(-)

diff --git a/data.c b/data.c @@ -1318,19 +1318,32 @@ static xs_dict *_enqueue_put(const char *fn, xs_dict *msg) } -void enqueue_input(snac *snac, char *msg, char *req, int retries) -/* enqueues an input message */ +static xs_dict *_new_qmsg(const char *type, const xs_dict *msg, int retries) +/* creates a queue message */ { int qrt = xs_number_get(xs_dict_get(srv_config, "queue_retry_minutes")); xs *ntid = tid(retries * 60 * qrt); - xs *fn = xs_fmt("%s/queue/%s.json", snac->basedir, ntid); - xs *qmsg = xs_dict_new(); xs *rn = xs_number_new(retries); - qmsg = xs_dict_append(qmsg, "type", "input"); + xs_dict *qmsg = xs_dict_new(); + + qmsg = xs_dict_append(qmsg, "type", type); qmsg = xs_dict_append(qmsg, "message", msg); - qmsg = xs_dict_append(qmsg, "req", req); qmsg = xs_dict_append(qmsg, "retries", rn); + qmsg = xs_dict_append(qmsg, "ntid", ntid); + + return qmsg; +} + + +void enqueue_input(snac *snac, char *msg, char *req, int retries) +/* enqueues an input message */ +{ + xs *qmsg = _new_qmsg("input", msg, retries); + char *ntid = xs_dict_get(qmsg, "ntid"); + xs *fn = xs_fmt("%s/queue/%s.json", snac->basedir, ntid); + + qmsg = xs_dict_append(qmsg, "req", req); qmsg = _enqueue_put(fn, qmsg);