# Gọi tự động thông thường - API V2

## Gọi trực tiếp

<mark style="color:green;">`POST`</mark> `[URL]/api/v2/auto-call/direct-call`

Gọi trực tiếp không tạo phiên ở client. Giúp tăng tốc luồng xử lý

#### Headers

| Name                                            | Type   | Description                   |
| ----------------------------------------------- | ------ | ----------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer Access: Bearer 'token' |
| Content-type<mark style="color:red;">\*</mark>  | String | application/json              |

#### Request Body

| Name                                           | Type  | Description                                                                                |
| ---------------------------------------------- | ----- | ------------------------------------------------------------------------------------------ |
| phoneNumbers<mark style="color:red;">\*</mark> | Array | Danh sách các số điện thoại cần gọi                                                        |
| scripts<mark style="color:red;">\*</mark>      | Array | Mảng thông tin kịch bản cuộc gọi. Tham khảo thêm mục: \[**Mô tả kịch bản trong cuộc gọi**] |
| sipNumbers<mark style="color:red;">\*</mark>   | Array | Danh sách đầu số dùng để thực hiện cuộc gọi.                                               |

**Mô tả kịch bản trong cuộc gọi**

Giá trị field: \[scripts]

Ví dụ minh họa:

Dưới đây là ví dụ mẫu về kịch bản cuộc gọi. Theo thứ tự:&#x20;

* kịch bản Phát file lời chào
* kịch bản TextToSpeed
* kịch bản Tương tác phím
* kịch bản Nhóm nội bộ

> ```json
> [
> 	{
> 		"targetType": "recording",
> 		"target": "1e942ee5-83f1-4893-9416-b4cbcb832e3c.mp3"
> 	},
> 	{
> 		"speed": 1,
> 		"targetType": "textVariable",
> 		"target": "Chào bạn, đây là cuộc gọi tự động từ tổng đài OMICALL. Cảm ơn bạn đã sử dụng dịch vụ của chúng tôi.",
> 		"voice": "banmai"
> 	},
> 	{
> 		"targetType": "ivrMenu",
> 		"target": "728341"
> 	},
> 	{
> 		"targetType": "ringGroup",
> 		"target": "79149"
> 	}
> ]
> ```

Các loại kịch bản đang hỗ trợ (giá trị field scripts\[n].targetType):

1. "recording" : kịch bản Phát file lời chào.
2. "callBotTextVariable" : kịch bản TextToSpeed.
3. "ivrMenu" : kịch bản Tương tác phím.
4. "ringGroup" : kịch bản Nhóm nội bộ.

{% tabs %}
{% tab title="Phát file lời chào" %}

```json
{
	"targetType": "recording",
	"targetId": "60e79bf81b20043c4e7a68d0",
	"targetValue": "1e942ee5-83f1-4893-9416-b4cbcb832e3c.mp3"
}
// Tham khảo giá trị file lời chào tại mục 'Danh sách file ghi âm' : 
// https://api.omicall.com/omicall-api/call-center
```

{% endtab %}

{% tab title="TextToSpeed" %}

```json
{
	"targetType": "callBotTextVariable",
	"targetValue": "Chào bạn, đây là cuộc gọi tự động từ tổng đài OMICALL. Cảm ơn bạn đã sử dụng dịch vụ của chúng tôi.",
	"speed": 1,
	"voice": "northern_female_ngocanh"
}
/*
 1. "targetValue": nội dung cần đọc (thông điệp dạng chữ).
 	Giá trị: kiểu text
 	Ví dụ: "Chào bạn, đây là cuộc gọi tự động từ tổng đài OMICALL. Cảm ơn bạn đã sử dụng dịch vụ của chúng tôi.".
 
 2. "speed": tốc độ đọc. 
 	Giá trị: kiểu Integer
 	
     + 1.2 : Rất chậm.
     + 1.1 : Chậm.
     + 1   : Bình thường.
     + 0.9 : Nhanh.
     + 0.8 : Rất nhanh.
 		
 3. "voice": giọng đọc
 	Giá trị: kiểu text
 	
     + "northern_female_ngocanh" : Giọng nữ miền Bắc.
     + "northern_male_anhkiet"   : Giọng nam miền Bắc.
     + "southern_female_khangan" : Giọng nữ miền Nam.
*/
```

{% endtab %}

{% tab title="Tương tác phím" %}

```json
{
	"targetType": "ivrMenu",
	"targetId": "6491781136826a5f9ce62910",
	"targetValue": "728341"
}
// Tham khảo giá trị file lời chào tại mục 'Danh sách KỊCH BẢN BẤM PHÍM' : 
// https://api.omicall.com/omicall-api/call-center
```

{% endtab %}

{% tab title="Nhóm nội bộ" %}

```json
{
	"targetType": "ringGroup",
	"targetId": "65af2e9cc567a1128d92ffcc",
	"targetValue": "79149"
}
// Tham khảo giá trị file lời chào tại mục 'Danh sách NHÓM NỘI BỘ' : 
// https://api.omicall.com/omicall-api/call-center
```

{% endtab %}
{% endtabs %}

**Dữ liệu trả về:**

Thông tin số điện thoại và UUID của cuộc gọi, nó là autocall\_uuid trong bản tin webhook lịch sử cuộc gọi

{% tabs %}
{% tab title="200 Dữ liệu trả về thành công" %}

```
{
    "status_code": 9999,
    "instance_id": "stg",
    "instance_name": "DESKTOP-3I0NHO0",
    "payload": {
        "0979xxxxxx" : "3038a136-0b8b-4466-9ef2-1a19e19721db"
    },
    "key_enabled": false
}
```

{% endtab %}
{% endtabs %}

## Tạo phiên

<mark style="color:green;">`POST`</mark> `[URL]/api/v2/autoCall/executeByPhone`

Tạo phiên gọi AutoCall từ danh sách số điện thoại

#### Headers

| Name                                            | Type   | Description                   |
| ----------------------------------------------- | ------ | ----------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer Access: Bearer 'token' |
| Content-type<mark style="color:red;">\*</mark>  | String | application/json              |

#### Request Body

| Name                                      | Type                  | Description                                                                                                                  |
| ----------------------------------------- | --------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| name                                      | String                | Tên phiên                                                                                                                    |
| sendTime                                  | Long                  | Thời gian thực hiện phiên gọi. Nếu không truyền mặc định là thời điểm hiện tại.                                              |
| scripts<mark style="color:red;">\*</mark> | Array                 | Mảng thông tin kịch bản cuộc gọi. Tham khảo thêm mục: \[**Mô tả kịch bản trong cuộc gọi**]                                   |
| numberCallOuts                            | Array                 | Danh sách đầu số dùng để thực hiện cuộc gọi. Nếu không truyền mặc định là sử dụng toàn bộ đầu số của DN                      |
| receiverPhoneNumbers                      | Array                 | Danh sách số điện thoại khách nhận cuộc gọi.                                                                                 |
| numberCallPerTime                         | Integer               | Nhóm số lượng cuộc gọi thực hiện mỗi lần. Giá trị tối đa bằng CCU của gói dịch vụ                                            |
| durationOfEachCall                        | Integer               | Khoảng thời gian cấu hình giữa các phiên gọi nhóm                                                                            |
| maxRetryOfDetail                          | Interger              | Số lượt gọi lại tối đa                                                                                                       |
| retryAfterSeconds                         | Integer               | Khoảng thời gian gọi lại                                                                                                     |
| autoPause                                 | Boolean (true, false) | Cho phép phiên tự động dừng khi không có nhân viên hiệu lực không. Cấu hình này chỉ áp dụng cho kịch bản gọi vào nhóm nội bộ |

**Mô tả kịch bản trong cuộc gọi**

Giá trị field: \[scripts]

Ví dụ minh họa:

Dưới đây là ví dụ mẫu về kịch bản cuộc gọi. Theo thứ tự:&#x20;

* kịch bản Phát file lời chào
* kịch bản TextToSpeed
* kịch bản Tương tác phím
* kịch bản Nhóm nội bộ

> ```json
> [
> 	{
> 		"targetId": "60e79bf81b20043c4e7a68d0",
> 		"targetType": "recording",
> 		"targetValue": "1e942ee5-83f1-4893-9416-b4cbcb832e3c.mp3"
> 	},
> 	{
> 		"speed": 1,
> 		"targetType": "callBotTextVariable",
> 		"targetValue": "Chào bạn, đây là cuộc gọi tự động từ tổng đài OMICALL. Cảm ơn bạn đã sử dụng dịch vụ của chúng tôi.",
> 		"voice": "banmai"
> 	},
> 	{
> 		"targetId": "6491781136826a5f9ce62910",
> 		"targetType": "ivrMenu",
> 		"targetValue": "728341"
> 	},
> 	{
> 		"targetType": "ringGroup",
> 		"targetId": "65af2e9cc567a1128d92ffcc",
> 		"targetValue": "79149"
> 	}
> ]
> ```

Các loại kịch bản đang hỗ trợ (giá trị field scripts\[n].targetType):

1. "recording" : kịch bản Phát file lời chào.
2. "callBotTextVariable" : kịch bản TextToSpeed.
3. "ivrMenu" : kịch bản Tương tác phím.
4. "ringGroup" : kịch bản Nhóm nội bộ.

{% tabs %}
{% tab title="Phát file lời chào" %}

```json
{
	"targetType": "recording",
	"targetId": "60e79bf81b20043c4e7a68d0",
	"targetValue": "1e942ee5-83f1-4893-9416-b4cbcb832e3c.mp3"
}
// Tham khảo giá trị file lời chào tại mục 'Danh sách file ghi âm' : 
// https://api.omicall.com/omicall-api/call-center
```

{% endtab %}

{% tab title="TextToSpeed" %}

```json
{
	"targetType": "callBotTextVariable",
	"targetValue": "Chào bạn, đây là cuộc gọi tự động từ tổng đài OMICALL. Cảm ơn bạn đã sử dụng dịch vụ của chúng tôi.",
	"speed": 1,
	"voice": "northern_female_ngocanh"
}
/*
 1. "targetValue": nội dung cần đọc (thông điệp dạng chữ).
 	Giá trị: kiểu text
 	Ví dụ: "Chào bạn, đây là cuộc gọi tự động từ tổng đài OMICALL. Cảm ơn bạn đã sử dụng dịch vụ của chúng tôi.".
 
 2. "speed": tốc độ đọc. 
 	Giá trị: kiểu Integer
 	
     + 1.2 : Rất chậm.
     + 1.1 : Chậm.
     + 1   : Bình thường.
     + 0.9 : Nhanh.
     + 0.8 : Rất nhanh.
 		
 3. "voice": giọng đọc
 	Giá trị: kiểu text
 	
     + "northern_female_ngocanh" : Giọng nữ miền Bắc.
     + "northern_male_anhkiet"   : Giọng nam miền Bắc.
     + "southern_female_khangan" : Giọng nữ miền Nam.
*/
```

{% endtab %}

{% tab title="Tương tác phím" %}

```json
{
	"targetType": "ivrMenu",
	"targetId": "6491781136826a5f9ce62910",
	"targetValue": "728341"
}
// Tham khảo giá trị file lời chào tại mục 'Danh sách KỊCH BẢN BẤM PHÍM' : 
// https://api.omicall.com/omicall-api/call-center
```

{% endtab %}

{% tab title="Nhóm nội bộ" %}

```json
{
	"targetType": "ringGroup",
	"targetId": "65af2e9cc567a1128d92ffcc",
	"targetValue": "79149"
}
// Tham khảo giá trị file lời chào tại mục 'Danh sách NHÓM NỘI BỘ' : 
// https://api.omicall.com/omicall-api/call-center
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="200 Dữ liệu trả về thành công" %}

```
{
    "status_code": 9999,
    "instance_id": "stg",
    "instance_name": "DESKTOP-3I0NHO0",
    "payload": {
        "next_page": 1,
        "page_number": 1,
        "has_previous": false,
        "has_next": false,
        "total_pages": 1,
        "previous_page": 1,
        "total_items": 1,
        "page_size": 50
        "items": [
            {
                "public_id": "", // Id
                "create_by": {
                    "name": "TestBoss 123"
                },
                "last_update_by": {
                    "name": "TestBoss 123"
                },
                "created_date": 1576229754881,
                "last_updated_date": 1580807004410,
                "contact_type": "contact",
                "tags_view": null,
                "is_deleted": false, // Trạng thái
                "tags": [], // Thẻ tags khách hàng
                "attribute_structure": [
                    {
                        "identify": false,
                        "field_code": "full_name",
                        "field_type": "single_text",
                        "value": [
                            {
                                "display_value": "Trần Văn Tiến 1",
                                "data_type": null,
                                "value_type": null
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "job_title",
                        "field_type": "single_text",
                        "value": [
                            {
                                "display_value": "Giám đốc",
                                "data_type": null,
                                "value_type": null
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "gender",
                        "field_type": "radio",
                        "value": [
                            {
                                "display_value": "male",
                                "data_type": null,
                                "value_type": null
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "phone_number",
                        "field_type": "phone",
                        "value": [
                            {
                                "display_value": "0395187319",
                                "data_type": "personal",
                                "value_type": "Cá nhân"
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "mail",
                        "field_type": "email",
                        "value": [
                            {
                                "display_value": "tientv1212@gmail.com",
                                "data_type": "personal",
                                "value_type": "Cá nhân"
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "address",
                        "field_type": "single_text",
                        "value": [
                            {
                                "display_value": "Số 6 , đường 16, Hiệp Bình Chánh, Thủ Đức, HCM",
                                "data_type": null,
                                "value_type": null
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "passport",
                        "field_type": "single_text",
                        "value": [
                            {
                                "display_value": "",
                                "data_type": null,
                                "value_type": null
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "note",
                        "field_type": "multi_text",
                        "value": [
                            {
                                "display_value": "Khách hàng VIP, cần được chăm sóc kĩ",
                                "data_type": null,
                                "value_type": null
                            }
                        ]
                    },
                    {
                        "identify": false,
                        "field_code": "more_infomation",
                        "field_type": "customize",
                        "value": [
                            {
                                "display_value": "Nguyễn Văn B",
                                "data_type": "value1",
                                "value_type": "Người thân"
                            },
                            {
                                "display_value": "Vàng",
                                "data_type": "label2",
                                "value_type": "Màu sắc yêu thích"
                            }
                        ]
                    }
                ]
            }
        ]
    },
    "key_enabled": false
}
```

{% endtab %}
{% endtabs %}
