Компонента предназначена для работы с AsteriskManager.
В числе прочих методов компоненты (пример использования которых описан во вложении) при активации мониторинга за каналом посредством метода Ready(), при поступлении входящего звонка (ringing) компонента генерирует внешнее событие.
Регистрация компоненты:
C:WindowsMicrosoft.NETFrameworkv2.0.50727
egasm.exe Caius.dll /codebase /tlb: Caius.tlb
pause
Пример использования компоненты:
…
//Для тестирования генерации внешнего события компонентой
//
Процедура ВызватьВнешнееСобытие(Сообщение) Экспорт
//Нужно убедиться, что пользователь авторизован
Если Не ПроверитьАвторизацию() Тогда
Возврат;
КонецЕслИ;
//Вызов внешнего события
Попытка
AsteriskManager.TestExtEvent(Сообщение);
Исключение
Сообщить(ОписаниеОшибки(), СтатусСообщения.Важное);
Сообщить("------------------------------------------------------------------------------------------");
КонецПопытки;
КонецПроцедуры
//Соединение с AMI и авторизация
//
Процедура Connect(Хост, Порт=5038, Пользователь, Пароль, Результат) Экспорт
Попытка
AsteriskManager.Connect(Хост, Порт, Пользователь, Пароль, Результат);
//мАвторизован = Результат;
Исключение
Сообщить("Не удалось соединиться с сервером", СтатусСообщения.Важное);
Сообщить(ОписаниеОшибки());
Сообщить("------------------------------------------------------------------------------------------");
КонецПопытки;
КонецПроцедуры
//Разрыв соединения
//
Процедура Disconnect() Экспорт
Попытка
AsteriskManager.Disconnect();
Исключение
Сообщить("Не удалось завершить сессию", СтатусСообщения.Важное);
Сообщить(ОписаниеОшибки());
Сообщить("------------------------------------------------------------------------------------------");
КонецПопытки;
//мАвторизован = Ложь;
КонецПроцедуры
...
Также для работы компоненты потребуется установленный .NET Framework 3.5
Дополнительная информация по AsteriskManager API:
http://www.voip-info.org/wiki/view/Asterisk+manager+API
я правильно понимаю, после подключения этой компоненты я смогу полностью управлять Asterisk?
выполнять все типы запросов, которые можно осуществлять через Manager API ?
(1) SergDi,
В текущей версии данный метод недоступен для использования вне компоненты.
В следующей версии компоненты планирую добавить публичный метод для обработки любой команды.
(1) SergDi,
Когда ожидать выход новой версии с поддержкой выполнения любой команды?