Связь Asterisk и 1С, внешняя компонента

Программирование - Внешние компоненты

47
Поддержка ROM-Asterisk прекращена, на 1С: Предприятии 8.3.6 вылетает. Пишем свою.

Столкнувшись с отказом от поддержки ROM-Asterisk, и ее проблемами в работе с 1С:Предприятием 8.3.6.

Для своих задач было решено написать свою компоненту с блек-джеком как минимум.

Компонента написана на C# для .Net 4й фреймворк. Компонента состоит из 2х библиотек Asterisk.NET.dll - для взаимодействия с Asterisk и AddIn.dll - обертка для 1С.

На текущий момент компонента умеет:

  • Подключаться и отключаться от Asterisk, он предварительно должен быть настроен
  • Получать внутри события Dial - Звонок и Hangup - Положить трубку и отправлять их во ВнешнееСобытие 1С, т.е. работает асинхронно и 1С не подвисает.
  • Фильтровать события внутри компоненты с помощью регулярных выражений, чтобы в 1Ску не поступало лишних.
  • Выбирать из сообщений только нужную информацию, с помощью рег. выражений, чтобы потом не обрабатывать в 1Ске
  • При событии Звонок передается "ОпределенныйНомер;Откуда;Куда" могут быть включены добавочные символы разделители, для выборки вида "!ОпределенныйНомер;@Откуда;#Куда"
  • Звонить на внешние и внутренние номера по каналу трубки, т.е. на телефоне пользователя раздается звонок, он снимает трубку и соеденяется с набранным в 1Ске номером.

В архиве компонента, пример для 1С (1С:Предприятие 8.3 (8.3.6.2363) тестировалось), программа для тестировани регулярных выражений, инструкция по установке и описание методов и свойств.

Компонента в любом случае будет развиваться, т.к. необходима для внутреннего пользования, но если она будет интересна, то жду ваших замечаний и предложений. Сейчас самое начало ее развития, поэтому критику прошу конструктивную, т.к. пока она под локальные задачи, но есть желание ее развивать и сделать более универсальной.

-----------------------------------------------

12.09.2018 

Дошли руки немного обновить компоненту

Новая версия. Изменения:

- Компонента состоящая из двух библиотек обьеденина   в одну. Т.е. теперь это одна dll, для подключения к 1С. Так же она подписана для уникальности имен. Что должно избавить от проблемы регистрации в системе. Теперь она регистрируется одним файлом. Проверено на Win 10 проблем с регистрацией не возникло. В связи с обьедниенением изменено имя, теперь AsteriskOne. Но внутри именование оставлено прежним, чтобы не переделывать код подключения в 1С.

- В предыдущей версии, когда Asterisk получал много сообщений, они могли теряться, т.к. глубина буфера для них не регулировалось. В связи с этим были добавлены методы

GetEventBufferDepth(); - Позволяет получить текущую глубину буфера для сообщений Asterisk

SetEventBufferDepth(int bufferdepth); - Позволяет установить текущую глубину буфера для сообщений Asterisk

CleanBuffer(); - Очистить буфер

Подбирать размер буфера нужно экспериментальным путем, т.к. это зависит от загрузки Asterisk.

 - Добавлена возможность отправлять строковые AMI команды напрямую в Asterisk, затем обрабатывать ответы от него.

Т.к. структура данной компоненты уже несколько другая, добавляю ее как отдельную,  чтобы сохранить возможность скачивания старой.

----------------------------------------------

01.03.2016

Новая версия. Изменения:

- Добавлена обработка события CDR, это событие которое выдает сообщение по окончению звонка с информацией о нем, длина, время снятия трубки и другое, далее будет попытка получить файл с записью или путь к нему, после записи звонка. Для того, чтобы событие работало в Астериске должны быть права на чтение CDR и включено отправление CDR в Manager т.е. передача через AMI

- Теперь обработку регулярными выражениями не нужно влючать дополнительно, если строка выражения заполнена оно накладывается если нет то нет.

-Добавлены текстовые комментарии на руском для событий кроме не обрабатываемых (Unhandled), включаются свойством Enabletextlabel, является вытесняющим при формировании сообщения.

- Добавлен обработчик всех событий Астериска, т.е. я например могу не знать всех событий которые нужно отловить и передать в 1С, тогда можно использовать это событие, при включении туда "валится" все, что сообщает сервер, можно фильровать по рег. выражению, как сообщения в событии, так и выбирать выдачу в  1С. Но пока строка фильтра только одна, в ближайших версиях попробую сделать список, чтобы получать от туда не одно событие по фильтру, а выборку по списку, а остальное игнорировать.

Другие мелкие изменения. Более подробно "новости" интерфейса описаны в инструкции.

47

Скачать файлы

Наименование Файл Версия Размер
Связь Asterisk и 1С, внешняя компонента (новая, объединенная):
.zip 388,38Kb
12.09.18
8
.zip 120918 388,38Kb 8 Скачать
Asterisk
.zip 390,70Kb
18.01.18
200
.zip 010316 390,70Kb 200 Скачать

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. siddy 342 29.01.16 00:47 Сейчас в теме
Добрый день!
Из хотелок:
1. Запись разговора - получение файла записи в 1С
2. Конференция
3. Подключение к разговору - т.н. "прослушка" разговора онлайн

Реально?
7. BigTaur 63 29.01.16 14:54 Сейчас в теме
(1) siddy, Посмотрим как писал развитие в планах
(5) Жолтокнижниг, 1. Не пробовал, спасибо, интересно будет посмотреть.
2. Да это Com, с волшебным NativeAPI и как его связать с .Net C# сейчас разбираюсь.
8. Жолтокнижниг 245 29.01.16 16:44 Сейчас в теме
(7) Есть мнение, что никак. C# только COM.
13. BigTaur 63 04.02.16 10:33 Сейчас в теме
(8) Жолтокнижниг, буду пробовать обертку на C++ и другие варианты.
2. Torin 198 29.01.16 09:01 Сейчас в теме
"... ее проблемами в работе с 1С:Предприятием 3.6..." это чего за платформа?
3. wbazil 122 29.01.16 09:27 Сейчас в теме
4. Infactum 265 29.01.16 09:50 Сейчас в теме
Вот кто бы OpenSource версию опубликовал, да на C++ - цены бы не было..
chizh.84; sashocq; Romankhv7; baracuda; +4 Ответить
6. Жолтокнижниг 245 29.01.16 11:29 Сейчас в теме
(4) Infactum, Могу выложить свою реализацию, но в плюсах я не большой специалист
5. Жолтокнижниг 245 29.01.16 11:22 Сейчас в теме
(0) http://infostart.ru/public/236223/ не? не пробовали? И я так понимаю это COM-компонента?
9. ManyakRus 273 29.01.16 18:51 Сейчас в теме
а оно будет работать в 1С 7.7 ?
65. ironn 3 05.02.18 19:12 Сейчас в теме
Данная компонента может работать с 1С 7.7 ?
66. BigTaur 63 06.02.18 11:52 Сейчас в теме
(65) В 7.7 не проверялась. Но т.к. это com-компонента, а 7.7 умеет подключаться по com. То по идее должно работать.
10. gubanoff 44 01.02.16 11:46 Сейчас в теме
В компоненте ROM-Asterisk используем следующее:
- получение данных от компоненты по событиям Dial, Bridge, Hangup, Varset (для записи разговоров), Status;
- фильтры входящих событий по регулярным выражениям;
- выполнение произвольной команды в астериске.

Тут все это доступно? С удовольствием бы перешел на вашу компоненту, если это есть.
15. BigTaur 63 04.02.16 10:43 Сейчас в теме
(10) gubanoff, Пока нет. Но есть планы на развитие. Что есть сейчас.
- получение данных от компоненты по событиям Dial, Hangup
- фильтры входящих событий по регулярным выражениям;
- отбор в сообщении для 1С по рег. выражению, чтобы не обрабатывать сообщение в 1С.
11. xorg_c 02.02.16 12:33 Сейчас в теме
Библиотеки AddIn.dll и Asterisk.NET.dll 32-х или 64-х разрядные? После успешной регистрации в ОС 64-х Windows 8.1 не удается подключить компоненту в обработке "ТестКомпоненты". Регил под правами админа, в 1С зашел тоже под правами админа. Что я делаю не так?
12. Upiterus 03.02.16 20:52 Сейчас в теме
14. BigTaur 63 04.02.16 10:41 Сейчас в теме
(11) xorg_c, Библиотеки собраны под любой процессор. Если честно, то на 32х я не пробовал еще. Для x64 проверялось на Win7 и Win10. Возможно там в файлах регистрации есть недочет. Совместно к ключу /tlb нужно добавить /codebase
Например
regasm.exe "C:\Asterisk\AddIn.dll" /tlb /codebase
16. xorg_c 04.02.16 10:47 Сейчас в теме
BigTaur, пробовал, при добавлении в Components пишет: "Один или несколько файлов не содержат ни компонентов, ни библиотек типов. Установить их нельзя." Так же пробовал через обертку уже зарегистрированных компонентов. Они добавились , но при обращении к ним через "ПодключитьВнешнююКомпоненту(IDComp)" выдает "ложь". Собери пжаста для 64-х серва
17. BigTaur 63 04.02.16 11:43 Сейчас в теме
(16) xorg_c, Какая точно операционка, напиши, я посмотрю.
18. maxpiter 142 07.02.16 18:21 Сейчас в теме
Добрый день.
А набор доп номера/ов у вас реализован?
К примеру звоним 123-45-67 потом пауза и 0, пауза и 2
20. alexander.nesterenko 03.03.16 11:45 Сейчас в теме
Добрый день.
С какой версией Астериска у вас работает компонента?
У меня при подключении выдает ошибку:

Данные: Asterisk.NET.Manager.ManagerException: Unknown Asterisk version 1.8.27
at Asterisk.NET.Manager.ManagerConnection.determineVersion()
at Asterisk.NET.Manager.ManagerConnection.login(Int32 timeout)
at AddIn.SkaAsterisk.Connect(String Asterisk_Host, Int32 Asterisk_Port, String Asterisk_Login, String Asterisk_Loginpwd, Boolean DialEvent, Boolean HangupEvent)
21. BigTaur 63 03.03.16 15:40 Сейчас в теме
(20) alexander.nesterenko,
Выложил версию с исправлением данной ошибки, при проверке версии Asterisk'а. Попробуйте, если не трудно напишите заработало или нет, т.к. у меня не ваша версия.
22. alexander.nesterenko 09.03.16 12:28 Сейчас в теме
(21)
Обработка заработала, спасибо! Удалось подключиться к Asterisk. В тестовой обработке при нажатии на кнопку |Событие|, идет вызов метода asEv() (в описании метода указано" Тестовое, не исп"). В результате компонента оповещает внешним событием форму обработки, и выводит одно из последних событий.

Вопрос: как сделать так, чтобы компонента оповещала форму о событиях по мере их поступление? вызывать asEv() по в обработчике ожидания? Тогда с каким интервалом, чтобы гарантировано не пропустить ничего?

Вроде, в тестовой обработки, все что нужно для этого - сделано:
Компонента.EnableCDREvent();
Компонента.EnableTextLabel = Истина;
Компонента.EnableUnhandledEvent();
что делать дальше?
23. BigTaur 63 11.03.16 11:41 Сейчас в теме
(22) alexander.nesterenko,

Если работает тестовое asEv(), и событие приходит в 1С значит компонента работает.
Для того чтобы приходило оповещение о CDR (Компонента.EnableCDREvent()), должен быть соответствующим образом настроен Астериск, чтобы он отправлял CDR в Manager (например у меня по умолчанию не было), как это сделать должен знать спец. по Астериску, либо искать в Интернете. Лучше сначала попробовать на событии Dial например, оповещение должно приходить по звонку.
24. alexander.nesterenko 15.03.16 13:32 Сейчас в теме
(23)
До этого использовали ROM_Asterisk.dll
Сервер Asterisk соответственно - настроен.
После вызова метода РежимПрослушивания(1) старой компоненты(ROM_Asterisk), внешние события сыпались автоматом.
Здесь же,этого не происходит.
В чем еще может быть причина?
26. BigTaur 63 16.03.16 16:28 Сейчас в теме
(24) alexander.nesterenko, К сожалению не знаю как работает ROM_Asterisk.dll и учитывая, что ее поддержка прекращена вероятно не узнаю именно поэтому пришлось заниматься собственной разработкой на основе различных решений.
Как уже писал для получения CDR через мою компоненту, необходима настройка Asterisk.

Для теста попробуйте убрать CDR и получить хотя-бы звонок

Компонента.EnableDialEvent();
Или инициализировать событие звонок при коннекте
Компонента.Connect("",,"","",Истина,Ложь);

Событие должно поступать в обработчик 1С, он должен быть прописан в свойствах формы как ВнешнееСобытие

&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные)

Сообщить("Источник: " + Источник);
Сообщить("Событие: " + Событие);
Сообщить("Данные: " + Данные);

КонецПроцедуры

Строки фильтрации должны быть пусты. Звонок фикс. стандартно и должно работать. Если нет, смотреть права пользователя который подключается на Asterisk`e
30. feoddor 18.03.16 10:05 Сейчас в теме
(26) пишу от имени alexander.nesterenko (именно я занимаюсь разработкой).

Убрал CDR, оставил только EnableDialEvent(). Результата - нет. Внешние события не приходят.
Звонить пробовал, звонок - проходит. при этом внешних событий, по прежнему нет.
Куда теперь копать?
Спасибо.
25. Julz 16.03.16 09:42 Сейчас в теме
Здравствуйте!

У меня обработка ТЕСТ видит только события звонок и положить трубку, так же было замечено, что если через Connect передать два последних параметра ложь и ложь, то потом никакими процедурами подключить прослушивание звонков нельзя. Вопрос: почему в процедуре Connect нет для CDR параметра? Можно ли добавить? Получается, что все события EnableEvent не включают прослушивание, а включается оно только Connect.
27. BigTaur 63 16.03.16 16:34 Сейчас в теме
(25) Julz, Странно, специально сделал проверку вкл., откл событий все события включаются и отключаются с помощью методов Enable[EventName]Event компоненты. Включение производил после коннекта к Астериску.
Попробуйте получить последнее исключение после включения, Компонента.LastExceptionMessage, может, ошибки внутри компоненты возникают.

Вопрос: почему в процедуре Connect нет для CDR параметра?
Потому, что так сделал на начальном этапе, но когда начало расти решил отказаться и все сделать методами вкл. откл., чтобы поток сообщений можно было регулировать.
28. BigTaur 63 16.03.16 16:40 Сейчас в теме
Так же в ходе тестирования обнаружил, что когда событий одновременно много, то часть из них "теряется", вероятно 1Ска не успевает их обрабатывать, либо они как-то одновременно приходят, этот момент сейчас изучается.

Еще планирую убрать вывод с символьными метками, т.к. они могут пересекаться с символами рег. выражений и на мой взгляд это лишнее.
Вместо этого будет добавлен "Дикий вывод", т.е. на вход к фильтрации или без нее будет подаваться строка со всеми данными из Asterisk, т.к. можно настраивать параметры различные (в частности CDR), которые предугадать и описать не возможно.
32. Paltash 13.04.16 17:12 Сейчас в теме
(28)
Приветствую!
Присоединяюсь к 30 и 31.
Плюс ещё вопрос: Почему компонента постоянно перелогинивается?

ПыСы Компонента.asEv() - отрабатывает норм.
А вот при приходе звонка - ничего не проявляется.
29. Julz 17.03.16 18:05 Сейчас в теме
Пишу процедуру Соединить в форме тестовой обработки:
...................
Результат = Компонента.Connect("_____,_____,______,________,ложь,ложь);
сообщить(Компонента.EnableDialEvent());
Сообщить(Компонента.LastExceptionMessage);
....................

Вывод на экран два сообщения:
Да
//пустое сообщение

Кнопка Событие выводит в строке Данные пустую строку

Пишу в процедуре вместо тех трех строк:
.....................
Результат = Компонента.Connect("_____,_____,______,________,истина,ложь);
..................
Кнопка Событие возвращает в строке Данные информацию о звонке.

Тестировала кучу раз. Не получается. Вывод: я не могу пользоваться CDR
31. alexander.nesterenko 30.03.16 11:04 Сейчас в теме
Уважаемый BigTaur.
Ответьте пож. на вопрос feoddor.
Спасибо
33. alexander.nesterenko 19.04.16 18:12 Сейчас в теме
Я так понимаю, что автор "пропал". Печально очень.
34. BigTaur 63 20.04.16 10:47 Сейчас в теме
:) Нет, "не пропал", но сыграли аврал на работе и пока времени не хватает.
У кого не возникают события, выложите если можно права подключающегося пользователя из Астериск, версию Астериск.
Так же было бы интересно возникают-ли события при подключению к Астериск через Телнет под данным пользователем.
Я постараюсь в ближайшее время выложить программку которая получает данные с компоненты без 1С, но нужно время, чтобы от туда лишнее убрать.
35. Raspik 27.04.16 09:02 Сейчас в теме
Добрый день, все работает хорошо, но я с толкнулся с проблемой мне нужно сделать подключение через сервер но подключитьвнешнююкомпаненту не работает в серверном режиме, новый comобъект ругается что AddIn.SkaAsterisk не зареган Connector= Новый COMОбъект("AddIn.SkaAsterisk");по причине:-2147221164(0x80040154): Class not registered, но я его зарегистрировал кто нибудь на сервер не переводи??( windows server 2003)
36. feoddor 11.05.16 12:34 Сейчас в теме
Версия Asterisk: 5.211.65-12
Права пользователя- ALL (точнее все галки, кроме ALL)
37. Masich 20.05.16 21:44 Сейчас в теме
Я правильно понял, что компонента работает с Астериском по AMI?

В таком случае пакеты на приеме могут теряться по причине малого размера буфера очереди событий.
Обратите внимание на

HRESULT SetEventBufferDepth(long lDepth)

38. kuzz 09.07.16 14:46 Сейчас в теме
Добрый день! Под Win7 платформа 8.3.8 все запустилось и работает отлично. Под Win8 получаю ошибку "Не удалось загрузить компоненту", Microsoft.NET установлен, компонента в системе зарегистрирована. Что я сделал не так?
39. kitun 28.07.16 08:07 Сейчас в теме
Добрый день, судя по bat-ку нужен именно
NET Framework v 4.0.30319 ?
40. TeMochkiN 27.08.16 15:46 Сейчас в теме
на гитхабе не хотите выложить?
41. ArchLord42 61 21.09.16 10:00 Сейчас в теме
(40) TeMochkiN, могу выложить свою, на Native API публиковать тут не хочу, ибо не очень написано как по мне, но с нашей задачей в организации справляется)
42. Джуниор 60 05.10.16 12:34 Сейчас в теме
Будет ли работать эта компонента по протоколу SCCP? Еще вопрос: при отправке команды звонка, соединение сразу проходит или нужно снимать трубку?
43. ba2000 13 01.11.16 16:53 Сейчас в теме
проконсультируйте плиз. слушать астериск получается, а звонки выполнять нет.
выдает ошибку

ManagerError {DateReceived:16:51:05; Message:Invalid channel; Response:Error}

номера телефонов в тесте компоненты указываю внутренние двухзначные.
44. Valery19071988 24.11.16 14:48 Сейчас в теме
Скачали обратку и прилагающиеся файлы. Windows10,64 разрядная. Зарегистрировали dll-ки, сгенерился файл AddIn.tlb. При запуске прилагающейся обработки 1С при попытке подключить компоненту вот в этом фрагменте:

Если Не ПодключитьВнешнююКомпоненту("AddIn.SkaAsterisk") Тогда
Предупреждение("Не удалось загрузить компоненту");
Возврат Ложь;
КонецЕсли;

Вылезает сообщение "Не удалось загрузить компоненту". AddIn.SkaAsterisk в реестре зарегестрирован. В чем дело может быть?
45. Valery19071988 25.11.16 14:38 Сейчас в теме
Разобралась, напишу, вдруг кому пригодится.
Компонента AddIn.dll в архиве сабжа - неподписанная. У нее нет строгого имени. Поэтому у нас она не регилась bat-ом из архива же.
Делаем вот что: скачиваем Visual Studio Community. Там есть инструмент - командная строка разработчика. В этой командной строке выполняем последовательность команд, описанную здесь : http://itw66.ru/blog/c_sharp/502.html
Далее меняем батник, как сказал сам автор темы - добавляем параметр codebase. Теперь он выглядит так:
@ECHO OFF
REM The following directory is for .NET 4.0
set DOTNETFX4=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319
set PATH=%PATH%;%DOTNETFX4%
echo ---------------------------------------------------
regasm.exe "AddIn.dll" /tlb /codebase
echo ---------------------------------------------------

ну и запускаем его из под командной строки. В моем случае - все зарегилось и 1с компоненту увидела. но почему-то не может к ней подключиться. копаю дальше. квест однако.

46. Serginio 736 25.11.16 15:56 Сейчас в теме
Откуда запускаешь, С клиента 32,64 разрядного, С сервера?
Регистрировать нужно в 2х ветках. Вот пример моего. Запускается из каталога с регистрируемой DLL

@echo off
setlocal
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe "%~dp0NetObjetToIDispatch45.dll" /codebase

%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe "%~dp0NetObjetToIDispatch45.dll" /codebase

NetObjetToIDispatch45.dll замени на свою DLL

И запускай от админа
47. kuzz 15.12.16 07:58 Сейчас в теме
(46) Добрый день! Не помогает ни Ваш совет, ни рекомендации из поста (45). Под Win7 компонента прекрасно работает, нет никаких нареканий. Попытки запустить под Win10 продолжаются уже несколько месяцев.

Изначально 1С не видела компоненту. Но после подписи сборок (пост 45) компонента обнаружилась 1С'кой. Однако работать не хочет. Ошибка:

Текст ошибки


Подскажите кто-нибудь как добиться работы под Win10?
48. Serginio 736 15.12.16 10:20 Сейчас в теме
49. kuzz 15.12.16 10:41 Сейчас в теме
(48) Списывались... К сожалению он прекратил работу над этим проектом(
50. Serginio 736 15.12.16 11:40 Сейчас в теме
Надо смотреть зависимости. Возможно не все сборки подписаны либо прав не хватает на папку.
Часто если из архива нужно флаг только для чтения или чего там убрать. Посмотри
52. kuzz 15.12.16 13:21 Сейчас в теме
(50) Проверил. По Вашему совету. Блокировок не обнаружил. Флаг "Только чтение" снял. Все заново проделал: отменил регистрацию, заново подписал, зарегистрировал. Ошибка та же. Видимо все-таки компоненты как-то не так подписываются. Хотя по инструкции (45) выдает успешно подписаны и регистрация проходит успешно.
51. Serginio 736 15.12.16 11:44 Сейчас в теме
53. kuzz 15.12.16 13:22 Сейчас в теме
(51) А нельзя в Win10 изменить политики безопасности? Чтобы отключать строгую подпись компонент?
56. kuzz 16.12.16 05:37 Сейчас в теме
(54)(55) Включил логирование по по советам из ссылки. Ситуация такая: библиотека AddIn.dll из этого проекта подключается успешно. А вот именно Asterisk.NET.dll не может подключить по причине отсутствия строго имени - подписать ее корректно не имея исходников не получается. Дальнейшее гугление и ответы из стаковерфлоу говорят о том, что нужно связываться с разработчиком,получать исходники и подписывать ее у себя. Если я все правильно понял. Сейчас еще раз пытаюсь связаться с разработчиком. Если побежу проблему отпишусь.

Всем спасибо за попытку помочь!
55. Serginio 736 15.12.16 15:58 Сейчас в теме
На всякий случай обнови .Net Framework https://www.microsoft.com/ru-ru/download/details.aspx?id=49981
Хотя сейчас 4.6.2
58. Serginio 736 16.12.16 10:53 Сейчас в теме
59. kraspila 19 22.12.16 14:25 Сейчас в теме
Поддерживается ли платформа 1С:Предприятие 8.3 (8.3.8.2027)?
60. kuzz 23.12.16 08:44 Сейчас в теме
(59) Ограничений по платформе нет. Есть проблема с подключением компоненты по Win10. Под Win7 все работает на последней версии платформы
63. Fatalist08 25.01.17 12:50 Сейчас в теме
Подскажите а как установить фильтр по телефону? Ну что бы выплывали не все события звонков а только для нужного аппарата?
64. pantech 19.07.17 21:06 Сейчас в теме
На windows server 2016 и платформе 1С 8.3.10 работать будет?
67. azubar 34 12.03.18 22:54 Сейчас в теме
ROM-Asterisk изначально была ущербна так как в нее как из ведра лилась вся инфа с Asteriskа. Но раз уж на то пошло то на гитхабе есть ее форк который нормально работает с 8.3.6 и выше (тестировалась на windows server 2016 / 1С 8.3.10 и 1С 8.3.11):
https://github.com/shachneff/BROM-Asterisk-Native

Но ИМХО сейчас смысла развивать ее нет, так как есть RESTfull Interface (ARI) и достаточно 1С научить работать с WebSocket, чтоб избавится от всего (ну или хоть от части) геморроя который разработчики получали вместе с ROM-Asterisk.
Да, и такую компоненту сделал именно создатель ROM-Asterisk, и продает ее за деньги ROM-WebSocket: https://simplit.com.ua/blog/?p=1018
AllexSoft; gubanoff; +2 Ответить
68. user1001492 26.06.18 10:51 Сейчас в теме
Коллеги!
Хоть кому-нибудь удалось получить автоматически событие при входящем звонке? Если "да", то как?
70. ManyakRus 273 26.06.18 12:43 Сейчас в теме
(68) я сделал на 1С 7.7
при поднятии трубки в 1С у оператора ставится статус "Разговариваю по телефону", потом статус "Свободен"
а также автоматически создаётся, заполняется и открывается документ "Обращение" :)
как не помню уже, уже нету 7.7
69. user1001492 26.06.18 10:53 Сейчас в теме
71. user1001492 26.06.18 14:41 Сейчас в теме
Я никак не могу получить событие "поднятие трубки" (или, если я правильно понимаю "Bridge Link") События "Звонок" и "Положили трубку" приходят исправно.
72. Sergey___ 61 24.09.18 12:10 Сейчас в теме
Добрый день. Я так понимаю что у кого то приходят внешние события при звонке, а у кого нет. Кто нибудь знает причину?
73. Sergey___ 61 24.09.18 16:56 Сейчас в теме
Нашел проблему почему не было внешних событий в 1С от данной компаненты. dll надо регистрировать с ключем /tlb, а не с /codebase.
74. DTS2014 25.09.18 13:44 Сейчас в теме
Может кто-нибудь прислать библиотеку на Dobryak2010@ngs.ru
Оставьте свое сообщение