diff options
author | default <nobody@localhost> | 2022-09-28 20:41:07 +0200 |
---|---|---|
committer | default <nobody@localhost> | 2022-09-28 20:41:07 +0200 |
commit | 2be2c07e9c930fd4582feb3cb02162c8b3785000 (patch) | |
tree | ec4f141364de69fb790371e6b8ed2431782e9c98 /data.c | |
parent | 51ed24be474c44f687c67ec66dc16e5d5c279e95 (diff) |
The input queue also has retries.
Diffstat (limited to 'data.c')
-rw-r--r-- | data.c | 13 |
1 files changed, 8 insertions, 5 deletions
@@ -831,21 +831,24 @@ int static_get(snac *snac, char *id, d_char **data, int *size) } -void enqueue_input(snac *snac, char *msg, char *req) +void enqueue_input(snac *snac, char *msg, char *req, int retries) /* enqueues an input message */ { - xs *ntid = tid(0); + 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 *tfn = xs_fmt("%s.tmp", fn); FILE *f; if ((f = fopen(tfn, "w")) != NULL) { xs *qmsg = xs_dict_new(); + xs *rn = xs_number_new(retries); xs *j; - qmsg = xs_dict_append(qmsg, "type", "input"); - qmsg = xs_dict_append(qmsg, "object", msg); - qmsg = xs_dict_append(qmsg, "req", req); + qmsg = xs_dict_append(qmsg, "type", "input"); + qmsg = xs_dict_append(qmsg, "object", msg); + qmsg = xs_dict_append(qmsg, "req", req); + qmsg = xs_dict_append(qmsg, "retries", rn); j = xs_json_dumps_pp(qmsg, 4); |