[Asterisk-cvs] asterisk-addons/asterisk-ooh323c/ooh323c/src
ooCalls.h, 1.5, 1.6 ooGkClient.c, 1.7, 1.8 ooStackCmds.c, 1.6,
1.7 ooStackCmds.h, 1.5, 1.6 ooh323ep.c, 1.5, 1.6 ooh323ep.h,
1.6, 1.7 ooq931.c, 1.15, 1.16 ooq931.h, 1.6, 1.7 ootrace.c,
1.4, 1.5 ootypes.h, 1.6, 1.7
vphirke
vphirke
Fri Sep 16 15:31:00 CDT 2005
Update of /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src
In directory mongoose.digium.com:/tmp/cvs-serv21003/ooh323c/src
Modified Files:
ooCalls.h ooGkClient.c ooStackCmds.c ooStackCmds.h ooh323ep.c
ooh323ep.h ooq931.c ooq931.h ootrace.c ootypes.h
Log Message:
Added conf option to enable registering with gatekeeper as gateway or endpoint
Index: ooCalls.h
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooCalls.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- ooCalls.h 2 Sep 2005 14:27:10 -0000 1.5
+++ ooCalls.h 16 Sep 2005 19:29:17 -0000 1.6
@@ -41,6 +41,7 @@
*/
+
#define OO_M_ENDPOINTCREATED 0x00010000
#define OO_M_ENDSESSION_BUILT 0x00800000
#define OO_M_RELEASE_BUILT 0x00400000
Index: ooGkClient.c
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooGkClient.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- ooGkClient.c 2 Sep 2005 14:27:10 -0000 1.7
+++ ooGkClient.c 16 Sep 2005 19:29:17 -0000 1.8
@@ -646,6 +646,13 @@
pRasAddress->ip.numocts = 4;
pRasAddress->port = pGkClient->localRASPort;
pGkReq->rasAddress.u.ipAddress = pRasAddress;
+
+ /* Pose as gateway or terminal as per config */
+ if(gH323ep.isGateway)
+ pGkReq->endpointType.m.gatewayPresent = TRUE;
+ else
+ pGkReq->endpointType.m.terminalPresent = TRUE;
+
pGkReq->endpointType.m.nonStandardDataPresent=0;
pGkReq->endpointType.m.vendorPresent=1;
@@ -925,6 +932,12 @@
dListAppend(pctxt, &pRegReq->rasAddress,
(void*)pTransportAddress);
+ /* Pose as gateway or terminal as per config */
+ if(gH323ep.isGateway)
+ pRegReq->terminalType.m.gatewayPresent = TRUE;
+ else
+ pRegReq->terminalType.m.terminalPresent = TRUE;
+
pRegReq->terminalType.m.vendorPresent=TRUE;
ooGkClientFillVendor(pGkClient, &pRegReq->terminalType.vendor );
Index: ooStackCmds.c
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooStackCmds.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ooStackCmds.c 2 Sep 2005 14:27:10 -0000 1.6
+++ ooStackCmds.c 16 Sep 2005 19:29:17 -0000 1.7
@@ -17,6 +17,7 @@
#include "ooStackCmds.h"
#include "ootrace.h"
#include "ooq931.h"
+#include "ooh245.h"
#include "ooh323ep.h"
#include "oochannels.h"
#include "ooCalls.h"
Index: ooStackCmds.h
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooStackCmds.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- ooStackCmds.h 2 Sep 2005 14:27:10 -0000 1.5
+++ ooStackCmds.h 16 Sep 2005 19:29:17 -0000 1.6
@@ -116,7 +116,7 @@
*
* @return OO_OK, on success. OO_FAILED, on failure.
*/
-EXTERN int ooSendDTMFDigit(char *callToken, char* alphanumeric);
+EXTERN int ooSendDTMFDigit(char *callToken, char* alpha);
/**
* This function is invoked from the main event handling loop to
Index: ooh323ep.c
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooh323ep.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- ooh323ep.c 2 Sep 2005 14:27:10 -0000 1.5
+++ ooh323ep.c 16 Sep 2005 19:29:17 -0000 1.6
@@ -116,13 +116,14 @@
ooH323EpSetCallerID(DEFAULT_CALLERID);
-
+
gH323ep.myCaps = NULL;
gH323ep.noOfCaps = 0;
gH323ep.callList = NULL;
gH323ep.dtmfmode = 0;
gH323ep.callingPartyNumber[0]='\0';
gH323ep.callMode = callMode;
+ gH323ep.isGateway = FALSE;
#ifdef _WIN32
InitializeCriticalSection(&gCmdMutex);
InitializeCriticalSection(&gCallTokenMutex);
@@ -155,6 +156,12 @@
return OO_OK;
}
+EXTERN int ooH323EpSetAsGateway()
+{
+ gH323ep.isGateway = TRUE;
+ return OO_OK;
+}
+
int ooH323EpSetLocalAddress(char * localip, int listenport)
{
if(localip)
Index: ooh323ep.h
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooh323ep.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ooh323ep.h 2 Sep 2005 14:27:10 -0000 1.6
+++ ooh323ep.h 16 Sep 2005 19:29:17 -0000 1.7
@@ -144,6 +144,7 @@
struct ooGkClient *gkClient;
DList stkCmdList; /* stack command list */
OOInterface *ifList; /* interface list for the host we are running on*/
+ OOBOOL isGateway;
} OOH323EndPoint;
#define ooEndPoint OOH323EndPoint
@@ -162,6 +163,14 @@
/**
+ * This function is used to represent the H.323 application endpoint as
+ * gateway, instead of an H.323 phone endpoint.
+ *
+ * @return OO_OK, on success. OO_FAILED, on failure.
+ */
+EXTERN int ooH323EpSetAsGateway();
+
+/**
* This function is used to assign a local ip address to be used for call
* signalling.
* @param localip Dotted IP address to be used for call signalling.
Index: ooq931.c
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooq931.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- ooq931.c 6 Sep 2005 17:25:40 -0000 1.15
+++ ooq931.c 16 Sep 2005 19:29:17 -0000 1.16
@@ -891,7 +891,12 @@
call->callIdentifier.guid.numocts);
callProceeding->protocolIdentifier = gProtocolID;
- callProceeding->destinationInfo.m.terminalPresent = TRUE;
+ /* Pose as Terminal or Gateway */
+ if(gH323ep.isGateway)
+ callProceeding->destinationInfo.m.gatewayPresent = TRUE;
+ else
+ callProceeding->destinationInfo.m.terminalPresent = TRUE;
+
callProceeding->destinationInfo.m.vendorPresent = 1;
vendor = &callProceeding->destinationInfo.vendor;
if(gH323ep.productID)
@@ -1004,7 +1009,12 @@
call->callIdentifier.guid.numocts);
alerting->protocolIdentifier = gProtocolID;
- alerting->destinationInfo.m.terminalPresent = TRUE;
+ /* Pose as Terminal or Gateway */
+ if(gH323ep.isGateway)
+ alerting->destinationInfo.m.gatewayPresent = TRUE;
+ else
+ alerting->destinationInfo.m.terminalPresent = TRUE;
+
alerting->destinationInfo.m.vendorPresent = 1;
vendor = &alerting->destinationInfo.vendor;
if(gH323ep.productID)
@@ -1320,7 +1330,12 @@
connect->protocolIdentifier = gProtocolID;
- connect->destinationInfo.m.terminalPresent = TRUE;
+ /* Pose as Terminal or Gateway */
+ if(gH323ep.isGateway)
+ connect->destinationInfo.m.gatewayPresent = TRUE;
+ else
+ connect->destinationInfo.m.terminalPresent = TRUE;
+
connect->destinationInfo.m.vendorPresent = 1;
vendor = &connect->destinationInfo.vendor;
@@ -2013,7 +2028,11 @@
}
/* Populate the vendor information */
- setup->sourceInfo.m.terminalPresent = TRUE;
+ if(gH323ep.isGateway)
+ setup->sourceInfo.m.gatewayPresent = TRUE;
+ else
+ setup->sourceInfo.m.terminalPresent = TRUE;
+
setup->sourceInfo.m.vendorPresent=TRUE;
setup->sourceInfo.vendor.vendor.t35CountryCode = gH323ep.t35CountryCode;
setup->sourceInfo.vendor.vendor.t35Extension = gH323ep.t35Extension;
Index: ooq931.h
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooq931.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ooq931.h 2 Sep 2005 14:27:10 -0000 1.6
+++ ooq931.h 16 Sep 2005 19:29:17 -0000 1.7
@@ -477,6 +477,18 @@
*/
EXTERN int ooSendFacility(struct OOH323CallData *call);
+
+/**
+ * This function is used to send dtmf data as Q931 keypad information element
+ * as part of information message.
+ * @param call Pointer to the call for dtmf data has to be sent.
+ * @param data Dtmf data to be sent.
+ *
+ * @return OO_OK, on success; OO_FAILED, on failure.
+ */
+EXTERN int ooQ931SendDTMFAsKeyPadIE
+ (struct OOH323CallData *call, const char* data);
+
/**
* This function is invoked to send a Connect message in response to received
* setup message.
Index: ootrace.c
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ootrace.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- ootrace.c 28 Aug 2005 19:28:19 -0000 1.4
+++ ootrace.c 16 Sep 2005 19:29:17 -0000 1.5
@@ -17,7 +17,6 @@
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
-#include <time.h>
#include "ootypes.h"
#include "ootrace.h"
Index: ootypes.h
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ootypes.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ootypes.h 2 Sep 2005 14:27:10 -0000 1.6
+++ ootypes.h 16 Sep 2005 19:29:17 -0000 1.7
@@ -160,28 +160,29 @@
#define OOConnect 106
#define OOReleaseComplete 107
#define OOFacility 108
-#define OOMasterSlaveDetermination 109
-#define OOMasterSlaveAck 110
-#define OOMasterSlaveReject 111
-#define OOMasterSlaveRelease 112
-#define OOTerminalCapabilitySet 113
-#define OOTerminalCapabilitySetAck 114
-#define OOTerminalCapabilitySetReject 115
-#define OOTerminalCapabilitySetRelease 116
-#define OOOpenLogicalChannel 117
-#define OOOpenLogicalChannelAck 118
-#define OOOpenLogicalChannelReject 119
-#define OOOpenLogicalChannelRelease 120
-#define OOOpenLogicalChannelConfirm 121
-#define OOCloseLogicalChannel 122
-#define OOCloseLogicalChannelAck 123
-#define OORequestChannelClose 124
-#define OORequestChannelCloseAck 125
-#define OORequestChannelCloseReject 126
-#define OORequestChannelCloseRelease 127
-#define OOEndSessionCommand 128
-#define OOUserInputIndication 129
-#define OOInformationMessage 130
+#define OOInformationMessage 109
+#define OOMasterSlaveDetermination 110
+#define OOMasterSlaveAck 111
+#define OOMasterSlaveReject 112
+#define OOMasterSlaveRelease 113
+#define OOTerminalCapabilitySet 114
+#define OOTerminalCapabilitySetAck 115
+#define OOTerminalCapabilitySetReject 116
+#define OOTerminalCapabilitySetRelease 117
+#define OOOpenLogicalChannel 118
+#define OOOpenLogicalChannelAck 119
+#define OOOpenLogicalChannelReject 120
+#define OOOpenLogicalChannelRelease 121
+#define OOOpenLogicalChannelConfirm 122
+#define OOCloseLogicalChannel 123
+#define OOCloseLogicalChannelAck 124
+#define OORequestChannelClose 125
+#define OORequestChannelCloseAck 126
+#define OORequestChannelCloseReject 127
+#define OORequestChannelCloseRelease 128
+#define OOEndSessionCommand 129
+#define OOUserInputIndication 130
+
#define OO_MSGTYPE_MAX 130
/* Timer types */
More information about the svn-commits
mailing list