Перейти к содержанию

LastOutgoingCalls#

Бета-версия

Функциональность находится в режиме бета-версии. Функции могут быть изменены, а также могут работать нестабильно.

Test Postman Apidog

Метод возвращает крайние исходящие звонки.

Настройки

Чтобы получить информацию об исходящих звонках, включить настройку outgoingCallWebhook методом SetSettings или Получать уведомления об исходящих звонках через личный кабинет.

Применение настроек занимает до 5 минут.

Чтобы получить информацию об исходящих звонках до подключения инстанса, необходимо после сохранения настроек на инстансе сделать разлогин и авторизоваться повторно.

Метод возвращает последние 10000 звонков. Метод LastOutgoingCalls возвращает только ту историю, которую системе отдает WhatsApp.

Появления информации в журнале может занимать время до 2 минут, методы журналов необходимо использовать только для получения истории звонков. Для быстрого получения событий необходимо использовать систему уведомлений.

Запрос#

Для получения истории исходящих звонков требуется выполнить запрос по адресу:

GET
{{apiUrl}}/waInstance{{idInstance}}/lastOutgoingCalls/{{apiTokenInstance}}

Для получения параметров запроса apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.

Параметры URL запроса#

Параметр Тип Обязательный Описание
minutes integer нет время в минутах, за которое требуется показать звонки (по умолчанию равно 1440 минут)

Ответ#

Поля ответа#

Массив объектов с полями:

Поле Тип Описание
type string Вид звонка, outgoing - исходящий звонок
idMessage string Идентификатор исходящего звонка
timestamp integer Время окончания звонка в UNIX-формате
typeMessage string Тип звонка: outgoingCall - исходящий звонок
chatId string Идентификатор чата, в котором был совершен звонок
duration integer Длительность звонка в секундах
isVideo boolean Флаг, указывающий, был ли это видеозвонок
status string Статус звонка. Может принимать следующие значения:
pickUp - на звонок ответил как минимум один участник
hungUp - все участники не приняли звонок или у номера, на который был совершен звонок, не существует аккаунта WhatsApp
invalid - не получилось дозвониться или обработать статус. Например, номера на который совершался звонок, не существует
participants array Статус звонка по каждому участнику. В личных звонках поле будет содержать только один объект

Поля объекта participants

Поле Тип Описание
id string Идентификатор личного чата участника звонка
status string Статус звонка у конкретного участника. Может принимать следующие значения:
pickUp - собеседник поднял трубку
hungUp - собеседник не принял звонок или номера на который был совершен звонок не существует
declined - собеседник отклонил звонок
invalid - не получилось дозвониться или обработать статус

Пример тела ответа#

[
    {
        "type": "outgoing",
        "idMessage": "AC0E17D82A7B513089H667F636DD2AE5",
        "timestamp": 1754455789,
        "typeMessage": "outgoingCall",
        "chatId": "120363153000000000@g.us",
        "duration": 22,
        "isVideo": false,
        "status": "pickUp",
        "participants": [
            {
                "id": "79111234567@c.us",
                "status": "pickUp"
            },
            {
                "id": "79222234567@c.us",
                "status": "hungUp"
            }
        ]
    },
    {
        "type": "outgoing",
        "idMessage": "F33E8701AGHY4DE04254CBBAE21EC046",
        "timestamp": 1754455763,
        "typeMessage": "outgoingCall",
        "chatId": "79111234567@c.us",
        "duration": 3,
        "isVideo": false,
        "status": "pickUp",
        "participants": [
            {
                "id": "79111234567@c.us",
                "status": "pickUp"
            }
        ]
    },
        {
        "type": "outgoing",
        "idMessage": "F33E8701AGHY4DE04254CBBAE21EC046",
        "timestamp": 1754455763,
        "typeMessage": "outgoingCall",
        "chatId": "79111234567@c.us",
        "duration": 0,
        "isVideo": false,
        "status": "declined",
        "participants": [
            {
                "id": "79111234567@c.us",
                "status": "declined"
            }
        ]
    },
        {
        "type": "outgoing",
        "idMessage": "F33E8701AGHY4DE04254CBBAE21EC046",
        "timestamp": 1754455763,
        "typeMessage": "outgoingCall",
        "chatId": "79111234567@c.us",
        "duration": 0,
        "isVideo": false,
        "status": "invalid",
        "participants": [
            {
                "id": "79111234567@c.us",
                "status": "invalid"
            }
        ]
    }
]

Ошибки LastOutgoingCalls#

Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки

Примеры кода#

import requests

url = "{{apiUrl}}/waInstance{{idInstance}}/lastOutgoingCalls/{{apiTokenInstance}}"

payload = {}
headers= {}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/lastOutgoingCalls/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/lastOutgoingCalls/")
    .append({{apiTokenInstance}});

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, null, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/lastOutgoingCalls/")
    .append({{apiTokenInstance}});

var response = Unirest.get(requestUrl.toString())
    .header("Content-Type", "application/json")
    .asString();

System.out.println(response);
Sub LastOutgoingCalls()
    Dim url As String
    Dim http As Object
    Dim response As String

    ' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
    url = "{{apiUrl}}/waInstance{{idInstance}}/lastOutgoingCalls/{{apiTokenInstance}}"

    Set http = CreateObject("MSXML2.XMLHTTP")

    http.Open "GET", url, False
    http.send

    response = http.responseText

    Debug.Print response

    ' Outputting the answer to the desired cell
    Range("A1").Value = response

    Set http = Nothing
End Sub