various bug fixes from Miroslaw KLABA
authorJeremy McNamara <jj@nufone.net>
Mon, 12 May 2003 00:55:52 +0000 (00:55 +0000)
committerJeremy McNamara <jj@nufone.net>
Mon, 12 May 2003 00:55:52 +0000 (00:55 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@999 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/h323/ast_h323.cpp
channels/h323/ast_h323.h
channels/h323/chan_h323.c
channels/h323/chan_h323.h

index 6440111..e4fe560 100755 (executable)
@@ -298,6 +298,8 @@ void MyH323EndPoint::OnConnectionCleared(H323Connection & connection, const PStr
 
        switch (connection.GetCallEndReason()) {
                case H323Connection::EndedByCallForwarded :
+                       if (h323debug)
+                               cout << " -- " << remoteName << " has forwarded the call" << endl;
                        break;
                case H323Connection::EndedByRemoteUser :
                        if (h323debug)
@@ -535,6 +537,20 @@ BOOL MyH323Connection::OnSendSignalSetup(H323SignalPDU & setupPDU)
        return H323Connection::OnSendSignalSetup(setupPDU);
 }
 
+BOOL MyH323Connection::OnSendReleaseComplete(H323SignalPDU & releaseCompletePDU)
+{
+       if (h323debug)
+               cout << "       -- Sending RELEASE COMPLETE" << endl;
+       return H323Connection::OnSendReleaseComplete(releaseCompletePDU);
+}
+
+BOOL MyH323Connection::OnReceivedFacility(const H323SignalPDU & pdu)
+{
+       if (h323debug)
+               cout << "       -- Received Facility message... " << endl;
+       return H323Connection::OnReceivedFacility(pdu);
+}
+
 void MyH323Connection::OnReceivedReleaseComplete(const H323SignalPDU & pdu)
 {
        if (h323debug)
@@ -594,7 +610,7 @@ H323Channel * MyH323Connection::CreateRealTimeLogicalChannel(const H323Capabilit
        externalPort = on_create_connection(GetCallReference()); 
 
        if (h323debug) {
-               cout << "       =*= In CreateRealTimeLogicalChannel" << endl;
+               cout << "       =*= In CreateRealTimeLogicalChannel for call " << GetCallReference() << endl;
                cout << "               -- externalIpAddress: " << externalIpAddress << endl;
                cout << "               -- externalPort: " << externalPort << endl;
                cout << "               -- Direction: " << dir << endl;
index e42d985..888cd54 100755 (executable)
@@ -105,7 +105,6 @@ class MyH323EndPoint : public H323EndPoint {
 
        int MakeCall(const PString &, PString &, unsigned int *, unsigned int);
        BOOL ClearCall(const PString &);
-//     BOOL OnIncomingCall( H323Connection & connection, const H323SignalPDU &, H323SignalPDU &);
 
        void OnClosedLogicalChannel(H323Connection &, const H323Channel &);
        void OnConnectionEstablished(H323Connection &, const PString &);
@@ -133,8 +132,10 @@ class MyH323Connection : public H323Connection {
                                                                                           const H245_H2250LogicalChannelParameters *);
        H323Connection::AnswerCallResponse OnAnswerCall(const PString &, const H323SignalPDU &, H323SignalPDU &);
        BOOL OnAlerting(const H323SignalPDU &, const PString &);
+       BOOL OnSendReleaseComplete(H323SignalPDU &);
        BOOL OnReceivedSignalSetup(const H323SignalPDU &);
        void OnReceivedReleaseComplete(const H323SignalPDU &);
+       BOOL OnReceivedFacility(const H323SignalPDU &);
        BOOL OnSendSignalSetup(H323SignalPDU &);
        BOOL OnStartLogicalChannel(H323Channel &);
        BOOL OnClosingLogicalChannel(H323Channel &);
index ba57a4f..d8c5bec 100755 (executable)
@@ -404,7 +404,7 @@ static int oh323_call(struct ast_channel *c, char *dest, int timeout)
        res = h323_make_call(called_addr, &(p->cd), p->call_opt);
 
        if (res) {
-               printf("h323_make_call failed\n");
+               ast_log(LOG_NOTICE, "h323_make_call failed(%s)\n", c->name);
                return -1;
        }
 
@@ -1701,6 +1701,17 @@ int unload_module()
        h323_gk_urq();
        h323_end_process();
 
+       /* unregister rtp */
+       ast_rtp_proto_unregister(&oh323_rtp);
+       
+       /* unregister commands */
+       ast_cli_unregister(&cli_debug);
+       ast_cli_unregister(&cli_no_debug);
+       ast_cli_unregister(&cli_trace);
+       ast_cli_unregister(&cli_no_trace);
+       ast_cli_unregister(&cli_show_codecs);
+       ast_cli_unregister(&cli_gk_cycle);
+
        /* unregister channel type */
        ast_channel_unregister(type);
 
index d30a42e..e4f3756 100755 (executable)
  *
  * This file is part of the chan_oh323 driver for Asterisk
  *
- * chan_oh323 is free software; you can redistribute it and/or modify
+ * chan_h323 is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version. 
  *
- * chan_oh323 is distributed WITHOUT ANY WARRANTY; without even 
+ * chan_h323 is distributed WITHOUT ANY WARRANTY; without even 
  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE. See the GNU General Public License for more details. 
  *