aboutsummaryrefslogtreecommitdiffstats
path: root/channels/h323
diff options
context:
space:
mode:
authorjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2003-05-12 00:55:52 +0000
committerjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2003-05-12 00:55:52 +0000
commit504964b544f492960b38f5d7da488bc049325bd1 (patch)
tree98598a94219e9e979e265e0aac8f863831c551a6 /channels/h323
parentca23acd5eab0315380303bff36e809b1269944d7 (diff)
various bug fixes from Miroslaw KLABA
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@999 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/h323')
-rwxr-xr-xchannels/h323/ast_h323.cpp18
-rwxr-xr-xchannels/h323/ast_h323.h3
-rwxr-xr-xchannels/h323/chan_h323.c13
-rwxr-xr-xchannels/h323/chan_h323.h4
4 files changed, 33 insertions, 5 deletions
diff --git a/channels/h323/ast_h323.cpp b/channels/h323/ast_h323.cpp
index 64401111d..e4fe560b8 100755
--- a/channels/h323/ast_h323.cpp
+++ b/channels/h323/ast_h323.cpp
@@ -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;
diff --git a/channels/h323/ast_h323.h b/channels/h323/ast_h323.h
index e42d98571..888cd54ae 100755
--- a/channels/h323/ast_h323.h
+++ b/channels/h323/ast_h323.h
@@ -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 &);
diff --git a/channels/h323/chan_h323.c b/channels/h323/chan_h323.c
index ba57a4f34..d8c5bec70 100755
--- a/channels/h323/chan_h323.c
+++ b/channels/h323/chan_h323.c
@@ -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);
diff --git a/channels/h323/chan_h323.h b/channels/h323/chan_h323.h
index d30a42e5d..e4f3756d0 100755
--- a/channels/h323/chan_h323.h
+++ b/channels/h323/chan_h323.h
@@ -10,12 +10,12 @@
*
* 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.
*