@ -1546,9 +1546,20 @@ static void v5_sig_ind(pstn_t *pstn, uint8_t *data, int len)
break ;
case PSTN_V5_IE_PULSED_SIGNAL :
switch ( ( data [ 2 ] & 0x7f ) ) {
case PSTN_V5_PULSED_SIGNAL_REG_RECAL :
PDEBUG ( DTEL , DEBUG_INFO , " Received register recall signal. \n " ) ;
if ( pstn - > recall & & ( pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_ACTIVE
| | pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_ENBLOCK
| | pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_OVERLAP_NET ) ) {
PDEBUG ( DTEL , DEBUG_INFO , " Performing hookflash, register recall signal was received. \n " ) ;
hookflash ( pstn ) ;
}
break ;
case PSTN_V5_PULSED_SIGNAL_ON_HOOK :
PDEBUG ( DTEL , DEBUG_INFO , " Received pulsed on-kook signal. \n " ) ;
if ( pstn - > recall & & pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_ACTIVE ) {
if ( pstn - > recall & & ( pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_ACTIVE
| | pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_ENBLOCK
| | pstn - > call [ PSTN_CALL_ACTIVE ] - > state = = CALL_STATE_OVERLAP_NET ) ) {
PDEBUG ( DTEL , DEBUG_INFO , " Performing hookflash, on-hook pulse was received. \n " ) ;
hookflash ( pstn ) ;
}