收藏 分销(赏)

QQAPI设计项目说明指导书.doc

上传人:精**** 文档编号:2582294 上传时间:2024-06-01 格式:DOC 页数:12 大小:125.54KB
下载 相关 举报
QQAPI设计项目说明指导书.doc_第1页
第1页 / 共12页
QQAPI设计项目说明指导书.doc_第2页
第2页 / 共12页
QQAPI设计项目说明指导书.doc_第3页
第3页 / 共12页
QQAPI设计项目说明指导书.doc_第4页
第4页 / 共12页
QQAPI设计项目说明指导书.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、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.6 EVENT_QQAPI_UNREGIST

2、ER7五、从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 更新时间最终修订日期:-05-24版本号:v1.0二、总体设计QQ应用程序和第三方应用程序以收

3、发消息方法进行通讯。双方未成功注册之前,采取RegisterWindowMessage(Windows API)注册系统消息进行交互,注册成功后,双方分别获取对方窗口句柄,接下来交互经过收发WM_COPYDATA(Windows消息)消息完成。WM_COPYDATAwParam参数为发送方窗口句柄,lParam为指向COPYDATASTRUCT结构指针,COPYDATASTRUCT定义以下:typedef struct tagCOPYDATASTRUCT ULONG_PTRdwData; DWORD cbData; PVOID lpData; COPYDATASTRUCT, *PCOPYDAT

4、ASTRUCT;dwData:事件码,标示传送消息事件码lpData:消息参数,采取多个相连“类型(1字节)长度(4字节)值”格式。全部参数类型码表见8 参数类型码表cbData:消息参数总长度,单位字节三、注册系统消息第三方程序使用Windows SDKRegisterWindowMessage,进行下列系统消息注册。比如:RegisterWindowMessage(“WM_QQAPI_REGISTER”);3.1 WM_QQAPI_REGISTER消息名:注册消息方向:设备QQwParam:发送方窗口句柄lParam:QQ API版本号,现在为100,表示1.00。第三方应用程序开启并检测

5、到可用设备后,向全部Windows窗口广播这个消息,带上自己窗口句柄作为消息参数,以下:SendMessage( HWND_BROADCAST, WM_QQAPI_REGISTER, 发送端窗口句柄, 0);当QQ收到这个消息时,弹出“外设控制”窗口等候用户选择,以下:3.2 WM_QQAPI_REGISTER_RESP消息名:注册回复消息方向:QQ设备wParam:值以下:WAITING(1):等候用户选择OK(2):用户选择“许可使用”REJECT(3):用户选择“严禁使用”lParam:当wParam为OK(2)时,lParam为QQ应用程序窗口句柄。当用户选择“严禁使用”以后,假如第三

6、方应用程序再次发送WM_QQAPI_REGISTER消息,QQ不再弹出“QQ安全警告”框,直接返回REJECTWM_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_AVAILABLE, QQ窗口句柄, 0);当第三方应用程序收到这个消息时,再提议WM_QQAPI_REGIS

7、TER消息进行注册。这种情况出现在,当第三方应用程序先开启,而QQ程序后开启情况下。四、从设备到QQ自定义事件4.1 EVENT_QQAPI_SET_AUDIODEVICE事件说明:设置QQ使用音频设备参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):10lpData:以下表cbData:消息参数总长度参数类型码长度值说明5设备名长度音频设备名,类型:以Null结尾字符串64字节音频设备设备ID号,类型:DWORD第三方应用程序可经过音频设备名字字符串或经过设备ID号,来发送设置音频设备事件。4.2 EVENT_QQAPI_GET_USER

8、INFO事件说明:获取QQ用户信息参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):11lpData:NULLcbData:0QQ返回用户信息,见5.1 EVENT_QQAPI_USERINFO。4.3 EVENT_QQAPI_PRESS_KEY事件说明:发送按键消息,当用户在设备上按下任何键时,发送此事件给QQ参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):12lpData:以下表cbData:消息参数总长度参数类型码长度值说明71字节键值,详见“键值映射表”键值映射表:键名键值00

9、x8010x8120x8230x8340x8450x8560x8670x8780x8890x89Down0x8DUp0x8EClear0x8FOK (呼叫键)0x91Cancel (挂断键)0x92STAR (*)0x93SHARP (#)0x94Mute (静音键)0x95RINGTONG (切换铃声键)0x964.4 EVENT_QQAPI_CALL事件说明:直接呼叫一个好友用户参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):13lpData:以下表cbData:消息参数总长度经过QQ号呼叫:参数类型码长度值说明1QQ号长度QQ号,类

10、型:以Null结尾字符串经过昵称呼叫:参数类型码长度值说明2昵称长度昵称,类型:以Null结尾字符串经过速播号呼叫:参数类型码长度值说明3速播号长度速播号,类型:以Null结尾字符串经过PSTN号码呼叫:参数类型码长度值说明4PSTN号码长度PSTN号码,类型:以Null结尾字符串4.5 EVENT_QQAPI_MUTE事件说明:静音设置,依据参数决定是打开静音或关闭静音参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):14lpData:以下表cbData:消息参数总长度参数类型码长度值说明121字节静音状态标志。1:静音打开;0:静音关闭

11、4.6 EVENT_QQAPI_UNREGISTER事件说明:反注册参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):15lpData:NULLcbData:0当第三方应用程序退出时,向QQ发送此事件消息,QQ将音频设备切换回系统原有设备。五、从QQ到设备自定义事件5.1 EVENT_QQAPI_USERINFO事件说明:返回当地QQ用户信息。对应于4.2 EVENT_QQAPI_GET_USERINFO参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):16lpData:以下表cbDat

12、a:消息参数总长度参数类型码长度值说明1QQ号长度QQ号,类型:以Null结尾字符串2昵称长度昵称,类型:以Null结尾字符串5.2 EVENT_QQAPI_STATUS_CHANGE事件说明:QQ上多种状态改变通知参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):17lpData:以下表cbData:消息参数总长度状态改变类型说明:(1) DIALNUM说明:拨号时号码改变。参数子项依次为:参数类型码长度值说明111字节DIALNUM,状态变换类型码:11QQ号长度QQ号,类型:以Null结尾字符串当用户拨号,QQ在收号时,假如号码发生变

13、换,比如用户在键盘上按一个号码,或用户在PC上按一个号码,或用户按清除键Clear,那么,QQ向第三方程序发送此事件通知。第三方程序可经过此事件通知来进行拨号过程中LCD显示操作。5.3 EVENT_QQAPI_SHUTDOWN事件说明:关闭QQ应用程序参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):18lpData:NULLcbData:0当QQ应用程序退出时,向第三方程序发送此事件消息。六、双向自定义事件6.1 EVENT_QQAPI_CALL_STATUS事件说明:呼叫状态通知参数说明:WM_COPYDATA中参数COPYDATAS

14、TRUCT结构说明详见2dwData(事件码):19lpData:以下表cbData:消息参数总长度呼叫状态类型说明:(1)CONNECTING方向:从QQ到设备说明:呼出,正在等候对方应答。参数子项依次为:参数类型码长度值说明81字节CONNECTING,呼叫状态类型码:194字节呼叫句柄(CallHandle),类型:DWORD101字节通话人数,类型:char1QQ号长度QQ号,类型:以Null结尾字符串2昵称长度昵称,类型:以Null结尾字符串其中,呼叫句柄为QQ分配唯一呼叫标识符;通话人数为同时呼出QQ个数;接下来紧跟2个参数子项为被呼叫QQ好友信息,假如被呼叫QQ好友有多个,则有多

15、个QQ好友信息。回铃音由QQ控制播放。(2)RING 方向:从QQ到设备说明:呼入,振铃。参数子项依次为:参数类型码长度值说明81字节RING,呼叫状态类型码:294字节呼叫句柄(CallHandle),类型:DWORD1QQ号长度QQ号,类型:以Null结尾字符串2昵称长度昵称,类型:以Null结尾字符串4(可选)PSTN号码长度PSTN号码,类型:以Null结尾字符串其中,呼叫句柄为QQ分配唯一呼叫标识符;接下来2个参数子项为呼入QQ好友信息;最终一个参数项为可选项,呼出PSTN号码,该号码直接由呼叫方指定,当地QQ完成呼叫转移,转到PSTN号码上。假如RINGING带了“呼出PSTN号码

16、”,则当地不振铃,直接转移呼出;假如RINGING没带“呼出PSTN号码”,则当地振铃。(3)BUSY(针对转接盒设备)方向:双向说明:占线。参数子项依次为:参数类型码长度值说明81字节BUSY,呼叫状态类型码:394字节呼叫句柄(CallHandle),类型:DWORD从QQ到设备:呼出,等候对方应答,且当对方设备被PSTN占用时,则QQ向当地设备发送占线状态。从设备到QQ:呼入,当地振铃,且当当地设备被PSTN占用时,则当地设备向QQ发送占线状态。(4)ACCEPT方向:从QQ到设备说明:呼入或呼出,某方接收,双方进入通话状态。参数子项依次为:参数类型码长度值说明81字节ACCEPT,呼叫

17、状态类型码:494字节呼叫句柄(CallHandle),类型:DWORD(5)REJECT方向:从QQ到设备说明:呼入或呼出,某方拒绝。参数子项依次为:参数类型码长度值说明81字节REJECT,呼叫状态类型码:594字节呼叫句柄(CallHandle),类型:DWORD(6)FINISH方向:从QQ到设备说明:呼入或呼出,通话结束,不管哪方提议。参数子项依次为:参数类型码长度值说明81字节FINISH,呼叫状态类型码:694字节呼叫句柄(CallHandle),类型:DWORD(7)FAIL方向:从QQ到设备说明:呼出失败。参数子项依次为:参数类型码长度值说明81字节FAIL,呼叫状态类型码:

18、794字节呼叫句柄(CallHandle),类型:DWORD失败原因可能是,呼叫用户不是QQ好友。(8)HOLD(针对转接盒设备)方向:从设备到QQ说明:暂停通话,通话被切换到PSTN。参数子项依次为:参数类型码长度值说明81字节HOLD,呼叫状态类型码:894字节呼叫句柄(CallHandle),类型:DWORD(9)RESUME(针对转接盒设备)方向:从设备到QQ说明:恢复通话,通话被切换到回QQ。参数子项依次为:参数类型码长度值说明81字节RESUME,呼叫状态类型码:994字节呼叫句柄(CallHandle),类型:DWORD(10)MUTE方向:从QQ到设备说明:静音状态通知。参数子

19、项依次为:参数类型码长度值说明81字节MUTE,呼叫状态类型码:1094字节呼叫句柄(CallHandle),类型:DWORD121字节静音状态标志。1:静音打开;0:静音关闭七、错误码定义7.1 从QQ到设备EVENT_QQAPI_ERROR事件说明:从QQ到设备错误通知参数说明:WM_COPYDATA中参数COPYDATASTRUCT结构说明详见2dwData(事件码):20lpData:以下表cbData:消息参数总长度参数类型码长度值说明121字节错误类型,类型:char错误码定义:八、参数类型码表参数类型码长度值说明1QQ号长度QQ号,类型:以Null结尾字符串2昵称长度昵称,类型:

20、以Null结尾字符串3速播号长度速播号,类型:以Null结尾字符串4PSTN号码长度PSTN号码,类型:以Null结尾字符串5设备名长度音频设备名,类型:以Null结尾字符串64字节音频设备设备ID号,类型:DWORD71字节键值,详见4.3“键值映射表”81字节呼叫状态类型,类型:char,关键有:(1)CONNECTING,呼叫状态类型码:1(2)RING,呼叫状态类型码:2(3)BUSY,呼叫状态类型码:3(4)ACCEPT,呼叫状态类型码:4(5)REJECT,呼叫状态类型码:5(6)FINISH,呼叫状态类型码:6(7)FAIL,呼叫状态类型码:7(8)HOLD,呼叫状态类型码:8(9)RESUME,呼叫状态类型码:9(10)MUTE,呼叫状态类型码:1094字节呼叫句柄(CallHandle),类型:DWORD101字节通话人数,类型:char注:通话人数会影响后续参数子项,比如当通话人数为2,后面会跟两份QQ用户信息。111字节状态变换类型,类型:char,关键有:(1)DIALNUM,状态变换类型码:1121字节静音状态标志。1:静音打开;0:静音关闭131字节错误类型,类型:char

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 应用文书 > 技术指导

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服