QQ API设计说明书.doc
《QQ API设计说明书.doc》由会员分享,可在线阅读,更多相关《QQ API设计说明书.doc(11页珍藏版)》请在沃文网上搜索。
1、腾讯文档 QQ API设计说明书QQ API设计说明书深圳腾讯计算机系统有限公司目录一、引言31.1 编写目的31.2 更新时间3二、总体设计3三、注册的系统消息33.1 WM_QQAPI_REGISTER33.2 WM_QQAPI_REGISTER_RESP43.3 WM_QQAPI_AVAILABLE4四、从设备到QQ的自定义事件54.1 EVENT_QQAPI_SET_AUDIODEVICE54.2 EVENT_QQAPI_GET_USERINFO54.3 EVENT_QQAPI_PRESS_KEY54.4 EVENT_QQAPI_CALL64.5 EVENT_QQAPI_MUTE64.
2、6 EVENT_QQAPI_UNREGISTER7五、从QQ到设备的自定义事件75.1 EVENT_QQAPI_USERINFO75.2 EVENT_QQAPI_STATUS_CHANGE75.3 EVENT_QQAPI_SHUTDOWN8六、双向的自定义事件86.1 EVENT_QQAPI_CALL_STATUS8七、错误码定义107.1 从QQ到设备EVENT_QQAPI_ERROR10八、参数类型码表11一、引言1.1 编写目的本文档提供了QQ API接口说明,以供第三方应用程序使用,用于QQ和硬件设备(例如USB Phone)的交互。1.2 更新时间最后修订日期:2005-05-24版
3、本号:v1.0二、总体设计QQ应用程序和第三方应用程序以收发消息的方式进行通讯。双方未成功注册之前,采用RegisterWindowMessage(Windows API)注册的系统消息进行交互,注册成功后,双方分别获取对方的窗口句柄,接下来的交互通过收发WM_COPYDATA(Windows消息)消息完成。WM_COPYDATA的wParam参数为发送方的窗口句柄,lParam为指向COPYDATASTRUCT结构的指针,COPYDATASTRUCT定义如下:typedef struct tagCOPYDATASTRUCT ULONG_PTRdwData; DWORD cbData; PVO
4、ID lpData; COPYDATASTRUCT, *PCOPYDATASTRUCT;dwData:事件码,标示传送的消息事件码lpData:消息参数,采用多个相连的“类型(1字节)长度(4字节)值”的格式。所有的参数类型码表见8 参数类型码表cbData:消息参数总长度,单位字节三、注册的系统消息第三方程序使用Windows SDKRegisterWindowMessage,进行下列系统消息的注册。例如:RegisterWindowMessage(“WM_QQAPI_REGISTER”);3.1 WM_QQAPI_REGISTER消息名:注册消息方向:设备QQwParam:发送方的窗口句柄
5、lParam:QQ API版本号,目前为100,表示1.00。第三方应用程序启动并检测到可用的设备后,向所有Windows窗口广播这个消息,带上自己的窗口句柄作为消息参数,如下:SendMessage( HWND_BROADCAST, WM_QQAPI_REGISTER, 发送端窗口句柄, 0);当QQ收到这个消息时,弹出“外设控制”窗口等待用户选择,如下:3.2 WM_QQAPI_REGISTER_RESP消息名:注册回复消息方向:QQ设备wParam:值如下:WAITING(1):等待用户选择OK(2):用户选择“允许使用”REJECT(3):用户选择“禁止使用”lParam:当wPara
6、m为OK(2)时,lParam为QQ应用程序的窗口句柄。当用户选择“禁止使用”之后,如果第三方应用程序再次发送WM_QQAPI_REGISTER消息,QQ不再弹出“QQ安全警告”框,直接返回REJECT的WM_QQAPI_REGISTER_RESP消息,直到QQ程序重新启动为止。3.3 WM_QQAPI_AVAILABLE消息名:QQ API可用消息方向:QQ设备wParam:发送方的窗口句柄,即QQ程序的窗口句柄lParam:QQ API版本号,目前为1当QQ启动后,向所有Windows窗口广播这个消息:SendMessage( HWND_BROADCAST, WM_QQAPI_AVAILA
7、BLE, QQ窗口句柄, 0);当第三方应用程序收到这个消息时,再发起WM_QQAPI_REGISTER消息进行注册。这种情况出现在,当第三方应用程序先启动,而QQ程序后启动的情况下。四、从设备到QQ的自定义事件4.1 EVENT_QQAPI_SET_AUDIODEVICE事件说明:设置QQ使用的音频设备参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2dwData(事件码):10lpData:如下表cbData:消息参数总长度参数类型码长度值说明5设备名长度音频设备名,类型:以Null结尾的字符串64字节音频设备的设备ID号,类型:DWORD第三方应用程序可通
8、过音频设备名字字符串或者通过设备ID号,来发送设置音频设备事件。4.2 EVENT_QQAPI_GET_USERINFO事件说明:获取QQ用户信息参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2dwData(事件码):11lpData:NULLcbData:0QQ返回的用户信息,见5.1 EVENT_QQAPI_USERINFO。4.3 EVENT_QQAPI_PRESS_KEY事件说明:发送按键消息,当用户在设备上按下任何键时,发送此事件给QQ参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2dwData(事件码):12lpD
9、ata:如下表cbData:消息参数总长度参数类型码长度值说明71字节键值,详见“键值映射表”键值映射表:键名键值00x8010x8120x8230x8340x8450x8560x8670x8780x8890x89Down0x8DUp0x8EClear0x8FOK (呼叫键)0x91Cancel (挂断键)0x92STAR (*)0x93SHARP (#)0x94Mute (静音键)0x95RINGTONG (切换铃声键)0x964.4 EVENT_QQAPI_CALL事件说明:直接呼叫一个好友用户参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2dwData(
10、事件码):13lpData:如下表cbData:消息参数总长度通过QQ号呼叫:参数类型码长度值说明1QQ号长度QQ号,类型:以Null结尾的字符串通过昵称呼叫:参数类型码长度值说明2昵称长度昵称,类型:以Null结尾的字符串通过速播号呼叫:参数类型码长度值说明3速播号长度速播号,类型:以Null结尾的字符串通过PSTN号码呼叫:参数类型码长度值说明4PSTN号码长度PSTN号码,类型:以Null结尾的字符串4.5 EVENT_QQAPI_MUTE事件说明:静音设置,根据参数决定是打开静音或者关闭静音参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2dwData(
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- QQ API设计说明书 API 设计 说明书