FAX API
Обработка факса сервисом Аксател
Last updated
Обработка факса сервисом Аксател
Last updated
Внешние системы должны обращаться на адрес http(s)://fqdn_ws_role/api/token/v1/{token}/files/{command}
fqdn_ws_role - адрес URL роли WS (Веб-сервера управления)
{token} - значение локального токена из созданного публичного канала
{command} - команда управления (описаны ниже)
http(s)://fqdn_ws_role/api/token/v1/{token}/files/upload Метод - POST Content-Type - multipart/form-data Body - Form В ответе json приходит результат загрузки файла. Успешный ответ содержит "resultcode": 0, "resultmsg": "OK". Пример успешного ответа:
Неуспешный ответ содержит код ошибки и ее описание.
Пример неуспешного ответа:
http(s)://fqdn_ws_role/api/token/v1/{token}/files/list
Метод - GET
В ответе json с полным списком файлов следующего вида
http(s)://fqdn_ws_role/api/token/v1/{token}/files/download?file={filename}
Метод - GET {filename} - имя файла для скачивания
Пример успешного ответа:
Скачанный файл будет иметь название download и не будет иметь расширения. Чтобы открыть этот файл нужно будет изменить его расширение на указанное в запросе.
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 - константа имени каталога
Результат успешного выполнения:
http(s)://fqdn_ws_role/api/token/v1/{token} Метод - POST Content-Type - application/json
action - действие, которое нужно совершить над списком факсов (sendfax — отправить)
recipient - получатель факса
voiceDocumentSID- <необязательный параметр> — идентификатор предварительно загруженного голосового файла
terminalId - идентификатор телефонного номера, который будет назначен в качестве номера-отправителя
attachment - идентификатор предварительно загруженного файла в формате TIF
sip - ответ провайдера описан в соответствии с стандартом
status - статус отправки факса
error - содержит описание ошибок при отправке факса: "файл не найден", "номер не соответствует маске"
Пример:
Пример успешной отправки:
Допускается отправка сообщения через pop протокол. Для реализации требуется передавать сообщение с темой письма содержащий номер телефона и 1 приложением файла в формате TIF. На сервере предварительно настраивается маска с именем отправителя с которым разрешена отправка сообщения user{mask}@fqdn После отправки приходить ответное сообщение с статусом отправки на обратный e-mail адрес.
Требуется выполнить для первично инициализации
http(s)://fqdn_ws_role/api/token/v1/{token} Метод - POST Content-Type - application/json Body - Text
action - константа
domain - имя текущего домена
drop - true = удалить если ранее было созданы схемы и таблицы, false = не удалять ничего
Пример:
Ответ успешного выполнения:
http(s)://fqdn_ws_role/api/token/v1/{token} Метод - POST Content-Type - application/json
Body:
action - константа
"type- тип incoming | outgoing
from_dt:"2020-12-16 20:00", //время UTC начала списка. Может быть дата или дата-время
till_dt- время UTC окончания списка. Может быть дата или дата-время
fields- список полей, которые выводить, можно указывать через запятую.
* - вывести все поля
id
type
remotenum
start_dt
stop_dt
result
url
Пример запроса:
Пример успешного вывода:
success - успешная обработка failed - ошибка receiving - в процессе приемки dialing - набор номера sending - процесс отправки