Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
doc:1cajam:thin [2011/12/18 08:37] a.portnov |
doc:1cajam:thin [2012/10/30 09:04] apor |
||
---|---|---|---|
Строка 22: | Строка 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 файла: | ||
Строка 101: | Строка 102: | ||
===== Пинг ===== | ===== Пинг ===== | ||
+ | [[doc:1cajam:api:ping|Описание:Ping]] | ||
Пример процедуры для проверки соединения с Asterisk: | Пример процедуры для проверки соединения с Asterisk: | ||
Строка 122: | Строка 124: | ||
===== Выполнение произвольной команды Asterisk (Command) ===== | ===== Выполнение произвольной команды Asterisk (Command) ===== | ||
- | [[doc:1cami:api:Command|Описание Command]] | + | [[doc:1cajam:api:Command|Описание Command]] |
<code 1c> | <code 1c> | ||
Строка 148: | Строка 151: | ||
</code> | </code> | ||
- | ===== Заголовок ===== | + | ===== Инициализация звонка (Originate) ===== |
+ | [[doc:1cajam:api:Originate|Описание:Originate]] | ||
+ | Пример процедуры инициализации исходящего вызова: | ||
<code 1c> &НаКлиенте | <code 1c> &НаКлиенте | ||
Строка 187: | Строка 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> | ||