comparison src/protocols/oscar/aim.h @ 3595:1e60a05c7482

[gaim-migrate @ 3697] This adds le non-direct connect typing notification for oscar. How it works, in a nutshell: -AIM servers append a flag telling remote clients you support typing notification -You tell the AIM servers you support typing notification when you sign on (by changing the "flags" passed to aim_seticbmparam()) -Clients send little typing notification messages to other clients, but only when they know that the other client supports it (so after you've received an IM from the other person) I also fixed a compile warning or two dealing with SSI stuff. Things to look out for: -ICQ states doing weird things -Typing notification works with MacAIM clients (iChat and the official one) -Typing notification doesn't try to send stuff to clients that don't support (I have no idea how you're supposed to look out for this. It should be ok) committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sun, 06 Oct 2002 03:08:47 +0000
parents 7a3f16a375a5
children 9682c0e022c6
comparison
equal deleted inserted replaced
3594:17e6dd05666a 3595:1e60a05c7482
162 0x0004, \ 162 0x0004, \
163 0x0004, \ 163 0x0004, \
164 0x0001, \ 164 0x0001, \
165 0x0000, \ 165 0x0000, \
166 0x07da, \ 166 0x07da, \
167 "us", \
168 "en", \
169 }
170
171 #define CLIENTINFO_AIM_5_0_2938 { \
172 "AOL Instant Messenger, version 5.0.2938/WIN32", \
173 0x0109, \
174 0x0005, \
175 0x0000, \
176 0x0000, \
177 0x0b7a, \
167 "us", \ 178 "us", \
168 "en", \ 179 "en", \
169 } 180 }
170 181
171 #define CLIENTINFO_ICQ_4_65_3281 { \ 182 #define CLIENTINFO_ICQ_4_65_3281 { \
713 #define AIM_IMFLAGS_CUSTOMFEATURES 0x0080 /* features field present */ 724 #define AIM_IMFLAGS_CUSTOMFEATURES 0x0080 /* features field present */
714 #define AIM_IMFLAGS_EXTDATA 0x0100 725 #define AIM_IMFLAGS_EXTDATA 0x0100
715 #define AIM_IMFLAGS_CUSTOMCHARSET 0x0200 /* charset fields set */ 726 #define AIM_IMFLAGS_CUSTOMCHARSET 0x0200 /* charset fields set */
716 #define AIM_IMFLAGS_MULTIPART 0x0400 /* ->mpmsg section valid */ 727 #define AIM_IMFLAGS_MULTIPART 0x0400 /* ->mpmsg section valid */
717 #define AIM_IMFLAGS_OFFLINE 0x0800 /* send to offline user */ 728 #define AIM_IMFLAGS_OFFLINE 0x0800 /* send to offline user */
729 #define AIM_IMFLAGS_TYPINGNOT 0x1000 /* typing notification */
718 730
719 /* 731 /*
720 * Multipart message structures. 732 * Multipart message structures.
721 */ 733 */
722 typedef struct aim_mpmsg_section_s { 734 typedef struct aim_mpmsg_section_s {
882 894
883 faim_export int aim_send_im_ch2_geticqmessage(aim_session_t *sess, const char *sn, int type); 895 faim_export int aim_send_im_ch2_geticqmessage(aim_session_t *sess, const char *sn, int type);
884 faim_export aim_conn_t *aim_sendfile_initiate(aim_session_t *, const char *destsn, const char *filename, fu16_t numfiles, fu32_t totsize); 896 faim_export aim_conn_t *aim_sendfile_initiate(aim_session_t *, const char *destsn, const char *filename, fu16_t numfiles, fu32_t totsize);
885 faim_export int aim_send_im_ch4(aim_session_t *sess, char *sn, fu16_t type, fu8_t *message); 897 faim_export int aim_send_im_ch4(aim_session_t *sess, char *sn, fu16_t type, fu8_t *message);
886 898
899 faim_export int aim_mtn_send(aim_session_t *sess, fu16_t type1, char *sn, fu16_t type2);
900
887 faim_export aim_conn_t *aim_getfile_initiate(aim_session_t *sess, aim_conn_t *conn, const char *destsn); 901 faim_export aim_conn_t *aim_getfile_initiate(aim_session_t *sess, aim_conn_t *conn, const char *destsn);
888 faim_export int aim_oft_getfile_request(aim_session_t *sess, aim_conn_t *conn, const char *name, int size); 902 faim_export int aim_oft_getfile_request(aim_session_t *sess, aim_conn_t *conn, const char *name, int size);
889 faim_export int aim_oft_getfile_ack(aim_session_t *sess, aim_conn_t *conn); 903 faim_export int aim_oft_getfile_ack(aim_session_t *sess, aim_conn_t *conn);
890 faim_export int aim_oft_getfile_end(aim_session_t *sess, aim_conn_t *conn); 904 faim_export int aim_oft_getfile_end(aim_session_t *sess, aim_conn_t *conn);
891 905
1070 faim_export int aim_ssi_getpermdeny(struct aim_ssi_item *list); 1084 faim_export int aim_ssi_getpermdeny(struct aim_ssi_item *list);
1071 faim_export fu32_t aim_ssi_getpresence(struct aim_ssi_item *list); 1085 faim_export fu32_t aim_ssi_getpresence(struct aim_ssi_item *list);
1072 faim_export int aim_ssi_cleanlist(aim_session_t *sess, aim_conn_t *conn); 1086 faim_export int aim_ssi_cleanlist(aim_session_t *sess, aim_conn_t *conn);
1073 faim_export int aim_ssi_addbuddies(aim_session_t *sess, aim_conn_t *conn, const char *gn, const char **sn, unsigned int num); 1087 faim_export int aim_ssi_addbuddies(aim_session_t *sess, aim_conn_t *conn, const char *gn, const char **sn, unsigned int num);
1074 faim_export int aim_ssi_addmastergroup(aim_session_t *sess, aim_conn_t *conn); 1088 faim_export int aim_ssi_addmastergroup(aim_session_t *sess, aim_conn_t *conn);
1075 faim_export int aim_ssi_addgroups(aim_session_t *sess, aim_conn_t *conn, char **gn, unsigned int num); 1089 faim_export int aim_ssi_addgroups(aim_session_t *sess, aim_conn_t *conn, const char **gn, unsigned int num);
1076 faim_export int aim_ssi_addpord(aim_session_t *sess, aim_conn_t *conn, const char **sn, unsigned int num, fu16_t type); 1090 faim_export int aim_ssi_addpord(aim_session_t *sess, aim_conn_t *conn, const char **sn, unsigned int num, fu16_t type);
1077 faim_export int aim_ssi_movebuddy(aim_session_t *sess, aim_conn_t *conn, char *oldgn, char *newgn, char *sn); 1091 faim_export int aim_ssi_movebuddy(aim_session_t *sess, aim_conn_t *conn, char *oldgn, char *newgn, char *sn);
1078 faim_export int aim_ssi_rename_group(aim_session_t *sess, aim_conn_t *conn, char *oldgn, char *newgn); 1092 faim_export int aim_ssi_rename_group(aim_session_t *sess, aim_conn_t *conn, char *oldgn, char *newgn);
1079 faim_export int aim_ssi_delbuddies(aim_session_t *sess, aim_conn_t *conn, char *gn, char **sn, unsigned int num); 1093 faim_export int aim_ssi_delbuddies(aim_session_t *sess, aim_conn_t *conn, char *gn, char **sn, unsigned int num);
1080 faim_export int aim_ssi_delmastergroup(aim_session_t *sess, aim_conn_t *conn); 1094 faim_export int aim_ssi_delmastergroup(aim_session_t *sess, aim_conn_t *conn);