aboutsummaryrefslogtreecommitdiffstats
path: root/channels/h323/ast_h323.cpp
diff options
context:
space:
mode:
authorjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-16 02:03:19 +0000
committerjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-16 02:03:19 +0000
commitc704778e2b97cac971e6c1041256c4561130ffde (patch)
treeade1d109249d2c2274261d9b1f5175b7425b1bd8 /channels/h323/ast_h323.cpp
parentd405f48268f1722f7b52ae79007b817b5b4e6835 (diff)
Properly deal with Caller*ID, document the new RTP Payload setting, remove compiler option that may confuse g++ and force chan_h323.so to be relinked on every compile
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4467 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/h323/ast_h323.cpp')
-rwxr-xr-xchannels/h323/ast_h323.cpp26
1 files changed, 17 insertions, 9 deletions
diff --git a/channels/h323/ast_h323.cpp b/channels/h323/ast_h323.cpp
index 616b7381b..fc77e9b85 100755
--- a/channels/h323/ast_h323.cpp
+++ b/channels/h323/ast_h323.cpp
@@ -237,16 +237,15 @@ int MyH323EndPoint::MakeCall(const PString & dest, PString & token, unsigned int
return 1;
}
*callReference = connection->GetCallReference();
+
+ if (opts->cid_num) {
+ connection->ast_cid_num = PString(opts->cid_num);
+ }
if (opts->cid_name) {
- localAliasNames.RemoveAll();
- connection->SetLocalPartyName(PString(opts->cid_name));
- if (opts->cid_num) {
- localAliasNames.AppendString(PString(opts->cid_num));
- }
- } else if (opts->cid_num) {
- localAliasNames.RemoveAll();
- connection->SetLocalPartyName(PString(opts->cid_num));
- }
+ connection->ast_cid_name = PString(opts->cid_name);
+ connection->SetLocalPartyName(connection->ast_cid_name);
+ }
+
connection->dtmfCodec = (RTP_DataFrame::PayloadTypes)opts->dtmfcodec;
if (h323debug) {
@@ -700,6 +699,15 @@ BOOL MyH323Connection::OnSendSignalSetup(H323SignalPDU & setupPDU)
if (h323debug) {
cout << " -- Sending SETUP message" << endl;
}
+
+ if (!ast_cid_num.IsEmpty()) {
+ setupPDU.GetQ931().SetCallingPartyNumber(ast_cid_num);
+ }
+
+ if (!ast_cid_name.IsEmpty()) {
+ setupPDU.GetQ931().SetDisplayName(ast_cid_name);
+ }
+
sourceAliases = setupPDU.GetSourceAliases();
destAliases = setupPDU.GetDestinationAlias();