freetdm: ISDN - allow reception of NOTIFY msg

This commit is contained in:
David Yat Sin 2011-08-03 11:53:40 -04:00
parent 65bac44b32
commit 473fd0ce89
4 changed files with 23 additions and 5 deletions

View File

@ -361,6 +361,7 @@ void sngisdn_process_cnst_ind (sngisdn_event_data_t *sngisdn_event)
(evntType == MI_CALLPROC)?"PROCEED": (evntType == MI_CALLPROC)?"PROCEED":
(evntType == MI_PROGRESS)?"PROGRESS": (evntType == MI_PROGRESS)?"PROGRESS":
(evntType == MI_SETUPACK)?"SETUP ACK": (evntType == MI_SETUPACK)?"SETUP ACK":
(evntType == MI_NOTIFY)?"NOTIFY":
(evntType == MI_INFO)?"INFO":"UNKNOWN", (evntType == MI_INFO)?"INFO":"UNKNOWN",
suId, suInstId, spInstId, ces); suId, suInstId, spInstId, ces);
@ -493,7 +494,10 @@ void sngisdn_process_cnst_ind (sngisdn_event_data_t *sngisdn_event)
break; break;
} }
} }
break;
case MI_NOTIFY:
ftdm_log_chan(ftdmchan, FTDM_LOG_DEBUG, "Processing NOTIFY (suId:%u suInstId:%u spInstId:%u)\n", suId, suInstId, spInstId);
/* Do nothing */
break; break;
default: default:
ftdm_log_chan_msg(ftdmchan, FTDM_LOG_WARNING, "Unhandled STATUS event\n"); ftdm_log_chan_msg(ftdmchan, FTDM_LOG_WARNING, "Unhandled STATUS event\n");

View File

@ -168,6 +168,7 @@ void sngisdn_rcv_cnst_ind (int16_t suId, uint32_t suInstId, uint32_t spInstId, C
(evntType == MI_CALLPROC)?"PROCEED": (evntType == MI_CALLPROC)?"PROCEED":
(evntType == MI_PROGRESS)?"PROGRESS": (evntType == MI_PROGRESS)?"PROGRESS":
(evntType == MI_SETUPACK)?"SETUP ACK": (evntType == MI_SETUPACK)?"SETUP ACK":
(evntType == MI_NOTIFY)?"NOTIFY":
(evntType == MI_INFO)?"INFO":"UNKNOWN", (evntType == MI_INFO)?"INFO":"UNKNOWN",
suId, suInstId, spInstId, ces); suId, suInstId, spInstId, ces);

View File

@ -737,8 +737,16 @@ uint32_t sngisdn_decode_ie(char *str, uint32_t *str_len, uint8_t current_codeset
calling_subaddr_string, (j-1), get_code_2_str(type, dcodQ931TypeOfSubaddressTable), type); calling_subaddr_string, (j-1), get_code_2_str(type, dcodQ931TypeOfSubaddressTable), type);
} }
break; break;
case PROT_Q931_IE_REDIRECTION_NUMBER:
case PROT_Q931_IE_NOTIFICATION_IND: case PROT_Q931_IE_NOTIFICATION_IND:
{
uint8_t desc;
desc = get_bits(OCTET(3),1,7);
*str_len += sprintf(&str[*str_len], "%s (%d)\n",
get_code_2_str(desc, dcodQ931NotificationIndTable), desc);
}
break;
case PROT_Q931_IE_REDIRECTION_NUMBER:
case PROT_Q931_IE_DATE_TIME: case PROT_Q931_IE_DATE_TIME:
case PROT_Q931_IE_INFORMATION_REQUEST: case PROT_Q931_IE_INFORMATION_REQUEST:
case PROT_Q931_IE_SIGNAL: case PROT_Q931_IE_SIGNAL:

View File

@ -591,4 +591,9 @@ struct code2str dcodQ931AssocInfoTable[] = {
{ -1, "Invalid"}, { -1, "Invalid"},
}; };
struct code2str dcodQ931NotificationIndTable[] = {
{ 0x71, "Call Information/event"},
{ -1, "Invalid"},
};
#endif /* __FTMOD_SANGOMA_ISDN_TRACE_H__ */ #endif /* __FTMOD_SANGOMA_ISDN_TRACE_H__ */