diff options
| author | 2023-01-31 21:49:43 +0100 | |
|---|---|---|
| committer | 2023-01-31 21:49:43 +0100 | |
| commit | 274ae3d14297364f5aad0596e95e5d0ac970d503 (patch) | |
| tree | fcbd33f30885ed97e49cdcaa8045064861f4d8fc | |
| parent | Reworked enqueue_output(). (diff) | |
| download | snac2-274ae3d14297364f5aad0596e95e5d0ac970d503.tar.gz snac2-274ae3d14297364f5aad0596e95e5d0ac970d503.tar.xz snac2-274ae3d14297364f5aad0596e95e5d0ac970d503.zip | |
Reworked enqueue_email().
| -rw-r--r-- | data.c | 18 | ||||
| -rw-r--r-- | snac.h | 4 |
2 files changed, 8 insertions, 14 deletions
| @@ -1318,7 +1318,7 @@ static xs_dict *_enqueue_put(const char *fn, xs_dict *msg) | |||
| 1318 | } | 1318 | } |
| 1319 | 1319 | ||
| 1320 | 1320 | ||
| 1321 | static xs_dict *_new_qmsg(const char *type, const xs_dict *msg, int retries) | 1321 | static xs_dict *_new_qmsg(const char *type, const xs_val *msg, int retries) |
| 1322 | /* creates a queue message */ | 1322 | /* creates a queue message */ |
| 1323 | { | 1323 | { |
| 1324 | int qrt = xs_number_get(xs_dict_get(srv_config, "queue_retry_minutes")); | 1324 | int qrt = xs_number_get(xs_dict_get(srv_config, "queue_retry_minutes")); |
| @@ -1371,7 +1371,7 @@ void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries) | |||
| 1371 | } | 1371 | } |
| 1372 | 1372 | ||
| 1373 | 1373 | ||
| 1374 | void enqueue_output_by_actor(snac *snac, char *msg, char *actor, int retries) | 1374 | void enqueue_output_by_actor(snac *snac, xs_dict *msg, xs_str *actor, int retries) |
| 1375 | /* enqueues an output message for an actor */ | 1375 | /* enqueues an output message for an actor */ |
| 1376 | { | 1376 | { |
| 1377 | xs *inbox = get_actor_inbox(snac, actor); | 1377 | xs *inbox = get_actor_inbox(snac, actor); |
| @@ -1383,18 +1383,12 @@ void enqueue_output_by_actor(snac *snac, char *msg, char *actor, int retries) | |||
| 1383 | } | 1383 | } |
| 1384 | 1384 | ||
| 1385 | 1385 | ||
| 1386 | void enqueue_email(snac *snac, char *msg, int retries) | 1386 | void enqueue_email(snac *snac, xs_str *msg, int retries) |
| 1387 | /* enqueues an email message to be sent */ | 1387 | /* enqueues an email message to be sent */ |
| 1388 | { | 1388 | { |
| 1389 | int qrt = xs_number_get(xs_dict_get(srv_config, "queue_retry_minutes")); | 1389 | xs *qmsg = _new_qmsg("email", msg, retries); |
| 1390 | xs *ntid = tid(retries * 60 * qrt); | 1390 | char *ntid = xs_dict_get(qmsg, "ntid"); |
| 1391 | xs *fn = xs_fmt("%s/queue/%s.json", snac->basedir, ntid); | 1391 | xs *fn = xs_fmt("%s/queue/%s.json", snac->basedir, ntid); |
| 1392 | xs *qmsg = xs_dict_new(); | ||
| 1393 | xs *rn = xs_number_new(retries); | ||
| 1394 | |||
| 1395 | qmsg = xs_dict_append(qmsg, "type", "email"); | ||
| 1396 | qmsg = xs_dict_append(qmsg, "message", msg); | ||
| 1397 | qmsg = xs_dict_append(qmsg, "retries", rn); | ||
| 1398 | 1392 | ||
| 1399 | qmsg = _enqueue_put(fn, qmsg); | 1393 | qmsg = _enqueue_put(fn, qmsg); |
| 1400 | 1394 | ||
| @@ -123,8 +123,8 @@ d_char *history_list(snac *snac); | |||
| 123 | 123 | ||
| 124 | void enqueue_input(snac *snac, xs_dict *msg, xs_dict *req, int retries); | 124 | void enqueue_input(snac *snac, xs_dict *msg, xs_dict *req, int retries); |
| 125 | void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries); | 125 | void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries); |
| 126 | void enqueue_output_by_actor(snac *snac, char *msg, char *actor, int retries); | 126 | void enqueue_output_by_actor(snac *snac, xs_dict *msg, xs_str *actor, int retries); |
| 127 | void enqueue_email(snac *snac, char *msg, int retries); | 127 | void enqueue_email(snac *snac, xs_str *msg, int retries); |
| 128 | void enqueue_message(snac *snac, char *msg); | 128 | void enqueue_message(snac *snac, char *msg); |
| 129 | 129 | ||
| 130 | d_char *queue(snac *snac); | 130 | d_char *queue(snac *snac); |