Внимание!
Эта wiki об устаревших версиях
Документация к актуальной версии интеграции 1С и телефонии доступна по ссылке

Инструменты пользователя

Инструменты сайта


uniphone:asterisk

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
uniphone:asterisk [2017/10/11 06:27]
mcvet Дополнил описание meetings.create и meetings.invite
uniphone:asterisk [2021/03/29 12:33] (текущий)
mcvet
Строка 17: Строка 17:
   "​status":​string,​   "​status":​string,​
   "​record":​string,​   "​record":​string,​
-  "​line_number":​string+  "​line_number":​string
 +  "​user_data":​object
 }</​code>​ }</​code>​
  
Строка 29: Строка 30:
 | **to**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные вызываемого. ​       | | **to**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные вызываемого. ​       |
 | **status**\\ string ​    | Статус вызова (при наличии) по завершению звонка. Принимает следующие значения:​\\ //ANSWER// - на вызов был ответ;​\\ //BUSY// - получен сигнал "​занято";​\\ //​NOANSWER//​ - на вызов не было ответа;​\\ //CANCEL// - звонящий отменил вызов;​\\ //​CONGESTION//​ - произошла ошибка во время вызова;​\\ //​CHANUNAVAIL//​ - у вызываемого абонента отсутствует регистрация. | | **status**\\ string ​    | Статус вызова (при наличии) по завершению звонка. Принимает следующие значения:​\\ //ANSWER// - на вызов был ответ;​\\ //BUSY// - получен сигнал "​занято";​\\ //​NOANSWER//​ - на вызов не было ответа;​\\ //CANCEL// - звонящий отменил вызов;​\\ //​CONGESTION//​ - произошла ошибка во время вызова;​\\ //​CHANUNAVAIL//​ - у вызываемого абонента отсутствует регистрация. |
-| **record**\\ string ​    ​| ​Содержит ссылку на файл ​записи разговора. | +| **record**\\ string ​    ​| ​Идентификатор ​записи разговора. | 
-| **line_number**\\ string | Номер телефона (при наличии),​ предоставляемого провайдером,​ на который был совершен звонок. |+| **line_number**\\ string| Номер телефона (при наличии),​ предоставляемого провайдером,​ на который был совершен звонок. | 
 +| **user_data**\\ object ​ | Содержит набор пользовательских данных,​ указанных в команде [[uniphone:​asterisk#​request_providerv1cmdcallsdial|calls.dial]]. |
  
 === Caller === === Caller ===
Строка 94: Строка 96:
 | **conversation**\\ //integer// | Продолжительность разговора в секундах (время от начала разговора и до его завершения). Если вызов находился на удержании (hold), то время удержания будет вычтено. | | **conversation**\\ //integer// | Продолжительность разговора в секундах (время от начала разговора и до его завершения). Если вызов находился на удержании (hold), то время удержания будет вычтено. |
 | **duration**\\ //​integer// ​    | Продолжительность вызова в секундах. | | **duration**\\ //​integer// ​    | Продолжительность вызова в секундах. |
-| **record_file**\\ //​string// ​  ​| ​Ссылка ​на файл записи разговора. |+| **record_file**\\ //​string// ​  ​| ​Идентификатор ​записи разговора. |
  
  
Строка 206: Строка 208:
   "​number":"​34",​   "​number":"​34",​
   "​online":​true   "​online":​true
 +}</​code>​
 +
 +
 +==== [subscribe] provider.v1.calls.intercept ====
 +Содержит информацию о вызове ожидающем ответа. Событие формируется при первом появлении информации о вызове и предназначено для перехвата на ответственного сотрудника. Информация об ответственных заполняется результатами выполнения запроса [[uniphone:​crmapi#​request_crmv1cmdwhois|whois]].
 +
 +== JSON формат:​ ==
 +<​code>​{
 +  "​time":​string,​
 +  "​entire_id":​string,​
 +  "​call_id":​string,​
 +  "​state":​string,​
 +  "​from":​object(Caller),​
 +  "​to":​object(Caller),​
 +  "​status":​string,​
 +  "​line_number":​string,​
 +  "​client":​string,​
 +  "​responsible":​array[object(Employee)]
 }</​code>​ }</​code>​
  
Строка 218: Строка 238:
   "​from":​object(Caller),​   "​from":​object(Caller),​
   "​to_number":​string,​   "​to_number":​string,​
-  "​auto_answer":​bool+  "​auto_answer":​bool
 +  "​user_data":​object
 }</​code>​ }</​code>​
  
Строка 225: Строка 246:
 | **from**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные инициатора вызова. Заполняется только поле "​extension"​. | | **from**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные инициатора вызова. Заполняется только поле "​extension"​. |
 | **to_number**\\ string ​ | Номер вызываемого абонента (внутренний или внешний). | | **to_number**\\ string ​ | Номер вызываемого абонента (внутренний или внешний). |
-| **auto_answer**\\ bool  | Если параметр установлен,​ то добавляет в SIP заголовок команду автоподъема трубки. Не все телефоны могут поддерживать данную функцию. |+| **auto_answer**\\ bool  | (Не обязательный) ​Если параметр установлен,​ то добавляет в SIP заголовок команду автоподъема трубки. Не все телефоны могут поддерживать данную функцию. | 
 +| **user_data**\\ object ​ | (Не обязательный) Позволяет передать вместе со звонком набор пользовательских данных. Данные должны быть сформированы как json объект вида ключ-значения. Допускаются только строковые значения ключей. |
  
 == Пример:​ == == Пример:​ ==
Строка 232: Строка 254:
     "​extension":"​SIP/​34"​     "​extension":"​SIP/​34"​
   },   },
-  "​to_number":"​40"​+  "​to_number":"​40"​
 +  "​auto_answer":​true,​ 
 +  "​user_data":​{ 
 +    "​key1":"​value1",​ 
 +    "​key2":"​value2"​ 
 +  }
 }</​code>​ }</​code>​
  
Строка 281: Строка 308:
 == JSON формат:​ == == JSON формат:​ ==
 <​code>​{ <​code>​{
-  "​call_id":​string+  "​call_id":​string
 +  "​whom":​object(Caller)
 }</​code>​ }</​code>​
  
Строка 287: Строка 315:
 ^ Наименование поля ​      ^ Описание ^ ^ Наименование поля ​      ^ Описание ^
 | **call_id**\\ string ​   | Глобальный идентификатор вызова (в формате провайдера). | | **call_id**\\ string ​   | Глобальный идентификатор вызова (в формате провайдера). |
 +| **whom**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | (Не обязательный) Данные абонента,​ со стороны которого нужно завершать вызов. Имеет особое значение при переводе вызова. |
  
 == Пример:​ == == Пример:​ ==
Строка 482: Строка 511:
 | data.**conversation**\\ //integer// | Продолжительность разговора в секундах (время от начала разговора и до его завершения). Если вызов находился на удержании (hold), то время удержания будет вычтено. | | data.**conversation**\\ //integer// | Продолжительность разговора в секундах (время от начала разговора и до его завершения). Если вызов находился на удержании (hold), то время удержания будет вычтено. |
 | data.**duration**\\ //​integer// ​    | Продолжительность вызова в секундах. | | data.**duration**\\ //​integer// ​    | Продолжительность вызова в секундах. |
-| data.**record_file**\\ //​string// ​  ​| ​Ссылка ​на файл записи разговора. |+| data.**record_file**\\ //​string// ​  ​| ​Идентификатор ​записи разговора. |
  
  
Строка 499: Строка 528:
   "​total":​integer,​   "​total":​integer,​
   "​data":​{   "​data":​{
 +    "​name":​string,​
     "​extension":​string,​     "​extension":​string,​
     "​number":​string,​     "​number":​string,​
Строка 510: Строка 540:
 | **no**\\ integer ​       | Номер текущего сообщения отправленного в очередь. Каждое сообщение пронумеровано в интервале 1..[total]. | | **no**\\ integer ​       | Номер текущего сообщения отправленного в очередь. Каждое сообщение пронумеровано в интервале 1..[total]. |
 | **total**\\ //​integer// ​    | Общее количество сообщений с данными активных вызовов,​ которые будут отправлены. | | **total**\\ //​integer// ​    | Общее количество сообщений с данными активных вызовов,​ которые будут отправлены. |
 +| data.**name**\\ string ​     | Имя абонента по данным Caller ID. |
 | data.**extension**\\ string | Идентификатор внутреннего абонента. | | data.**extension**\\ string | Идентификатор внутреннего абонента. |
 | data.**number**\\ string ​   | Добавочный номер абонента. | | data.**number**\\ string ​   | Добавочный номер абонента. |
Строка 597: Строка 628:
 == Параметры:​ == == Параметры:​ ==
 ^ Наименование поля ​      ^ Описание ^ ^ Наименование поля ​      ^ Описание ^
-| **record**\\ string ​   | Cсылка ​на файл записи разговора. |+| **record**\\ string ​   | Идентификатор ​записи разговора. |
 | **listener**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные абонента,​ который будет прослушивать разговор. Заполняется только поле "​extension"​. | | **listener**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные абонента,​ который будет прослушивать разговор. Заполняется только поле "​extension"​. |
  
Строка 618: Строка 649:
 ^ Наименование поля ​      ^ Описание ^ ^ Наименование поля ​      ^ Описание ^
 | **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. | | **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. |
 +
 +
 +==== [request] (устарел) provider.v1.cmd.records.access ====
 +Возвращает набор параметров для доступа к скачиванию записей разговора.
 +
 +== Параметры:​ ==
 +//Не имеет параметров.//​
 +
 +=== Ответ ===
 +
 +== JSON формат:​ ==
 +<​code>​{
 +  "​result":​string,​
 +  "​data":​map[string]string
 +}</​code>​
 +
 +== Параметры:​ ==
 +^ Наименование поля ​      ^ Описание ^
 +| **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. |
 +| **data**\\ map[string]string | Параметры доступа к скачиванию записей разговора. Количество и содержание параметров определяется в файле ///​historyd/​config.json//​ секции "​call_records"​. |
 +
 +
 +==== [request] provider.v1.cmd.records.get ====
 +Возвращает прямую ссылку к записи разговора. Время жизни ссылки может быть ограничено,​ поэтому сохранять прямые ссылки не рекомендуется.
 +
 +== JSON формат:​ ==
 +<​code>​{
 +  "​record":​string
 +}</​code>​
 +
 +== Параметры:​ ==
 +^ Наименование поля ​      ^ Описание ^
 +| **record**\\ string ​   | Идентификатор записи разговора. |
 +
 +== Пример:​ ==
 +<​code>​{
 +  "​record":"/​storage/​usbdisk1/​askoziapbx/​callrecordings/​40/​askozia-1501854278.119_28_40_2017-08-04-17-44-38.gsm"​
 +}</​code>​
 +
 +=== Ответ ===
 +
 +== JSON формат:​ ==
 +<​code>​{
 +  "​result":​string
 +  "​data":​{
 +    "​path":​string
 +  }
 +}</​code>​
 +
 +== Параметры:​ ==
 +^ Наименование поля ​      ^ Описание ^
 +| **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. |
 +| data.**path**\\ string ​ | Прямая ссылка к файлу записи разговора. |
  
  
Строка 627: Строка 711:
   "​organizer":​object(Caller),​   "​organizer":​object(Caller),​
   "​auto_answer":​bool,​   "​auto_answer":​bool,​
-  "​members":​array[object(Caller)]+  "​members":​array[object(F)]
 }</​code>​ }</​code>​
  
Строка 768: Строка 852:
 | **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. | | **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. |
 | data.**room**\\ string ​ | Номер комнаты. Используется для идентификации телеконференции. | | data.**room**\\ string ​ | Номер комнаты. Используется для идентификации телеконференции. |
 +
 +
 +==== [request] provider.v1.cmd.meetings.active ====
 +Возвращает список текущих телеконференций.
 +
 +== Параметры:​ ==
 +//Не имеет параметров.//​
 +
 +=== Ответ ===
 +
 +== JSON формат:​ ==
 +<​code>​{
 +  "​result":​string,​
 +  "​no":​integer,​
 +  "​total":​integer,​
 +  "​data":​{
 +    "​room"​
 +    "​organizer":​object(Caller),​
 +    "​members":​array[object(Caller)]
 +    "​invites":​array[object(Caller)]
 +  }
 +}</​code>​
 +
 +== Параметры:​ ==
 +^ Наименование поля ​      ^ Описание ^
 +| **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. |
 +| **no**\\ integer ​       | Номер текущего сообщения отправленного в очередь. Каждое сообщение пронумеровано в интервале 1..[total]. |
 +| **total**\\ integer ​    | Общее количество сообщений с данными активных телеконференций,​ которые будут отправлены. |
 +| data.**room**\\ string ​ | Номер комнаты. Используется для идентификации телеконференции. |
 +| data.**organizer**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные организатора телеконференции. |
 +| data.**members**\\ [[uniphone:​asterisk#​caller|array[object(Caller)]]] | Список участников телеконференции. |
 +| data.**invites**\\ [[uniphone:​asterisk#​caller|array[object(Caller)]]] | Список участников,​ которым отправлено приглашение. |
  
  
Строка 802: Строка 918:
 ^ Наименование поля ​      ^ Описание ^ ^ Наименование поля ​      ^ Описание ^
 | **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. | | **result**\\ string ​    | Результат выполнения команды. Содержит "​Success"​ в случае успеха и описание ошибки в ином случае. |
-| data.**room**\\ string ​ | Номер комнаты. Используется для идентификации телеконференции. | 
 | data.**organizer**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные организатора телеконференции. | | data.**organizer**\\ [[uniphone:​asterisk#​caller|object(Caller)]] | Данные организатора телеконференции. |
 | data.**members**\\ [[uniphone:​asterisk#​caller|array[object(Caller)]]] | Список участников телеконференции. | | data.**members**\\ [[uniphone:​asterisk#​caller|array[object(Caller)]]] | Список участников телеконференции. |
 | data.**invites**\\ [[uniphone:​asterisk#​caller|array[object(Caller)]]] | Список участников,​ которым отправлено приглашение. | | data.**invites**\\ [[uniphone:​asterisk#​caller|array[object(Caller)]]] | Список участников,​ которым отправлено приглашение. |
  
uniphone/asterisk.1507703254.txt.gz · Последние изменения: 2017/10/11 06:27 — mcvet