chlog: freetdm: SS7 - added TX of CPG message in progress media state
This commit is contained in:
parent
43a8683a4a
commit
bf41cc27a1
|
@ -656,10 +656,10 @@ ftdm_status_t ftdm_sangoma_ss7_process_state_change (ftdm_channel_t * ftdmchan)
|
||||||
if (ftdm_test_flag (ftdmchan, FTDM_CHANNEL_OUTBOUND)) {
|
if (ftdm_test_flag (ftdmchan, FTDM_CHANNEL_OUTBOUND)) {
|
||||||
/* inform the user there is media avai */
|
/* inform the user there is media avai */
|
||||||
sngss7_send_signal(sngss7_info, FTDM_SIGEVENT_PROGRESS_MEDIA);
|
sngss7_send_signal(sngss7_info, FTDM_SIGEVENT_PROGRESS_MEDIA);
|
||||||
|
} else {
|
||||||
|
ft_to_sngss7_cpg(ftdmchan);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* nothing to do at this time */
|
|
||||||
break;
|
break;
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
case FTDM_CHANNEL_STATE_UP: /*call is accpeted...both incoming and outgoing */
|
case FTDM_CHANNEL_STATE_UP: /*call is accpeted...both incoming and outgoing */
|
||||||
|
|
|
@ -751,6 +751,7 @@ int ftmod_ss7_isup_ckt_sta(uint32_t id, unsigned char *state);
|
||||||
/* in ftmod_sangoma_ss7_out.c */
|
/* in ftmod_sangoma_ss7_out.c */
|
||||||
void ft_to_sngss7_iam(ftdm_channel_t *ftdmchan);
|
void ft_to_sngss7_iam(ftdm_channel_t *ftdmchan);
|
||||||
void ft_to_sngss7_acm(ftdm_channel_t *ftdmchan);
|
void ft_to_sngss7_acm(ftdm_channel_t *ftdmchan);
|
||||||
|
void ft_to_sngss7_cpg (ftdm_channel_t *ftdmchan);
|
||||||
void ft_to_sngss7_anm(ftdm_channel_t *ftdmchan);
|
void ft_to_sngss7_anm(ftdm_channel_t *ftdmchan);
|
||||||
void ft_to_sngss7_rel(ftdm_channel_t *ftdmchan);
|
void ft_to_sngss7_rel(ftdm_channel_t *ftdmchan);
|
||||||
void ft_to_sngss7_rlc(ftdm_channel_t *ftdmchan);
|
void ft_to_sngss7_rlc(ftdm_channel_t *ftdmchan);
|
||||||
|
|
|
@ -36,6 +36,8 @@
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
|
|
||||||
/* DEFINES ********************************************************************/
|
/* DEFINES ********************************************************************/
|
||||||
|
#define SNGSS7_EVNTINFO_IND_INBAND_AVAIL 0x03
|
||||||
|
/******************************************************************************/
|
||||||
|
|
||||||
/* GLOBALS ********************************************************************/
|
/* GLOBALS ********************************************************************/
|
||||||
|
|
||||||
|
@ -171,6 +173,7 @@ void ft_to_sngss7_acm (ftdm_channel_t * ftdmchan)
|
||||||
acm.optBckCalInd.simpleSegmInd.pres = PRSNT_DEF;
|
acm.optBckCalInd.simpleSegmInd.pres = PRSNT_DEF;
|
||||||
acm.optBckCalInd.mlppUserInd.pres = PRSNT_DEF;
|
acm.optBckCalInd.mlppUserInd.pres = PRSNT_DEF;
|
||||||
acm.optBckCalInd.usrNetIneractInd.pres = PRSNT_DEF;
|
acm.optBckCalInd.usrNetIneractInd.pres = PRSNT_DEF;
|
||||||
|
acm.optBckCalInd.netExcDelInd.pres = PRSNT_DEF;
|
||||||
} /* if (sngss7_test_options(isup_intf, SNGSS7_ACM_OBCI_BITA)) */
|
} /* if (sngss7_test_options(isup_intf, SNGSS7_ACM_OBCI_BITA)) */
|
||||||
|
|
||||||
/* send the ACM request to LibSngSS7 */
|
/* send the ACM request to LibSngSS7 */
|
||||||
|
@ -187,6 +190,32 @@ void ft_to_sngss7_acm (ftdm_channel_t * ftdmchan)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ft_to_sngss7_cpg (ftdm_channel_t *ftdmchan)
|
||||||
|
{
|
||||||
|
SiCnStEvnt cpg;
|
||||||
|
SS7_FUNC_TRACE_ENTER (__FUNCTION__);
|
||||||
|
|
||||||
|
sngss7_chan_data_t *sngss7_info = ftdmchan->call_data;
|
||||||
|
|
||||||
|
|
||||||
|
memset (&cpg, 0, sizeof (cpg));
|
||||||
|
|
||||||
|
cpg.evntInfo.eh.pres = PRSNT_NODEF;
|
||||||
|
|
||||||
|
cpg.evntInfo.evntInd.pres = PRSNT_NODEF;
|
||||||
|
cpg.evntInfo.evntInd.val = SNGSS7_EVNTINFO_IND_INBAND_AVAIL; /* Event Indicator = In-band info is now available */
|
||||||
|
|
||||||
|
cpg.evntInfo.evntPresResInd.pres = PRSNT_NODEF;
|
||||||
|
cpg.evntInfo.evntPresResInd.val = 0; /* Event presentation restricted indicator = no indication */
|
||||||
|
|
||||||
|
/* send the CPG request to LibSngSS7 */
|
||||||
|
sng_cc_con_status (1, sngss7_info->suInstId, sngss7_info->spInstId, sngss7_info->circuit->id, &cpg, PROGRESS);
|
||||||
|
|
||||||
|
ftdm_log_chan(ftdmchan, FTDM_LOG_INFO, "[CIC:%d]Tx CPG\n", sngss7_info->circuit->cic);
|
||||||
|
ftdm_call_clear_vars(&ftdmchan->caller_data);
|
||||||
|
SS7_FUNC_TRACE_EXIT (__FUNCTION__);
|
||||||
|
return;
|
||||||
|
}
|
||||||
void ft_to_sngss7_anm (ftdm_channel_t * ftdmchan)
|
void ft_to_sngss7_anm (ftdm_channel_t * ftdmchan)
|
||||||
{
|
{
|
||||||
SS7_FUNC_TRACE_ENTER (__FUNCTION__);
|
SS7_FUNC_TRACE_ENTER (__FUNCTION__);
|
||||||
|
|
Loading…
Reference in New Issue