Page tree
Skip to end of metadata
Go to start of metadata

Оглавление:

setCallBackPrompt - данный метод позволяет получить данные для загрузки файла CallBack prompt.

Точка подключения: https://webapicommon.mtt.ru/index.php

Авторизация: Basic Auth

Метод: POST

Входные параметры

Name

Type

Description

customer_name*

string

Имя Кастомера

file_name

string

(Максимум 255 символов)

Выходные параметры

Name

Type

Description

uploadURL

stringАдрес для загрузки файла (POST)

statusURL

stringАдрес для проверки состояния загрузки (POST)

maxsize

numberМаксимально разрешенный размер файла в байтах

accepted_formats

objectДопустимые расширения файлов и их MIME типы

Для загрузки файла клиент должен отправить содержимое файла посредством POST запроса на сформированный uri для загрузки файла. В теле POST данных необходимо передавать только контент файла и ничего более. В результате будет выдан ответ в виде json объекта c полем status имеющем одно из следующих значений:

  • wait_porta_upload - файл принят и ожидает загрузки;
  • error_maxfilesize - в случае превышения максимального размера файла;
  • error_fileformat - в случае несоответствия формата файла ожидаемому;
  • error_not_found - в случае если запрос на загрузку файла не найден в БД;
  • error_invalid_state - в случае если запрос на загрузку файла находится в состоянии отличном от wait_client_upload;
  • error_internal - в случае, если произошла внутренняя ошибка сервиса.

Для проверки состояния загрузки файла клиент должен отправить GET запрос на сформированный uri для проверки статуса загрузки файла. В результате будет выдан ответ в виде json объекта c полем status имеющем одно из следующих значений:

  • ok - файл загружен;
  • wait_client_upload - ожидается загрузка файлов от клиента;
  • wait_upload - файл принят и ожидает загрузки;
  • error_maxfilesize - при принятии файла от клиента обнаружено превышение максимального размера файла;
  • error_fileformat - при принятии файла от клиента обнаружено несоответствие формата файла ожидаемому;
  • error_upload - загрузка файлапо каким-то причинам оказалась неуспешной;
  • error_timout - истекло время ожидания загрузки файла от клиента.

Пример

JSON
{
    "id": "1",
    "jsonrpc": "2.0",
    "method": "setCallBackPrompt",
    "params":
    {
        "customer_name":"883140500000000",
        "file_name":"sound_1.mp3"
    }
}

Успешный ответ

JSON
{
    "jsonrpc":"2.0",
    "id":"1",
    "result":
    {
        "uploadURL":"https:\/\/fuds1.mtt.ru\/upload\/fd36dc6c32ce0bb33d5084c877b09675",
        "statusURL":"https:\/\/fuds1.mtt.ru\/status\/fd36dc6c32ce0bb33d5084c877b09675",
        "maxsize":1048576,
        "accepted_formats":
        {
            "aif":[
              "audio\/x-aiff",
              "audio\/aiff"
            ],
            ...
        }
    }
}

Не успешный ответ

JSON
{
    "jsonrpc": "2.0",
    "id": "1",
    "error":
    {
        "code": -32002,
        "message": "Permission denied",
        "data": "agent does not have access to this customer"
    }
}

Your Rating:

  • No labels