1
0
Fork 0

*** empty log message ***

This commit is contained in:
bagyenda 2009-02-26 12:42:39 +00:00
parent cda686d77a
commit a721364402
8 changed files with 63 additions and 13 deletions

View File

@ -1,3 +1,6 @@
2009-02-25 P. A. Bagyenda <bagyenda@dsmagic.com>
* Added ChargedParty MM7/SOAP param to mmsbox
* Fixed: Improper setting of log level
2009-02-24 P. A. Bagyenda <bagyenda@dsmagic.com>
* Pass MM7/SOAP LinkedID to service url in mmsbox
* Minor improvements in pgsql-queue error reporting

View File

@ -3080,6 +3080,15 @@ faked-sender = 100<br>
</td>
</tr>
<tr>
<td valign=top >
<tt>charged-party</tt>
</td>
<td valign=top>
Optional. Set to the MM7/SOAP <tt>ChargedParty</tt> parameter.
</td>
</tr>
</table>
</p>
@ -3735,6 +3744,29 @@ Strings
</td>
</tr>
<tr>
<td valign=top >
<tt>X-Mbuni-DistributionIndicator</tt>
</td>
<td valign=top >
Should be set to the <tt>DistributionIndicator</tt> value to be
passed to the MMSC in the MM7/SOAP message submission.
</td>
</tr>
<tr>
<td valign=top >
<tt>X-Mbuni-Charged-Party</tt>
</td>
<td valign=top >
Should be set to the <tt>ChargedParty</tt> value to be
passed to the MMSC in the MM7/SOAP message submission.
</td>
</tr>
</table>
</p>

View File

@ -53,7 +53,7 @@ int mms_cfg_get_int(mCfg *cfg, mCfgGrp *grp, Octstr *name, long *n);
/* Get a boolean field value from a group.
* returns 0 on success, -1 on error
*/
int mms_cfg_get_bool(mCfg *cfg, mCfgGrp *grp, Octstr *name, int *bool);
int mms_cfg_get_bool(mCfg *cfg, mCfgGrp *grp, Octstr *name, int *val);
/* Get a field value from a group. */
List *mms_cfg_get_list(mCfg *cfg, mCfgGrp *grp, Octstr *name);

View File

@ -1017,13 +1017,13 @@ MSoapMsg_t *mm7_mmsmsg_to_soap(MmsMsg *msg, Octstr *from, List *xto,
char *vaspid, char *vasid,
Octstr *uaprof,
time_t uaprof_tstamp,
Octstr *distrib_indicator)
List *hdrs)
{
int i, n, mtype = mms_messagetype(msg);
MSoapMsg_t *m = NULL;
Octstr *xfrom = (from != NULL) ? octstr_format("+ %S", from) : NULL, *s;
Octstr *xuaprof_val = (uaprof) ? octstr_format("%S,%ld", uaprof, uaprof_tstamp) : NULL;
switch(mtype) {
case MMS_MSGTYPE_SEND_REQ:
case MMS_MSGTYPE_RETRIEVE_CONF:
@ -1054,6 +1054,8 @@ MSoapMsg_t *mm7_mmsmsg_to_soap(MmsMsg *msg, Octstr *from, List *xto,
if (isclientside) {
Octstr *distrib_indicator = hdrs ? http_header_value(hdrs, octstr_imm("X-Mbuni-DistributionIndicator")) : NULL;
Octstr *cparty = hdrs ? http_header_value(hdrs, octstr_imm("X-Mbuni-Charged-Party")) : NULL;
if (vaspid)
http_header_add(m->envelope, "VASPID", vaspid);
if (vasid)
@ -1075,6 +1077,12 @@ MSoapMsg_t *mm7_mmsmsg_to_soap(MmsMsg *msg, Octstr *from, List *xto,
if (distrib_indicator)
http_header_add(m->envelope, "DistributionIndicator",
octstr_str_case_compare(distrib_indicator, "true") == 0 ? "true" : "false");
if (cparty)
http_header_add(m->envelope, "ChargedParty",
octstr_get_cstr(cparty));
octstr_destroy(distrib_indicator);
octstr_destroy(cparty);
} else { /* not clientside. */
if (xuaprof_val) /* only on DeliverReq. */
http_header_add(m->envelope, "UACapabilities", octstr_get_cstr(xuaprof_val));
@ -1182,7 +1190,8 @@ MSoapMsg_t *mm7_mmsmsg_to_soap(MmsMsg *msg, Octstr *from, List *xto,
octstr_destroy(xfrom);
octstr_destroy(xuaprof_val);
return m;
}

View File

@ -73,7 +73,7 @@ MSoapMsg_t *mm7_mmsmsg_to_soap(MmsMsg *msg, Octstr *from, List *xto,
char *vaspid, char *vasid,
Octstr *uaprof,
time_t uaprof_tstamp,
Octstr *distrib_indicator);
List *extra_hdrs);
MSoapMsg_t *mm7_make_resp(MSoapMsg_t *mreq, int status, Octstr *msgid, int isclientside);
/* Return the header value for some header. */
Octstr *mm7_soap_header_value(MSoapMsg_t *m, Octstr *header);

View File

@ -56,7 +56,6 @@ int mms_load_core_settings(mCfg *cfg, mCfgGrp *cgrp)
if (mms_cfg_get_int(cfg, cgrp, octstr_imm("log-level"), &loglevel) == -1)
loglevel = 0;
log_open(octstr_get_cstr(log), loglevel, GW_NON_EXCL);
log_set_log_level(GW_INFO);
octstr_destroy(log);
}

View File

@ -1041,7 +1041,7 @@ static Octstr *mm7soap_send(MmscGrp *mmc, Octstr *from, Octstr *to,
MSoapMsg_t *mreq = NULL, *mresp = NULL;
List *rh = NULL, *ph = NULL;
Octstr *body = NULL, *rbody = NULL, *url = NULL;
Octstr *s, *distrib = NULL;
Octstr *s;
char *xvasid = vasid ? vasid : (mmc->default_vasid ? octstr_get_cstr(mmc->default_vasid) : NULL);
mms_info(0, "MM7", mmc->id, "MMSBox: Send[soap] to MMSC[%s], msg type [%s], from %s, to %s",
@ -1051,14 +1051,12 @@ static Octstr *mm7soap_send(MmscGrp *mmc, Octstr *from, Octstr *to,
gwlist_append(xto, to);
if (hdrs)
distrib = http_header_value(hdrs, octstr_imm("X-Mbuni-DistributionIndicator"));
if ((mreq = mm7_mmsmsg_to_soap(m, (mmc == NULL || mmc->no_senderaddress == 0) ? from : NULL,
xto, transid,
service_code,
linkedid,
1, octstr_get_cstr(mmc->vasp_id), xvasid, NULL, 0,/* UA N/A on this side. */
distrib)) == NULL) {
hdrs)) == NULL) {
*error = octstr_format("Failed to convert Msg[%S] 2 SOAP message!",
mms_message_type_to_string(mtype));
goto done1;
@ -1146,7 +1144,7 @@ done1:
http_destroy_headers(ph);
octstr_destroy(rbody);
octstr_destroy(url);
octstr_destroy(distrib);
gwlist_destroy(xto, NULL);
return ret;

View File

@ -1026,7 +1026,7 @@ static int make_and_queue_msg(Octstr *data, Octstr *ctype, List *reply_headers,
{
Octstr *from = NULL, *xfrom = NULL, *subject = NULL, *turl = get_toplevel_url(base_url);
Octstr *dlr_url = NULL, *rr_url = NULL, *mmc = NULL, *xservice_code = NULL, *hsvc_code = NULL;
Octstr *allow_adaptations = NULL, *mclass = NULL, *prio = NULL, *distro = NULL;
Octstr *allow_adaptations = NULL, *mclass = NULL, *prio = NULL, *distro = NULL, *chargedparty = NULL;
MmsMsg *m = NULL;
MIMEEntity *me = mime_entity_create();
List *xheaders = NULL;
@ -1083,6 +1083,7 @@ static int make_and_queue_msg(Octstr *data, Octstr *ctype, List *reply_headers,
mclass = http_header_value(reply_headers, octstr_imm("X-Mbuni-MessageClass"));
prio = http_header_value(reply_headers, octstr_imm("X-Mbuni-Priority"));
hsvc_code = http_header_value(reply_headers, octstr_imm("X-Mbuni-ServiceCode"));
chargedparty = http_header_value(reply_headers, octstr_imm("X-Mbuni-Charged-Party"));
}
if (reply_headers) {
@ -1308,6 +1309,9 @@ static int make_and_queue_msg(Octstr *data, Octstr *ctype, List *reply_headers,
if (distro) /* always add distrib */
http_header_add(hdrs, "X-Mbuni-DistributionIndicator",
(octstr_str_case_compare(distro, "true") == 0) ? "true" : "false");
if (chargedparty)
http_header_add(hdrs, "X-Mbuni-Charged-Party", octstr_get_cstr(chargedparty));
if (passthro_headers && reply_headers) { /* if user wants passthro headers, get them and add them. */
int n = gwlist_len(reply_headers);
int i;
@ -1364,7 +1368,8 @@ done:
octstr_destroy(subject);
octstr_destroy(otransid);
octstr_destroy(turl);
octstr_destroy(chargedparty);
octstr_destroy(xmhdr);
octstr_destroy(xmhdr_val);
if (me)
@ -1431,6 +1436,7 @@ static void dispatch_sendmms_recv(List *rl)
Octstr *send_type = http_cgi_variable(h->cgivars, "mms-direction");
Octstr *sheader = http_cgi_variable(h->cgivars, "extra-content-header");
Octstr *validity = http_cgi_variable(h->cgivars, "validityperiod");
Octstr *chargedparty = http_cgi_variable(h->cgivars, "charged-party");
Octstr *data_url = NULL;
dlr_url = http_cgi_variable(h->cgivars, "dlr-url");
@ -1549,6 +1555,9 @@ static void dispatch_sendmms_recv(List *rl)
if (sheader)
HTTP_REPLACE_HEADER(rh, "X-Mbuni-Content-Header", octstr_get_cstr(sheader));
if (chargedparty)
HTTP_REPLACE_HEADER(rh, "X-Mbuni-Charged-Party", octstr_get_cstr(chargedparty));
if (validity) {
int diff = atoi(octstr_get_cstr(validity));