具体实施方式
本发明实施例接收按下蓝牙按键的触发事件;当按下的蓝牙按键为播放按键,判断当前是否正在进行网络对讲方案Qchat通话业务;当判断确定当前正在进行Qchat通话业务,将按下的所述播放按键映射为即按即讲PTT按键,进行话语权抢占。用蓝牙耳机上的按键实现了终端上PTT按键的功能,通过蓝牙耳机即可完成Qchat业务,而无需通过终端上的按键来控制,实现了对蓝牙耳机功能的有效利用,同时也更加提高了Qchat业务的便捷性,即使终端设备不在用户身边,但只要终端设备与蓝牙耳机在可通信范围内,即可通过蓝牙耳机完成Qchat业务,方便了用户的使用。
参见图1,本发明实施例中网络对讲的主要方法流程如下:
步骤101:接收按下蓝牙按键的触发事件。当有蓝牙按键被按下时,即相当于产生了按下蓝牙按键的触发事件。
本发明实施例中主要应用的是蓝牙耳机上的播放按键和停止按键。所述蓝牙耳机可以是用于通话的蓝牙耳机,则所述播放按键为蓝牙耳机上的通话按键,所述停止按键为蓝牙耳机上的挂断按键,或者所述蓝牙耳机也可以是用于播放音乐的蓝牙耳机,则所述播放按键为所述蓝牙耳机上的音乐播放按键,所述停止按键为所述蓝牙耳机上的音乐停止按键。蓝牙(BlueTooth)是一种用于解决短距离的无线通信问题的技术,其有效通信距离一般在10米以内。根据蓝牙的不同应用方式,在标准中定义了不同的配置协议,其中AVRCP(音频/视频远程控制配置文件)协议是为了在蓝牙媒体输出设备上收听立体声音乐或收看视频媒体时,能够通过蓝牙控制设备方便地实现对所播放媒体的控制的协议。AVRCP协议定义了媒体播放中常见的控制指令,包括:播放(Play),停止(Stop),暂停(pause),下一首(forward),上一首(backward)。
步骤102:当按下的蓝牙按键为播放按键,判断当前是否正在进行网络对讲方案Qchat通话业务。当判断结果为是时,继续步骤103,否则继续判断当前是否处于拨号应用中,其中,所述拨号应用可以包括拨号盘应用、或通讯录应用、或通话记录应用、或Qchat邀请界面应用等,如果判断确定当前处于拨号应用中,即当前处于拨号盘应用中、或通讯录应用中、或通话记录应用中、或Qchat邀请界面应用中,则获得号码信息,发起Qchat呼叫;如果判断确定当前不处于拨号应用中,则继续判断当前是否有未处理的Qchat通话邀请,当判断确定当前有未处理的Qchat通话邀请,则获得最近一次的Qchat通话邀请信息,向该Qchat通话邀请的号码发起Qchat呼叫,当判断确定当前没有未处理的Qchat通话邀请,则不进行操作。
步骤103:当判断确定当前正在进行Qchat通话业务,将按下的所述播放按键映射为即按即讲PTT按键,进行话语权抢占。将接收到的所述播放按键的按键值修改为与PTT按键相同的按键值,即相当于将接收到的播放按键映射为终端设备上的PTT按键,从而通过该播放按键完成与PTT按键相同的功能,通过保留该播放按键的按键值进行话语权抢占。当抢占到话语权之后即可释放该播放按键。
参见图2,本发明实施例中网络对讲的详细方法流程如下:
步骤201:接收按下蓝牙按键的触发事件。
步骤202:判断按下的蓝牙按键是否为播放按键。当判断结果为是时,继续步骤203,否则继续步骤204。
步骤203:当判断确定当前正在进行Qchat通话业务,将按下的所述播放按键映射为PTT按键,以进行话语权抢占。即将接收到的所述播放按键的按键值修改为与PTT按键相同的按键值,以进行话语权抢占。本发明实施例中当前正在进行Qchat通话业务,因此省略了步骤203之前判断当前是否正在进行Qchat通话业务的判断过程。
步骤204:判断所述按下的蓝牙按键是否为停止按键。当判断结果为是时,继续步骤205,否则结束流程,即不进行操作。
步骤205:判断当前是否正在进行Qchat通话业务。当判断结果为是时,继续步骤206,否则结束流程。
步骤206:退出当前Qchat通话业务。删除PTT按键的按键值,即退出了当前的Qchat通话业务。
其中,也可以在步骤201之后先判断当前是否正在进行Qchat通话业务,如果当前正在进行Qchat通话业务,且按下的是播放按键,则将接收到的所述播放按键映射为PTT按键,以进行话语权抢占;如果当前没有进行Qchat通话业务,且按下的是播放按键,则继续判断当前是否处于拨号应用中;如果按下的蓝牙按键既不是播放按键也不是停止按键,则不进行操作;如果当前正在进行Qchat通话业务,按下的蓝牙按键是停止按键,则退出该次Qchat通话业务;如果当前没有进行Qchat通话业务,按下的蓝牙按键是停止按键,则不进行操作。
参见图3,本发明实施例中确定按下的蓝牙按键为播放按键时网络对讲的详细方法流程如下:
步骤301:接收按下蓝牙按键的触发事件。本发明实施例中确定所述按下的蓝牙按键为播放按键,因此省略了步骤301之后判断所述按下的蓝牙按键是否为播放按键的过程。
步骤302:判断当前是否正在进行Qchat通话业务。当判断结果为是时,继续步骤303,否则继续步骤304。
步骤303:将按下的所述播放按键映射为PTT按键,以进行话语权抢占。将接收到的所述播放按键的按键值修改为与PTT按键相同的按键值,通过保留所述播放按键的按键值进行话语权抢占。
步骤304:判断当前是否处于拨号盘应用中。当判断结果为是时,继续步骤308,否则继续步骤305。
步骤305:判断当前是否处于通讯录应用中。当判断结果为是时,继续步骤308,否则继续步骤306。
步骤306:判断当前是否处于通话记录应用中。当判断结果为是时,继续步骤308,否则继续步骤307。
步骤307:判断当前是否处于Qchat邀请界面应用中。当判断结果为是时,继续步骤308,否则继续步骤309。
其中,步骤304-步骤307的判断过程可以没有先后顺序,按任意顺序进行,也可以同时进行。
步骤308:获得号码信息,发起Qchat呼叫。例如,可以调用IQDK30CALL_StartCall()函数发起Qchat呼叫。
步骤309:判断当前是否有未处理的Qchat通话邀请。当判断结果为是时,继续步骤310,否则结束流程。
步骤310:获得最近一次Qchat通话邀请的号码信息,发起对该号码的Qchat呼叫。例如,可以调用用于呼叫的IQDK30CALL_StartCall()函数,发起对该号码的Qchat呼叫。其中,IQDK30CALL_StartCall()函数为API(应用程序编程接口)函数。
通过以上的方法流程,即可使用蓝牙耳机上的按键来控制Qchat通话中话语权的抢占、通话的发起及通话的推出等过程,使Qchat业务的使用更加便捷。
下面介绍网络对讲的实现系统。
参见图4,本发明实施例中网络对讲的实现系统包括蓝牙模块401及事件处理模块402。
蓝牙模块401用于接收按下蓝牙按键的触发事件。蓝牙模块401位于蓝牙耳机端,当蓝牙模块401获知有蓝牙按键被按下时,即接收到按下蓝牙按键的触发事件时,通知事件处理模块402,其中蓝牙模块401可以以事件的形式通知事件处理模块402,该事件的参数中包含当前用户的按键信息。
事件处理模块402用于当所述按下的蓝牙按键为播放按键,判断当前是否正在进行网络对讲方案Qchat通话业务,当判断确定当前正在进行Qchat通话业务,将按下的所述播放按键映射为即按即讲PTT按键,以进行话语权抢占。事件处理模块402根据蓝牙模块401发送的事件判断及确定当前按下的蓝牙按键是否为播放按键,如果判断确定所述按下的蓝牙按键为播放按键,继续判断当前是否正在进行Qchat通话业务,当判断确定当前正在进行Qchat通话业务,将按下的所述播放按键的按键值修改为与PTT按键相同的按键值,即将接收到的所述播放按键映射为PTT按键,以通过保留所述播放按键的按键值进行话语权抢占;当判断确定当前没有进行Qchat通话业务,继续判断当前是否处于拨号应用中,其中,所述拨号应用可以包括拨号盘应用、或通讯录应用、或通话记录应用、或Qchat邀请界面应用等,如果判断结果确定当前处于拨号应用中,即当前处于拨号盘应用中、或通讯录应用中、或通话记录应用中、或Qchat邀请界面应用中,则获得号码信息,向该号码发起Qchat呼叫。其中,如果当前处于拨号盘应用中,则可以发起对拨号盘中号码的呼叫,如果当前处于通讯录应用中,则可以发起对通讯录中指定号码的呼叫,如果当前处于通话记录应用中,则可以发起对通话记录中指定记录的号码的呼叫,如果当前处于Qchat邀请界面应用中,则发起对该邀请号码的Qchat呼叫;如果判断结果为当前不处于拨号应用中,则继续判断当前是否有未处理的Qchat通话邀请,当判断确定当前有未处理的Qchat通话邀请,则获得最近一次的Qchat通话邀请的号码信息,向该号码发起Qchat呼叫,当判断确定当前没有未处理的Qchat通话邀请,则不进行操作。如果判断确定当前按下的蓝牙按键不是播放按键,继续判断当前按下的蓝牙按键是否为停止按键,如果判断确定当前按下的蓝牙按键不是停止按键,则不进行操作,如果判断确定当前按下的蓝牙按键为停止按键,则继续判断当前是否正在进行Qchat通话业务,如果判断确定当前正在进行Qchat通话业务,则退出该次Qchat通话业务,删除PTT按键的按键值,即退出了当前的Qchat通话业务。如果判断确定当前没有进行Qchat通话业务,则不进行操作。其中,事件处理模块402位于终端设备的Qchat模块中,所述终端设备可以是手机。手机开机时,可以自动启动Qchat模块。如果是加入事件处理模块402后手机首次开机,则可以在开机后向系统注册蓝牙事件,例如可以使用用于注册的Ishell_RegisterNotify()函数向系统注册蓝牙事件,注册后,当有蓝牙按键按下时,即接收到按下蓝牙按键的触发事件时,蓝牙模块401即可通知事件处理模块402进行处理。当确定无需使用蓝牙耳机来控制Qchat业务时,可以向系统去注册,例如可以使用用于去注册的Ishell_UnRegisterNotify()函数向系统去注册蓝牙事件,则当再有蓝牙按键被按下时,即再接收到按下蓝牙按键的触发事件时,蓝牙模块401不会再通知事件处理模块402。其中,Ishell_RegisterNotify()函数及Ishell_UnRegisterNotify()可以是API函数。
如果蓝牙模块401只包括一个蓝牙按键。则按下蓝牙按键时,事件处理模块402查询是否已存在PTT按键的按键值,如果存在,则删除该按键值,表示释放该蓝牙按键,即该次按下的蓝牙按键为停止按键,如果不存在,则将按下的蓝牙按键的按键值修改为与PTT按键相同的按键值,即表示该次按下的蓝牙按键为播放按键。
参见图5,本发明实施例中的终端设备包括Qchat模块501及事件处理模块402。其中,事件处理模块402位于Qchat模块501中。具体的,所述终端设备可以是手机。
Qchat模块501用于完成Qchat通话业务。
事件处理模块402用于进行话语权的抢占及发起Qchat通话。
本发明实施例接收按下蓝牙按键的触发事件;当按下的蓝牙按键为播放按键,判断当前是否正在进行网络对讲方案Qchat通话业务;当判断确定当前正在进行Qchat通话业务,将按下的所述播放按键映射为即按即讲PTT按键,进行话语权抢占。用蓝牙耳机上的按键实现了终端上PTT按键的功能,通过蓝牙耳机即可完成Qchat业务,即可以通过蓝牙耳机上的按键来控制Qchat通话中话语权的抢占、通话的发起及通话的退出等过程,而无需再通过终端设备上的按键来控制,实现了对蓝牙耳机功能的有效利用,同时也更加提高了Qchat业务的便捷性,即使终端设备不在用户身边,但只要终端设备与蓝牙耳机在可通信范围内,即可通过蓝牙耳机完成Qchat业务,方便了用户的使用。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。