1
0
Fork 0

minor changes to cdr logging

This commit is contained in:
bagyenda 2008-06-24 10:01:03 +00:00
parent 23df285f45
commit 371438118b
13 changed files with 234 additions and 166 deletions

View File

@ -1,3 +1,5 @@
2008-06-24 P. A. Bagyenda <bagyenda@dsmagic.com>
* Improved queue information: Included source interface
2008-06-18 P. A. Bagyenda <bagyenda@dsmagic.com>
* added qcelp file extension to mime type mapping
2008-05-30 P. A. Bagyenda <bagyenda@dsmagic.com>

View File

@ -276,6 +276,7 @@ static MmsEnvelope *pgq_queue_readenvelope(char *qf, char *mms_queuedir, int sho
NULL,
NULL,
qf,
NULL,
sizeof (struct pgfile_t), NULL);
/* set the private data. */
@ -322,6 +323,9 @@ static MmsEnvelope *pgq_queue_readenvelope(char *qf, char *mms_queuedir, int sho
case 'I':
e->msgId = octstr_create(res);
break;
case 'i': /* interface. */
strncpy(e->src_interface, res, sizeof e->src_interface);
break;
case 'R':
case 'Z':
t = octstr_create(res);
@ -531,6 +535,10 @@ static int writeenvelope(MmsEnvelope *e, int newenv)
_puthdr(qfs->conn, qfs->qid, "P", octstr_get_cstr(e->fromproxy));
if (e->src_interface[0])
_puthdr(qfs->conn, qfs->qid, "i", e->src_interface);
if (e->mdata)
_puthdr(qfs->conn, qfs->qid, "M", octstr_get_cstr(e->mdata));
@ -577,7 +585,9 @@ static Octstr *pgq_queue_add(Octstr *from, List *to,
Octstr *url1, Octstr *url2,
List *hdrs,
int dlr,
char *directory, Octstr *mmscname)
char *directory,
char *src_interface,
Octstr *mmscname)
{
char qf[QFNAMEMAX], xqid[128];
int64_t qid;
@ -619,6 +629,7 @@ static Octstr *pgq_queue_add(Octstr *from, List *to,
senddate,expirydate,token,vaspid,vasid,
url1,url2,hdrs,dlr,mmscname,m,
qf,
src_interface,
sizeof(struct pgfile_t), &ms);
qfs = e->qfs_data;

View File

@ -112,6 +112,7 @@ static int free_envelope(MmsEnvelope *e, int removefromqueue);
* a parameter. Letters mean:
* T - message type (full text string -- MMS message type.
* I - message ID
* i - source interface (MM1, MM4, etc.)
* F - From address
* R - Recipient (the ones pending) for this message
* C - Time queue entry was created
@ -222,6 +223,7 @@ static MmsEnvelope *mms_queue_readenvelope(char *qf, char *mms_queuedir, int sho
NULL,
NULL,
qf,
NULL,
sizeof (struct qfile_t), NULL);
qfs = e->qfs_data;
@ -259,6 +261,9 @@ static MmsEnvelope *mms_queue_readenvelope(char *qf, char *mms_queuedir, int sho
case 'I':
e->msgId = octstr_create(res);
break;
case 'i':
strncpy(e->src_interface, res, sizeof e->src_interface);
break;
case 'F':
e->from = octstr_create(res);
if (mms_validate_address(e->from) != 0) {
@ -428,6 +433,9 @@ static int writeenvelope(MmsEnvelope *e, int newenv)
if (e->msgId)
_putline(fd, "I", octstr_get_cstr(e->msgId));
if (e->src_interface[0])
_putline(fd, "i", e->src_interface);
if (e->from)
_putline(fd, "F", octstr_get_cstr(e->from));
@ -717,7 +725,9 @@ static Octstr *mms_queue_add(Octstr *from, List *to,
Octstr *url1, Octstr *url2,
List *hdrs,
int dlr,
char *directory, Octstr *mmscname)
char *directory,
char *src_interface,
Octstr *mmscname)
{
char qf[QFNAMEMAX], subdir[64];
int fd;
@ -736,7 +746,7 @@ static Octstr *mms_queue_add(Octstr *from, List *to,
e = mms_queue_create_envelope(from, to, subject, fromproxy,viaproxy,
senddate,expirydate,token,vaspid,vasid,
url1,url2,hdrs,dlr,mmscname,m,
octstr_get_cstr(res),
octstr_get_cstr(res), src_interface,
sizeof(struct qfile_t), &ms);
qfs = e->qfs_data;
strncpy(qfs->name, qf, sizeof qfs->name);
@ -831,6 +841,7 @@ MmsEnvelope *mms_queue_create_envelope(Octstr *from, List *to,
Octstr *mmscname,
MmsMsg *m,
char *xqfname,
char *src_interface,
int extra_space,
Octstr **binary_mms)
{
@ -879,6 +890,8 @@ MmsEnvelope *mms_queue_create_envelope(Octstr *from, List *to,
e->dlr = dlr;
strncpy(e->src_interface, src_interface ? src_interface : "", sizeof e->src_interface);
if (xqfname)
strncpy(e->xqfname, xqfname, sizeof e->xqfname);

View File

@ -64,6 +64,9 @@ typedef struct MmsEnvelope {
Octstr *mdata; /* Generic string data used by any interface. */
Octstr *fromproxy; /* Which proxy sent us this message.*/
Octstr *viaproxy; /* Which proxy must we send this message through. */
char src_interface[16]; /* source interface of this message. */
char _extra_space; /* A bit of sugar, just in case... */
void *_x; /* Generic storage field used by module clients. */
void *qfs_data; /* Queue handler module structure -- allocated for you by queue_create
@ -90,15 +93,16 @@ typedef struct MmsQueueHandlerFuncs {
* Returns a queue file name.
*/
Octstr *(*mms_queue_add)(Octstr *from, List *to,
Octstr *subject,
Octstr *fromproxy, Octstr *viaproxy,
time_t senddate, time_t expirydate, MmsMsg *m,
Octstr *token,
Octstr *vaspid, Octstr *vasid,
Octstr *url1, Octstr *url2,
List *hdrs,
int dlr,
char *directory, Octstr *mmscname);
Octstr *subject,
Octstr *fromproxy, Octstr *viaproxy,
time_t senddate, time_t expirydate, MmsMsg *m,
Octstr *token,
Octstr *vaspid, Octstr *vasid,
Octstr *url1, Octstr *url2,
List *hdrs,
int dlr,
char *directory, char *src_interface,
Octstr *mmscname);
/*
* Update queue status. Returns -1 on error, 0 if queue is updated fine and
@ -166,6 +170,7 @@ MmsEnvelope *mms_queue_create_envelope(Octstr *from, List *to,
Octstr *mmscname,
MmsMsg *m,
char *xqfname,
char *src_interface,
int extra_space,
Octstr **binary_mms);
/* Get rid of memory used by this. */

View File

@ -227,6 +227,7 @@ static void mm7soap_receive(MmsHTTPClientInfo *h)
qh,
dlr,
octstr_get_cstr(qdir),
"MM7/SOAP-IN",
octstr_imm(MM_NAME));
msgid = mms_maketransid(octstr_get_cstr(qf), octstr_imm(MM_NAME));
mms_log("Received", from, to, -1, msgid, NULL, h->m->id, "MMSBox", h->ua, NULL);
@ -256,6 +257,7 @@ static void mm7soap_receive(MmsHTTPClientInfo *h)
NULL,
0,
octstr_get_cstr(qdir),
"MM7/SOAP-IN",
octstr_imm(MM_NAME));
else
qf = NULL;
@ -297,6 +299,7 @@ static void mm7soap_receive(MmsHTTPClientInfo *h)
NULL,
0,
octstr_get_cstr(qdir),
"MM7/SOAP-IN",
octstr_imm(MM_NAME));
else
qf = NULL;
@ -464,6 +467,7 @@ static void mm7eaif_receive(MmsHTTPClientInfo *h)
NULL,
dlr,
octstr_get_cstr(qdir),
"MM7/EAIF-IN",
octstr_imm(MM_NAME));
if (qf) {
@ -484,6 +488,7 @@ static void mm7eaif_receive(MmsHTTPClientInfo *h)
NULL,
0,
octstr_get_cstr(qdir),
"MM7/EAIF-IN",
octstr_imm(MM_NAME));
if (qf) {
/* Log to access log */
@ -513,6 +518,7 @@ static void mm7eaif_receive(MmsHTTPClientInfo *h)
NULL,
0,
octstr_get_cstr(qdir),
"MM7/EAIF-IN",
octstr_imm(MM_NAME));
if (qf) {
/* Log to access log */

View File

@ -1137,6 +1137,7 @@ static int make_and_queue_msg(Octstr *data, Octstr *ctype, List *reply_headers,
hdrs,
(dlr_url != NULL),
octstr_get_cstr(qdir),
"MMSBox",
octstr_imm(MM_NAME));
info(0, "MMSBox: Queued message from service [%s], [transid [%s]: %s",
octstr_get_cstr(svc_name),

View File

@ -46,8 +46,9 @@ static int mms_logcdr(MmsCdrStruct *cdr)
localtime_r(&cdr->sdate, &tm);
gw_strftime(buf, sizeof buf, "%Y-%m-%d %H:%M:%S", &tm);
fprintf(cdr->module_data, "%s\t%.128s\t%.256s\t%.256s\t%ld\n",
buf, cdr->from, cdr->to, cdr->msgid, cdr->msg_size);
fprintf(cdr->module_data, "%s\t%.128s\t%.128s\t%.256s\t%.256s\t%ld\n",
buf, cdr->src_interface[0] ? cdr->src_interface : "MM2",
cdr->from, cdr->to, cdr->msgid, cdr->msg_size);
fflush(cdr->module_data);
} else
return -1;
@ -55,6 +56,25 @@ static int mms_logcdr(MmsCdrStruct *cdr)
return 0;
}
MmsCdrStruct *make_cdr_struct(void *module_data, time_t sdate, char *from, char *to, char *msgid,
char *vaspid, char *src_int, unsigned long msg_size)
{
MmsCdrStruct *cdr = gw_malloc(sizeof *cdr);
cdr->module_data = module_data;
cdr->sdate = sdate;
strncpy(cdr->from, from ? from : "", sizeof cdr->from);
strncpy(cdr->to, to ? to : "", sizeof cdr->to);
strncpy(cdr->msgid, msgid ? msgid : "", sizeof cdr->msgid);
strncpy(cdr->vaspid, vaspid ? vaspid : "", sizeof cdr->vaspid);
strncpy(cdr->src_interface, src_int ? src_int : "MM2", sizeof cdr->src_interface);
cdr->msg_size = msg_size;
return cdr;
}
/* The function itself. */
MmsBillingFuncStruct mms_billfuncs = {
mms_billingmodule_init,

View File

@ -31,6 +31,7 @@ typedef struct MmsCdrStruct {
char to[CBUFSIZE];
char msgid[CBUFSIZE];
char vaspid[CBUFSIZE];
char src_interface[CBUFSIZE];
unsigned long msg_size;
} MmsCdrStruct;
@ -54,4 +55,7 @@ typedef struct MmsBillingFuncStruct {
extern MmsBillingFuncStruct mms_billfuncs; /* The module must expose this symbol. */
/* utility function. */
MmsCdrStruct *make_cdr_struct(void *module_data, time_t sdate, char *from, char *to, char *msgid,
char *vaspid, char *src_int, unsigned long msg_size);
#endif

View File

@ -278,16 +278,17 @@ int main(int argc, char *argv[])
dlr = 0;
qf = settings->qfs->mms_queue_add(xfrom, lto, NULL, xproxy, NULL,
0, time(NULL) + settings->default_msgexpiry, msg, NULL,
NULL, NULL,
NULL, NULL,
NULL,
dlr,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
0, time(NULL) + settings->default_msgexpiry, msg, NULL,
NULL, NULL,
NULL, NULL,
NULL,
dlr,
octstr_get_cstr(settings->global_queuedir),
mm4_type ? "MM4" : "MM3",
settings->host_alias);
if (qf) {
newmsgid = mms_maketransid(octstr_get_cstr(qf),
settings->host_alias);
settings->host_alias);
info(0, "%s Queued message to %s from %s (via %s) => %s",
mm4_type ? "MM4 Incoming" : "Email2MMS",
octstr_get_cstr(xto), octstr_get_cstr(xfrom),
@ -319,14 +320,15 @@ int main(int argc, char *argv[])
octstr_format_append(xto, "/TYPE=PLMN");
gwlist_append(lto, xto);
qf = settings->qfs->mms_queue_add(xfrom, lto, NULL,
xproxy, NULL,
0, time(NULL) + settings->default_msgexpiry, msg, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
xproxy, NULL,
0, time(NULL) + settings->default_msgexpiry, msg, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->global_queuedir),
"MM4",
settings->host_alias);
gwlist_destroy(lto, NULL);
if (qf) {
info(0, "MM4 Queued DLR from proxy %s to %s from %s => %s",
@ -351,14 +353,15 @@ int main(int argc, char *argv[])
octstr_format_append(xto, "/TYPE=PLMN");
gwlist_append(lto, xto);
qf = settings->qfs->mms_queue_add(xfrom, lto, NULL,
xproxy, NULL,
0, time(NULL) + settings->default_msgexpiry, msg, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
xproxy, NULL,
0, time(NULL) + settings->default_msgexpiry, msg, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->global_queuedir),
"MM4",
settings->host_alias);
gwlist_destroy(lto, NULL);
if (qf) {
info(0, "MM4 Queued read report from proxy %s to %s from %s => %s",
@ -416,17 +419,15 @@ int main(int argc, char *argv[])
/* write CDR if it is a forward confirmation */
if (processed && mtype == MM4_FORWARD_RES &&
rstatus && octstr_str_case_compare(rstatus, "Ok") == 0) {
MmsCdrStruct _cdr, *cdr = &_cdr;
cdr->module_data = settings->mms_bill_module_data;
cdr->sdate = e->created;
strncpy(cdr->from, octstr_get_cstr(e->from), sizeof cdr->from);
strncpy(cdr->to, o_to ? octstr_get_cstr(o_to) : "", sizeof cdr->to);
strncpy(cdr->msgid, e->msgId ? octstr_get_cstr(e->msgId) : "", sizeof cdr->msgid);
strncpy(cdr->vaspid, e->vaspid ? octstr_get_cstr(e->vaspid) : "", sizeof cdr->vaspid);
cdr->msg_size = e->msize;
MmsCdrStruct *cdr = make_cdr_struct(settings->mms_bill_module_data,
e->created, octstr_get_cstr(e->from),
o_to ? octstr_get_cstr(o_to) : "",
e->msgId ? octstr_get_cstr(e->msgId) : "",
e->vaspid ? octstr_get_cstr(e->vaspid) : "",
"MM4", e->msize);
settings->mms_billfuncs->mms_logcdr(cdr);
gw_free(cdr);
}
info(0, "MM4 received %s from proxy %s to %s from %s => %s, status: [%s, %s]",

View File

@ -364,14 +364,15 @@ static int sendMsg(MmsEnvelope *e)
/* Add to queue, switch via proxy to be from proxy. */
qfs = settings->qfs->mms_queue_add(to->rcpt, l,
err, NULL, e->fromproxy,
tnow, tnow+settings->default_msgexpiry, m, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
qdir,
settings->host_alias);
err, NULL, e->fromproxy,
tnow, tnow+settings->default_msgexpiry, m, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
qdir,
"MM2",
settings->host_alias);
octstr_destroy(qfs);
gwlist_destroy(l, NULL);
@ -389,16 +390,15 @@ static int sendMsg(MmsEnvelope *e)
err ? octstr_get_cstr(err) : "(null)");
if (res == MMS_SEND_OK) { /* Do CDR writing. */
MmsCdrStruct *cdr = gw_malloc(sizeof *cdr);
cdr->module_data = settings->mms_bill_module_data;
cdr->sdate = e->created;
strncpy(cdr->from, octstr_get_cstr(e->from), sizeof cdr->from);
strncpy(cdr->to, octstr_get_cstr(to->rcpt), sizeof cdr->to);
strncpy(cdr->msgid, e->msgId ? octstr_get_cstr(e->msgId) : "", sizeof cdr->msgid);
strncpy(cdr->vaspid, e->vaspid ? octstr_get_cstr(e->vaspid) : "", sizeof cdr->vaspid);
cdr->msg_size = e->msize;
MmsCdrStruct *cdr = make_cdr_struct(settings->mms_bill_module_data,
e->created,
octstr_get_cstr(e->from),
octstr_get_cstr(to->rcpt),
e->msgId ? octstr_get_cstr(e->msgId) : "",
e->vaspid ? octstr_get_cstr(e->vaspid) : "",
e->src_interface,
e->msize);
gwlist_produce(cdr_list, cdr); /* Put it on list so sending thread sends it. */
}
octstr_destroy(err);
@ -457,7 +457,9 @@ void mbuni_global_queue_runner(int *rstop)
/* When it ends, wait a little for other stuff to stop... */
sleep(2);
gwlist_remove_producer(cdr_list); /* Stop CDR thread. */
gwlist_destroy(cdr_list, NULL); /* Destroy it. */
return;
}
@ -502,11 +504,12 @@ int mms_sendtomobile(Octstr *from, Octstr *to,
x = octstr_create(tokenstr);
if (m)
ret = settings->qfs->mms_queue_add(from, l, subject, fromproxy, NULL, 0, expires, m,
x, NULL, NULL,
NULL, NULL,
NULL,
dlr, mobile_qdir,
settings->host_alias);
x, NULL, NULL,
NULL, NULL,
NULL,
dlr, mobile_qdir,
"MM2",
settings->host_alias);
else
*error = octstr_format("GlobalSend: Failed to send to %S, Message format is corrupt!", to);

View File

@ -422,14 +422,15 @@ static int sendNotify(MmsEnvelope *e)
/* Add to queue, switch via proxy to be from proxy. */
res = settings->qfs->mms_queue_add(to ? to : settings->system_user, l, err,
NULL, fromproxy,
tnow, tnow+settings->default_msgexpiry, m, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->mm1_queuedir),
settings->host_alias);
NULL, fromproxy,
tnow, tnow+settings->default_msgexpiry, m, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->mm1_queuedir),
"MM2",
settings->host_alias);
gwlist_destroy(l, NULL);
mms_destroy(m);
octstr_destroy(res);

View File

@ -399,13 +399,14 @@ void fetchmms_proxy(MmsHTTPClientInfo *h)
http_header_add(qh, "X-Mbuni-Timestamp", tbuf); /* record time of message. */
x = settings->qfs->mms_queue_add(from, l, NULL, NULL, NULL, 0,
time(NULL) + settings->default_msgexpiry, mrpt, NULL,
NULL, NULL,
NULL, NULL,
qh,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
time(NULL) + settings->default_msgexpiry, mrpt, NULL,
NULL, NULL,
NULL, NULL,
qh,
0,
octstr_get_cstr(settings->global_queuedir),
"MM1",
settings->host_alias);
octstr_destroy(x);
@ -591,8 +592,8 @@ static void sendmms_proxy(MmsHTTPClientInfo *h)
mmbox_loc = mms_makefetchurl(octstr_get_cstr(sdf), NULL, MMS_LOC_MMBOX, from, settings);
}
if (x)
octstr_destroy(x);
octstr_destroy(x);
/*Delete some headers that must be sent on. */
mms_remove_headers(m, "Bcc");
@ -611,13 +612,14 @@ static void sendmms_proxy(MmsHTTPClientInfo *h)
else
dlr = 0;
qf = settings->qfs->mms_queue_add(from, to, subject,
NULL, NULL, deliveryt, expiryt, m, NULL,
NULL, NULL,
NULL, NULL,
qh,
dlr,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
NULL, NULL, deliveryt, expiryt, m, NULL,
NULL, NULL,
NULL, NULL,
qh,
dlr,
octstr_get_cstr(settings->global_queuedir),
"MM1",
settings->host_alias);
if (!qf)
mresp = mms_sendconf("Error-transient-failure", "None", octstr_get_cstr(otransid),0,
@ -792,13 +794,14 @@ static void sendmms_proxy(MmsHTTPClientInfo *h)
dlr = 0;
/* Message to forward is now ready, write it to queue. */
qf2 = settings->qfs->mms_queue_add(from, to, subject,
NULL, NULL, deliveryt, expiryt, mfwd, NULL,
NULL, NULL,
NULL, NULL,
qh,
dlr,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
NULL, NULL, deliveryt, expiryt, mfwd, NULL,
NULL, NULL,
NULL, NULL,
qh,
dlr,
octstr_get_cstr(settings->global_queuedir),
"MM1",
settings->host_alias);
/* Process any requests for writing to mmbox. */
x = mms_get_header_value(m, octstr_imm("X-Mms-Store"));
@ -881,40 +884,33 @@ static void sendmms_proxy(MmsHTTPClientInfo *h)
gwlist_append(l, pfrom);
x = settings->qfs->mms_queue_add(from, l, NULL, NULL, NULL, 0,
time(NULL) + settings->default_msgexpiry,
mrep, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
time(NULL) + settings->default_msgexpiry,
mrep, NULL,
NULL, NULL,
NULL, NULL,
NULL,
0,
octstr_get_cstr(settings->global_queuedir),
"MM1",
settings->host_alias);
if (x)
octstr_destroy(x);
gwlist_destroy(l, NULL);
mms_destroy(mrep);
}
if (pfrom)
octstr_destroy(pfrom);
if (pdelivery_report)
octstr_destroy(pdelivery_report);
if (pmsgid)
octstr_destroy(pmsgid);
if (msgid)
octstr_destroy(msgid);
if (xstate)
octstr_destroy(xstate);
if (xflags)
gwlist_destroy(xflags, (gwlist_item_destructor_t *)octstr_destroy);
octstr_destroy(pfrom);
octstr_destroy(pdelivery_report);
octstr_destroy(pmsgid);
octstr_destroy(msgid);
octstr_destroy(xstate);
gwlist_destroy(xflags, (gwlist_item_destructor_t *)octstr_destroy);
}
forward_done:
if (mfwd)
mms_destroy(mfwd);
mms_destroy(mfwd);
if (e) { /* Update the message queue and go. */
e->lastaccess = time(NULL);
@ -992,13 +988,14 @@ static void sendmms_proxy(MmsHTTPClientInfo *h)
gwlist_append(l, octstr_duplicate(e->from));
x = settings->qfs->mms_queue_add(from, l, NULL, NULL, NULL, 0,
time(NULL) + settings->default_msgexpiry, mrpt, NULL,
NULL, NULL,
NULL, NULL,
qh,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
time(NULL) + settings->default_msgexpiry, mrpt, NULL,
NULL, NULL,
NULL, NULL,
qh,
0,
octstr_get_cstr(settings->global_queuedir),
"MM1",
settings->host_alias);
octstr_destroy(x);
gwlist_destroy(l, (gwlist_item_destructor_t *)octstr_destroy);
@ -1043,14 +1040,15 @@ static void sendmms_proxy(MmsHTTPClientInfo *h)
NULL, NULL);
x = settings->qfs->mms_queue_add(from, to, NULL, NULL, NULL, time(NULL),
time(NULL) + settings->default_msgexpiry,
m, NULL,
NULL, NULL,
NULL, NULL,
qh,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
time(NULL) + settings->default_msgexpiry,
m, NULL,
NULL, NULL,
NULL, NULL,
qh,
0,
octstr_get_cstr(settings->global_queuedir),
"MM1",
settings->host_alias);
/* Log to access log */
mms_log("ReadReport", h->client_addr, NULL, msize, NULL, NULL, NULL, "MM1", h->ua,NULL);
@ -1611,14 +1609,15 @@ static void mm7soap_dispatch(MmsHTTPClientInfo *h)
expiryt = time(NULL) + settings->default_msgexpiry;
mms_remove_headers(m, "Message-ID"); /* cannot be found here. */
qf = settings->qfs->mms_queue_add(from ? from : sender, to, subject,
NULL, NULL,
delivert, expiryt, m, NULL,
h->vasp->id, vasid,
NULL, NULL,
NULL,
dlr,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
NULL, NULL,
delivert, expiryt, m, NULL,
h->vasp->id, vasid,
NULL, NULL,
NULL,
dlr,
octstr_get_cstr(settings->global_queuedir),
"MM7",
settings->host_alias);
msgid = mms_maketransid(octstr_get_cstr(qf), settings->host_alias);
mms_log("Received", from ? from : sender, to, -1, msgid, h->vasp->id, NULL, "MM7",
h->ua, NULL);
@ -1847,13 +1846,14 @@ static void mm7eaif_dispatch(MmsHTTPClientInfo *h)
/* Save it, make msgid, put message id in header, return. */
qf = settings->qfs->mms_queue_add(hfrom, to, subject,
NULL, NULL, deliveryt, expiryt, m, NULL,
NULL, NULL,
NULL, NULL,
NULL,
dlr,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
NULL, NULL, deliveryt, expiryt, m, NULL,
NULL, NULL,
NULL, NULL,
NULL,
dlr,
octstr_get_cstr(settings->global_queuedir),
"MM7",
settings->host_alias);
if (qf) {
msgid = mms_maketransid(octstr_get_cstr(qf),

View File

@ -155,20 +155,21 @@ int main(int argc, char *argv[])
http_header_add(h, "X-Mms-CalledFrom", "Terminal");
#endif
s = settings->qfs->mms_queue_add(from, to, NULL, NULL, NULL, time(NULL),
time(NULL) + settings->default_msgexpiry, m,
NULL,
NULL, NULL,
NULL, NULL,
h,
0,
octstr_get_cstr(settings->global_queuedir),
settings->host_alias);
time(NULL) + settings->default_msgexpiry, m,
NULL,
NULL, NULL,
NULL, NULL,
h,
0,
octstr_get_cstr(settings->global_queuedir),
"MM3",
settings->host_alias);
if (savetommbox)
mmbox = mms_mmbox_addmsg(octstr_get_cstr(settings->mmbox_rootdir),
octstr_get_cstr(from), m, NULL, octstr_imm("Sent"));
mms_log("Received", from, to, msize, s, NULL, NULL, "mmssend",NULL,NULL);
mms_log("Received", from, to, msize, s, NULL, NULL, "MM3",NULL,NULL);
printf("Queued: %s, mmbox=%s\n",
octstr_get_cstr(s), mmbox ? octstr_get_cstr(mmbox) : "");