comparison libpurple/protocols/mxit/protocol.h @ 30356:4232e6b27bea

Add support for message delivery notification.
author andrew.victor@mxit.com
date Thu, 13 May 2010 09:02:58 +0000
parents 81ea740f92a4
children 207662bad69c
comparison
equal deleted inserted replaced
30355:d927ae86c742 30356:4232e6b27bea
70 #define MXIT_CF_CUSTOM_EMO 0x010000 70 #define MXIT_CF_CUSTOM_EMO 0x010000
71 #define MXIT_CF_ALERT_PROFILES 0x020000 71 #define MXIT_CF_ALERT_PROFILES 0x020000
72 #define MXIT_CF_EXT_MARKUP 0x040000 72 #define MXIT_CF_EXT_MARKUP 0x040000
73 #define MXIT_CF_PLAIN_PWD 0x080000 73 #define MXIT_CF_PLAIN_PWD 0x080000
74 #define MXIT_CF_NO_GATEWAYS 0x100000 74 #define MXIT_CF_NO_GATEWAYS 0x100000
75 #define MXIT_CF_NO_AVATARS 0x200000
76 #define MXIT_CF_GAMING 0x400000
77 #define MXIT_CF_GAMING_UPDATE 0x800000
75 78
76 /* Client features supported by this implementation */ 79 /* Client features supported by this implementation */
77 #define MXIT_CP_FEATURES ( MXIT_CF_FILE_TRANSFER | MXIT_CF_FILE_ACCESS | MXIT_CF_AUDIO | MXIT_CF_MARKUP | MXIT_CF_EXT_MARKUP | MXIT_CF_NO_GATEWAYS | MXIT_CF_IMAGES | MXIT_CF_COMMANDS | MXIT_CF_VIBES | MXIT_CF_MIDP2 ) 80 #define MXIT_CP_FEATURES ( MXIT_CF_FILE_TRANSFER | MXIT_CF_FILE_ACCESS | MXIT_CF_AUDIO | MXIT_CF_MARKUP | MXIT_CF_EXT_MARKUP | MXIT_CF_NO_GATEWAYS | MXIT_CF_IMAGES | MXIT_CF_COMMANDS | MXIT_CF_VIBES | MXIT_CF_MIDP2 )
78 81
79 82
124 #define CP_CMD_POLL 0x0011 /* (17) poll the HTTP server for an update */ 127 #define CP_CMD_POLL 0x0011 /* (17) poll the HTTP server for an update */
125 //#define CP_CMD_PROFILE_GET 0x001A /* (26) get profile (DEPRECATED see CP_CMD_EXTPROFILE_GET) */ 128 //#define CP_CMD_PROFILE_GET 0x001A /* (26) get profile (DEPRECATED see CP_CMD_EXTPROFILE_GET) */
126 #define CP_CMD_MEDIA 0x001B /* (27) get multimedia message */ 129 #define CP_CMD_MEDIA 0x001B /* (27) get multimedia message */
127 #define CP_CMD_SPLASHCLICK 0x001F /* (31) splash-screen clickthrough */ 130 #define CP_CMD_SPLASHCLICK 0x001F /* (31) splash-screen clickthrough */
128 #define CP_CMD_STATUS 0x0020 /* (32) set shown presence & status */ 131 #define CP_CMD_STATUS 0x0020 /* (32) set shown presence & status */
132 #define CP_CMD_MSGEVENT 0x0023 /* (35) Raise message event */
129 #define CP_CMD_MOOD 0x0029 /* (41) set mood */ 133 #define CP_CMD_MOOD 0x0029 /* (41) set mood */
130 #define CP_CMD_KICK 0x002B /* (43) login kick */ 134 #define CP_CMD_KICK 0x002B /* (43) login kick */
131 #define CP_CMD_GRPCHAT_CREATE 0x002C /* (44) create new groupchat */ 135 #define CP_CMD_GRPCHAT_CREATE 0x002C /* (44) create new groupchat */
132 #define CP_CMD_GRPCHAT_INVITE 0x002D /* (45) add new groupchat member */ 136 #define CP_CMD_GRPCHAT_INVITE 0x002D /* (45) add new groupchat member */
133 #define CP_CMD_NEW_SUB 0x0033 /* (51) get new subscription */ 137 #define CP_CMD_NEW_SUB 0x0033 /* (51) get new subscription */
145 #define RX_STATE_RLEN 0x01 /* reading packet length section */ 149 #define RX_STATE_RLEN 0x01 /* reading packet length section */
146 #define RX_STATE_DATA 0x02 /* reading packet data section */ 150 #define RX_STATE_DATA 0x02 /* reading packet data section */
147 #define RX_STATE_PROC 0x03 /* process read data */ 151 #define RX_STATE_PROC 0x03 /* process read data */
148 152
149 /* message flags */ 153 /* message flags */
154 #define CP_MSG_NOTIFY_DELIVERY 0x0002 /* request delivery notification */
155 #define CP_MSG_NOTIFY_READ 0x0004 /* request read notification */
150 #define CP_MSG_ENCRYPTED 0x0010 /* message is encrypted */ 156 #define CP_MSG_ENCRYPTED 0x0010 /* message is encrypted */
151 #define CP_MSG_MARKUP 0x0200 /* message may contain markup */ 157 #define CP_MSG_MARKUP 0x0200 /* message may contain markup */
152 #define CP_MSG_EMOTICON 0x0400 /* message may contain custom emoticons */ 158 #define CP_MSG_EMOTICON 0x0400 /* message may contain custom emoticons */
153 159
154 /* redirect types */ 160 /* redirect types */
162 #define CP_MSGTYPE_ERROR 0x04 /* error message */ 168 #define CP_MSGTYPE_ERROR 0x04 /* error message */
163 #define CP_MSGTYPE_GROUPCHAT 0x05 /* groupchat message */ 169 #define CP_MSGTYPE_GROUPCHAT 0x05 /* groupchat message */
164 #define CP_MSGTYPE_FORM 0x06 /* mxit custom form */ 170 #define CP_MSGTYPE_FORM 0x06 /* mxit custom form */
165 #define CP_MSGTYPE_COMMAND 0x07 /* mxit command */ 171 #define CP_MSGTYPE_COMMAND 0x07 /* mxit command */
166 172
173 /* message event types */
174 #define CP_MSGEVENT_DELIVERED 0x02 /* message was delivered */
175 #define CP_MSGEVENT_DISPLAYED 0x04 /* message was viewed */
167 176
168 /* extended profile attribute fields */ 177 /* extended profile attribute fields */
169 #define CP_PROFILE_BIRTHDATE "birthdate" /* Birthdate (String - ISO 8601 format) */ 178 #define CP_PROFILE_BIRTHDATE "birthdate" /* Birthdate (String - ISO 8601 format) */
170 #define CP_PROFILE_GENDER "gender" /* Gender (Boolean - 0=female, 1=male) */ 179 #define CP_PROFILE_GENDER "gender" /* Gender (Boolean - 0=female, 1=male) */
171 #define CP_PROFILE_HIDENUMBER "hidenumber" /* Hide Number (Boolean - 0=false, 1=true) */ 180 #define CP_PROFILE_HIDENUMBER "hidenumber" /* Hide Number (Boolean - 0=false, 1=true) */
282 void mxit_send_remove( struct MXitSession* session, const char* username ); 291 void mxit_send_remove( struct MXitSession* session, const char* username );
283 void mxit_send_allow_sub( struct MXitSession* session, const char* username, const char* alias ); 292 void mxit_send_allow_sub( struct MXitSession* session, const char* username, const char* alias );
284 void mxit_send_deny_sub( struct MXitSession* session, const char* username ); 293 void mxit_send_deny_sub( struct MXitSession* session, const char* username );
285 void mxit_send_update_contact( struct MXitSession* session, const char* username, const char* alias, const char* groupname ); 294 void mxit_send_update_contact( struct MXitSession* session, const char* username, const char* alias, const char* groupname );
286 void mxit_send_splashclick( struct MXitSession* session, const char* splashid ); 295 void mxit_send_splashclick( struct MXitSession* session, const char* splashid );
296 void mxit_send_msgevent( struct MXitSession* session, const char* to, const char* id, int event);
287 297
288 void mxit_send_file( struct MXitSession* session, const char* username, const char* filename, const unsigned char* buf, int buflen ); 298 void mxit_send_file( struct MXitSession* session, const char* username, const char* filename, const unsigned char* buf, int buflen );
289 void mxit_send_file_reject( struct MXitSession* session, const char* fileid ); 299 void mxit_send_file_reject( struct MXitSession* session, const char* fileid );
290 void mxit_send_file_accept( struct MXitSession* session, const char* fileid, int filesize, int offset ); 300 void mxit_send_file_accept( struct MXitSession* session, const char* fileid, int filesize, int offset );
291 void mxit_send_file_received( struct MXitSession* session, const char* fileid, short status ); 301 void mxit_send_file_received( struct MXitSession* session, const char* fileid, short status );