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

📄 plxmmse.h

📁 mtk wap和mms代码。。适应mtk 25。26平台
💻 H
📖 第 1 页 / 共 2 页
字号:
}MMSECONTENTINFO, *PMMSECONTENTINFO;

typedef struct tagMMSEMETA 
{
    struct tagMMSEMETA * pNext;
    char * name;
    char * content;
}MMSEMETA, *PMMSEMETA;

typedef struct tagMMSEROOTLAYOUT 
{
    int	width;
    int	height;
    char * bk_color;
}MMSEROOTLAYOUT, *PMMSEROOTLAYOUT;

typedef struct tagMMSEREGION
{
    int	left;
    int	top;
    int	width;
    int	height;
}MMSEREGION, *PMMSEREGION;

typedef struct tagMMSESLIDEINFO
{
    PMMSEREGION pTextRegion;
    PMMSEREGION pImageRegion;
    PMMSEREGION pVideoRegion;
    
    PMMSECONTENT pTextContent;
    PMMSECONTENT pImageContent;
    PMMSECONTENT pAudioContent;
    PMMSECONTENT pVideoContent;
}MMSESLIDEINFO, *PMMSESLIDEINFO;

// Delivery Report
typedef struct tagMMDELIVERYREPORT
{
    char     to[MMSE_MAX_TO];
    MMSETIME date;
    int      status;
	int      bRead;
    long     ReportID;
} MMDELIVERYREPORT, *PMMDELIVERYREPORT;

// MMSE Init Parameter
typedef struct tagMMSEINITINFO
{
    const char* pMmsePath;      // the path to save message file
    unsigned long SpaceLimit;   // low space limit
    const char* pUsrAgent;      // user agent
    const char* pUAProf;
    int (* OnFormat)(const char* pMmsePath);
}MMSEINITINFO, *PMMSEINITINFO;

/**************************************************************
 *              MMSE 提供的公开函数声明
 **************************************************************/
int     MMSE_Init(PMMSEINITINFO pInitInfo);
void*   MMSE_Open(int nMode);
void    MMSE_Close(void* pMmse);
void    MMSE_SetNotify(void* pMmse, void* hWnd, unsigned int uMsg);
int     MMSE_ChangeMode(void* pMmse, int nMode);
int 	MMSE_GetLastError(void* pMmse);

int     MMSE_ListFolder(void* pMmse, int nIndex, PMMFOLDERINFO pBuf, int nCount);
int     MMSE_GetFolderInfo(void* pMmse, const char* pName, 
                           PMMFOLDERINFO pFolderInfo);
int     MMSE_CreateFolder(void* pMmse, const char* pName, int nType);
int		MMSE_RenameFolder(void* pMmse, const char* pOldName, const char* pNewName);
int     MMSE_RemoveFolder(void* pMmse, const char* pName, int nForce);
int     MMSE_ClearFolder(void* pMmse, const char* pName);
int     MMSE_SelectFolder(void* pMmse, const char* pName);

int     MMSE_ListMessage(void* pMmse, int nIndex, void* pBuf, int BufLen);
long    MMSE_MoveMessage(void* pMmse, long nMsgId, const char* pFolder);
long    MMSE_CopyMessage(void* pMmse, long nMsgId, const char* pFolder);
int     MMSE_DeleteMessage(void* pMmse, long nMsgId);
int     MMSE_GetMessageStatus(void* pMmse, long nMsgId);
int     MMSE_GetMessageInfo(void* pMmse, long nMsgId, void* pBuf, int BufLen);

#ifdef _QTOPIA
int     MMSE_OnAccept( void* pMmse, const char* pData, long length, int bFlag );
#endif
int     MMSE_SendMessage(void* pMmse, long nMsgId, int nMode, int nFlag);
int     MMSE_ReceiveMessage(void* pMmse, long nMsgId);
int		MMSE_Cancel(void* pMmse);
int		MMSE_GetState(void* pMmse);

void*   MMSE_CreateMessage(void* pMmse, long nMsgId);
void*   MMSE_OpenMessage(void* pMmse, long nMsgId);

int     MMSE_GetSlideCount( void* pMmse, void* pMessage );
int     MMSE_SetCurSlide( void* pMmse, void* pMessage, int nCurSlide );
int     MMSE_GetCurSlide( void* pMmse, void* pMessage );

int     MMSE_AddSMILMeta( void* pMmse, void* pMessage, PMMSEMETA pMeta );
PMMSEMETA   MMSE_GetSMILMeta( void* pMmse, void* pMessage );
int     MMSE_SetSMILRootLayout( void* pMmse, void* pMessage, PMMSEROOTLAYOUT pRootLayout );
const PMMSEROOTLAYOUT MMSE_GetSMILRootLayout( void* pMmse, void* pMessage );
int     MMSE_SetSlideDuration(void* pMmse, void* pMessage, long duration);
int     MMSE_GetSlideDuration(void* pMmse, void* pMessage);

int     MMSE_AddSlide( void* pMmse, void* pMessage );
int     MMSE_DeleteSlide( void* pMmse, void* pMessage );

int     MMSE_AddSlideContent( void* pMmse, void* pMessage, PMMSECONTENTINFO pContentInfo );
int     MMSE_DeleteSlideContent( void* pMmse, void* pMessage, int nContentType );

int     MMSE_GetSlideInfo( void* pMmse, void* pMessage, PMMSESLIDEINFO pSlideInfo );
int     MMSE_GetInfo( void* pMmse, void* pMessage, PMMSEMSGINFO pInfo );

int     MMSE_Flush(void* pMmse, void* pMessage);
long    MMSE_Save(void* pMmse, void* pMessage, int bTemplate);
int     MMSE_CloseMessage(void* pMmse, void* pMessage);

const PMMSECONTENT MMSE_GetContent(void* pMmse, void* pMessage, int nIndex);
const PMMSECONTENT MMSE_GetContentByID(void* pMmse, void* pMessage, const char* id);

int     MMSE_AddContent(void* pMmse, void* pMessage, PMMSECONTENT pMMContent);
int     MMSE_DeleteContent(void* pMmse, void* pMessage, int nIndex);
int     MMSE_DeleteContentByID(void* pMmse, void* pMessage, const char* id);

const char* MMSE_GetHeaderField(void* pMmse, void* pMessage, const char* pField);
int     MMSE_SetHeaderField(void* pMmse, void* pMessage, const char* pField, 
                            const char* value);

// X-Mms-Status value Meaning in delivery report

// The MM in question reached the recipient MMS Proxy-Relay but the
// recipient MMS Client did not retrieve it before expiration.
#define X_MMS_STATUS_EXPIRED        0

// The MM in question was successfully retrieved by the recipient MMS
// Client.
#define X_MMS_STATUS_RETRIEVED      1

// The MM in question reached the recipient MMS Proxy-Relay but the
// recipient MMS Client rejected it.
#define X_MMS_STATUS_REJECTED       2

// The MM in question reached the recipient MMS Proxy-Relay but the
// recipient MMS Client decided to retrieve it at a later time.
#define X_MMS_STATUS_DEFERRED       3

// It is not possible to determine if the MM in question reached its
// destination.
#define X_MMS_STATUS_INDETERMINATE  4

// The MM in question reached the recipient MMS Proxy-Relay but the
// recipient MMS Client forwarded it without retrieving it first.
#define X_MMS_STATUS_FORWARDED      5

// The recipient MMS Client is not reachable due to MMS Proxy-Relay
// interworking, routing failure or some other condition that prevents
// the MM to reach it’s final destination.
#define X_MMS_STATUS_UNREACHABLE    6

int     MMSE_ListDeliveryReport(void* pMmse, int nIndex, PMMDELIVERYREPORT pBuf, 
                                int BufLen, int nCount);
int     MMSE_ReadDeliveryReport(void* pMmse, long nReportID ,PMMDELIVERYREPORT pBuf);

// id == -1, delete all delivery reports
int     MMSE_DeleteDeliveryReport(void* pMmse, long nReportID);

// MMSE option mask
#define MMOM_ALL                    0xFFFF
#define MMOM_MMSC                   0x0001
#define MMOM_GATEWAY                0x0002
#define MMOM_PORT                   0x0004
#define MMOM_EXPIRE                 0x0008
#define MMOM_SENDFLAG               0x0010
#define MMOM_RECEIVEFLAG            0x0020
#define MMOM_MAXNUM                 0x0040
#define MMOM_MAXSIZE                0x0080
#define MMOM_DIALID                 0x0100
#define MMOM_SLIDEDURATION          0x0200
#define MMOM_MAXSENDSIZE            0x0400

// 发送选项
#define MMSF_DELIVERYREPORT         0x0001      // 是否要求发送报告:否
#define MMSF_READREPORT             0x0002      // 是否要求与读报告:否
#define MMSF_NORMALPRIORITY         0x0004      // 普通优先级
#define MMSF_LOWPRIORITY            0x0008      // 低优先级
#define MMSF_HIGHPRIORITY           0x0010      // 高优先级

// 接收选项
#define MMRF_RECEIVE                0x0001      // 允许接收:是
#define MMRF_AUTORETRIEVE           0x0002      // 立即提取:是
#define MMRF_DELIVERYNOTIFICATION   0x0004      // 允许发送报告:否
#define MMRF_READNOTIFICATION       0x0008      // 允许发送阅读发送报告:否
#define MMRF_RECEIVEADVERT          0x0010      // 接收广告
#define MMRF_RECEIVEANONYMOUS       0x0020      // 接收匿名信息

#define MMSE_MAX_MMSC               128
#define MMSE_MAX_IP                 16

typedef struct tagMMSEOPTION
{
    unsigned short  mask;
    
    // 连接设置
    char            mmsc[MMSE_MAX_MMSC];
    char            gateway[MMSE_MAX_IP];
    unsigned short  port;
    
    // 发送参数
    unsigned short  expire;             // 有效期,以小时为单位
    unsigned short  SendFlag;           // 发送选项
    
    // 接收参数
    unsigned short  ReceiveFlag;        // 接收选项
    unsigned short  MaxSize;            // 接收彩信大小,以k为单位
    unsigned short  MaxSendSize;        // 发送彩信大小,以k为单位
    
    // 限制参数,=0表示没有限制
    unsigned short  MaxNum;             // 彩信的最大数目

    // slide duration in ms
    unsigned long SlideDuration;

    // 拨号ID
    int             DialID;
} MMSEOPTION, *PMMSEOPTION;

int MMSE_GetOption(void* pMmse ,PMMSEOPTION pOption);
int MMSE_SetOption(void* pMmse ,const PMMSEOPTION pOption);

int MMSE_AddFilterAddress(void* pMmse ,const char* pAddr);
//pAddr = NULL ,全部删除.其余,删除匹配地址
int MMSE_DeleteFilterAddress(void* pMmse ,const char* pAddr);
//pBuf = NULL,返回所需缓冲区大小。
//filter address以 ; 分隔 。pBuf结束没有0,函数返回pBuf中有效字节个数
int MMSE_GetFilterAddress(void* pMmse ,char* pBuf ,int nBufLen);

#ifdef __cplusplus
}
#endif

#endif  //HMMMSE_H_

⌨️ 快捷键说明

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