]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
update
authorMichael Jerris <mike@jerris.com>
Mon, 26 May 2008 01:51:11 +0000 (01:51 +0000)
committerMichael Jerris <mike@jerris.com>
Mon, 26 May 2008 01:51:11 +0000 (01:51 +0000)
git-svn-id: http://svn.openzap.org/svn/openzap/trunk@484 a93c3328-9c30-0410-af19-c9cd2b2d52af

libs/freetdm/mod_openzap/mod_openzap.c
libs/freetdm/src/zap_isdn.c
libs/freetdm/src/zap_ss7_boost.c

index 24d093f49e4f757b0c90b66e746c9f03979e9dc5..318ed6e4a9fb4aa4fe2a3c211dca8747cc1ee260 100644 (file)
@@ -1351,6 +1351,7 @@ static ZIO_SIGNAL_CB_FUNCTION(on_clear_channel_signal)
                }
                break;
     case ZAP_SIGEVENT_STOP:
+    case ZAP_SIGEVENT_RESTART:
                {       
                        while((session = zap_channel_get_session(sigmsg->channel, 0))) {
                                //switch_core_session_signal_lock(session);
index f6f254627a4d7f300db0b4149ef46728ee233da3..c0811fb9dd3172c6e85ba8c89ad01a8725d745d0 100644 (file)
@@ -599,13 +599,10 @@ static __inline__ void state_advance(zap_channel_t *zchan)
                break;
        case ZAP_CHANNEL_STATE_RESTART:
                {
-                       if (zchan->last_state != ZAP_CHANNEL_STATE_HANGUP && zchan->last_state != ZAP_CHANNEL_STATE_DOWN) {
-                               zap_set_state_locked(zchan, ZAP_CHANNEL_STATE_HANGUP);
-                       } else {
-                               sig.event_id = ZAP_SIGEVENT_RESTART;
-                               status = isdn_data->sig_cb(&sig);
-                               zap_set_state_locked(zchan, ZAP_CHANNEL_STATE_DOWN);
-                       }
+                       zchan->caller_data.hangup_cause = ZAP_CAUSE_NORMAL_UNSPECIFIED;
+                       sig.event_id = ZAP_SIGEVENT_RESTART;
+                       status = isdn_data->sig_cb(&sig);
+                       zap_set_state_locked(zchan, ZAP_CHANNEL_STATE_DOWN);
                }
                break;
        case ZAP_CHANNEL_STATE_PROGRESS_MEDIA:
index 30979daefba4245952f4e703470fb2944baa96ad..17a2cd7ed7edce769b3cea32d75deae85c0d04ba 100644 (file)
@@ -296,9 +296,9 @@ static void handle_call_start_ack(ss7bc_connection_t *mcon, ss7bc_event_t *event
                }
        } 
        
-       printf("WTF BAD ACK CSid=%d span=%d chan=%d\n", event->call_setup_id, event->span+1,event->chan+1);
+       //printf("WTF BAD ACK CSid=%d span=%d chan=%d\n", event->call_setup_id, event->span+1,event->chan+1);
        if ((zchan = find_zchan(OUTBOUND_REQUESTS[event->call_setup_id].span, event, 1))) {
-               printf("WTF BAD ACK2 %d:%d (%d:%d) CSid=%d xtra_id=%d out=%d state=%s\n", zchan->span_id, zchan->chan_id, event->span+1,event->chan+1, event->call_setup_id, zchan->extra_id, zap_test_flag(zchan, ZAP_CHANNEL_OUTBOUND), zap_channel_state2str(zchan->state));
+               //printf("WTF BAD ACK2 %d:%d (%d:%d) CSid=%d xtra_id=%d out=%d state=%s\n", zchan->span_id, zchan->chan_id, event->span+1,event->chan+1, event->call_setup_id, zchan->extra_id, zap_test_flag(zchan, ZAP_CHANNEL_OUTBOUND), zap_channel_state2str(zchan->state));
        }
 
 
@@ -448,9 +448,11 @@ static void handle_call_answer(zap_span_t *span, ss7bc_connection_t *mcon, ss7bc
                        }
                        zap_mutex_unlock(zchan->mutex);
                } 
+#if 0
                if (!r) {
                        printf("WTF BAD ANSWER %d:%d (%d:%d) CSid=%d xtra_id=%d out=%d state=%s\n", zchan->span_id, zchan->chan_id, event->span+1,event->chan+1, event->call_setup_id, zchan->extra_id, zap_test_flag(zchan, ZAP_CHANNEL_OUTBOUND), zap_channel_state2str(zchan->state));
                }
+#endif
        } else {
                zap_log(ZAP_LOG_CRIT, "ANSWER CANT FIND A CHAN %d:%d\n", event->span+1,event->chan+1);
        }