API управление файлами домена

Содержит информация по работе с файлами коммуникационного домена через Публичный канал интеграции.

Публичный канал интеграции

Настраивается в Web-интерфейсе администрирования. Тип канала - Публичный. Признак "Разрешить работу с файлами через этот публичный канал" должен быть включен.

API управления

Внешние системы должны обращаться на адрес http(s)://fqdn_ws_role/api/token/v1/{token}/files/{command}

  • fqdn_ws_role - адрес URL роли WS (Веб-сервера управления)

  • {token} - значение локального токена из созданного публичного канала

  • {command} - команда управления (описаны ниже)

Команды управления

Загрузка файлов в домен

upload

http(s)://fqdn_ws_role/api/token/v1/{token}/files/upload Метод - POST Content-Type - multipart/form-data Body - Form [File] = выберите файл В ответе json приходит результат загрузки файла. Успешный ответ содержит "resultcode": 0, "resultmsg": "OK". Пример успешного ответа:

{ "resultcode": 0,
"resultmsg": "OK",
"data":{
"upload":[
{ "name": "205-a10-02.zip",
"res": "ok"
}
]
}
}

Неуспешный ответ содержит код ошибки и ее описание.

Пример неуспешного ответа:

{
"resultcode": 1501,
"resultmsg": "Not enough free disk space"
}

Скачивание файла в браузере.

download

http(s)://fqdn_ws_role/api/token/v1/{token}/files/download?file={filename}

Метод - GET {filename} - имя файла для скачивания

Получение списка файлов.

list

http(s)://fqdn_ws_role/api/token/v1/{token}/files/list

Метод - GET

В ответе json с полным списком файлов следующего вида

{
"resultcode": 0,
"resultmsg": "OK",
"data": { "files": [
{
"file": {
"name": "205-a10-02.zip"
}
},
{
"file": {
"name": "queue_wait_sgk.mp3"
}
}
]
}
}

Удаление файла.

delete

http(s)://fqdn_ws_role/api/token/v1/{token}/files/delete?file={filename}

Метод - GET {filename} - имя файла для удаления

Хранение файла и получение доступа из сценариев Файл хранится в директории fsync домена в поддиректории /data/tokens/.

Пример .../syncfolder/domains/domain.demo.axatell/data/tokens/205-a10-02.zip Для получения доступа к файлу в IVR/SVC сценарии можно через формирования пути к файлу следующего вида:

путь = syn_domain() файл = tokens/205-a10-02.zip

Пример получения файла в Выражениях Сценария:

makepath(syn_domain(),"tokens/002.mp3")

  • 002.mp3- имя файла

  • tokens - константа имени каталога