"HeyyoUsbApiv 设计说明书,用于描述HeyyoSoftPhoneAPI接口,旨在促进第三方应用与Heyyo网络电话及硬件设备(如USBPhone)之间的交互。文档涵盖注册系统消息、自定义事件以及参数类型码表等关键内容。"
HeyyoSoftPhoneAPI是专门为第三方应用程序设计的一个接口,目的是实现Heyyo网络电话与外部硬件设备,特别是USBPhone的通信。这个API的设计说明书详细阐述了其功能和使用方式。
在API的总体设计部分,说明了Heyyo网络电话应用程序与第三方应用之间的通信机制。在两者未成功注册前,它们通过RegisterWindowMessage注册的系统消息,即WM_PHONEAPI_REGISTER和WM_PHONEAPI_REGISTER_RESP进行初步交互。一旦注册成功,双方会获取对方的窗口句柄,并开始使用WM_COPYDATA Windows消息进行后续的数据交换。WM_COPYDATA消息中的wParam携带发送方的窗口句柄,而lParam则指向COPYDATASTRUCT结构,该结构包含数据的标识符(dwData)、数据大小(cbData)和实际数据指针(lpData)。
在注册的系统消息部分,有三个主要的消息类型:
1. WM_PHONEAPI_REGISTER:第三方应用使用此消息向Heyyo网络电话申请注册。
2. WM_PHONEAPI_REGISTER_RESP:Heyyo网络电话响应注册请求,确认或拒绝注册。
3. WM_PHONEAPI_AVAILABLE:当Heyyo网络电话可用时,发送此消息通知第三方应用。
从设备到HEYYOSOFTPHONE的自定义事件包括:
1. EVENT_PHONEAPI_SET_AUDIODEVICE:设备通知HeyyoSoftPhone设置音频设备。
2. EVENT_PHONEAPI_USBDEVICE_STATE_CHANGE:设备报告其状态变化,如连接或断开。
3. EVENT_PHONEAPI_PRESS_KEY:设备模拟按键事件,告知HeyyoSoftPhone用户进行了操作。
4. EVENT_PHONEAPI_UNREGISTER:设备请求取消注册。
而从HEYYOSOFTPHONE到设备的自定义事件则有:
1. EVENT_PHONEAPI_INFO_CHANGE:HeyyoSoftPhone向设备发送信息变更事件,可能涉及通话状态或其他重要信息。
2. EVENT_PHONEAPI_SHUTDOWN:HeyyoSoftPhone通知设备即将关闭,设备应做好相应处理。
此外,文档还包含了一个参数类型码表,列出了各种数据类型的编码,这对于理解和处理API消息中的数据至关重要。
HeyyoSoftPhoneAPI设计说明书V1.1的最新修订日期为2006年12月7日,为开发者提供了清晰的指南,以实现与Heyyo网络电话的无缝集成和高效通信。