re-apply possible CCM fix. Someone still needs to test this
[asterisk/asterisk.git] / channels / h323 / ast_h323.h
index 00494c4..91ebab0 100755 (executable)
@@ -213,12 +213,10 @@ class MyH323EndPoint : public H323EndPoint {
 
        PStringArray SupportedPrefixes; 
        
-    void SetEndpointTypeInfo( H225_EndpointType & info ) const;
-    void SetGateway(void);
-
+       void SetEndpointTypeInfo( H225_EndpointType & info ) const;
+       void SetGateway(void);
 };
 
-  
 class MyH323Connection : public H323Connection {
 
        PCLASSINFO(MyH323Connection, H323Connection);
@@ -248,69 +246,32 @@ class MyH323Connection : public H323Connection {
        PString destE164;
 
        PIPSocket::Address externalIpAddress;   // IP address of media server
-    PIPSocket::Address remoteIpAddress;                // IP Address of remote endpoint
+       PIPSocket::Address remoteIpAddress;             // IP Address of remote endpoint
        WORD                       externalPort;                // local media server Data port (control is dataPort+1)
        WORD                       remotePort;                  // remote endpoint Data port (control is dataPort+1)
        WORD                       sessionId;
        BOOL                       bridging;                    // Used to help determine which IP to use
 };
 
+class MyH323_ExternalRTPChannel : public H323_ExternalRTPChannel {
 
-#if 0
-class MyGatekeeperServer : public H323GatekeeperServer
-{
-    PCLASSINFO(MyGatekeeperServer, H323GatekeeperServer);
-  public:
-    MyGatekeeperServer(MyH323EndPoint & ep);
+       PCLASSINFO(MyH323_ExternalRTPChannel, H323_ExternalRTPChannel);
 
-    // Overrides
-    virtual H323GatekeeperCall * CreateCall(
-      const OpalGloballyUniqueID & callIdentifier,
-      H323GatekeeperCall::Direction direction
-    );
-    virtual BOOL TranslateAliasAddressToSignalAddress(
-      const H225_AliasAddress & alias,
-      H323TransportAddress & address
+       public:
+
+    MyH323_ExternalRTPChannel(MyH323Connection &, const H323Capability &, Directions,
+                                               unsigned, const PIPSocket::Address &, WORD);
+
+       ~MyH323_ExternalRTPChannel();
+
+    BOOL OnReceivedPDU(
+      const H245_H2250LogicalChannelParameters & param, /// Acknowledgement PDU
+      unsigned & errorCode                              /// Error on failure
     );
 
-    // new functions
-    BOOL Initialise();
-
-  private:
-    class RouteMap : public PObject {
-        PCLASSINFO(RouteMap, PObject);
-      public:
-        RouteMap(
-          const PString & alias,
-          const PString & host
-        );
-        RouteMap(
-          const RouteMap & map
-        ) : alias(map.alias), regex(map.alias), host(map.host) { }
-
-        void PrintOn(
-          ostream & strm
-        ) const;
-
-        BOOL IsValid() const;
-
-        BOOL IsMatch(
-          const PString & alias
-        ) const;
-
-        const H323TransportAddress & GetHost() const { return host; }
-
-      private:
-        PString              alias;
-        PRegularExpression   regex;
-        H323TransportAddress host;
-    };
-    PList<RouteMap> routes;
-
-    PMutex reconfigurationMutex;
-};
+    BOOL OnReceivedAckPDU(const H245_H2250LogicalChannelAckParameters & param);
 
-#endif
+};
 
 /**
  * The MyProcess is a necessary descendant PProcess class so that the H323EndPoint 
@@ -322,11 +283,9 @@ class MyProcess : public PProcess {
     
        public:
        MyProcess();
-       ~MyProcess();
 
        void Main(); 
        
        
 };
 
-