一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

呼叫提醒方法及终端与流程

2022-02-20 04:46:51 来源:中国专利 TAG:


1.本技术涉及通信领域,尤其涉及一种呼叫提醒方法及终端。


背景技术:

2.随着终端技术的发展,手机这一终端已经成为人们生活和工作必不可少的工具。目前,用户在使用手机时,通常可以提前设置不同情况或特定时间段下的默认呼叫转移,从而使得手机收到来电时自动进行呼叫转移。
3.虽然这种方式可以让被叫终端通过指定的呼叫转移终端接听主叫终端的来电,例如默认转接到运营商的语音服务平台,使得主叫用户能够进行留言,而被叫用户则可以通过查收语音信箱的留言及时获知主叫用户的来电目的。但是,在实际的应用场景中,有些主叫用户在使用主叫终端呼叫被叫终端的过程中,不会把主叫终端放在耳边,而是在主叫终端的呼叫界面显示呼叫接通后才将主叫终端放到耳边。这种情况下,主叫用户往往会错过主叫终端通过听筒播放的提示主叫用户进行留言或挂机的提示信息,或者因为外界环境的干扰没用听清语音提示,或误将语音提示当做被叫用户的声音。即,主叫用户误以为被叫用户接听了电话,会直接说话。然而,主叫用户说话后,却不会收到被叫用户的回应。因此,主叫用户会误以为主叫终端/网络/被叫终端发生了故障,会不停的移动主叫终端位置,或者不断询问被叫用户是否有听到声音,这样不仅浪费通话线路资源,还严重影响用户体验。


技术实现要素:

4.为了解决上述技术问题,本技术提供一种呼叫提醒方法及终端。在该方法能够使得主叫用户获知当前通话被叫用户并未接听,并根据呼叫提醒内容进行留言或直接挂断当前通话,既改善了用户体验,又可以避免对通话线路资源的无效占用。
5.第一方面,本技术提供一种呼叫提醒方法。该呼叫提醒方法包括:主叫终端通过网络设备向被叫终端发送第一呼叫请求;接收所述网络设备生成的响应消息,所述响应消息中包括响应码,在所述响应码为181时,所述网络设备向指定的呼叫转移终端发送第二呼叫请求;对所述响应消息进行解析,提取所述响应消息中的响应码;在所述响应码为181时,对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端;根据所述呼叫转移终端,生成呼叫提醒内容;在与所述呼叫转移终端建立通信连接关系后,根据所述呼叫提醒内容在所述主叫终端进行呼叫提醒。这样,主叫终端根据网络设备反馈的响应消息中的响应码来确定当前呼叫是否进行了呼叫转移,在确定进行了呼叫转移时,通过解析响应消息中的历史信息字段确定呼叫转移终端,进而生成与呼叫转移终端匹配的呼叫提醒内容,并在主叫终端与呼叫转移终端建立通信连接关系后,根据呼叫提醒内容在主叫终端进行呼叫提醒,使得主叫用户能够获知当前通话被叫用户并未接听,并根据呼叫提醒内容进行留言或直接挂断当前通话,从而既可以改善用户体验,又可以避免对通话线路资源的无效占用。
6.示例性的,反馈给所述主叫终端的响应消息由所述网络设备根据被叫终端当前的状态信息生成。
7.示例性的,所述网络设备会根据所述被叫终端当的状态信息生成回执指令,并根据所述回执指令生成对应的响应消息反馈给所述主叫终端。
8.示例性的,所述回执指令包括但不限于应答指令、拒接指令和呼叫转移指令。
9.示例性的,在所述被叫终端振铃时,所述回执指令为应答指令,所述响应消息中的响应码为180。
10.示例性的,在所述被叫终端在预设时间内没有接听时,所述回执指令为拒接指令,所述响应消息中的响应码可以是480,即暂时无法接听。
11.示例性的,在所述被叫终端预先开启了呼叫转移业务,且所述网络设备支持呼叫转移业务时,在所述被叫终端在预设时间内没有接听或者被叫用户选择拒接时,所述回执指令为呼叫转移指令,所述响应消息中的响应码为181。
12.根据第一方面,所述历史信息字段中记载了所述第一呼叫请求对应的跳转记录,每一次的所述跳转记录包括第一关键字段和第二关键字段,所述第一关键字段用于表示要跳转到的呼叫号码,所述第二关键字段用于表示跳转次数;所述对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端,包括:对所述响应消息中的历史信息字段进行解析,提取所述第一关键字段和所述第二关键字段;确定记录了最后一次跳转次数的所述第二关键字段为目标第二关键字段,将与所述目标第二关键字段位于同一条所述跳转记录的所述第一关键字段对应的呼叫号码确定为呼叫转移号码;根据所述呼叫转移号码,确定所述呼叫转移终端。这样,通过解析历史信息字段,并提取记载的每一条跳转记录的第一关键字段和第二关键字段,进而可以根据第一关键字段和第二关键字段记载的内容快速、准确的确定当前跳转具体是跳转到哪一终端,进而根据发起第一呼叫请求时的呼叫号码和当前跳转到的终端对应的呼叫号码,确定每一跳对应的终端。
13.根据第一方面,或者以上第一方面的任意一种实现方式,所述根据所述呼叫转移号码,确定所述呼叫转移终端,包括:在所述呼叫转移号码为与用户身份识别sim卡绑定的电话号码时,确定所述呼叫转移终端为设置了所述sim卡的终端;在所述呼叫转移号码为运营商提供的语音信箱对应的号码时,确定所述呼叫转移终端为服务器类型的语音服务平台。这样,使得本技术提供的呼叫提醒方案既可以针对第三方终端进行呼叫转移,又可以针对运营商设置的语音信息进行语音留言,丰富了使用场景。
14.根据第一方面,或者以上第一方面的任意一种实现方式,所述被叫终端包括第一sim卡和所述第二sim卡,所述第一sim卡与被叫号码绑定,所述第二sim卡与所述呼叫转移号码绑定。这样,使得本技术提供的呼叫提醒方案既可以实现终端与终端/服务器之间的呼叫转移,又可以实现终端内sim卡之间的呼叫转移。
15.根据第一方面,或者以上第一方面的任意一种实现方式,在所述对所述响应消息中的历史信息字段进行解析之后,所述方法还包括:建立每一条所述跳转记录中所述第一关键字段对应的呼叫号码与所述第一呼叫请求呼叫的所述被叫终端对应的被叫号码之间的关联关系;根据所述关联关系更新所述主叫终端中对所述被叫号码的记录信息。这样,通过将提取出的每一跳跳转记录中记载的呼叫号码与主叫终端发起的第一呼叫请求中被叫号码建立关联关系,并根据关联关系对主叫终端本地存储的被叫号码的记录信息进行更新,从而便于主叫用户后续联系使用被叫终端的被叫用户时,能够根据记录的多个关联号码,更快的联系到被叫用户。
16.根据第一方面,或者以上第一方面的任意一种实现方式,在所述对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端之前,所述方法还包括:确定当前呼叫对应的通话模式,所述通话模式包括外放模式、耳机模式和听筒模式;根据所述通话模式,确定是否满足呼叫提醒条件;在确定满足所述呼叫提醒条件时,执行所述对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端的步骤。这样,通过根据主叫终端当前呼叫对应的通话模式来确定主叫终端是否满足提醒条件,从而可以根据不同的通话模式,决策不同的提醒方式,使得本技术提供的呼叫提醒方案能够给予主叫用户更加合适的提醒,进一步提升用户体验。
17.示例性的,所述外放模式和所述听筒模式根据所述主叫终端的扬声器的开启状态确定。
18.示例性的,所述耳机模式根据所述主叫终端是否连接耳机确定。
19.示例性的,所述耳机为蓝牙耳机或有线耳机。
20.示例性的,在所述扬声器为开启状态时,确定所述通话模式为外放模式,所述主叫终端不满足呼叫提醒条件;反之,确定所述主叫终端满足呼叫提醒条件。这样,在主叫终端不处于外放模式时,主叫用户可能无法及时听到或听清网络设备反馈的默认语音提示,故而为了避免主叫用户错过提示误将被转接到语音服务平台的通话认为被叫用户已接听,对于不是外放模式的通话模式,直接采用本技术提供的呼叫提醒方案进行提醒,从而可以使主叫用户及时获知当前通话情况。
21.示例性的,在所述扬声器为未开启状态,确定所述主叫终端满足呼叫提醒条件时,主叫终端检测是否连接了耳机,在确定连接了耳机时,确定所述主叫终端不满足呼叫提醒条件;在未连接耳机时,确定所述主叫终端满足呼叫提醒条件。这样,在当前通话既不是外放模式,也不是耳机模式时才采用本技术提供的呼叫提醒方案向主叫用户进行提醒,从而避免网络设备反馈的默认提示和本技术作出的提示重复,影响用户体验。
22.示例性的,在未连接耳机时,确定所述主叫终端满足呼叫提醒条件时,判断所述主叫终端当前是否位于主叫用户的耳边/头部。
23.示例性的,在所述主叫终端位于主叫用户的耳边/头部时,确定所述主叫终端不满足呼叫提醒条件;反之,确定所述主叫终端满足呼叫提醒条件。
24.示例性的,在连接耳机时,根据耳机内部的传感器采集到的数据确定耳机是否佩戴到了主叫用户的耳朵上。
25.示例性的,在确定耳机佩戴到了主叫用户耳朵上时,确定所述主叫终端不满足呼叫提醒条件;反之,确定所述主叫终端满足呼叫提醒条件。这样,在确保主叫用户将耳机佩戴到耳朵上时才确定当前不满足呼叫提醒条件,从而避免在主叫终端连接耳机,但是主叫用户未佩戴耳机的情况下,不像主叫用户进行呼叫提醒,导致主叫用户错过提醒,误以为当前通话由被叫终端接听,但却听不到被叫用户的反馈,认为当前网络出现异常。
26.根据第一方面,或者以上第一方面的任意一种实现方式,所述根据所述通话模式,确定是否满足呼叫提醒条件,包括:获取所述通话模式对应的第一语音播放音量;根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件。这样,在根据通话模式确定主叫终端是否满足呼叫提醒条件时,还结合不同通话模式当前对应的第一语音播放音量,从而能够从多维度对主叫终端当前的状态进行考虑,进而保证最终确定的结果更加
适合主叫终端当前的使用场景,进一步提升用户体验。
27.根据第一方面,或者以上第一方面的任意一种实现方式,在所述根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件之前,所述方法还包括:确定当前环境中声音信息对应的第二音量;相应地,所述根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件,包括:根据所述通话模式和所述第一语音播放音量,结合所述第二音量,确定是否满足所述呼叫提醒条件。这样,在确定主叫终端当前是否满足呼叫提醒条件时,进一步考虑主叫终端当前所在环境的声音信息对应的第二音量,从而进一步丰富了确定主叫终端是否满足呼叫提醒条件的参考维度,使得最终确定的结果,既兼顾了主叫终端当前所在环境的声音信息,又兼顾了主叫终端自身当前通话模式和通话模式对应的第一语音播放音量,从而能够保证最终的结果不会错过对呼叫的提醒,又不会影响用户使用。
28.根据第一方面,或者以上第一方面的任意一种实现方式,所述根据所述呼叫提醒内容在所述主叫终端进行呼叫提醒,包括:根据所述呼叫提醒内容在所述主叫终端进行语音提醒和/或根据所述呼叫提醒内容在是主叫终端进行文字提醒。这样,通过语音提醒和/或文字提醒,使得主叫用户能够更加直观的获知当前第一呼叫请求的结果,以便主叫用户根据提醒进行后续操作,例如进行语音留言或挂机。
29.根据第一方面,或者以上第一方面的任意一种实现方式,所述根据所述呼叫提醒内容在所述主叫终端进行语音提醒,包括:获取使用所述主叫终端的主叫用户的用户信息;根据所述用户信息确定所述主叫用户惯用的语种和音量;按照所述音量,采用所述语种对所述呼叫提醒内容进行播报。这样,在采用语音提醒的方式向主叫用户做出呼叫提醒时,结合主叫用户使用主叫终端的使用习惯,并根据主叫用户的使用习惯作出语音提醒,从而在实现呼叫提醒的同时,也尽可能考虑了用户的体验,能够更好的适应不同用户群体,实现因人而异的呼叫提醒。
30.根据第一方面,或者以上第一方面的任意一种实现方式,所述根据所述呼叫提醒内容在是主叫终端进行文字提醒,包括:获取使用所述主叫终端的主叫用户的用户信息;根据所述用户信息确定所述主叫用户惯用的语种和字体大小;按照所述字体大小,采用所述语音在所述主叫终端的通话界面显示所述呼叫提醒内容。这样,在采用文字提醒的方式向主叫用户做出呼叫提醒时,结合主叫用户使用主叫终端的使用习惯,并根据主叫用户的使用习惯作出文字提醒,从而在实现呼叫提醒的同时,也尽可能考虑了用户的体验,能够更好的适应不同用户群体,实现因人而异的呼叫提醒。
31.第二方面,提供一种终端。该终端为主叫终端,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序存储在所述存储器上,当所述计算机程序被所述一个或多个处理器执行时,使得所述主叫终端执行以下步骤:主叫终端通过网络设备向被叫终端发送第一呼叫请求;接收所述网络设备生成的响应消息,所述响应消息中包括响应码,在所述响应码为181时,所述网络设备向指定的呼叫转移终端发送第二呼叫请求;对所述响应消息进行解析,提取所述响应消息中的响应码;在所述响应码为181时,对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端;根据所述呼叫转移终端,生成呼叫提醒内容;在与所述呼叫转移终端建立通信连接关系后,根据所述呼叫提醒内容在所述主叫终端进行呼叫提醒。
32.根据第二方面,所述历史信息字段中记载了所述第一呼叫请求对应的跳转记录,每一次的所述跳转记录包括第一关键字段和第二关键字段,所述第一关键字段用于表示要跳转到的呼叫号码,所述第二关键字段用于表示跳转次数;当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:对所述响应消息中的历史信息字段进行解析,提取所述第一关键字段和所述第二关键字段;确定记录了最后一次跳转次数的所述第二关键字段为目标第二关键字段,将与所述目标第二关键字段位于同一条所述跳转记录的所述第一关键字段对应的呼叫号码确定为呼叫转移号码;根据所述呼叫转移号码,确定所述呼叫转移终端。
33.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:在所述呼叫转移号码为与用户身份识别sim卡绑定的电话号码时,确定所述呼叫转移终端为设置了所述sim卡的终端;在所述呼叫转移号码为运营商提供的语音信箱对应的号码时,确定所述呼叫转移终端为服务器类型的语音服务平台。
34.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:建立每一条所述跳转记录中所述第一关键字段对应的呼叫号码与所述第一呼叫请求呼叫的所述被叫终端对应的被叫号码之间的关联关系;根据所述关联关系更新所述主叫终端中对所述被叫号码的记录信息。
35.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:确定当前呼叫对应的通话模式,所述通话模式包括外放模式、耳机模式和听筒模式;根据所述通话模式,确定是否满足呼叫提醒条件;在确定满足所述呼叫提醒条件时,执行所述对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端的步骤。
36.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:获取所述通话模式对应的第一语音播放音量;根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件。
37.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:确定当前环境中声音信息对应的第二音量;相应地,所述根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件,包括:根据所述通话模式和所述第一语音播放音量,结合所述第二音量,确定是否满足所述呼叫提醒条件。
38.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:根据所述呼叫提醒内容在所述主叫终端进行语音提醒和/或根据所述呼叫提醒内容在是主叫终端进行文字提醒。
39.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所述一个或多个处理器执行时,使得所述终端执行以下步骤:获取使用所述主叫终端的主叫用户的用户信息;根据所述用户信息确定所述主叫用户惯用的语种和音量;按照所述音量,采用所述语种对所述呼叫提醒内容进行播报。
40.根据第二方面,或者以上第二方面的任意一种实现方式,当所述计算机程序被所
述一个或多个处理器执行时,使得所述终端执行以下步骤:获取使用所述主叫终端的主叫用户的用户信息;根据所述用户信息确定所述主叫用户惯用的语种和字体大小;按照所述字体大小,采用所述语音在所述主叫终端的通话界面显示所述呼叫提醒内容。
41.第二方面以及第二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第二方面以及第二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
42.第三方面,提供一种计算机可读存储介质。该介质包括计算机程序,当计算机程序在终端上运行时,使得终端执行第一方面以及第一方面中任意一项中的呼叫提醒方法。
43.示例性的,终端为主叫终端。
44.第三方面以及第三方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第三方面以及第三方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
45.第四方面,本技术实施例提供了一种计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的呼叫提醒方法的指令。
46.第四方面以及第四方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第四方面以及第四方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
47.第五方面,本技术实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理电路通过内部连接通路互相通信,该处理电路执行第一方面或第一方面的任一种可能的实现方式中的呼叫提醒方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
48.示例性的,芯片为终端的芯片,终端为主叫终端。
49.第五方面以及第五方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第五方面以及第五方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
50.图1为示例性示出的一种通信系统示意图;
51.图2为示例性示出的一种终端的硬件结构示意图;
52.图3为示例性示出的一种终端的软件结构示意图;
53.图4为本技术实施例提供的呼叫提醒方法的流程示意图;
54.图5为示例性示出的基于本技术实施例提供的呼叫提醒方法实现呼叫提醒时各终端和网络设备之间进行交互的时序图之一;
55.图6为示例性示出的基于本技术实施例提供的呼叫提醒方法实现呼叫提醒时主叫终端、被叫终端、网络设备和语音服务平台之间进行交互的时序图;
56.图7为示例性示出的主叫终端检测是否处于外放模式时各软件结构层之间的交互示意图;
57.图8为示例性示出的主叫终端检测是否处于蓝牙耳机模式时各软件结构层之间的交互示意图;
58.图9为示例性示出的主叫终端检测是否位于主叫用户耳边时各软件结构层之间的交互示意图;
59.图10为示例性示出的呼叫转移场景的跳转过程示意图;
60.图11为示例性示出的在主叫终端的通话界面进行文字提醒的示意图;
61.图12为示例性示出的在主叫终端进行声音提醒的示意图;
62.图13为示例性示出的在主叫终端同时进行文字提醒和声音提醒的示意图;
63.图14为示例性示出的基于本技术实施例提供的呼叫提醒方法实现呼叫提醒时各终端和网络设备之间进行交互的时序图之二。
具体实施方式
64.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
65.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
66.本技术实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
67.在本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
68.在本技术实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
69.在对本技术实施例的技术方案说明之前,首先结合附图对本技术实施例的通信系统进行说明。参见图1,为本技术实施例提供的一种通信系统示意图。
70.如图1所示,该通信系统中包括网络设备、终端a、终端b以及终端c。其中,网络设备通过通信网络分别于终端a、终端b以及终端c通信连接。
71.示例性的,终端a可以是手机、平板电脑等能够设置用户身份识别卡(subscriber identity module,sim卡)的设备。
72.相应地,终端b和终端c也可以是手机、平板电脑等能够设置sim卡的设备。
73.示例性的,在实际应用中,不论是终端a,还是终端b或终端c,均可以是单卡终端,或多卡终端。
74.所谓单卡终端是指只能设置一张sim卡的终端。
75.相应地,所谓多卡终端是指能够设置多张sim卡的终端,例如可以设置2张sim卡的双卡终端,设置3张sim卡的三卡终端。
76.以双卡终端为例,根据终端的工作方式又可以分为双卡双待(dual sim dual standby,dsds)和双卡双通(dual sim dual active,dsda)。
77.其中,双卡双通终端能够使用2张sim卡和2套射频(radio frequency,rf)系统。也就是说,每个sim卡对应一套射频系统,可用于接收对应sim卡的呼叫或信息,从而可以保持2张sim卡同时工作。例如,在sim卡1通话时,sim卡2可以正常来电并接听,且在不挂断任意一路通话的情况下,在两路通话间自由切换。
78.双卡双待终端能够使用2张sim卡和一套射频系统。也就是说,2张sim卡公用一套射频系统。因此,2张sim卡将会抢占射频资源,即一张sim卡使用射频资源时,另一张sim卡无法获取到射频资源。例如,在sim1的通话时,sim卡2可以正常来电,但是当用户选中接听sim卡2的来电时,sim卡1的通话会被挂断。
79.为了解决双卡双待终端存在的上述问题,对于每一张sim卡,用户可以设置在另一张sim卡占用射频资源时,该sim卡在接收到来电时,自动转移到指定的呼叫转移终端,例如运营商提供的语音服务平台,从而使得主叫用户能够通过主叫终端进行留言。
80.相应地,在被叫终端中当前占用射频资源的sim卡(例如sim卡1)结束通话,释放射频资源后,被叫用户可以通过sim卡2查收主叫用户的留言,从而避免遗漏电话信息。
81.示例性的,网络设备是指核心网中的设备,具体为能够执行对语音呼叫进行转移(或转接)等功能的网络实体,例如可以是应用服务器(application server,as)。
82.应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
83.此外,需要说明的是,在实际应用中,网络设备与终端(终端a、终端b、终端c...)的数量均可以为一个或多个。图1所示通信系统的网络设备与终端的数量仅为适应性举例,本技术对此不做限制。
84.为了更好的理解本技术实施例提供的呼叫提醒方法所适用于的终端,以下以手机为例,结合图2和图3对终端的硬件结构和软件结构进行说明。
85.参见图2,为示例性示出的实现本技术实施例提供的呼叫提醒方法的手机100的硬件结构示意图。
86.如图2所示,手机100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。
87.示例性的,音频模块170可以包括扬声器170a、受话器170b、麦克风170c、耳机接口170d等。
88.示例性的,传感器模块180可以包括压力传感器、陀螺仪传感器、气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等。
89.此外,处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。
90.可理解的,在具体实现中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
91.此外,在一些实施例中,控制器可以是手机100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
92.此外,处理器110中的存储器主要用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。
93.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。
94.可理解的,在实际的应用场景中,手机100的usb接口130可以用于连接充电器为手机100充电,以及用于手机100与外围设备之间传输数据。
95.此外,对于目前充电、数据传输,以及连接有线耳机共用一个usb接口130的手机100,usb接口130还可以用于连接耳机,以便手机100能够通过耳机播放音频。
96.进一步地,在另一种场景中,us接口130还可以用于连接其他终端设备,例如ar设备等。
97.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过手机100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端供电。
98.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
99.天线1和天线2用于发射和接收电磁波信号。手机100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
100.移动通信模块150可以提供应用在手机100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。无线通信模块160可以提供应用在手机100上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。
101.在一些实施例中,手机100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得手机100可以通过无线通信技术与网络以及其他设备通信。
102.手机100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
103.显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled)等。在一些实施例中,手机100可以包括1个或n个显示屏194,n为大于1的正整数。
104.手机100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
105.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,手机100可以包括1个或n个摄像头193,n为大于1的正整数。
106.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展手机100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
107.内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行手机100的各种功能应用以及数据处理。
108.具体的,实现本技术实施例提供的呼叫提醒方法的相关指令预先存储到内部存储器121中,处理器110通过执行内部存储器121中存储的指令,从而能够使得手机100执行本技术实施例提供的呼叫提醒方法。
109.此外,需要说明的,在具体实现中,内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机100使用过程中所创建的数据(比如音频数据,电话本,以及本技术实施例中根据确定的呼叫转移终端确定的呼叫提醒内容等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
110.手机100可以通过音频模块170中的扬声器170a、受话器170b、麦克风170c、耳机接口170d,以及应用处理器等实现音频功能,例如音乐播放,录音、语音通话等。
111.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
112.可理解的,在实际应用中,扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。具体的说,在本技术实施例中,手机100可以通过扬声器170a收听免提通话,即在进行呼叫提醒时,采用免提方式播放呼叫提醒内容,从而使得主叫用户在手机未放置到耳边时能够获知当前呼叫被转移到了指定的呼叫转移终端,进而使得用户能够根据通过免提方式播放的呼叫提醒内容采取对应的措施,如进行语音留言,或者之间挂机。
113.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。具体的说,在本申
请实施例中,当手机100接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。
114.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。手机100可以设置至少一个麦克风170c。在另一些实施例中,手机100可以设置两个麦克风170c,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,手机100还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
115.需要说明的,在本技术实施例中,麦克风170c还用于收集主叫用户所处环境的声音信号,以便手机100能够根据主叫用户所处环境的声音信号的干扰程度,适应性的调整通过语音方式播放的呼叫提醒内容,以便主叫用户清楚的收听到呼叫提醒内容。
116.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,omtp)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the usa,ctia)标准接口。
117.可理解的,在本技术的实施例中,如果检测到手机100的耳机接口170d连接了有线耳机,或者检测到手机100的蓝牙接口连接了蓝牙耳机,则可以直接通过连接的有线耳机或蓝牙耳机为主叫用户播放与呼叫转移终端建立通信关系后,设置的默认语音信息,即不播放本技术实施例中根据呼叫转移终端生成的呼叫提醒内容。
118.进一步地,为了确保用户获知当前呼叫进行了呼叫转移,在播放完默认语音信息后,可以继续播放本技术数量中生成的呼叫提醒内容。
119.关于上述罗列的手机100中包括的各传感器,以下示例性的给出本技术实施例提供的呼叫提醒方法需要用到的几种传感器的具体用途,具体如下:
120.压力传感器用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器可以设置于显示屏194。压力传感器的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器,电极之间的电容改变。手机100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,手机100根据压力传感器检测所述触摸操作强度。手机100也可以根据压力传感器的检测信号计算触摸的位置。例如,在本技术实施例中,当用户触摸了通话界面中用于挂断当前通话的图标时,手机100根据压力传感器检测到的信号确定用户触摸的具体位置,进而确定用户了挂断当前通话的图标,从而响应于用户的操作行为,挂断当前通话。
121.此外,在一些实施例中,针对作用于相同触摸位置,但不同触摸操作强度的触摸操作,手机100可以根据压力传感器检测的触摸强度执行不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令;当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
122.接近光传感器可以包括例如发光二极管(led)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。手机100通过发光二极管向外发射红外光。手机100使用光
电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定手机100附近有物体。当检测到不充分的反射光时,手机100可以确定手机100附近没有物体。手机100可以利用接近光传感器检测用户手持手机100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器也可用于皮套模式,口袋模式自动解锁与锁屏。
123.此外,可理解的,在实际的应用场景中,手机100还可以根据加速度传感器、距离传感器等收集到的数据确定手机100是否位于用户耳边。
124.骨传导传感器可以获取振动信号。在一些实施例中,骨传导传感器可以获取人体声部振动骨块的振动信号。骨传导传感器也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器获取的血压跳动信号解析心率信息,实现心率检测功能。
125.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。手机100可以接收按键输入,产生与手机100的用户设置以及功能控制有关的键信号输入。
126.马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。具体的,在本技术实施例中,为了避免用户错过呼叫提示内容,可以在根据呼叫提示内容在手机100进行呼叫提示前,先通过马达191振动一下,以提醒用户查看手机100要做出的呼叫提醒。
127.sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现与手机100的接触和分离。手机100可以支持1个或n(n为大于1的整数)个sim卡接口195。
128.可理解的,在具体实现中,sim卡接口195可以支持nano sim卡、micro sim卡、sim卡等。手机100通过sim卡和网络交换,实现通话以及数据通信等功能。在一些实施例中,手机100采用esim卡,即嵌入式sim卡。对于这种场景,esim卡嵌在手机100中,不能和手机100分离。
129.关于手机100的硬件结构就介绍到此,应当理解的是,图2所示手机100仅是一个范例,在具体实现中,手机100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图2中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
130.关于终端的软件结构,本技术实施例仍以手机100为例。以下结合图3对手机100的软件结构进行描述。在对手机100的软件结构进行说明书之前,首先对手机100的软件系统可以采用的架构进行说明。
131.具体的,在实际应用中,手机100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。
132.此外,可理解的,目前主流的终端使用的软件系统包括但不限于windows系统、android系统和ios系统。为了便于说明,本技术实施例以分层架构的android系统为例,示例性说明手机100的软件结构。
133.此外,后续关于本技术实施例提供的呼叫提醒方案的描述,涉及的主叫终端,本技术均已android系统为例。但在具体实现中,本技术实施例提供的呼叫提醒方案同样适用于其他系统。
134.参见图3,为示例性示出的实现本技术实施例提供的呼叫提醒方法的手机100的软件结构示意图。
135.手机100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。由于本技术实施例提供的呼叫提醒方案主要涉及应用程序层、应用程序框架层和内核层,故而图3未示出安卓运行时和系统库层。
136.其中,应用程序层可以包括一系列应用程序包。如图3所示,为了实现本技术实施例提供的呼叫提醒方案,应用程序包至少需要包括电话。
137.示例性的,在实际的应用场景中,应用程序包还可以包括相机、图库、日历、地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序,此处不再一一列举,本技术对此不做限制。
138.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
139.如图3所示,为了实现本技术实施例提供的呼叫提醒方案,应用程序框架层可以系统服务、电话管理器、系统服务管理器等。
140.示例性的,在实际的应用场景中,应用程序框架层还包括用于管理窗口程序的窗口管理器、用来存放和获取数据,并使数据可被应用程序访问的内容提供器、用来提供构建应用程序的基本组件的视图系统、用来为应用程序提供各种资源的资源管理器、用来在状态栏显示通知信息的通知管理器等,此处不再一一列举,本技术对此不做限制。
141.此外,关于图3中示出的系统服务,在实现本技术实施例提供的呼叫提醒方案时,具体用于创建各种实例,例如创建音频服务实例、蓝牙耳机服务实例、传感器服务实例等。
142.此外,关于图3中示出的系统服务管理器,在实现本技术实施例提供的呼叫提醒方案时,用于根据系统服务创建的各种实例,调用对应的接口,进而让对应的驱动调用对应的硬件获取手机100当前的状态。例如,在创建的实例为音频服务实例时,系统服务管理器根据音频服务实例调用音频驱动,使得音频驱动能够调用图2中示出的音频模块170。
143.此外,关于图3中示出的电话管理器,在实现本技术实施例提供的呼叫提醒方案时,用于管理手机100的通话状态、获取电话信息(例如主叫终端的终端信息,被叫终端的终端信息、主叫终端中sim卡的消息、被叫终端中sim卡的消息、网络信息)、监听电话状态以及调用电话拨号器拨打电话。
144.内核层是硬件和软件之间的层。如图3所示,为了实现本技术实施例提供的呼叫提醒方案,内核层至少包含显示驱动,蓝牙驱动,音频驱动,传感器驱动。
145.示例性的,在实际的应用场景中,内核层还可以根据实际的业务需求包括其他驱动,如摄像头驱动、指纹模组驱动等,此处不再一一列举,本技术对此不做限制。
146.关于手机100的软件结构就介绍到此,可以理解的是,图3示出的软件结构中的层以及各层中包含的部件,并不构成对手机100的具体限定。在本技术另一些实施例中,手机
100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本技术不做限定。
147.针对图1给出的通信系统,以图2所示的硬件结构和图3所示的软件结构的手机100作为主叫终端,结合图4对本技术实施例提供的呼叫提醒方法进行详细说明,即执行主体为主叫终端(手机100)。在对本技术实施例提供的呼叫提醒方法进行说明之前,首先对本技术实施例提供的呼叫提醒方法适用于的场景进行说明。
148.具体的,由于在实际应用中,通话处于接通状态通常分为两种情况,一种是被叫终端接听了主叫终端的来电,这种场景主叫用户和被叫用户可以直接进行通话,即在网络正常、主叫终端和被叫终端无故障的情况下,双方是可以听到对方的声音的;另一种是被叫终端开启了呼叫转移功能,具体是转移到了设置的语音服务平台,即开启了语音留言功能,这种场景下,在被叫终端无法接听主叫终端的来电时,呼叫请求会被转移到设置的语音服务平台,由运营商服务平台自动接听主叫终端的来电,但是主叫用户是无法得到被叫用户的响应的,只能进行语言留言,或直接挂机。因此,为了避免主叫用户误将第二种情况认为是被叫用户接通来电,提出了本技术实施例提供的呼叫提醒方法。即本技术实施例提供的呼叫提醒方法,是针对主叫终端的呼叫请求被呼叫转移终端(语音服务平台)接听时,在主叫终端向主叫用户做出的提醒。
149.参见图4,为了解决现有呼叫转移场景存在的问题,本技术实施例提供的呼叫提醒方法,具体包括:
150.步骤s101,主叫终端通过网络设备向被叫终端发送第一呼叫请求。
151.示例性的,假设图1中的终端a为主叫终端,终端b为被叫终端。在使用终端a呼叫终端b时,具体可以是使用终端a的主叫用户点击了终端a显示界面中显示的电话应用的图标后,终端a响应于主叫用户的操作行为,跳转到拨号页面,此时主叫用户可以直接通过拨号页面显示的数字键输入需要拨打的电话号码,即安装在终端b中的sim卡对应的手机号码(后续称为被叫号码),并在完成拨号后点击拨号页面中的呼叫按钮。
152.相应地,在主叫用户点击了呼叫按钮后,终端a响应于主叫用户的操作行为会获取本机号码(终端a中安装的sim卡对应的手机号,后续称为主叫号码),然后根据主叫号码和被叫号码生成满足当前接入的通信网络适应的会话初始协议(session initiation protocal,sip)的呼叫请求,即上述所说的第一呼叫请求。
153.可理解的,在实际的应用场景中,第一呼叫请求中还可以包括其他信息,本实施例所说的根据主叫号码和被叫号码生成,仅仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
154.示例性的,在另一个例子中,主叫用户在使用终端a呼叫终端b时,在主叫用户点击了终端a显示界面中显示的电话应用的图标后,终端a响应于主叫用户的操作行为,跳转到拨号页面后,主叫用户可以点击拨号页面显示的通讯录设置选项,进而通过从通讯录中查找被叫号码的方式,向终端b发起第一呼叫请求。
155.示例性的,在另一个例子中,主叫用户在使用终端a呼叫终端b时,在主叫用户点击了终端a显示界面中显示的电话应用的图标后,终端a响应于主叫用户的操作行为,跳转到拨号页面后,主叫用户还可以点击拨号页面显示的最近通话设置选项,进而通过从最近通话列表中查找被叫号码的方式,向终端b发起第一呼叫请求。
156.示例性的,在另一个例子中,主叫用户在使用终端a呼叫终端b时,可以直接点击终端a显示界面中显示的通讯录应用的图标,进而直接进入通讯录列表,通过从通讯录列表查找被叫号码的方式,向终端b发起第一呼叫请求。
157.示例性的,在另一个例子中,主叫用户还可以通过终端a提供的语音助手,采用语音搜索被叫号码,并拨打被叫号码的方式,向终端b发起第一呼叫请求。
158.应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
159.此外,根据图1所示的通信系统可知,接入通信网络的所有终端直接的通信都是通过网络设备实现实现的。因此,终端a向终端b发起的第一呼叫请求具体是通过网络设备进行转发的,即第一呼叫请求先到达与终端a建立通信连接的网络设备,然后由网络设备将来自终端a的第一呼叫请求转发至与网络设备建立通信连接的终端b。
160.可理解的,网络设备之所以可以将终端a发起的第一呼叫请求准确的转发至终端b,具体是根据第一呼叫请求中携带的被叫号码来确定的。
161.步骤s102,接收所述网络设备生成的响应消息。
162.可理解的,通过上述针对步骤s101的描述可知,终端a向终端b发起的第一呼叫请求是先到达网络设备,然后由网络设备转发至终端b的。故而,关于终端b作出的针对第一呼叫请求的响应,同样需要借助网络设备进行转发,进而到达终端a。
163.具体的,终端b作出的针对第一呼叫请求的响应可以是由网络设备根据终端b当前的状态生成的。例如,终端b已振铃、终端b未接听、终端b拒接等。
164.示例性的,本实施例以终端b在预设时间内没有针对第一呼叫请求做出响应为例,例如可能是第一呼叫请求到达了终端b,但是终端b没有接听,如果终端b预先开启了呼叫转移业务,则网络设备会生成响应码为181的响应消息,并根据终端b开启呼叫转移业务时设置的呼叫转移号码,向呼叫转移号码发起呼叫请求(以下称为第二呼叫请求),即网络设备会向呼叫转移终端发起第二呼叫请求。
165.示例性的,在另一个例子中,如果终端b的射频资源被占用,网络设备转发的第一呼叫请求是无法到达终端b的,终端b感知不到终端a发起的呼叫请求,这种请求下,在终端b预先开启了呼叫转移业务时,网络设备同样会生成响应码为181的响应消息,并根据终端b开启呼叫转移业务时设置的呼叫转移号码,向呼叫转移号码发第二呼叫请求,即网络设备会向呼叫转移终端发起第二呼叫请求。
166.示例性的,在另一个例子中,根据业务需求,在终端b开启了呼叫转移业务的情况下,可以设置终端b监听到用户的挂机操作或者呼叫转移操作,或者终端b自动触发呼叫转移操作时,向网络设备反馈当前呼叫不可达,进而由网络设备生成响应码为181的响应消息,并根据终端b开启呼叫转移业务时设置的呼叫转移号码,向呼叫转移号码发第二呼叫请求,即网络设备会向呼叫转移终端发起第二呼叫请求。
167.示例性的,在一个例子中,网络设备向呼叫转移终端(以下将图1中的终端c看做呼叫转移终端)发送第二呼叫请求的操作,可以是与向终端a发送响应码为181的响应消息同步进行的。在另一个例子中,网络设备向终端c发送第二呼叫请求的操作,可以是在向终端a发送响应码为181的响应消息之前执行的,也可以是之后执行的,本技术对此不做限制。
168.此外,关于上述所说的针对终端b的不同状态生成不同响应码的响应消息,具体是
基于sip的rfc3261协议中给出的相关记载实现的。关于rfc3261协议中给出的部分常见情况的响应码的描述详见表1。
169.表1响应码状态描述表
[0170][0171][0172]
关于表1中各响应码的出现场景,以及应对方式,详见rfc3261协议的相关文献即可,本技术不做赘述。
[0173]
此外,在另一个例子中,比如被叫终端处于没有信号的地方,这种情况下,由于网络设备无法收到被叫终端的反馈,因此网络设备可以在预设时长内没有收到被叫终端的反馈时,在预先已经确定被叫设备开启了呼叫转移功能时,网络设备可以自行生成响应码为181的响应消息,并向预设的呼叫转移终端发起呼叫请求。
[0174]
步骤s103,对所述响应消息进行解析,提取所述响应消息中的响应码。
[0175]
示例性的,在一个例子中,终端a可以与网络设备预先约定响应码对应的字段消息,进而根据确定的字段信息提取响应码。
[0176]
例如,终端a可以与网络设备预定“response code”字段对应的内容为响应码。则对于接收到的响应消息是网络设备根据终端b反馈的呼叫转移指令生成的响应消息时,响应消息中“response code”字段后对应的内容即为响应码。
[0177]
例如,在在被叫终端设置的呼叫转移,则响应消息中“response code”字段对应的响应码即为“181”。
[0178]
相应地,终端a在对接收到的响应消息进行解析后,查找“response code”字段,便可以得到响应消息中的响应码。
[0179]
此外,需要说明的是,在实际的应用场景中,网络设备反馈给主叫终端的响应消息中,“response code”字段对应的内容就是响应码这一数字,但是为了便于主叫终端确定原因,按照rfc3261协议规定的,181对应的的内容为“call is being forwarded”,故而后续
主叫终端在对响应消息进行解析后,解析出的内容可以在“response code”字段后添加对应的描述内容,例如可以是response code=call_is_being_forwarded(181)。
[0180]
此外,在另一个例子中,终端a对响应消息进行解析后,“response code”字段对应的内容直接为响应码本身,不包括响应码的状态说明信息。
[0181]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0182]
步骤s104,在所述响应码为181时,对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端。
[0183]
示例性的,在一个例子中,可以将上述表1预置到终端a中,从而在从响应消息中提取出响应码后,可以根据提取出的响应码对表1进行查表操作,进而匹配出该响应码在表1中记录的状态说明信息,这样根据匹配出的状态说明信息便可以准确的确定本次呼叫请求的进度。
[0184]
示例性的,在一个例子中,终端a中也可以不预置表1,而是直接访问预定的平台获取响应码对应的状态说明信息。
[0185]
示例性的,在一个例子中,也可以直接规定不同响应码对应的后续操作。例如,对于181响应码,直接规定执行上述步骤s104的操作。
[0186]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0187]
相应地,在响应码为181,或者说确定本次呼叫请求进行了呼叫转移,则需要向主叫用户做出呼叫提醒。故而,为了告知主叫用户其发起的第一次呼叫请求最终被转移到的哪一呼叫转移终端,终端a需要根据网络设备反馈的响应消息确定呼叫转移终端,即终端c。
[0188]
可理解的,参见rfc3261协议可知,181对应的响应消息中有一个可选字段历史信息(history-info),该字段中会携带历史的跳转记录,即呼叫请求的每一次跳转信息。
[0189]
示例性的,在history-info字段中通常会携带第一关键字段“index”和第二关键字段“sip”这两个关键字段,并且每跳转一次,即从一个终端对应的代理节点(proxy)跳转到另一个终端对应的代理节点都会在history-info字段中增加一条记录。并且,在新增记录中,“sip”字段对应的内容会呈现要跳转到的号码,即第一关节字段用于表示要跳转到的呼叫号码,“index”字段对应的内容会自动增加“.1”,用来表征跳数,即第二关键字段用于表示跳转次数。
[0190]
例如,终端a呼叫的终端b对应的被叫号码为“185xxxxxxxx”,设置的呼叫转移终端(终端c)对应的呼叫转移号码为“12599”。当终端a呼叫终端b时,如果终端b将本次呼叫请求转移到的终端c,那么网络设备实质会转发两次呼叫请求,一次是向终端b发送第一呼叫请求,一次是向终端c发送第二呼叫请求,即终端a发起的呼叫实际上进行了两次跳转。对于这种情况,终端a接收到的网络设备返回的响应码为181的响应消息中history-info字段对应的内容就包括了两次跳转记录。
[0191]
示例性的,history-info字段中记载的这两次跳转记录的格式例如可以是:
[0192]
history-info:《sip:185xxxxxxxx@sc.ims.mnc....》;index=1,《sip:12599@gd.ims.mnc000.mcc460.3gppnetwork.org》;index=1.1
[0193]
示例性的,为便于确定跳转次数,还有规定每一次跳转对应一条history-info字
段信息,仍以上述举例为例,则两次跳转记录的格式例如可以是:
[0194]
history-info:《sip:185xxxxxxxx@sc.ims.mnc....》;index=1\r\n
[0195]
history-info:《sip:12599@gd.ims.mnc000.mcc460.3gppnetwork.org》;index=1.1\r\n
[0196]
需要说明的是,这种记载格式中添加在每一行的index末尾的“\r\n”就是换行符。对于第一行的history-info字段信息,表示跳转到了被叫号码为“185xxxxxxxx”的终端b,进行了一次跳转,所以index=1。对于第二行的history-info字段信息,表示跳转到了呼叫转移号码为“125999”的终端c,进而了第二次跳转,所以在index=1的基础上增加了“.1”,第二次跳转对应的index变成了“1.1”。
[0197]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0198]
此外,应当理解的是,步骤s104中给出的一种实现方式是在确定响应码为181时,直接对响应消息中的历史信息字段进行解析,进而确定呼叫转移终端,并顺序执行后续的步骤s105和步骤s106,即不管主叫终端处于哪种通话场景,都对主叫用户进行呼叫提醒。但在实际的应用场景中,针对呼叫转移的提醒可以仅在满足预先规定的条件才进行提醒,例如仅在主叫终端没有开启外放,同时也没有使用耳机(蓝牙耳机或有线耳机),并且主叫用户也没有将主叫终端放在耳边,而呼叫被转移到了呼叫转移终端时才进行呼叫提醒。即在主叫终端处于听筒模式,但是主叫用户并没有将主叫终端放置在耳边时,才确定当前满足呼叫提醒的条件,主叫终端可以对响应消息中的历史信息字段进行解析,进而确定呼叫转移终端,并顺序执行后续步骤s105和步骤s106。
[0199]
也就是说,在实际的应用场景中,在执行步骤s104之前,主叫终端可以先确定当前呼叫对应的通话模式。
[0200]
示例性的,通话模式可以包括外放模式、耳机模式和听筒模式。
[0201]
接着,主叫终端再根据确定的通话模式确定是否满足呼叫条件。
[0202]
示例性的,在实际的应用场景中,对于主叫终端处于听筒模式,并且主叫用户将主叫终端放置在了耳边的情况,如果周围环境噪音较大,同样可以触发解析历史信息字段,确定呼叫转移终端,进而生成呼叫提醒内容,进行呼叫提醒的操作。
[0203]
相应地,在实际的应用场景中,如果主叫终端处于外放模式或耳机模式,但是周围环境噪音较大,同样可以触发解析历史信息字段,确定呼叫转移终端,进而生成呼叫提醒内容,进行呼叫提醒的操作。
[0204]
也就是说,在实际的应用场景中,在根据通话模式确定是否满足呼叫提醒条件时,还会结合主叫终端当前的通话模式对应的第一语音播音量和当前环境中声音信息对应的第二音量。
[0205]
关于触发呼叫提醒的条件,可以根据实际的业务需求进行设置,本技术对此不做限制。
[0206]
步骤s105,根据所述呼叫转移终端,生成呼叫提醒内容。
[0207]
仍以上述举例为例,在确定的呼叫转移终端对应的呼叫转移号码为“125999”时,可以确定该呼叫转移终端为中国移动提供的语音服务平台,即支持主叫用户进行语音留言的云平台。对于这种情况,生成的呼叫提醒内容可以是与呼叫转移号码相关的,如“您的呼
叫已被转移至中国移动语音服务平台,请留言或者挂机”。
[0208]
也就是说,生成的呼叫提醒内容能够告知主叫用户当前呼叫被转移到的哪里,主叫用户接下来可以进行什么操作即可。
[0209]
此外,需要说明的是,关于根据确定的呼叫转移号码生成呼叫提醒内容中对应的提提示信息时,呼叫转移号码与对应的联系人信息的关系可以是预先设置的,例如对于某些运营商或厂商对应的语音平台号码,可以预先建立对应关系,并存储到主叫终端本地,这样在确定呼叫转移终端,具体可以是呼叫转移终端对应的呼叫转移号码后,主叫终端并可以根据确定的呼叫转移号码查找出预置的联系人信息,进而生成呼叫提醒内容。
[0210]
进一步地,为了保证生成的呼叫提醒内容的准确性,还可以在主叫终端提供设置入口,供用户对这些预置的号码和对应的联系人信息进行更新,或者直接由主叫终端根据网络侧的更新自动对本地存储的信息进行更新。
[0211]
此外,在另一个例子中,主叫终端也可以根据确定的呼叫转移号码,直接到指定的网络平台进行查找,进而确定对应的联系人信息或其他描述消息。
[0212]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。在实际的应用场景中,可以根据业务需求预先设置需要生成的呼叫提醒内容包括哪些具体信息,本技术对此不做限制。
[0213]
步骤s106,在与所述呼叫转移终端建立通信连接关系后,根据所述呼叫提醒内容在所述主叫终端进行呼叫提醒。
[0214]
即,终端c自动接通终端a的来电后,可以根据步骤s105中生成的呼叫提醒内容,在终端a进行呼叫提醒。
[0215]
可理解的,在实际的应用场景中,做出的呼叫提醒可以是直接在终端a的通话界面进行文字提醒,即直接在通话界面显示上述生成的呼叫提醒内容,或者通过声音的方式进行语音提醒,即直接播放上述生成的呼叫提醒内容。
[0216]
示例性的,在实际的应用场景中,主叫终端还可以通过分析主叫用户历史通话的语音信息确定主叫用户使用的语种,进而根据主叫用户常用的语种在主叫终端进行呼叫提醒。
[0217]
例如,在主叫用户惯用的语种为汉语时,在通话界面显示的呼叫提醒内容可以直接是中文,通过声音播放的呼叫提醒内容也采用中文进行播报。
[0218]
示例性的,在实际的应用场景中,主叫终端还可以通过分析主叫用户的生物特征信息确定主叫用户的年龄段,身体特性,进而在进行呼叫提醒时,可以根据主叫用户的年龄段和身体特性合理的调整通话界面显示的呼叫提醒内容的文字大小,以及语音播放的音量大小。
[0219]
也就是说,在实际的应用场景中,主叫终端可以通过获取使用其的主叫用户的用户信息,例如惯用语种、音量、文字大小等多种信息,然后安装音量,采用语种对呼叫提醒内容进行播报;按照文字大小,采用语种对呼叫提醒内容进行显示。
[0220]
此外,关于上述所说的采用语音方式进行呼叫提醒的,在实际的应用场景中,可以通过启动主叫终端内的音频模块170(如图1所示)以及传感器模块180检测环境噪声的大小。
[0221]
具体的说,环境噪声大小的识别包括但不限于:通过开启音频模块170中的麦克风
170c采集声音数据,然后由3a模块进行识别;通过语音唤醒模块对声音大小进行监听识别。
[0222]
相应地,在完成对环境噪声的识别后,可以通过下面两种方式来进行声音提醒。
[0223]
例如,对于耳机模式或听筒模式,可以把直接将网络播放的声音放大,具体放大到多少可以根据环境噪声的大小来控件,例如根据算法预测,做到能够保证主叫用户听到,又不会让主叫用户因为音量过大感觉不舒服即可。
[0224]
还例如,可以将当前通话模式切换到外放模式,即采用扬声器170a进行播放。同样,在采用扬声器170a播放语音提醒内容时,可以根据环境噪声的大小来控制播放的语音大小。
[0225]
进一步地,在语音呼叫提醒内容播放完后,如果检测到主叫用户将主叫终端移到了耳边,为了更好的提示主叫用户,还可以放一句提示音,例如“已呼叫到语音服务平台,请留言”。
[0226]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0227]
由此,本技术实施例提供的呼叫提醒方法,通过设置主叫终端根据网络设备反馈的响应消息中的响应码来确定当前呼叫是否进行了呼叫转移,在确定进行了呼叫转移时,通过解析响应消息中的历史信息字段确定呼叫转移终端,进而生成与呼叫转移终端匹配的呼叫提醒内容,并在主叫终端与呼叫转移终端建立通信连接关系后,根据呼叫提醒内容在主叫终端进行呼叫提醒,从而使得主叫用户能够获知当前通话被叫用户并未接听,并根据呼叫提醒内容进行留言或直接挂断当前通话,既改善了用户体验,又可以避免对通话线路资源的无效占用。
[0228]
此外,本技术实施例提供的呼叫提醒方法,除了可以在呼叫转移到语音服务平台时向主叫用户做出呼叫提醒,还可以通过解析181call is being forwarded里面的history-info字段,做一条逻辑判断以后,在用户界面呈现,比如简单的号码跳转呈现,即在通话接通前,呼叫过程的每一次跳转都可以在用户界面呈现,方便用户或者当前呼叫具体被转移到哪一终端。
[0229]
进一步地,在用户界面呈现每一次跳转时,具体可以加上跳转的号码识别和跳转时延的识别,把跳转呈现的更加丰富,同时可以自动保存跳转的中间号码或者最终跳转的号码,将这些号码增加到被叫终端对应的联系人中,即建立被叫号码与呼叫转移号码之间的关系。
[0230]
基于上述实现方式,通过在主叫终端的用户界面呈现跳转过程,这样如果主叫用户只需呼叫终端b对应的被叫号码,不想呼叫其他号码时,通过用户界面呈现的跳转过程,便可以主动选择挂断电话,使得呼叫更加人性化,既提升了用户参与度,又提升了用户体验。
[0231]
此外,基于上述实现方式,通过将每次呼叫中转移的号码与被叫号码机建立关系,并进行存储。从而方便主叫用户后续可以直接拨打与被叫号码存在关系的号码,进而增加了联系上被叫用户的概率。
[0232]
通过本技术实施例提供的呼叫提醒方法,大大提高了通话提示的稳定性和可靠性,并且可以适应于多种场景。
[0233]
为了更好的理解本技术实施例提供的呼叫提醒方法的实现流程,以下通过两种具
体场景对本技术实施例提供的呼叫提醒方法进行说明。
[0234]
场景一:
[0235]
在对场景一进行说明之前,首先介绍一下场景一涉及的终端情况。具体的,对于主叫终端、被叫终端和呼叫转移终端,本实施例不限定其内设置的sim卡的数量,每个终端内至少有一张能够进行通信的sim卡即可。但是,当主叫用户通过主叫终端中的任意一张sim卡呼叫被叫终端,例如被叫终端内设置的sim卡1时,如果被叫终端的射频资源已经被占用,或者满足其他呼叫转移的条件,如被叫用户设置了手动挂机后转移到语音服务平台等,主叫终端的呼叫就会被转移到呼叫转移终端对应的sim卡2接听。
[0236]
关于上述设置在每一终端内的sim卡,例如被叫终端中的sim卡1和呼叫转移终端中的sim卡2,可以为移动sim卡、联通sim卡或电信sim卡,本技术对此不做限制。
[0237]
此外,在实际的应用场景中,每一终端内除了设置有sim卡,还会设置与sim卡对应或关联的调制解调器(modem),并且modem的个数可以与sim卡的个数相同,并一一对应。即,终端中的每一张sim卡对应一个modem,这样每一sim卡的语音呼叫业务直接由与其关联的modem进行处理即可。
[0238]
此外,在另一个例子中,modem的个数可以与sim卡的个数不相同,比如对于采用高通芯片的终端,内部可以只有一个modem,但是可以设置两张或多张sim卡。对于这种情况,modem与每一张sim卡之间的关联关系,由modem内部自行维护即可,本技术对此不做限制。
[0239]
下面结合图5至图13对本实施例提供的呼叫提醒方法的一种具体实现方式进行详细说明。
[0240]
参见图5,实现场景一描述的场景的过程如下:
[0241]
步骤s201,主叫终端向网络设备发送呼叫sim卡1的请求1。
[0242]
具体的,主叫终端在向网络设备发送呼叫sim卡1的请求1时,具体是由与发起呼叫的sim卡关联的modem通过天线发送给网络设备的。
[0243]
步骤s202,网络设备将终端a发起的呼叫sim卡1的请求1转发至被叫终端中的sim卡1。
[0244]
具体的,被叫终端具体是由与sim卡1关联的modem通过天线接收来自网络设备转发的请求1。
[0245]
关于主叫用户使用主叫终端发起呼叫sim卡1的请求1的操作,以及网络设备向被叫终端转发呼叫sim卡1的请求1的操作,详见上述针对图4中步骤s101的描述,此处不再赘述。
[0246]
步骤s203,网络设备根据监听到的被叫终端的状态信息确定呼叫不可达。
[0247]
具体的说,被叫终端和网络设备需要预先进行协商,以确定被叫终端和网络设备均支持呼叫转移功能。
[0248]
也就是说,在被叫终端和网络设备均支持呼叫转移功能的条件下,本实施例提供的呼叫提醒方法才能有效实施。反之,若被叫终端和网络设备中的任一设备不支持呼叫转移功能,则被叫终端在接到网络设备转发的主叫终端呼叫sim卡1的请求1时,如果被叫用户没有接听,则可能会返回480超时无人接听的响应消息,然后主叫终端收到该响应后直接挂机。
[0249]
示例性的,在实际的应用场景中,被叫终端在与网络设备进行协商时,可以通过与
sim卡关联的modem与网络设备进行协商。
[0250]
此外,需要说明的是,本实施例中被叫终端和网络设备协商的是两个终端之间的呼叫转移,而非同一终端内不同sim卡之间的呼叫转移,为了便于区分本实施例将两个终端之间的呼叫转移称为第一呼叫转移,将不同sim卡之间的呼叫转移称为第二呼叫转移。
[0251]
相应地,在确定被叫终端与网络设备均支持第一呼叫转移功能,并且被叫用户为sim卡1开启了第一呼叫转移功能,并将呼叫转移号码设置为另一终端(后续称为呼叫转移终端)内设置的sim卡2对应的号码时,如果网络设备向被叫终端转发请求1后,在预设时间内没有收到被叫终端的任何反馈消息,或者监听到被叫终端当前无法接听请求1对应的呼叫,则确定主叫终端对被叫做终端的语音呼叫不可达。这种情况下,网络设备就会向主叫终端发送181响应消息,同时根据被叫终端开启的第一呼叫转移业务,向呼叫转移终端发送呼叫sim卡2的请求2。
[0252]
可理解的,由于sim卡被激活后,sim卡号会与对应的电话号码进行关联,因而根据设置的呼叫转移号码(电话号码)便可以确定呼叫转移请求要发送给哪一sim卡。
[0253]
基于此,网络设备根据被叫终端反馈的呼叫转移指令中携带的信息,便可以确定要呼转到哪一sim卡。
[0254]
此外,在另一个例子中,对于被叫终端处于没有信号的地方时,网络设备转发的请求1可能根本没有达到被叫终端,或者被叫终端接收到了请求1,但是由于网络原因无法做出响应。对于这种情况,当超过预设时间时,网络设备还没有接收到被叫终端的任何响应,则默认当前呼叫不可达,在被叫终端开启了呼叫转移业务的情况下,直接生成响应码为181的响应消息,并向呼叫转移终端发起请求即可。
[0255]
此外,需要说明的是,在实际的应用场景中,被叫终端开启第一呼叫转移业务时,为sim卡1设置的呼叫转移号码可以是默认的运营商提供的语音服务平台对应的呼叫号码。
[0256]
示例性的,在一个例子中,设置的语音服务平台可以是根据sim卡1的运营商确定的。例如,在sim卡1是中国移动运营商提供的时候,设置的呼叫转移号码可以是“125999”。对于这种情况,上述所说的呼叫转移终端实质就是运营提供的语音服务平台。
[0257]
示例性的,对于呼叫转移终端是运营商提供的语音服务平台时,主叫终端、网络设备、被叫终端和语音服务平台之间交互过程的时序图可参加图6。如图6所示,对于呼叫转移终端是运营商提供的语音服务平台,具体可以是服务器时,基于图6中的步骤s201’至步骤s211’实现本实施提供的呼叫提醒方法的过程与图5中基于步骤s201至步骤s211实现的呼叫提醒方法的过程大致类似,主要区别在于网络设备在确定主叫终端发起的呼叫sim卡1的请求1,被叫终端无法响应时,即确定呼叫不可达,向主叫终端发送181响应消息时进行的呼叫转移操作,具体是由网络设备向语音服务平台发起请求2。
[0258]
相应地,网络设备会根据语音服务平台的状态信息确定语音服务平台是否应答,并在确定语音服务平台应答后向主叫终端发送180响应消息。
[0259]
也就是说,本实施例中所说的呼叫转移终端,可以是与主叫终端、被叫终端类似的终端设备,如手机等能够设置运营商提供的sim卡的终端,也可以是运营商或其他厂商提供的服务器,即语音服务平台。
[0260]
步骤s204,网络设备生成响应码为181的181响应消息,并将181响应消息发送给主叫终端。
[0261]
具体的,网络设备生成的181响应消息中,除了会携带响应码字段,还会携带历史消息字段,以便主叫终端根据历史消息字段记录的跳转信息确定呼叫转移终端,生成呼叫提醒内容进行呼叫提醒。
[0262]
步骤s205,网络设备确定要呼叫的sim卡2,并向呼叫转移终端发送呼叫sim卡2的请求2。
[0263]
步骤s206,主叫终端在接收到网络设备发送的181响应消息后,判断当前是否满足呼叫提醒条件,并在确定满足呼叫提醒条件时执行步骤s207。
[0264]
为了便于说明,本实施例以主叫终端是否处于外放模式、耳机模式、听筒模式(靠近耳边)作为呼叫提醒条件,并结合图7至图9对确定主叫终端当前是否满足呼叫提醒条件的方式进行说明。
[0265]
方式一:
[0266]
示例性的,假设规定主叫终端为非外放模式时,确定主叫终端满足呼叫提醒条件,则主叫终端需要通过检测当前是否处于外放模式,来确定主叫终端是否满足呼叫提醒条件。参见图7,在确定主叫终端是否处于外放模式时,位于应用程序层的电话应用收到网络设备发送的181响应消息后,会执行步骤s301,具体为调用应用程序框架层的系统服务,由系统服务执行创建音频服务实例。
[0267]
相应地,系统服务在完成创建音频服务实例的操作后,会执行步骤s302,具体为将创建的音频服务实例交由系统服务管理器进行管理。
[0268]
相应地,系统服务管理器接收到系统服务创建的音频服务实例后,会执行步骤s303,具体为调用位于内核层的音频驱动,以触发音频驱动执行步骤s304,具体为调用音频模块170(图1所示)这一硬件。
[0269]
可理解的,根据图1中对音频模块170的描述可知,音频模块170例如可以包括扬声器170a、受话器170b、麦克风170c和耳机接口170d。而对于主叫终端是否处于外放模式,通过调用扬声器170a,判断扬声器170a当前的状态即可确定主叫终端是否处于外放模式。故而,在本实施中音频驱动调用的音频模块170具体为扬声器170a。
[0270]
相应地,扬声器170a将当前的状态信息(例如可以是开启or未开启)输出至音频驱动,即执行步骤s305。
[0271]
相应地,音频驱动接收到扬声器170a发送的状态信息后,执行步骤s306,即将扬声器170发送的状态信息发送给系统服务管理器。
[0272]
相应地,系统服务管理器在接收到音频驱动发送的关于扬声器170a的状态信息后,会执行步骤s307,具体为将扬声器170a的状态信息传输至系统服务中的音频服务实例,进而由系统服务中的音频服务实例将扬声器170a的状态信息传输至电话应用,即执行步骤s308。
[0273]
为了更好的理解图7示出的检测主叫终端是否处于外放模式的过程,以安卓系统为例,电话应用调用的系统服务例如可以是system services。
[0274]
相应地,system services创建音频服务实例,例如可以是audioserver实例的过程具体为创建运行在mediaserver进程的audiopolicyservice,并建立mediaserver进程与audioserver进程之间的关联,使得audiopolicyservice能够随着mediaserver进程的启动而启动,从而实现audioserver实例的创建过程。
[0275]
接着,系统服务在完成音频服务实例的创建后,可以调用相关接口,例如可以是servicemanager.addservice()接口,将音频服务实例交给系统服务管理器进行管理。
[0276]
由此,主叫终端就可以获知当前通话是否处于外放模式,进而根据预设规定确定主叫终端是否满足呼叫提醒条件。例如,通过上述检测过程,确定扬声器170a未开启,根据预设规定非外放模式满足呼叫提醒条件可知,主叫终端当前满足呼叫提醒条件。
[0277]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0278]
方式二:
[0279]
示例性的,假设规定主叫终端为非耳机模式时,确定主叫终端满足呼叫提醒条件,则主叫终端需要通过检测当前是否处于耳机模式,来确定主叫终端是否满足呼叫提醒条件。
[0280]
以检测蓝牙耳机为例,参见图8,在确定主叫终端是否处于蓝牙耳机模式时,位于应用程序层的电话应用收到网络设备发送的181响应消息后,会执行步骤s401,具体为调用应用程序框架层的系统服务,由系统服务执行创建蓝牙耳机服务实例。
[0281]
相应地,系统服务在完成创建蓝牙耳机服务实例的操作后,会执行步骤s402,具体为将创建的蓝牙耳机服务实例交由系统服务管理器进行管理。
[0282]
相应地,系统服务管理器接收到系统服务创建的蓝牙耳机服务实例后,会执行步骤s403,具体为调用位于内核层的蓝牙驱动,以触发蓝牙驱动执行步骤s404,具体为调用蓝牙模块这一硬件。
[0283]
相应地,蓝牙将当前的蓝牙耳机连接信息(例如可以是连接了蓝牙耳机or未连接蓝牙耳机)输出至蓝牙驱动,即执行步骤s405。
[0284]
相应地,蓝牙驱动接收到蓝牙发送的蓝牙耳机连接信息后,执行步骤s406,即将蓝牙发送的蓝牙耳机连接信息发送给系统服务管理器。
[0285]
相应地,系统服务管理器在接收到蓝牙驱动发送的关于蓝牙耳机连接信息后,会执行步骤s407,具体为将蓝牙耳机连接信息传输至系统服务中的蓝牙耳机服务实例,进而由系统服务中的蓝牙耳机服务实例将蓝牙耳机连接信息传输至电话应用,即执行步骤s408。
[0286]
为了更好的理解图8示出的检测主叫终端是否处连接了蓝牙耳机的过程,仍以安卓系统为例,电话应用调用的系统服务例如可以是system services。
[0287]
相应地,system services创建蓝牙耳机服务实例,例如可以是bluetootha2dpservice实例,并将创建的蓝牙耳机服务实例交由系统服务管理器的过程例如可以通过如下两句代码实现:
[0288]
bluetootha2dp=new bluetootha2dpservice(context);//创建蓝牙耳机服务实例
[0289]
servicemanager.addservice(bluetootha2dpservice.bluetooth_a2dp_service,bluetootha2dp);//将蓝牙耳机服务实例交由系统服务管理器
[0290]
由此,主叫终端就可以获知当前通话是否使用了蓝牙耳机,进而根据预设规定确定主叫终端是否满足呼叫提醒条件。例如,通过上述检测过程,确定未连接蓝牙耳机,根据预设规定非耳机模式满足呼叫提醒条件可知,主叫终端当前满足呼叫提醒条件。
[0291]
此外,对于蓝牙耳机,为了避免用户连接了蓝牙耳机,但是还为佩戴到耳朵上,可以通过获取蓝牙耳机当前的状态信息(传感器检测到的佩戴位置、用户体温...)确定是否佩戴,如果没有佩戴,则可以确定主叫终端满足呼叫提醒条件,即也需要进行呼叫提醒。
[0292]
此外,可理解的,在实际的应用场景中,主叫终端处于耳机模式时,连接的耳机也可能是有线耳机,故而创建的服务实例,以及调用的驱动、硬件适应于调整为与有线耳机相关的即可,例如调用的驱动为音频驱动,调用的硬件为音频模块170中的耳机接口170d。
[0293]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0294]
方式三:
[0295]
示例性的,假设规定主叫终端没有位于主叫用户耳边时,确定主叫终端满足呼叫提醒条件,则主叫终端需要通过检测当前是否处靠近主叫用户耳朵/头部,来确定主叫终端是否满足呼叫提醒条件。参见图9,在确定主叫终端是否位于主叫用户耳边时,位于应用程序层的电话应用收到网络设备发送的181响应消息后,会执行步骤s501,具体为调用应用程序框架层的系统服务,由系统服务执行创建传感器服务实例。
[0296]
相应地,系统服务在完成创建传感器服务实例的操作后,会执行步骤s502,具体为将创建的传感器服务实例交由系统服务管理器进行管理。
[0297]
相应地,系统服务管理器接收到系统服务创建的传感器服务实例后,会执行步骤s503,具体为调用位于内核层的传感器驱动,以触发传感器驱动执行步骤s504,具体为调用传感器模块180(图1所示)这一硬件。
[0298]
可理解的,根据上述针对图1中对传感器模块180的描述可知,传感器模块180例如可以包括压力传感器、陀螺仪传感器、气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等。
[0299]
此外,根据上述针对图1中各传感器功能的描述可知,加速度传感器、距离传感器、接近光传感器可以单独作业或相互配合,实现确定主叫终端是否靠近主叫用户耳边/头部的检测。故而,本实施例中,检测主叫终端是否位于主叫用户耳边/头部时,具体是调用加速度传感器、距离传感器、接近光传感器对应的传感器驱动,进而由对于的传感器驱动调用加速度传感器、距离传感器、接近光传感器。
[0300]
以调用的传感器为接近光传感器为例,则接近光传感器会将收集到的传感器数据传输给对应的传感器驱动,即执行步骤s505。
[0301]
相应地,传感器驱动接收到接近光传感器发送的传感器数据后,执行步骤s506,即将接近光传感器发送的传感器数据发送给系统服务管理器。
[0302]
相应地,系统服务管理器在接收到传感器驱动发送的关于接近光传感器的传感器数据后,会执行步骤s507,具体为将接近光传感器的传感器数据传输至系统服务中的传感器服务实例,进而由系统服务中的传感器服务实例将接近光传感器的传感器数据传输至电话应用,即执行步骤s508。
[0303]
为了更好的理解图9示出的检测主叫终端是否处于主叫用户耳边/头部的过程,仍以安卓系统为例,电话应用调用的系统服务例如可以是system services。
[0304]
相应地,system services创建传感器服务实例,例如可以是sensorserver实例的过程例如可以通过调用系统服务提供的获取相关传感器服务实例的接口创建传感器服务
实例。
[0305]
例如,通过调用getsystemservice()接口,获取需要的传感器服务实例。
[0306]
接着,系统服务在完成传感器服务实例的创建后,可以调用相关接口,例如可以是servicemanager.addservice()接口,将传感器服务实例交给系统服务管理器进行管理。
[0307]
由此,主叫终端就可以获知当前是否位于主叫用户耳边/头部,进而根据预设规定确定主叫终端是否满足呼叫提醒条件。例如,通过上述检测过程,确定主叫终端没有位于主叫用户耳边/头部,根据预设规定远离用户耳边/头部满足呼叫提醒条件可知,主叫终端当前满足呼叫提醒条件。
[0308]
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0309]
此外,需要说明的是,在实际的应用场景中,还可以预先设置主叫终端同时满足上述方式一,和/或方式二,和/或方式三,主叫终端才满足呼叫提醒条件。
[0310]
相应地,在预设的要求为满足上述方式一,和/或方式二,和/或方式三时,则需要根据需要满足的条件,同步执行上述对应的方式,进而保证最终确定的结果的准确性。
[0311]
步骤s207,主叫终端对181响应消息中的历史信息字段进行解析,确定发起的呼叫sim卡1的呼叫被转移到了sim卡2。
[0312]
由于历史消息history-info字段中会通过sip记录每一次跳转要呼叫的号码,通过index记录当前跳转次数,因此通过对history-info字段进行解析,确定最新跳转对应的sip便可以获知呼叫请求被转移到了哪个sim卡。
[0313]
参见图10,示例性的,终端a为主叫终端,终端b为被叫终端,终端c为呼叫转移终端。proxy1是终端b的代理服务节点,即呼叫到终端b的请求会先到达proxy1,然后由proxy1转发给终端b。proxy2是终端c的代理服务节点,即呼叫到终端c的请求会先到达proxy2,然后由proxy2转发给终端c。
[0314]
继续参见图10,示例性的,当终端a在向终端b发起呼叫请求,如图10中的invite(终端b)时,invite(终端b)会先到达proxy1,但是终端b开启了终端之间的第一呼叫转移功能,即终端b不会响应终端a发起的呼叫请求,与终端a建立通信连接关系。这种情况下,proxy1便会向终端a发送181response,同时向设置的呼叫转移终端(终端c)发起呼叫请求,如图10中的invite(终端c)。
[0315]
相应地,proxy1发起的invite(终端c)会先到达proxy2,然后由proxy2转发给终端c。
[0316]
相应地,终端c会做出响应,与终端a建立通信连接关系,即通过proxy2向终端a返回200response。
[0317]
可理解的,图10仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。并且,为了便于说明,图10中省略了部分内容,在实际应用中,终端a在收到200响应前,还会收到180振铃的响应,图10未示出。
[0318]
步骤s208,网络设备根据监听到的呼叫转移终端的状态信息,确定呼叫转移终端应答。
[0319]
步骤s209,网络设备在确定呼叫转移终端能够接听请求2时,向主叫终端发送180响应消息,告知主叫终端其发起的呼叫请求对方已经振铃。
[0320]
步骤s210,在主叫终端与呼叫转移终端之间建立实时传输通道后,呼叫转移终端向主叫终端反馈200响应消息,告知主叫终端当前通话已经接通。
[0321]
步骤s211,主叫终端根据预定的方式向主叫用户作出呼叫提醒。
[0322]
示例性的,在实际的应用场景中,具体采用何种方式向主叫用户作出呼叫提醒,可以预先设定规则。
[0323]
示例性的,在一个例子中,对于外放模式,由于扬声器会直接播放网络提示音,因此可以仅采用文字提醒的方式。
[0324]
示例性的,在另一个例子中,为了避免周围噪声的影响,对于外放模式,还可以根据周围噪声的大小,以及主叫用户的年龄调整扬声器的播放音量,同时调整在用户界面显示的提醒用户的文字的大小、颜色等。
[0325]
示例性的,在另一个例子中,对于外放模式,在采用扬声器播放完网络默认的提示音后,如果没有收到用户反馈,例如按照提示进行语音留言或挂机,可以以语音的方式将本实施中根据确定的呼叫转移终端生成的呼叫提醒内容进行语音播报,以再次提醒主叫用户。
[0326]
示例性的,在一个例子中,对于耳机模式(蓝牙耳机or有线耳机),主叫用户可以直接通过佩戴的耳机听到网络默认的提示音,因此可以仅采用文字提醒的方式。
[0327]
示例性的,在另一个例子中,为了避免周围噪声的影响,对于耳机播放的提示音的干扰,还可以根据周围噪声的大小,以及主叫用户的年龄调整耳机的播放音量,同时调整在用户界面显示的提醒用户的文字的大小、颜色等。
[0328]
示例性的,在另一个例子中,对于耳机模式,在采用耳机播放完网络默认的提示音后,如果没有收到用户反馈,例如按照提示进行语音留言或挂机,可以以语音的方式将本实施中根据确定的呼叫转移终端生成的呼叫提醒内容进行语音播报,以再次提醒主叫用户。
[0329]
示例性的,在一个例子中,对于听筒模式,如果主叫终端位于主叫用户耳边/头部,可以通过听筒直接播放网络默认的提示音。
[0330]
示例性的,在另一个例子中,为了避免周围噪声的影响,对于听筒播放的提示音的干扰,还可以根据周围噪声的大小,以及主叫用户的年龄调整听筒的播放音量
[0331]
示例性的,在另一个例子中,对于听筒模式,且主叫终端位于主叫用户耳边/头部的情况,在采用听筒播放完网络默认的提示音后,如果没有收到用户反馈,例如按照提示进行语音留言或挂机,可以以语音的方式将本实施中根据确定的呼叫转移终端生成的呼叫提醒内容进行语音播报,以再次提醒主叫用户。
[0332]
示例性的,在一个例子中,对于听筒模式,如果主叫终端没有位于主叫用户耳边/头部,例如用户拿在手中,眼睛注视着通话界面,可以将当前通话模式从听筒模式自动切换到外放模式,由于扬声器直接播放网络提示音,同时采用文字提醒的方式在通话界面显示呼叫提醒内容,或者保持当前的听筒模式,直接采用文字提醒的方式在通话界面显示呼叫提醒内容。
[0333]
进一步地,如果主叫终端在从听筒模式切换到外放模式时,已经播放完了网络默认的提示音,则可以以语音的方式将本实施中根据确定的呼叫转移终端生成的呼叫提醒内容进行语音播报。
[0334]
应当理解的是,上述示例仅是为了更好的理解本实施例的技术方案而列举的示
例,不作为对本实施例的唯一限制。
[0335]
为了更好的理解本实施提供的呼叫提醒方法,以下结合图11至图13,分别对仅文字提醒的方式,仅语音提醒的方式,以及文字提醒和语音提醒同时进行的方式为例进行说明。
[0336]
在对这三种方式进行说明之前,首先说明其实现场景。假设这三种方式对应的场景均为:主叫用户呼叫的为“185xxxxxxxx”,而“185xxxxxxxx”对应的被叫终端开启了终端之间的第一呼叫转移功能,并设置将呼叫转移至“xxxxx”的呼叫转移终端。
[0337]
此外,在没有进行呼叫提醒时,通话接通后的主叫终端的显示界面会包括一个或多个控件,例如呼叫的被叫号码“185xxxxxxxx”、显示当前通话时长的控件、录音设置选项、通话等待设置选项、添加通话设置选项、视频通话设置选项、静音设置选项、查看联系人设置选项、打开拨号键盘设置选项、挂机设置选项、免提设置选项等。
[0338]
方式一:仅文字提醒
[0339]
参见图11,示例性的,在呼叫被叫终端的呼叫被呼叫转移终端接通后,主叫终端的通话界面显示的依旧是呼叫的“185xxxxxxxx”,并在显示当前通话时长的空间中显示通话时长,例如图11中的“00:01”。
[0340]
示例性的,如果主叫终端根据图7至图9给出的检测方式,确定主叫终端当前为非外放模式,即可能是耳机模式,或则主叫用户拿在手中的听筒模式,则在当前的通话界面以文字的形式显示根据呼叫转移终端生成的呼叫提醒内容,例如图11中的“您的呼叫已被转移至xxxxx,请留言或者挂机!”。
[0341]
方式二:仅语音提醒
[0342]
参见图12,示例性的,在呼叫被叫终端的呼叫被呼叫转移终端接通后,主叫终端的通话界面显示的依旧是呼叫的“185xxxxxxxx”,并在显示当前通话时长的空间中显示通话时长,例如图12中的“00:01”。
[0343]
示例性的,如果主叫终端根据图7至图9给出的检测方式,确定主叫终端当前为外放模式,或者从其他通话模式自动切换到了外放模式,如图12中的扬声器被开启,则以语音的形式播放根据呼叫转移终端生成的呼叫提醒内容,例如图12中的“您的呼叫已被转移至xxxxx,请留言或者挂机!”,并且音量可以根据主叫终端当前所在环境的噪声的大小进行自动调整。
[0344]
方式三:文字提醒 语音提醒
[0345]
参见图13,示例性的,在呼叫被叫终端的呼叫被呼叫转移终端接通后,主叫终端的通话界面显示的依旧是呼叫的“185xxxxxxxx”,并在显示当前通话时长的空间中显示通话时长,例如图13中的“00:01”。
[0346]
示例性的,如果主叫终端根据图7至图9给出的检测方式,确定主叫终端当前为外放模式,或者从其他通话模式自动切换到了外放模式,如图13中的扬声器被开启,则在当前的通话界面以文字的形式显示根据呼叫转移终端生成的呼叫提醒内容,例如图13中的“您的呼叫已被转移至xxxxx,请留言或者挂机!”,同时以语音的形式播放根据呼叫转移终端生成的呼叫提醒内容,例如图13中的“您的呼叫已被转移至xxxxx,请留言或者挂机!”,并且音量可以根据主叫终端当前所在环境的噪声的大小进行自动调整。
[0347]
可理解的,在实际的应用场景中,通过语音播放呼叫提醒内容的方式,可以不局限
于使用主叫终端的扬声器,还可以连接的耳机。
[0348]
应当理解的是,上述示例仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
[0349]
场景二:
[0350]
场景一所示的实施例是针对终端之间的呼叫转移场景的,场景二所示的实施例是针对同一终端内不同sim卡之间的呼叫转移场景的。下面结合图14对场景二对应的实施例提供的呼叫提醒方法的另一种具体实现方式进行详细说明。
[0351]
在对场景二进行说明之前,首先介绍一下场景二涉及的终端情况。具体的,在本实施例中,被叫终端和呼叫转移终端为同一个终端,即呼叫转移是在被叫终端内不同sim卡之间进行的,以下将这种同一终端内不同sim卡之间的呼叫转移称为第二呼叫转移。
[0352]
相应地,为了实现被叫终端内不同sim卡之间的第二呼叫转移,本实施例中被叫终端内至少需要设置两张sim卡,例如sim卡1和sim卡2,主叫终端内至少有一张能够进行通信的sim卡即可,
[0353]
进一步需要说明的,在实际应用中,被叫终端内还可以设置与sim卡1关联的modem1,以及与sim卡2关联的modem2。其中,modem1可用于实现对sim卡1的语音呼叫处理等功能,modem2可用于实现对sim卡2的语音呼叫处理等功能。
[0354]
进一步地,为了保证本实施提供的语音呼叫提醒能够有效实施,被叫终端需要与网络设备进行协商,以确定被叫终端和网络设备均支持第二呼叫转移功能,从而使得被叫终端内sim卡1的语音呼叫可以转移到sim卡2上,sim卡2的语音呼叫可以转移到sim卡1上。
[0355]
示例性的,被叫终端在与网络设备进行协商时,可以通过每一sim卡对应的modem与网络设备进行协商。
[0356]
在一个例子中,如果modem1与网络设备协商成功,modem2与网络设备协商失败,则在后续的呼叫过程中,modem1可实现第二呼叫转移功能,即modem1可以将sim卡1的语音呼叫转移到sim卡2,而modem2则无法将sim卡2的语音呼叫转移到sim卡1上。也就是说,sim卡2的语音呼叫只能按照支持的第一呼叫转移转移到另一个终端内的sim卡,或者无法进行呼叫转移。
[0357]
参见图14,基于上述内容,实现场景二描述的场景的过程如下:
[0358]
步骤s601,主叫终端向网络设备发送呼叫sim卡1的请求1。
[0359]
步骤s602,网络设备将终端a发起的呼叫sim卡1的请求1转发至被叫终端中的sim卡1。
[0360]
步骤s603,网络设备根据监听到的被叫终端的状态信息确定呼叫不可达。
[0361]
具体的说,对于双卡双通的被叫终端,其内设置的两张sim卡是可以同时保持通话线路,并进行自动切换的,但是被叫用户需要不断在两个sim卡之间切换,为了解决这一问题,本实施例通过将sim卡1的第二呼叫转移对象设置为sim卡2,将sim卡2的第二呼叫转移对象设置为sim卡1。这样,在被叫用户已经通过sim卡2接听来电的过程中,如果有其他主叫终端对sim卡1的呼叫请求,则sim卡1便无法接收到请求1,这种情况下,网络设备就会根据被叫终端当前的状态信息确定呼叫不可达,具体为sim卡1无法应答请求1。
[0362]
对于双卡双待的被叫终端,其内设置的两张sim卡在同一时刻只能有一张sim卡占用射频资源接通语音呼叫。因此,为了避免被叫用户每一进行通话切换时,遗漏重要来电,
可以将针对sim卡1的呼叫转移到sim卡,进行留言提示。
[0363]
步骤s604,网络设备生成响应码为181的181响应消息,并将181响应消息发送给主叫终端。
[0364]
不难发现,本实施例中的步骤s601至步骤s604与图5对应的场景一的实施例中的步骤s201至步骤s204大致相同,此处不再赘述。
[0365]
步骤s605,网络设备确定要呼叫的sim卡2,并向被叫终端发送呼叫sim卡2的请求2。
[0366]
不难看出,对于同一终端内不同sim卡之间进行的第二呼叫转移,网络设备执行的操作与场景一种大致相同,不同之处在于场景一种是将请求2发送给另一终端,即呼叫转移终端中,本实施例中是将请求2继续发送给被叫终端,只是发送给的是被叫终端中处理sim卡2的语音呼叫业务的modem2进行处理。
[0367]
步骤s606,主叫终端在接收到网络设备发送的181响应消息后,判断当前是否满足呼叫提醒条件,并在确定满足呼叫提醒条件时执行步骤s207。
[0368]
步骤s607,主叫终端对181响应消息中的历史信息字段进行解析,确定发起的呼叫sim卡1的呼叫被转移到了sim卡2。
[0369]
不难发现,本实施例中的步骤s606和步骤s607与图5对应的场景一的实施例中的步骤s206和步骤s207大致相同,此处不再赘述。
[0370]
步骤s608,网络设备根据监听到的被叫终端的状态信息,确定被叫终端内的sim卡2可以接听请求2的呼叫,即确定请求2可达。
[0371]
步骤s609,网络设备在确定被叫终端内的sim卡2能够接听请求2时,向主叫终端发送180响应消息,告知主叫终端其发起的呼叫请求对方已经振铃。
[0372]
步骤s610,在主叫终端与被叫终端之间建立实时传输通道后,被叫终端向主叫终端反馈200响应消息,告知主叫终端当前通话已经接通。
[0373]
步骤s611,主叫终端根据预定的方式向主叫用户作出呼叫提醒。
[0374]
不难发现,本实施例中的步骤s606至步骤s61与图5对应的场景一的实施例中的步骤s206至步骤s211大致相同,此处不再赘述。
[0375]
此外,需要说明的是,上述各实施例提供的一种呼叫提醒方法中主叫终端,例如图2示出的手机100所执行的步骤,也可以由手机100中包括的一种芯片系统来执行,其中,该芯片系统可以包括处理器。该芯片系统可以与存储器耦合,使得该芯片系统运行时调用该存储器中存储的计算机程序,实现上述手机100执行的步骤。其中,该芯片系统中的处理器可以是应用处理器也可以是非应用处理器的处理器。
[0376]
另外,本技术实施例还提供一种计算机可读存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在终端上运行时,使得终端执行上述相关方法步骤实现上述实施例中的呼叫提醒方法。
[0377]
另外,本技术实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的呼叫提醒方法。
[0378]
另外,本技术的实施例还提供一种芯片(也可以是组件或模块),该芯片可包括一个或多个处理电路和一个或多个收发管脚;其中,所述收发管脚和所述处理电路通过内部连接通路互相通信,所述处理电路执行上述相关方法步骤实现上述实施例中的呼叫提醒方
法,以控制接收管脚接收信号,以控制发送管脚发送信号。
[0379]
通过上述对手机100的硬件结构的描述可至,手机100包括但不限于一个或多个处理器;存储器;以及一个或多个计算机程序;当所述计算机程序被所述一个或多个处理器执行时,使得手机100或手机100中芯片系统执行以下步骤:
[0380]
通过网络设备向被叫终端发送第一呼叫请求;
[0381]
接收所述网络设备生成的响应消息,所述响应消息中包括响应码,在所述响应码为181时,所述网络设备向指定的呼叫转移终端发送第二呼叫请求;
[0382]
对所述响应消息进行解析,提取所述响应消息中的响应码;
[0383]
在所述响应码为181时,对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端;
[0384]
根据所述呼叫转移终端,生成呼叫提醒内容;
[0385]
在与所述呼叫转移终端建立通信连接关系后,根据所述呼叫提醒内容在所述主叫终端进行呼叫提醒。
[0386]
这样,手机100,即主叫终端根据网络设备反馈的响应消息中的响应码来确定当前呼叫是否进行了呼叫转移,在确定进行了呼叫转移时,通过解析响应消息中的历史信息字段确定呼叫转移终端,进而生成与呼叫转移终端匹配的呼叫提醒内容,并在主叫终端与呼叫转移终端建立通信连接关系后,根据呼叫提醒内容在主叫终端进行呼叫提醒,使得主叫用户能够获知当前通话被叫用户并未接听,并根据呼叫提醒内容进行留言或直接挂断当前通话,从而既可以改善用户体验,又可以避免对通话线路资源的无效占用。
[0387]
示例性的,在另一个例子中,所述历史信息字段中记载了所述第一呼叫请求对应的跳转记录,每一次的所述跳转记录包括第一关键字段和第二关键字段,所述第一关键字段用于表示要跳转到的呼叫号码,所述第二关键字段用于表示跳转次数。
[0388]
相应地,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0389]
对所述响应消息中的历史信息字段进行解析,提取所述第一关键字段和所述第二关键字段;
[0390]
确定记录了最后一次跳转次数的所述第二关键字段为目标第二关键字段,将与所述目标第二关键字段位于同一条所述跳转记录的所述第一关键字段对应的呼叫号码确定为呼叫转移号码;
[0391]
根据所述呼叫转移号码,确定所述呼叫转移终端。
[0392]
这样,手机100通过解析历史信息字段,并提取记载的每一条跳转记录的第一关键字段和第二关键字段,进而可以根据第一关键字段和第二关键字段记载的内容快速、准确的确定当前跳转具体是跳转到哪一终端,进而根据发起第一呼叫请求时的呼叫号码和当前跳转到的终端对应的呼叫号码,确定每一跳对应的终端。
[0393]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0394]
在所述呼叫转移号码为与用户身份识别sim卡绑定的电话号码时,确定所述呼叫转移终端为设置了所述sim卡的终端;
[0395]
在所述呼叫转移号码为运营商提供的语音信箱对应的号码时,确定所述呼叫转移
终端为服务器类型的语音服务平台。
[0396]
这样,使得本技术提供的呼叫提醒方案既可以针对第三方终端进行呼叫转移,又可以针对运营商设置的语音信息进行语音留言,丰富了使用场景。
[0397]
示例性的,一个例子中,所述被叫终端包括第一sim卡和所述第二sim卡,所述第一sim卡与被叫号码绑定,所述第二sim卡与所述呼叫转移号码绑定。
[0398]
这样,使得本技术提供的呼叫提醒方案既可以实现终端与终端/服务器之间的呼叫转移,又可以实现终端内sim卡之间的呼叫转移。
[0399]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0400]
建立每一条所述跳转记录中所述第一关键字段对应的呼叫号码与所述第一呼叫请求呼叫的所述被叫终端对应的被叫号码之间的关联关系;
[0401]
根据所述关联关系更新所述主叫终端中对所述被叫号码的记录信息。
[0402]
这样,手机100通过将提取出的每一跳跳转记录中记载的呼叫号码与主叫终端发起的第一呼叫请求中被叫号码建立关联关系,并根据关联关系对主叫终端本地存储的被叫号码的记录信息进行更新,从而便于主叫用户后续联系使用被叫终端的被叫用户时,能够根据记录的多个关联号码,更快的联系到被叫用户。
[0403]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0404]
确定当前呼叫对应的通话模式,所述通话模式包括外放模式、耳机模式和听筒模式;
[0405]
根据所述通话模式,确定是否满足呼叫提醒条件;
[0406]
在确定满足所述呼叫提醒条件时,执行所述对所述响应消息中的历史信息字段进行解析,确定所述呼叫转移终端的步骤。
[0407]
示例性的,所述外放模式和所述听筒模式根据所述主叫终端的扬声器的开启状态确定。
[0408]
示例性的,所述耳机模式根据所述主叫终端是否连接耳机确定。
[0409]
示例性的,所述耳机为蓝牙耳机或有线耳机。
[0410]
示例性的,在所述扬声器为开启状态时,确定所述通话模式为外放模式,所述主叫终端不满足呼叫提醒条件;反之,确定所述主叫终端满足呼叫提醒条件。这样,在主叫终端不处于外放模式时,主叫用户可能无法及时听到或听清网络设备反馈的默认语音提示,故而为了避免主叫用户错过提示误将被转接到语音服务平台的通话认为被叫用户已接听,对于不是外放模式的通话模式,直接采用本技术提供的呼叫提醒方案进行提醒,从而可以使主叫用户及时获知当前通话情况。
[0411]
示例性的,在所述扬声器为未开启状态,确定所述主叫终端满足呼叫提醒条件时,主叫终端检测是否连接了耳机,在确定连接了耳机时,确定所述主叫终端不满足呼叫提醒条件;在未连接耳机时,确定所述主叫终端满足呼叫提醒条件。这样,在当前通话既不是外放模式,也不是耳机模式时才采用本技术提供的呼叫提醒方案向主叫用户进行提醒,从而避免网络设备反馈的默认提示和本技术作出的提示重复,影响用户体验。
[0412]
示例性的,在未连接耳机时,确定所述主叫终端满足呼叫提醒条件时,判断所述主
叫终端当前是否位于主叫用户的耳边/头部。
[0413]
示例性的,在所述主叫终端位于主叫用户的耳边/头部时,确定所述主叫终端不满足呼叫提醒条件;反之,确定所述主叫终端满足呼叫提醒条件。
[0414]
示例性的,在连接耳机时,根据耳机内部的传感器采集到的数据确定耳机是否佩戴到了主叫用户的耳朵上。
[0415]
示例性的,在确定耳机佩戴到了主叫用户耳朵上时,确定所述主叫终端不满足呼叫提醒条件;反之,确定所述主叫终端满足呼叫提醒条件。这样,在确保主叫用户将耳机佩戴到耳朵上时才确定当前不满足呼叫提醒条件,从而避免在主叫终端连接耳机,但是主叫用户未佩戴耳机的情况下,不像主叫用户进行呼叫提醒,导致主叫用户错过提醒,误以为当前通话由被叫终端接听,但却听不到被叫用户的反馈,认为当前网络出现异常。
[0416]
这样,手机100通过根据主叫终端当前呼叫对应的通话模式来确定主叫终端是否满足提醒条件,从而可以根据不同的通话模式,决策不同的提醒方式,使得本技术提供的呼叫提醒方案能够给予主叫用户更加合适的提醒,进一步提升用户体验。
[0417]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0418]
获取所述通话模式对应的第一语音播放音量;
[0419]
根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件。
[0420]
这样,手机100在根据通话模式确定主叫终端是否满足呼叫提醒条件时,还结合不同通话模式当前对应的第一语音播放音量,从而能够从多维度对主叫终端当前的状态进行考虑,进而保证最终确定的结果更加适合主叫终端当前的使用场景,进一步提升用户体验。
[0421]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0422]
确定当前环境中声音信息对应的第二音量。
[0423]
相应地,所述根据所述通话模式和所述第一语音播放音量,确定是否满足所述呼叫提醒条件,包括:
[0424]
根据所述通话模式和所述第一语音播放音量,结合所述第二音量,确定是否满足所述呼叫提醒条件。
[0425]
这样,手机100在确定主叫终端当前是否满足呼叫提醒条件时,进一步考虑主叫终端当前所在环境的声音信息对应的第二音量,从而进一步丰富了确定主叫终端是否满足呼叫提醒条件的参考维度,使得最终确定的结果,既兼顾了主叫终端当前所在环境的声音信息,又兼顾了主叫终端自身当前通话模式和通话模式对应的第一语音播放音量,从而能够保证最终的结果不会错过对呼叫的提醒,又不会影响用户使用。
[0426]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0427]
根据所述呼叫提醒内容在所述主叫终端进行语音提醒和/或根据所述呼叫提醒内容在是主叫终端进行文字提醒。
[0428]
这样,手机100通过语音提醒和/或文字提醒向主叫用户进行呼叫提醒,使得主叫用户能够更加直观的获知当前第一呼叫请求的结果,以便主叫用户根据提醒进行后续操作,例如进行语音留言或挂机。
[0429]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0430]
获取使用所述主叫终端的主叫用户的用户信息;
[0431]
根据所述用户信息确定所述主叫用户惯用的语种和音量;
[0432]
按照所述音量,采用所述语种对所述呼叫提醒内容进行播报。
[0433]
这样,手机100在采用语音提醒的方式向主叫用户做出呼叫提醒时,结合主叫用户使用主叫终端的使用习惯,并根据主叫用户的使用习惯作出语音提醒,从而在实现呼叫提醒的同时,也尽可能考虑了用户的体验,能够更好的适应不同用户群体,实现因人而异的呼叫提醒。
[0434]
示例性的,在另一个例子中,当所述计算机程序被所述一个或多个处理器执行时,使得手机100执行以下步骤:
[0435]
获取使用所述主叫终端的主叫用户的用户信息;
[0436]
根据所述用户信息确定所述主叫用户惯用的语种和字体大小;
[0437]
按照所述字体大小,采用所述语音在所述主叫终端的通话界面显示所述呼叫提醒内容。
[0438]
这样,手机100在采用文字提醒的方式向主叫用户做出呼叫提醒时,结合主叫用户使用主叫终端的使用习惯,并根据主叫用户的使用习惯作出文字提醒,从而在实现呼叫提醒的同时,也尽可能考虑了用户的体验,能够更好的适应不同用户群体,实现因人而异的呼叫提醒。
[0439]
不难发现,手机100,即主叫终端实现呼叫提醒时执行的上述步骤与上述方法实施例中描述的呼叫提醒方法相类似,因此未在此次描述的具体细节详见上述方法实施例部分的描述,此次不再赘述。
[0440]
此外,通过上述描述可知,本技术实施例提供的终端、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
[0441]
此外,应当理解的是,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献