⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 transnet.h

📁 基于h323协议的软phone
💻 H
📖 第 1 页 / 共 2 页
字号:
                            int         *node,
                            TRANSTYPE   type,
                            void        **hMsgContext);

/**************************************************************************************
 * processQ931IncomingMessage
 *
 * Purpose: handles incoming messages:
 *          extract the states of the faststart and tunneling (including parallel one).
 *          updates the multiplexing parameters of the host
 *          decides whether to report the openning of a H.245 connection
 *          decides whether to initiate a connect for H.245
 *          extract all kinds of tunneled messages from the message
 *
 * Input:   host    - The host on which the message arrived
 *          session - The session on which the message arrived (i.e. the call)
 *          pvtNode - The decoded message itself
 *          manualRAS - The RAS mode of the application
 *
 * Output:  None.
 *
 * Return value: msgType - the message type.
 *
**************************************************************************************/
int processQ931IncomingMessage(cmTransHost *host, cmTransSession *session, int pvtNode);

/**************************************************************************************
 * connectH245
 *
 * Purpose: connects if the host state permits, a H.245 connection.
 *
 * Input:   transGlobal - The global variables of the module.
 *          session     - The session for which the connection is done
 *          msgType     - The type of the message that is being checked
 *
 * Output:  None.
 *
 **************************************************************************************/
void connectH245(cmTransGlobals *transGlobals,
                 cmTransSession *session,
                 int            msgType);

/**************************************************************************************
 * reportH245Establishment
 *
 * Purpose: if not done so yet, report to the user about an active H.245 connection.
 *
 * Input:   transGlobal - The global variables of the module.
 *          session     - The session for which the connection is done
 *
 * Output:  None.
 *
 **************************************************************************************/
void reportH245Establishment(cmTransGlobals *transGlobals, cmTransSession *session);

/**************************************************************************************
 * annexEEvNewMessage
 *
 * Purpose: Callback for Annex E upon receiving new incoming message.
 *          The call back looks for the host (or create one if it's new) and
 *          then calls the regular event handler (of TPKT) with event liEvRead.
 *
 * Input:   hAnnexE     - The annex E module handle
 *          hAppAnnexE  - The application handle of the annex E module (actualy
 *                        our very own transGlobals structure).
 *          nIP         - The remote ip whence the message arrived.
 *          nPort       - The remote port whence the message arrived.
 *          pMessage    - The encoded message itself
 *          nSize       - The size of the message.
 *
 * Output:  None.
 *
 **************************************************************************************/
annexEStatus RVCALLCONV annexEEvNewMessage(
    IN  HANNEXE     hAnnexE,
    IN  HAPPANNEXE  hAppAnnexE,
    IN  RvUint32    nIP,
    IN  RvUint16    nPort,
    IN  void*       pMessage,
    IN  int         nSize
);

/**************************************************************************************
 * annexEEvConnectionBroken
 *
 * Purpose: Callback for Annex E upon expiration of I-AM-ALIVE timer & retries.
 *          The call back looks for the host and then calls the regular event handler
 *          (of TPKT) with event liEvClose.
 *
 * Input:   hAnnexE     - The annex E module handle
 *          hAppAnnexE  - The application handle of the annex E module (actualy
 *                        our very own transGlobals structure).
 *          nIP         - The remote ip whence the message arrived.
 *          nPort       - The remote port whence the message arrived.
 *
 * Output:  None.
 *
 **************************************************************************************/
annexEStatus RVCALLCONV annexEEvConnectionBroken(
    IN  HANNEXE     hAnnexE,
    IN  HAPPANNEXE  hAppAnnexE,
    IN  RvUint32    nIP,
    IN  RvUint16    nPort
);

/**************************************************************************************
 * annexEEvUseOtherAddress
 *
 * Purpose: Callback for Annex E upon receiving a request to change the remote address.
 *          The call back looks for the host and then deletes it from the host hash only
 *          to put it there agian with the new address.
 *
 * Input:   hAnnexE     - The annex E module handle
 *          hAppAnnexE  - The application handle of the annex E module (actualy
 *                        our very own transGlobals structure).
 *          nIP         - The remote ip whence the message arrived.
 *          nPort       - The remote port whence the message arrived.
 *          pNewAddress - the new address to set the host to.
 *
 * Output:  None.
 *
 **************************************************************************************/
annexEStatus RVCALLCONV annexEEvUseOtherAddress(
    IN  HANNEXE                 hAnnexE,
    IN  HAPPANNEXE              hAppAnnexE,
    IN  RvUint32                nIP,
    IN  RvUint16                nPort,
    IN  cmTransportAddress*     pNewAddress
);

/**************************************************************************************
 * annexEEvWriteable
 *
 * Purpose: Callback for Annex E when resources are available again for sending, after
 *          receiving would block error on send.
 *          The call back looks for the host and then calls the regular event handler
 *          (of TPKT) with event liEvWrite.
 *
 * Input:   hAnnexE     - The annex E module handle
 *          hAppAnnexE  - The application handle of the annex E module (actualy
 *                        our very own transGlobals structure).
 *          nIP         - The remote ip whence the message arrived.
 *          nPort       - The remote port whence the message arrived.
 *
 * Output:  None.
 *
 **************************************************************************************/
annexEStatus RVCALLCONV annexEEvWriteable(
    IN  HANNEXE     hAnnexE,
    IN  HAPPANNEXE  hAppAnnexE,
    IN  RvUint32    nIP,
    IN  RvUint16    nPort
);

/**************************************************************************************
 * zeroTimerEvent
 *
 * Purpose: call back rotine that simulates a connect from the network on one of the
 *          connections (H245, Q931 or Annex E). It is used when a host is already
 *          connected and we just want to simulate its connection event as if we got
 *          it from the network
 *
 * input   : userData   - The handle to the session on which we need to report the connect.
 *
 * Output:  Always RV_FALSE.
 *
 **************************************************************************************/
RvBool zeroTimerEvent(IN void*  userData);


#ifdef __cplusplus
}
#endif


#endif  /* _TRANSNET_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -