• Home
Name Date Size #Lines LOC

..--

figures/12-May-2024-

interfaces/innerkits/ims/12-May-2024-2,542764

sa_profile/12-May-2024-3632

services/12-May-2024-20,15614,007

test/12-May-2024-10,1698,119

vendor/ims/12-May-2024-6,1384,285

BUILD.gnD12-May-20243.1 KiB8879

LICENSED12-May-20249.9 KiB177150

README.mdD12-May-20243.6 KiB5939

README_zh.mdD12-May-20243.3 KiB6343

bundle.jsonD12-May-20242.3 KiB7978

README.md

1# Cellular Call<a name="EN-US_TOPIC_0000001105379632"></a>
2
3
4## Introduction<a name="section117mcpsimp"></a>
5
6The cellular call module provides basic call services on carrier networks, including 2G/3G circuit switched \(CS\) calls and 4G/5G IP multimedia subsystem \(IMS\) calls \(including VoLTE/VoWIFI/VoNR voice, video, and conference calls\). It also supports domain selection and handover between CS and IMS calls, as well as emergency calls. This module is compatible with mainstream modem chip platforms.
7
8The following figure shows the architecture of the cellular call module.
9
10**Figure  1**  Architecture of the cellular call module<a name="fig970511919486"></a>
11
12
13![](figures/en-us_architecture-of-the-cellular-call-module.png)
14
15The cellular call module consists of three layers:
16
171.  Cellular call management layer \(CellularCallService\): consists of CellularCallRegister, CellularCallProxy, and CellularCallHandler. CellularCallRegister provides the function of registering an observer for call information changes; CellularCallProxy functions as a proxy for implementing external APIs of CellularCallService; CellularCallHandler processes callback events reported by the RIL Adapter.
182.  Cellular call service layer \(CellularCallStub\): consists of CSControl, IMSControl, CellularCallConfig, and CellularCallSupplement. CSControl implements CS call control; IMSControl implements IMS call control; CellularCallConfig implements call information configuration; CellularCallSupplement implements supplementary services.
193.  Cellular call connection layer \(Connection\): consists of BaseConnection, ConfigRequest, and SupplementRequest. BaseConnection implements the call session connection function; ConfigRequest implements configuration requests; SupplementRequest implements supplementary service requests.
20
21## Directory Structure<a name="section127mcpsimp"></a>
22
23```
24/base/telephony/cellular_call     # Cellular call module
25├─ figures                        # Figures of readme files
26├─ interfaces                     # APIs
27│  └─ innerkits                   # IMS call service APIs
28├─ sa_profile                     # SA profile
29├─ services                       # Service code
30│  ├─ common                      # Tools
31│  ├─ connection                  # Connection layer
32│  ├─ control                     # Control service layer
33│  ├─ ims_service_interaction     # IMS call service interaction layer
34│  └─ manager                     # Management layer
35├─ test                           # Test code
36│  └─ unittest                    # Unit test
37└─  vendor                        # Sample code for IMS call service implementation
38   └─ ims                         # IMS call service logic
39```
40
41## Constraints<a name="section131mcpsimp"></a>
42
43-   Programming language: C++
44-   Software constraints: This module must work with the telephony core service \(core\_service\) and Call Manager \(call\_manager\).
45-   Hardware constraints: The accommodating device must be equipped with a speaker or earphone, a headset, and a modem and a SIM card capable of independent cellular communication.
46
47>**Note:**
48>APIs for the cellular call service are not exposed externally. They are directly called by the Call Manager.
49
50## Repositories Involved<a name="section204mcpsimp"></a>
51
52[Telephony Subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/telephony.md)
53
54**telephony_cellular_call**
55
56[telephony_core_service](https://gitee.com/openharmony/telephony_core_service/blob/master/README.md)
57
58[telephony_call_manager](https://gitee.com/openharmony/telephony_call_manager/blob/master/README.md)
59

README_zh.md

1# 蜂窝通话<a name="ZH-CN_TOPIC_0000001105379632"></a>
2
3-   [简介](#section117mcpsimp)
4-   [目录](#section127mcpsimp)
5-   [约束](#section131mcpsimp)
6-   [相关仓](#section204mcpsimp)
7
8## 简介<a name="section117mcpsimp"></a>
9
10蜂窝通话支持基于运营商网络的基础通话实现,包含基于2G/3G的CS(Circuit Switch,电路交换)通话和基于4G/5G的IMS(IP Multimedia Subsystem,IP多媒体子系统)通话,包含VoLTE/ VoWIFI/ VoNR语音、视频、会议,支持CS和IMS通话之间的域选控制和切换,支持紧急通话。支持主流modem芯片平台。
11
12其主要的结构及流程如下图所示:
13
14**图 1**  蜂窝通话模块架构图<a name="fig970511919486"></a>
15
16
17![](figures/zh-cn_architecture-of-the-cellular-call-module.png)
18
19蜂窝通话模块由蜂窝通话管理层、蜂窝通话业务处理层、蜂窝通话连接层三大部分组成,其中:
20
211.  蜂窝通话管理层(CellularCallService):由CellularCallRegister(提供通话信息变化订阅功能)、CellularCallProxy(提供蜂窝通话对外接口实现的代理)、CellularCallHandler(处理RIL Adapter上报的消息)组成。
222.  蜂窝通话业务层(CellularCallStub):由CSControl(处理CS通话)&IMSControl(处理IMS通话)、CellularCallConfig(配置业务)、CellularCallSupplement(补充业务)组成。
233.  蜂窝通话连接层(Connection):由BaseConnection(会话连接)、ConfigRequest(配置业务命令请求)、SupplementRequest(补充业务命令请求)组成。
24
25## 目录<a name="section127mcpsimp"></a>
26
27```
28/base/telephony/cellular_call     # 蜂窝通话子组件
29├─ figures                        # Readme资源文件
30├─ interfaces                     # 接口目录
31│  └─ innerkits                   # IMS通话接口定义
32├─ sa_profile                     # sa文件
33├─ services                       # 服务内部代码
34│  ├─ common                      # 工具仓
35│  ├─ connection                  # 连接层
36│  ├─ control                     # 控制业务层
37│  ├─ ims_service_interaction     # IMS通话服务交互层
38│  └─ manager                     # 管理层
39├─ test                           # 测试相关代码
40│  └─ unittest                    # 单元测试相关代码
41└─  vendor                        # IMS通话服务实现层示例代码
42   └─ ims                         # IMS通话业务逻辑相关代码
43```
44
45## 约束<a name="section131mcpsimp"></a>
46
47-   开发语言:C++。
48-   软件约束:需要与以下服务配合使用:Telephony核心服务(core\_service)、通话管理(call\_manager)。
49-   硬件约束:需要搭载的设备支持以下硬件:扬声器或听筒、麦克风,可以进行独立蜂窝通信的Modem以及SIM卡。
50
51>**说明:**
52>蜂窝通话不对外暴露接口,由通话管理直接调用。
53
54## 相关仓<a name="section204mcpsimp"></a>
55
56[电话服务子系统](https://gitee.com/openharmony/docs/blob/master/zh-cn/readme/电话服务子系统.md)
57
58**telephony_cellular_call**
59
60[telephony_core_service](https://gitee.com/openharmony/telephony_core_service/blob/master/README_zh.md)
61
62[telephony_call_manager](https://gitee.com/openharmony/telephony_call_manager/blob/master/README_zh.md)
63