首页> 中国专利> 基于Andriod平台在Voip通话中实现Volte业务呼入的方法

基于Andriod平台在Voip通话中实现Volte业务呼入的方法

摘要

本发明公开一种基于Andriod平台在Voip通话中实现Volte业务呼入的方法包括ImsPhone对象的创建及管理。ImsPhone对象的创建包括PhoneBase接收到IMSService启动的广播后,在CallManager中查找是否存在ImsPhone对象。ImsPhone对象的管理包括当Voip来电时创建SipPhone对象,把SipPhone的Ringcall对象都添加到CallManager的RingingCalls?list中并更新RingingCalls?list中SIP的Ringcall为当前实际的来电Ringcall对象,并上报到APP处理新的来电。本发明所述方法可以使Android用户在Voip通话中得到Volte的通话请求,用户可以选择接听或者拒接新的来电。

著录项

  • 公开/公告号CN105227563A

    专利类型发明专利

  • 公开/公告日2016-01-06

    原文格式PDF

  • 申请/专利权人 成都中科创达软件有限公司;

    申请/专利号CN201510666806.9

  • 发明设计人 唐宾;

    申请日2015-10-15

  • 分类号H04L29/06;

  • 代理机构北京集佳知识产权代理有限公司;

  • 代理人王学强

  • 地址 610041 四川省成都市高新区交子大道88号中航国际广场1幢4层401-408

  • 入库时间 2023-12-18 13:28:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-03-15

    专利权的转移 IPC(主分类):H04L29/06 专利号:ZL2015106668069 登记生效日:20220302 变更事项:专利权人 变更前权利人:成都中科创达软件有限公司 变更后权利人:杭州创通智远科技有限公司 变更事项:地址 变更前权利人:610041 四川省成都市高新区交子大道88号中航国际广场1幢4层401-408 变更后权利人:311100 浙江省杭州市余杭区余杭街道文一西路1818-1号209室

    专利申请权、专利权的转移

  • 2018-07-13

    授权

    授权

  • 2016-02-03

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20151015

    实质审查的生效

  • 2016-01-06

    公开

    公开

说明书

技术领域

本发明涉及移动通讯技术领域,具体涉及一种基于Andriod平台在Voip通话中 实现Volte业务呼入的方法。

背景技术

第四代无线数据网络(LongTermEvolution,LTE)是目前国际主流的新一代宽 带无线移动通信技术,其是面向分组域业务,不能像传统的2G/3G网络那样提供电 路域业务,因此如何在LTE网络提供语音业务成为业界关注的一个问题。为此,第 三代合作伙伴计划(The3rdGenerationPartnershipProject,3GPP)规范定义LTE和 移动网络演进目标是采用互联网协议IP的多媒体子系统(IPMultimediaSubsystem, IMS)向用户提供多媒体语音业务,此时IMS作为业务控制层系统,LTE和演进的 数据核心网(EvolvedPacketCore,EPC)仅作为承载层。

3GPP针对基于LTE的语音(VoiceoverLTE,VOLTE)部署的问题,标准 化了增强单一无线语音呼叫连续性(enhancedSingleRadioVoiceCallContinuty, enhancedSRVCC)、终呼接入域选择(Terminating-AccessDomainSelection,T-ADS) 等解决方案或流程。而在这些方案中还不能够使Android用户在Voip通话中得到 Volte的通话请求,以选择处理(接听或者拒接),从而使用户漏掉新呼入通话的信 息。

Android原生对volte处理对象即4G通话的Phone对象ImsPhone的管理存在一些 不足,目前,根据原生逻辑会创建多个ImsPhone对象来管理Volte,导致CallManager 的RingingCallslist中存在多个ImsPhone的Ringcall对象,在有新的Volte来电时,会同 时更新这些ImsPhone对象的Ringcall对象,导致RingingCallslist中存在超过1个的来 电Ringcall对象,根据原生逻辑,不通知APP,直接挂断来电。且在这个过程中 ImsPhone对象会被创建多次,浪费系统资源。另外,一个ImsPhone对象足够处理所 有的Volte通话,多个对象反而引起管理混乱及系统消耗,导致对VOLTE的来电处 理错误。

发明内容

有鉴于此,本申请提供一种基于Andriod平台在Voip通话中实现Volte业务呼 入的方法。该方法可以使Android用户在Voip通话中得到Volte的通话请求,用户 可以选择接听或者拒接新的来电。

为解决以上技术问题,本发明提供的技术方案是基于Andriod平台在Voip通话 中实现Volte业务呼入的方法,包括步骤:ImsPhone对象的创建,以及ImsPhone 对象的管理;

步骤ImsPhone对象的创建包括:

PhoneBase接收到IMSService启动的广播后,遍历CallManager中管理Phone 对象的列表,查找是否存在ImsPhone对象,如果存在则直接返回,不创建ImsPhone 对象;如果不存在则创建ImsPhone对象,然后调用CallManager接口,把ImsPhone 对象添加到CallManager中统一管理;

步骤ImsPhone对象的管理包括:

当Voip来电时,首先创建SipPhone对象,把SipPhone的Ringcall对象添加到 CallManager的RingingCallslist中统一管理,并更新RingingCallslist中SipPhone的 Ringcall为当前实际的来电Ringcall对象,上报到APP处理新的来电。根据原生逻 辑,在创建SipPhone对象的同时还会创建ImsPhone对象。但在本方案中,修改了 ImsPhone的创建条件,此处不会再创建新的ImsPhone对象;

APP接通Voip来电,Voip变为通话中状态,将把SipPhone对象的Ringcall对 象更新为Frogrouncall对象,当前的Ringcall对象更新为空;

Volte来电,把CallManager中的RingingCallslist中已经存在的ImsPhone的 Ringcall对象都更新为当前的来电Ringcall对象,上报到APP处理新的来电;由于 在Voip来电时,修改了ImsPhone的创建条件,此时在CallManager中的RingingCalls list中只有一个ImsPhone对象。根据原生逻辑,此时RingingCallslist中只有1个的 来电Ringcall对象,上层APP收到新来电的请求,用户选择接听或者拒接新的来电。

进一步地,所述步骤ImsPhone对象的创建还包括PhoneBase接收到IMSService 关闭的广播后,会调用CallManager接口,把当前ImsPhone移除CallManager管理, 销毁ImsPhone对象。

进一步地,所述步骤ImsPhone对象的管理还包括在手机开机后系统构建初始 的RingingCallslist,其中默认存在GSM和IMS的Ringcall对象为NULL。

进一步地,VOIP来电后上报到APP,APP接通来电,VOIP变为通话中状态, 把SipPhone对象的Ringcall对象更新为Frogrouncall对象,当前的Ringcall对象更 新为空。

与现有技术相比,本发明的有益效果如下:

本发明基于目前系统中原生的电话管理框架及逻辑,保证整个系统中只有一个 ImsPhone对象,首先避免了ImsPhone对象会被创建多次,浪费系统资源;其次一个 ImsPhone对象足够处理所有的VOLTE通话,避免了多个对象反而引起管理混乱及 系统消耗,导致对VOLTE的来电处理错误。

本发明使Android用户在VOIP通话中能够得到VOLTE的通话请求,用户可 以选择接听或者拒接。实现用户在VOIP通话中至少能知道有新的VOLTE的通话 请求,而不至于漏掉新呼入通话的信息。

附图说明

图1为本发明ImsPhone对象的创建流程图;

图2为本发明ImsPhone对象的管理流程图。

具体实施方式

为了使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体 实施例对本发明作进一步的详细说明。

本发明的目的是Android用户在VOIP通话中能够得到VOLTE的通话请求, 用户可以选择接听或者拒接,这样用户在VOIP通话中至少能知道有新的VOLTE 的通话请求,让用户不至于漏掉新呼入通话的信息。

本发明所描述的是基于Andriod平台在Voip通话中实现Volte业务呼入的方法, 该方法包括ImsPhone对象的创建及管理,其具体步骤如下:

如图1所示,ImsPhone对象的创建具体步骤包括:

S101、PhoneBase接收到IMSService的广播,判断是否为启动的广播,如果是 则执行步骤S102;如果是关闭的广播则执行步骤S104。

S102、在CallManager中查找是否存在ImsPhone对象,如果存在则直接返回, 不创建ImsPhone对象;如果不存在则创建ImsPhone对象。

S103、调用CallManager接口,把ImsPhone对象添加到CallManager中统一管 理。

S104、调用CallManager接口,把当前ImsPhone移除CallManager管理,销毁 ImsPhone对象。

本发明所述的方法在需要创建ImsPhone对象时,会先遍历CallManage中管理 Phone对象的列表,检测当前是否已经存在了ImsPhone对象,存在则不创建,不存 在则创建,创建后加入到CallManage中管理,避免了ImsPhone对象会被创建多次, 浪费系统资源及导致管理混乱的情况。

本发明所述的方法Android原生CallManager管理来电流程及在VOIP通话中接 收到VOLTE的来电请求时,如图2所示,对ImsPhone对象的管理具体步骤包括:

S201、Android移动设备开机后系统构建初始的RingingCallslist,其中默认存在 GSM和IMS的Ringcall对象为NULL。

S202、CallManager管理模块接收到来电请求并判断请求信号,如果是VOIP来 电执行步骤S203,若果是VOLTE来电执行步骤S205。

S203、创建SipPhone对象,把SipPhone的Ringcall对象添加到CallManager的 RingingCallslist中统一管理,并更新RingingCallslist中SIP的Ringcall为当前实际 的来电Ringcall对象,根据原生逻辑,上报到APP处理新的来电。

这里由于CallManager中已经存在ImsPhone,故不创建新的ImsPhone对象,在 此,RingingCallslist中只有SipPhone一个来电。

S204、APP接通来电,VOIP变为通话中状态,把SipPhone对象的Ringcall对 象更新为Frogrouncall对象,当前的Ringcall对象更新为空。

所以当前的RingingCallslist中没有新的来电Ringcall对象。

S205、把已经存在的ImsPhone的Ringcall对象都更新为当前的来电Ringcall对 象,根据原生逻辑,上报到APP处理新的来电。

S206、上层APP收到新来电的请求,用户选择接听或者拒接新的来电。

本发明中,英文术语解释:

ANDROID:一种基于Linux的自由及开放源码的操作系统;

LTE(LongTermEvolution):长期演进;

3GPP(The3rdGenerationPartnershipProject):第三代合作伙伴计划;

UMTS(UniversalMobileTelecommunicationsSystem):通用移动通信系 统;

OFDM(OrthogonalFrequencyDivisionMultiplexing):正交频分复用;

MIMO(Multi-Input&Multi-Output):多输入多输出;

IMS(IPMultimediaSubsystem):IP多媒体子系统;

3GPP、GSMA(GlobalSystemforMobileCommunicationsAlliance):全球移动 通信系统联盟;

VOLTE(VoiceoverLTE):基于IMS的语音业务;

VOIP(VoiceoverInternetProtocol):网络电话;

ImsPhone:处理VOLTE即4G通话的Phone对象;

SipPhone:处理VOIP即网络电话的Phone对象;

CallManager:Call管理及控制类

RingingCallslist:存储所有Phone对象的来电Call对象的列表

Ringcall:处于来电状态的Call对象

Frogrouncall:处于通话中的Call对象

原生逻辑:Android系统已经实现的逻辑

以上仅是本发明的优选实施方式,应当指出的是,上述优选实施方式不应视为 对本发明的限制,本发明的保护范围应当以权利要求所限定的范围为准。对于本技 术领域的普通技术人员来说,在不脱离本发明的精神和范围内,还可以做出若干改 进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号