*/
static __inline__ zap_status_t process_event(zap_span_t *span, zap_event_t *event)
{
- zap_sigmsg_t sig;
-
- memset(&sig, 0, sizeof(sig));
- sig.chan_id = event->channel->chan_id;
- sig.span_id = event->channel->span_id;
- sig.channel = event->channel;
-
zap_log(ZAP_LOG_DEBUG, "EVENT [%s][%d:%d] STATE [%s]\n",
zap_oob_event2str(event->enum_id), event->channel->span_id, event->channel->chan_id, zap_channel_state2str(event->channel->state));
switch(event->enum_id) {
case ZAP_OOB_ALARM_TRAP:
{
- sig.event_id = ZAP_OOB_ALARM_TRAP;
if (event->channel->state != ZAP_CHANNEL_STATE_DOWN) {
if (event->channel->type == ZAP_CHAN_TYPE_B) {
zap_set_state_locked(event->channel, ZAP_CHANNEL_STATE_RESTART);
zap_channel_get_alarms(event->channel);
- zap_span_send_signal(span, &sig);
zap_log(ZAP_LOG_WARNING, "channel %d:%d (%d:%d) has alarms! [%s]\n",
event->channel->span_id, event->channel->chan_id,
event->channel->physical_span_id, event->channel->physical_chan_id,
zap_log(ZAP_LOG_WARNING, "channel %d:%d (%d:%d) alarms Cleared!\n", event->channel->span_id, event->channel->chan_id,
event->channel->physical_span_id, event->channel->physical_chan_id);
- sig.event_id = ZAP_OOB_ALARM_CLEAR;
zap_clear_flag(event->channel, ZAP_CHANNEL_SUSPENDED);
zap_channel_get_alarms(event->channel);
- zap_span_send_signal(span, &sig);
}
break;
}
*/
static __inline__ zap_status_t process_event(zap_span_t *span, zap_event_t *event)
{
- zap_sigmsg_t sig;
-
- memset(&sig, 0, sizeof(sig));
- sig.chan_id = event->channel->chan_id;
- sig.span_id = event->channel->span_id;
- sig.channel = event->channel;
-
zap_log(ZAP_LOG_DEBUG, "EVENT [%s][%d][%d:%d] STATE [%s]\n",
zap_oob_event2str(event->enum_id), event->enum_id, event->channel->span_id, event->channel->chan_id, zap_channel_state2str(event->channel->state));
switch(event->enum_id) {
case ZAP_OOB_ALARM_TRAP:
{
- sig.event_id = ZAP_OOB_ALARM_TRAP;
if (event->channel->state != ZAP_CHANNEL_STATE_DOWN) {
if (event->channel->type == ZAP_CHAN_TYPE_B) {
zap_set_state_locked(event->channel, ZAP_CHANNEL_STATE_RESTART);
zap_channel_get_alarms(event->channel);
- zap_span_send_signal(span, &sig);
zap_log(ZAP_LOG_WARNING, "channel %d:%d (%d:%d) has alarms! [%s]\n",
event->channel->span_id, event->channel->chan_id,
event->channel->physical_span_id, event->channel->physical_chan_id,
break;
case ZAP_OOB_ALARM_CLEAR:
{
-
zap_log(ZAP_LOG_WARNING, "channel %d:%d (%d:%d) alarms Cleared!\n", event->channel->span_id, event->channel->chan_id,
event->channel->physical_span_id, event->channel->physical_chan_id);
- sig.event_id = ZAP_OOB_ALARM_CLEAR;
zap_clear_flag(event->channel, ZAP_CHANNEL_SUSPENDED);
zap_channel_get_alarms(event->channel);
- zap_span_send_signal(span, &sig);
}
break;
}
case WP_TDMAPI_EVENT_LINK_STATUS:
{
+ zap_sigmsg_t sigmsg;
+ memset(&sigmsg, 0, sizeof(sigmsg));
switch(tdm_api.wp_tdm_cmd.event.wp_tdm_api_event_link_status) {
case WP_TDMAPI_EVENT_LINK_STATUS_CONNECTED:
event_id = ZAP_OOB_ALARM_CLEAR;
event_id = ZAP_OOB_ALARM_TRAP;
break;
};
+ sigmsg.chan_id = zchan->chan_id;
+ sigmsg.span_id = zchan->span_id;
+ sigmsg.channel = zchan;
+ sigmsg.event_id = (event_id == ZAP_OOB_ALARM_CLEAR) ? ZAP_SIGEVENT_ALARM_CLEAR : ZAP_SIGEVENT_ALARM_TRAP;
+ zap_span_send_signal(zchan->span, &sigmsg);
}
break;
break;
case ZT_EVENT_ALARM:
{
+ zap_sigmsg_t sigmsg;
+ zap_channel_t *zchan = span->channels[i];
event_id = ZAP_OOB_ALARM_TRAP;
+ memset(&sigmsg, 0, sizeof(sigmsg));
+ sigmsg.chan_id = zchan->chan_id;
+ sigmsg.span_id = zchan->span_id;
+ sigmsg.channel = zchan;
+ sigmsg.event_id = ZAP_SIGEVENT_ALARM_TRAP;
+ zap_span_send_signal(zchan->span, &sigmsg);
}
break;
case ZT_EVENT_NOALARM:
{
+ zap_sigmsg_t sigmsg;
+ zap_channel_t *zchan = span->channels[i];
event_id = ZAP_OOB_ALARM_CLEAR;
+ memset(&sigmsg, 0, sizeof(sigmsg));
+ sigmsg.chan_id = zchan->chan_id;
+ sigmsg.span_id = zchan->span_id;
+ sigmsg.channel = zchan;
+ sigmsg.event_id = ZAP_SIGEVENT_ALARM_CLEAR;
+ zap_span_send_signal(zchan->span, &sigmsg);
}
break;
case ZT_EVENT_BITSCHANGED: