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

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

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


doc:1cajam:thin

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
doc:1cajam:thin [2011/12/18 08:34]
a.portnov
doc:1cajam:thin [2014/11/14 22:32] (текущий)
Строка 9: Строка 9:
 <code 1c> <code 1c>
         &​НаКлиенте         &​НаКлиенте
- // Процедура должна вызываться лишь один раз при первичной установке компонента,​ либо при обновлении его версии+ // Процедура должна вызываться лишь один раз при первичной установке компонента,​ 
 +        // либо при обновлении его версии
  Процедура УстановитьКомпонент()  Процедура УстановитьКомпонент()
     ​АдресАрхиваКомпонента = "​Обработка.МИКО_ПанельТелефонииДляCRM.Макет.AddInWindows32";​     ​АдресАрхиваКомпонента = "​Обработка.МИКО_ПанельТелефонииДляCRM.Макет.AddInWindows32";​
Строка 21: Строка 22:
  
 в этом случае компонент,​ упакованный в ZIP архив расположен в макете обработки. Далеев режиме 1С предприятия необходимо инициализировать вызов этой процедуры:​ в этом случае компонент,​ упакованный в ZIP архив расположен в макете обработки. Далеев режиме 1С предприятия необходимо инициализировать вызов этой процедуры:​
-{{ :​doc:​1cajam:​uspeshnaja_ustanovka.jpg? |}}+ 
 +{{ :​doc:​1cajam:​ustanovit_komponent.png |}}
  
 В случае успешной установки компонента,​ в каталоге **%APPDATA%\1C\1Cv82\ExtCompT** (для windows 7) будет распакован файл компонента. Рядом с распакованным файлом в файл **registry.xml** будут дописаны сведения об установленном компоненте. Пример registry.xml файла: В случае успешной установки компонента,​ в каталоге **%APPDATA%\1C\1Cv82\ExtCompT** (для windows 7) будет распакован файл компонента. Рядом с распакованным файлом в файл **registry.xml** будут дописаны сведения об установленном компоненте. Пример registry.xml файла:
Строка 100: Строка 102:
  
 ===== Пинг ===== ===== Пинг =====
 +[[doc:​1cajam:​api:​ping|Описание:​Ping]]
 Пример процедуры для проверки соединения с Asterisk: Пример процедуры для проверки соединения с Asterisk:
  
Строка 121: Строка 124:
 ===== Выполнение произвольной команды Asterisk (Command) ===== ===== Выполнение произвольной команды Asterisk (Command) =====
  
-[[doc:1cami:​api:​Command|Описание Command]]+[[doc:1cajam:​api:​Command|Описание Command]] 
  
 <code 1c> <code 1c>
Строка 147: Строка 151:
 </​code>​ </​code>​
  
-===== Заголовок =====+===== Инициализация звонка (Originate) ​===== 
 +[[doc:​1cajam:​api:​Originate|Описание:​Originate]] 
 +Пример процедуры инициализации исходящего вызова:​
  
 <code 1c>​ &​НаКлиенте <code 1c>​ &​НаКлиенте
Строка 154: Строка 160:
   
  Channel = НашКаналФильтр;​ //​ Channel:​ Название канала,​ с которого совершается исходящий вызов ​  Channel = НашКаналФильтр;​ //​ Channel:​ Название канала,​ с которого совершается исходящий вызов ​
- Context = Контекст;​ // Context: Название контекста для совершения исходящего вызова ​+ Context = Контекст;​ //​ Context:​ Название контекста для совершения исходящего вызова ​
  Exten = КомуЗвонимНомер;//​ Exten:​ Extension to use on connect  Exten = КомуЗвонимНомер;//​ Exten:​ Extension to use on connect
- Priority = "​1";​ //​ Priority:​ Priority to use on connect  + Priority = "​1";​ //​ Priority:​ Priority to use on connect  
- Timeout = "";​ // Timeout: Таймаут (в миллисекундах) для соединения с инициатором ​+ Timeout = "";​ // Timeout: Таймаут (в миллисекундах) для соединения с инициатором ​
  CallerID = "​MIKO_Abonent";​ //​ CallerID:​ Значение CallerID, используемое для совершения исходящего вызова.  CallerID = "​MIKO_Abonent";​ //​ CallerID:​ Значение CallerID, используемое для совершения исходящего вызова.
- Variable = "";​ //​ Variable:​ Установка переменных канала (максимум 32).  + Variable = "";​ //​ Variable:​ Установка переменных канала (максимум 32).  
- Account = "​miko";​ // Account: Значение для “Account code” исходящего вызова. + Account = "​miko";​ // Account: Значение для “Account code” исходящего вызова. 
- Application = "";​ //​ Application:​ Команда плана набора + Application = "";​ //​ Application:​ Команда плана набора 
- Data = "";​ // Data : Параметры команды плана набора + Data = "";​ // Data : Параметры команды плана набора 
- Async = "​1";​ // Async: Если указано “true” исходящий вызов будет производиться асинхронно. + Async = "​1";​ // Async: Если указано “true” исходящий вызов будет производиться асинхронно. 
- ActionID = "​114";​ //​ ActionID:​ Не обязательный идентификатор запроса. ​+ ActionID = "​114";​ //​ ActionID:​ Не обязательный идентификатор запроса. ​
   
   
Строка 173: Строка 179:
   
  Попытка  Попытка
- //​Результат=Компонент.originate(Channel,​Context,​Exten,​Priority,​Timeout,​CallerID,​Variable,​Account,​Application,​Data,​Async,​ActionID);​ + Компонент.Originate(Channel,​Context,​Exten,​Priority,​Timeout,​ 
- Результат="";​ + CallerID,​Variable,​Account,​Application,​ 
- Компонент.Originate(Channel,​Context,​Exten,​Priority,​Timeout,​CallerID,​Variable,​Account,​Application,​Data,​Async,​ActionID,​Результат);​+ Data,​Async,​ActionID,​Результат);​
  Исключение  Исключение
  Сообщить("​Исключение при, ошибка"​);​  Сообщить("​Исключение при, ошибка"​);​
Строка 186: Строка 192:
  
  
 +===== Запись разговора (Monitor) =====
 +
 +[[doc:​1cajam:​api:​Monitor|Описание:​Monitor]]
 +
 +<code 1c>​ &​НаКлиенте
 + Процедура Monitor(Команда)
 + Channel = АктивныйКанал1;​
 + File = "";​ //​ File:​ Не обязательный параметр. Имя файла, которое будет ​
 + Format1C = "​wav";​ //​ Format:​ Не обязательный параметр. Формат,​ в котором будет сохранен звуковой файл.
 + Mix = "​1";​ //​ Mix:​ Не обязательный булевой параметр. Определяет,​ миксировать или нет поступающий ​
 + //и исходящий из канала аудиопоток после окончания записи.
 +
 + ActionID = "​115";​ //​ ActionID:​ Необязательный ID команды,​ который будет возвращен в ответе.
 +
 + Если Компонент = Неопределено Тогда
 + Сообщить("​Компонент не подключен"​);​
 + Возврат;​
 + КонецЕсли; ​
 +
 + Попытка
 + //​Результат=Компонент.Monitor(Channel,​File,​Format1C,​Mix,​ActionID);​
 + Результат="";​
 + Компонент.Monitor(Channel,​File,​Format1C,​Mix,​ActionID,​Результат);​
 + Исключение
 + Сообщить("​Исключение при выполнении "​+Команда.Имя+"​ ошибка"​);​
 + КонецПопытки; ​
 +
 + Сообщить("​Результат команды "​+Команда.Имя+"​ "​+Результат);​
 +
 + КонецПроцедуры
 +</​code>​
 +
 +===== Остановка записи разговора (StopMonitor) =====
 +[[doc:​1cajam:​api:​stopmonitor|Команда Asterisk Manager API: StopMonitor]]
 +<code 1c>​ &​НаКлиенте
 + //
 + Процедура StopMonitor(Команда)
 + Channel = АктивныйКанал1;​ //​ Channel:​ Канал, для которого нужно прекратить запись вызова
 + // например:​ SIP/​1310-089e1000 (обязательный параметр)
 +
 + ActionID= "​116";​ //​ ActionID:​ Не обязательный ID команды,​ который будет возвращен в ответе.
 +
 + Если Компонент = Неопределено Тогда
 + Сообщить("​Компонент не подключен"​);​
 + Возврат;​
 + КонецЕсли; ​
 +
 + Попытка
 + Результат="";​
 + Компонент.StopMonitor(Channel,​ActionID,​Результат);​
 + Исключение
 + Сообщить("​Исключение при выполнении "​+Команда.Имя+"​ ошибка:​ "​+ИнформацияОбОшибке());​
 + КонецПопытки; ​
 +
 + Сообщить("​Результат команды "​+Команда.Имя+"​ "​+Результат);​
 +
 + КонецПроцедуры
 +</​code>​
 +
 +
 +===== Донабор номера (PlayDTMF) =====
 +
 +<code 1c>​ &​НаКлиенте
 + Процедура PlayDTMF(Команда)
 + Channel = АктивныйКанал1;​ //​ Channel:​ Имя канала,​ в который нужно отправить ​
 + // DTMF последовательность. (Обязательный параметр)
 +
 + Digit = Строка(СигналDTMF);​ //​ Digit:​ DTMF последовательность,​
 + // которую нужно отправить. (Обязательный параметр)
 +
 + ActionID = "​117";​ //​ ActionID:​ Необязательный ID команды, ​
 + // который будет возвращен в ответе.
 +
 + Если Компонент = Неопределено Тогда
 + Сообщить("​Компонент не подключен"​);​
 + Возврат;​
 + КонецЕсли; ​
 +
 + Попытка
 + Результат="";​
 + Компонент.PlayDTMF(Channel,​Digit,​ActionID,​Результат);  ​
 + Исключение
 + Сообщить("​Исключение при выполнении "​+Элемент.Имя+"​ ошибка:​ "​+ИнформацияОбОшибке());​
 + КонецПопытки; ​
 +
 + Сообщить("​Результат команды "​+Элемент.Имя+"​ "​+Результат);​
 +
 + КонецПроцедуры
 +</​code>​
 +
 +===== Положить трубку (Hangup) =====
 +[[doc:​1cajam:​api:​hangup|Описание:​ Hangup]]
 +
 +
 +<code 1c>​ &​НаКлиенте
 + Процедура Hangup(Команда)
 + Результат="";​
 + Channel = АктивныйКанал1;​ //​ Channel:​ Канал, на котором необходимо закончить вызов.
 + ActionID = "​120";​ //​ ActionID:​ Необязательный ID команды,​ который будет возвращен в ответе.
 +
 + Если Компонент = Неопределено Тогда
 + Сообщить("​Компонент не подключен"​);​
 + Возврат;​
 + КонецЕсли; ​
 +
 + Попытка
 + Компонент.Hangup(Channel,​ActionID,​Результат);​
 + Исключение
 + Сообщить("​Исключение при выполнении "​+Команда.Имя+"​ ошибка:​ "​+ИнформацияОбОшибке());​
 + КонецПопытки; ​
 +
 + Сообщить("​Результат команды "​+Команда.Имя+"​ "​+Результат);​
 +
 + КонецПроцедуры
 +</​code>​
 +
 +===== Без консультативный перевод звонка=====
 +[[doc:​1cajam:​api:​redirect|Описание:​ Redirect]]
 +
 +<code 1c>​ &​НаКлиенте
 + // Инициирование перевода звонка
 + Процедура Redirect(Команда)
 +
 + Channel = АктивныйКанал1;​ //​ Channel: Название канала,​ для которого производиться перевод вызова (обязательный параметр).
 + ExtraChannel= АктивныйКанал2;​ //​ ExtraChannel:​ Название канала второго плеча вызова (второй абонент),​
 + // который тоже участвует при переводе вызова (не обязательный параметр).
 +
 + Exten = НомерКудаПереводимЗвонокRedirect;//​ Exten: Название екстеншена в плане набора,​ куда переводиться вызов
 + Context = Контекст;​ //​ Context: Название контекста в плане набора,​ куда переводиться вызов
 + Priority= "​1";​ //​ Priority: Номер приоритета в плане набора,​ куда переводиться вызов
 + ActionID= "​119";​  ​   //​ ActionID:​ Не обязательный ID команды,​ который будет возвращен в ответе.
 +
 + Если Компонент = Неопределено Тогда
 + Сообщить("​Компонент не подключен"​);​
 + Возврат;​
 + КонецЕсли; ​
 +
 + Попытка
 + Результат="";​
 + Компонент.Redirect(Channel,​ExtraChannel,​Exten,​Context,​Priority,​ActionID,​Результат);​
 + Исключение
 + Сообщить("​Исключение при выполнении "​+Команда.Имя+"​ ошибка:​ "​+ИнформацияОбОшибке());​
 + КонецПопытки; ​
 +
 + Сообщить("​Результат команды "​+Команда.Имя+"​ "​+Результат);​
 +
 + КонецПроцедуры
 +</​code>​
 +
 +===== Перевод консультационный =====
 +[[doc:​1cajam:​api:​atxfer|Описание:​ Atxfer]]
 +<code 1c>​ &​НаКлиенте
 + Процедура Atxfer(Команда)
 +
 + Channel = АктивныйКанал1;​ //  Channel - Название канала,​ для которого производиться перевод вызова ​
 + Context = Контекст;//​ Context - Название контекста в плане набора,​ куда переводиться вызов ​
 + Exten = КудаПереводимЗвонокAtxfer;//​ Exten -Название екстеншена в плане набора,​ куда переводиться вызов ​
 + Priority="​1"; ​  //​ Priority - Номер приоритета в плане набора,​ куда переводиться вызов (обязательный параметр)
 + ActionID="​118";​ //​ ActionID -Не обязательный ID команды,​ который будет возвращен в ответе.
 +
 + Если Компонент = Неопределено Тогда
 + Сообщить("​Компонент не подключен"​);​
 + Возврат;​
 + КонецЕсли; ​
 +
 + Попытка
 + Результат="";​
 + Компонент.Atxfer(Channel,​Context,​Exten,​Priority,​ActionID,​Результат);​
 + Исключение
 + Сообщить("​Исключение при выполнении "​+Элемент.Имя+"​ ошибка:​ "​+ИнформацияОбОшибке());​
 + КонецПопытки; ​
 +
 + Сообщить("​Результат команды "​+Элемент.Имя+"​ "​+Результат);​
 +
 + КонецПроцедуры
 +
 +</​code>​
  
  
doc/1cajam/thin.1324197263.txt.gz · Последние изменения: 2014/11/14 22:32 (внешнее изменение)