#ifndef _MGC_SESS_CTL_H
#define _MGC_SESS_CTL_H
#include "mgc_pub.h"
#include "mgc.h"
#include "mgc_const.h"
#include "mgc_ext.h"
#include "mgc_struct.h"
#include "mgc_debug.h"
 
#define MGC_SESS_RECORD 8192
#define MGC_SDP_IPADDR_LEN 35
typedef struct _MGC_SDP_TAG
{
    PUB_SDP_MEDIA m;
    PUB_SDP_C c;	
	BYTE mode;
}MGC_SDP_TAG;

typedef enum{
 MGC_SESS_STATUS_UNDEF =-1,
 MGC_SESS_STATUS_IDLE,
 MGC_SESS_STATUS_USED 	
}MGC_SESS_STATUS;

typedef struct _MGC_SESS_REC
{
	int id;
    MGC_SESS_STATUS	status;
    CHNL chnl;
	MGC_SDP_TAG sdpTag;	
}MGC_SESS_REC;

void mgc_sess_init(void);
void mgc_sess_rec_init(MGC_SESS_REC *pSess , int id);
MGC_SESS_REC *mgc_sess_is_already_rec(CHNL chnl);
BOOL mgc_sess_rec_org_and_dst_chnl(CHNL orgChnl , CHNL destChnl);
BOOL mgc_sess_is_chnl_need_update(CHNL chnl, MGCP_PARA *pPara);

#endif

