mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-13 07:45:26 +00:00
freetdm: adding x-ocn-* headers for incoming sip calls
This commit is contained in:
parent
1f34c9301e
commit
3f43b053a0
@ -26,6 +26,7 @@
|
||||
* Anthony Minessale II <anthm@freeswitch.org>
|
||||
* Moises Silva <moy@sangoma.com>
|
||||
* David Yat Sin <dyatsin@sangoma.com>
|
||||
* James Zhang <jzhang@sangoma.com>
|
||||
*
|
||||
*
|
||||
* mod_freetdm.c -- FreeTDM Endpoint Module
|
||||
|
@ -200,6 +200,7 @@ ftdm_status_t handle_con_ind(uint32_t suInstId, uint32_t spInstId, uint32_t circ
|
||||
SS7_INFO_CHAN(ftdmchan,"No Called party (DNIS) information in IAM!%s\n", " ");
|
||||
}
|
||||
|
||||
copy_ocn_from_sngss7(ftdmchan, &siConEvnt->origCdNum);
|
||||
copy_redirgNum_from_sngss7(ftdmchan, &siConEvnt->redirgNum);
|
||||
copy_redirgInfo_from_sngss7(ftdmchan, &siConEvnt->redirInfo);
|
||||
copy_genNmb_from_sngss7(ftdmchan, &siConEvnt->genNmb);
|
||||
|
@ -640,7 +640,41 @@ ftdm_status_t copy_redirgInfo_to_sngss7(ftdm_channel_t *ftdmchan, SiRedirInfo *r
|
||||
|
||||
ftdm_status_t copy_ocn_from_sngss7(ftdm_channel_t *ftdmchan, SiOrigCdNum *origCdNum)
|
||||
{
|
||||
return FTDM_FAIL;
|
||||
|
||||
char val[20];
|
||||
sngss7_chan_data_t *sngss7_info = ftdmchan->call_data;
|
||||
|
||||
if (origCdNum->eh.pres != PRSNT_NODEF ) {
|
||||
ftdm_log_chan_msg(ftdmchan, FTDM_LOG_DEBUG, "No Original Called Number available\n");
|
||||
return FTDM_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
if (origCdNum->addrSig.pres == PRSNT_NODEF) {
|
||||
copy_tknStr_from_sngss7(origCdNum->addrSig, val, origCdNum->oddEven);
|
||||
ftdm_log_chan(ftdmchan, FTDM_LOG_DEBUG, "Original Called Number digits:%s\n", val);
|
||||
sngss7_add_var(sngss7_info, "ss7_ocn", val);
|
||||
}
|
||||
|
||||
if (origCdNum->natAddr.pres == PRSNT_NODEF) {
|
||||
snprintf(val, sizeof(val), "%d", origCdNum->natAddr.val);
|
||||
ftdm_log_chan(ftdmchan, FTDM_LOG_DEBUG, "Original Called Number - NADI:%s\n", val);
|
||||
sngss7_add_var(sngss7_info, "ss7_ocn_nadi", val);
|
||||
}
|
||||
|
||||
if (origCdNum->numPlan.pres == PRSNT_NODEF) {
|
||||
snprintf(val, sizeof(val), "%d", origCdNum->numPlan.val);
|
||||
ftdm_log_chan(ftdmchan, FTDM_LOG_DEBUG, "Original Called Number -plan:%s\n", val);
|
||||
sngss7_add_var(sngss7_info, "ss7_ocn_plan", val);
|
||||
}
|
||||
|
||||
if (origCdNum->presRest.pres == PRSNT_NODEF) {
|
||||
snprintf(val, sizeof(val), "%d", origCdNum->presRest.val);
|
||||
ftdm_log_chan(ftdmchan, FTDM_LOG_DEBUG, "Original Called Number - presentation:%s\n", val);
|
||||
sngss7_add_var(sngss7_info, "ss7_ocn_pres", val);
|
||||
}
|
||||
|
||||
return FTDM_SUCCESS;
|
||||
}
|
||||
|
||||
ftdm_status_t copy_ocn_to_sngss7(ftdm_channel_t *ftdmchan, SiOrigCdNum *origCdNum)
|
||||
|
Loading…
x
Reference in New Issue
Block a user