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

📄 sms.h

📁 基于东南大学开发的SEP3203的ARM7中的所有驱动
💻 H
字号:
/*************************************************************************
*
* Copyright  2000 National ASIC Center, All right Reserved
*
* FILE NAME:			sms.h
* PROGRAMMER:			Yushaofeng
* Date of Creation:		2002/8/13
* 
* DESCRIPTION: 			The essential declarations for sms module including 
*						MACRO define, global var declaration and public
*						functions prototypes.
*
* NOTE:			 		
*
**************************************************************************
*
* MODIFICATION HISTORY
*
*
* 2002/8/13		by Yushaofeng	Creation of this file
*
*************************************************************************/

#ifndef SMS_DEF
#define SMS_DEF

#include <asixdef.h>
#include <sys\ppsmtype.h>
#include <database\SMShdb.h>

// 编辑短信返回值
#define	SMS_OK		1
#define SMS_ERROR	0

// 发送短信返回值
#define SEND_OK		1
#define SEND_FAIL	0

// 保存短信返回值
#define SAVE_SMS_OK		1
#define SAVE_SMS_FAIL	0

// 历史记录保存返回值
//#define HIS_SAVE_OK		1
//#define HIS_SAVE_FAIL	0

// 阅读短信的返回值
#define READ_MODIFY_YES	1
#define READ_MODIFY_NO	0

// 常用语初始化函数的返回值
#define INIT_PHS_FAIL	NULL

// 历史纪录函数初始化返回值
#define INIT_HIS_FAIL	NULL

// 短信保存类型
#define SMS_HISTORY		0
#define SMS_PHONEBOOK	1
#define	SMS_NOTEBOOK	2

// 号码保存失败
//#define PHONE_SAVE_FAIL	0

// 记事本保存失败
//#define NOTE_SAVE_FAIL	0

// 短信历史记录的类型和查找类型
#define SMS_ALL			"0"		//全部
#define SMS_UNREAD		"1"		//未读
#define SMS_READ		"2"		//已读
#define SMS_SEND		"3"		//发送(也就是自己写的短信)
#define SMS_SEARCH		"4"		//查找(通过查找得到的列表类型)

// 发送的不同状态
#define SENDING			1		//发送中
#define SUCCESS			2		//发送成功
#define FAIL			3		//发送失败

// 历史纪录排序标志
#define UP				0		//升序
#define DOWN			1		//降序

// 记事本的查找类型
//#define NAME_STYPE		1		//按姓名查找
//#define	TEXT_STYPE		2		//按全文查找
//#define	DATE_STYPE		3		//按日期查找

// 常量的宏定义
#define PHS_DISP_MAX	5		//常用语窗口最大显示个数,根据窗口大小得出的
#define HIS_DISP_MAX	7		//历史记录列表栏最大显示个数,根据显示面积大小得出的
#define BUTTON_W		20		//按钮边长
#define PHONE_MAX		16		//号码的最大长度
#define SMS_MAX			140		//短信的最大长度
#define PHS_MAX_NUM		20		//常用语链表的最大个数
#define PHS_MAX_SIZE	20		//常用语的最大长度
#define TIME_DISP_MAX	13		//时间显示的最大长度
#define NAME_MAX_SIZE	12		//名字的最大长度
//#define NOTE_MAX_SIZE	1000	//记事本文件的最大长度
#define SMS_DISP_MAX	5		//短信显示栏的最大显示列数,有窗口高度决定
#define HIS_MAX_NUM		50		//历史纪录最大个数
#define	LINE_MAX_SIZE	11		//转发短信中显示框一栏显示的最大汉字个数
#define TIME_MAX_SIZE	14		//时间记录长度
#define TYPE_MAX_SIZE	1		//类型记录的长度

// 短信结构(应用层) 
typedef struct
{
	char		number[PHONE_MAX + 1];		// 号码
	char 		content[SMS_MAX + 1];		// 短信内容
}SMS;

// 短信历史记录结构 
struct SMSHistory			
{
	DWORD		index;				//记录号索引
	SMS			sms;				//短信
	char		flag[2];			//状态标识(已阅读、未阅读,发送)
	char		name[NAME_MAX_SIZE + 1];		//发信人或收信人姓名
	char		time[TIME_MAX_SIZE + 1];		//发送或接收的时间
//	struct SMSHistory	*next;		//链表指针下一个记录
//	struct SMSHistory	*prev;		//链表指针下一个记录
};
typedef struct SMSHistory	SMSHISTORY;

// 搜索参数记录结构
typedef struct
{
	char		searchtype;			//查找类型
	char		keyword[NAME_MAX_SIZE + 1];			//姓名查找的关键字
}SEARCH; 

/*
历史记录分为三个类型
	- 已读短信列表
	- 未读短信列表,在被阅读后加入到已读短信列表
	- 发送列表,记录自己写的已发送或没发送的短信;
*/

// 函数声明
extern	STATUS		EditSMS(void); 
extern	STATUS		SendSMS(SMS *sms); 
extern	STATUS		SaveSMS(SMS *sms, S16 savetype); 
extern	void		ChoosePhrase(char *phs); 
extern	void		GetPhrase(S16 *phsnum, char *phs); 
extern	void		BrowseSMSHistory();
extern	int			ReadSMSHistory(S16 no, S16 listnum, SMSHISTORY **nowlist); 
extern	STATUS		ReplySMS(char *phone); 
extern	STATUS		TransmitSMS(char *content);
extern  STATUS		Add2SMSHistory(SMS *sms, char *type, char *time);
extern	void		LoadHistory(char *type, S16 *num, SMSHISTORY **list); 	//(这里的历史记录暂时自己写,应该是通过数据库读取)
extern	void		GetSMSList(SMSHISTORY **nowlist, S16 listnum, LOCALSEARCHLIST *searchlist);
extern  SEARCH		*SupSearch(S16 *num, SMSHISTORY **list);
extern	void		ModifySMS(SMSHISTORY *nowitem); 	

// 外部函数(要调用的外部函数,这里先自己写的)
extern	char		*SearchTelephoneBook(); 
extern	STATUS		AddPhonetoBook(char *number); 
extern	void		Word2Bytes( unsigned char *s, unsigned short v );
extern	void		Bytes2Word( unsigned short *v, unsigned char *s );
extern	void ByteReversal( unsigned char *s, unsigned char *v );

//extern	STATUS		SaveSmsNote(SMS *sms);
//extern	char*		searchname(char *number); 

#endif

⌨️ 快捷键说明

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