ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

AstCallHelper помощник для телефонов

Раздел для разработчиков для обсуждения программных и аппаратных продуктов и их реализации.

Модераторы: april22, Zavr2008

Имеет ли место жить подобная программа в массах:

Да
2
29%
Нет
5
71%
Не понимаю назначение программы
0
Голосов нет
 
Всего голосов : 7

AstCallHelper помощник для телефонов

Сообщение dimana77 » 04 май 2016, 20:02

[Показать] Спойлер: Предисловие или с чего все началось
В нашей крупной организации с обширной внутренней телефонной сетью( >10000 абонентов ) решили больше не расширять железные ЦАТС (3 hipath'a и пару десятков "векторов") а пробовать приобщиться к высоким технологиям. Было решено максимально сэкономить и пробовать разные решение. Я был немного знаком с астериском поэтому начал именно с него и на нем и остались. Состыковали HiPath с астером через 2 потока Е1. Закупили тестово пару телефона и ворох шлюзов IP->FXS. Потихоньку наигрались и начали по чуть чуть вводить именно IP телефонию. Я думаю всем знакома картина разношерстных технологий, у одного классический телефон звонилка по обычной 2х проводку, у другого крутой IP телефон который круче чем СТА на сименсе, у третьих вообще софтфон на компе с наушниками а у некоторых других шлюз и снова обычный 2х проводный телефончик без примочек.
Так вот вроде бы все довольны, все работает но лично как это обычно бывает народ хочет большего. Хотят телефон с экраном чтобы было видно кто звонит и т.д. . В голову закралась мысль поискать программные обвесы для астериска чтобы расширить возможности разношерстных телефонов и привести это к одному единому знаменателю.

[Показать] Спойлер: ТЗ самому себе или какие выявились сложности.
Сложности:
[*]У всех разные ПК с разным железом. Начиная от P4 и заканчивая монстрами на i7.
[*]У всех разные OS, примерно 50\50 windows и linux.
[*]Касательно OS Windows то и версии разные, начиная от XP и заканчивая 10.
[*]Браузеры есть не у всех, да и вообще писать что то для браузера слишком тяжело мне.
[*]Много людей далеких от тонкостей работы и пугающихся настроек и разных кнопочек.


[Показать] Спойлер: Поиски решений
[*]Digium ADA (asterisk desktop assistant). Не заработал на WinXP, нет для Linux, платный. Работает через раз.
[*]OutCall. Работает на WinXP, не работает на Win7, полностью ломает аутлук. Нет на Linux, проект похоже помер.


[Показать] Спойлер: Черновое ТЗ и минимальный функционал:
[*]Программа должна быть кросплатформенной. Тут Java SE, кроме того я постоянно пишу себе мелкие утилитки именно на ней и вспоминать о C++\Qt\C# не хочу.
[*]Должна быть возможность набора номера из этой програмки. Человек набрал номер, у него зазвенел телефон\софтфон, взял трубку и начался вызов целевого абонента чей номер был набран.
[*]Возможность показа номера куда звоню или кто звонит абоненту.
[*]Никаких менюшек, все предельно тупо, все настройки спрятать в текстовый файл для удобства настроек и хранить рядом с бинарником программы.


Итак, прелюдия рассказана, пора что то делать. Т.к. для астериска ничего сложнее диалплана я не видел то было решено почитать как с астериском можно поиграть из вне. Для моих задач подошел AMI и библиотека asterisk-java. Сначала пару дней повникал как и что работает и приступил реализовывать задуманное. На выходе получилась вполне работоспособная софтинка, которая справляется со своими задачами, люди пользующиеся ей довольны.

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

Главные вопросы ради чего все это писалось:
[*]Интересна ли Вам такая программа помощник к телефонам, на самом деле очень хорошо себя зарекомендовала именно со шлюзами к которым подключены самые обычные телефоны.
[*]Если будет заинтересованность то программу планирую расширить. К примеру поддержку SIP Simple Message, call log, поиск имен контактов в бд или ldap и т.д, звонок в 1 клик по номеру с аутлука и т.д.
[*]Так же если будет необходимость расширения функционала то будет переход к модульной системе, все что не нужно лично Вам можно будет отключить чтобы не мешало.
[*]Возможно система плагинов и\или кастомизации аспектов работы программы. Т.е. общий интерфейс к примеру для чата для которого можно вместо Sip Simple использовать XMPP, поменять полностью всплывающее окошко с номером кто звонит например на герб организации и переместить его в другой угол, или расширить тот же информатор звонка плюшками скажем если звонит "Босс" то закрыть все нафиг на компе и моргать большой крассной табличкой что пипец рядом. Реализовать аналог BLF\Xfer в виде окна быстрого набора. Т.е. идея в том что бы дать возможность легко модифицировать что то или расширить. Сразу оговорюсь что это будут яваскрипты.
[*]Готовы ли Вы отблагодарить копейкой меня?
[*]Какой принцип распространения программы был бы приятнее Вам? (Классическая продажа, демо + полная версия, freeware с напоминалкой, бесптлатно и с пожертвованиями).

Скачать и попробовать а возможно и использовать можно с гугл диска https://drive.google.com/file/d/0B7oNw-Nr1ciRNTZzYUhTUEpSVjg/view?usp=sharing. Во вложение почему то не прикрепляется :(
[Показать] Спойлер: содержимое настроек config.properties
#логин ами пользователя
amiUser=ami-login-example
#пароль ами пользователя
amiPassword=ami-password-change-me
# IP или доменное имя сервера астериска
amiServer=sip1.example.corp
# Номер абонента. Используется чтобы отлавливать события звонка и выводить сообщение, а так же как начальный номер для вызова других абонентов
helpToNumber=3309
# Channel . Если абонент астера то строка будет иметь вид sip/ или как у некоторых local/ .
# Так же можно указать транк к примеру у меня работает по Е1 dahdi/g0/.
# Так же работает с чужими транками к примеру у меня есть ip транк корпоративных симкарт. Строка имеет вид sip/мой-сотовый-номер . В такой ситуации получился этакая вариация сall back
helpToNumberChannel=dahdi/g0/
# Контекст из которого будут совершаться звонки. У себя для небольшой безопасности, хоть это и не критично, сделал отдельный контекст
helpToNumberContext=from-internal


Скриншот окна звонилки. Окна информатора о звонке сейчас нет под рукой, если необходимо смогу прикрепить его завтра но там нет ничего особенного.
Изображение

PS: Не забывайте что это самая ранняя версия программы, есть баги и недоработки. Пишите найденные ошибки и свои пожелания тут.
dimana77
 
Сообщений: 8
Зарегистрирован: 06 ноя 2015, 09:07

Re: AstCallHelper помощник для телефонов

Сообщение Samael28 » 04 май 2016, 21:28

Скажем так. Имеет место, но в очень ограниченном варианте. А именно - в Вашем, когда зоопарк. В смысле вы заводите в этом зоопарке еще одного звереныша. Не совсем правильно идеологически (идеологически было бы все правильно привести к единой структуре), но вполне жизнеспособно. Из полезностей - адресная книжка + blf.
Мой профайл на Upwork
Samael28
 
Сообщений: 1057
Зарегистрирован: 08 янв 2011, 19:32
Откуда: Киев

Re: AstCallHelper помощник для телефонов

Сообщение awsswa » 04 май 2016, 21:46

AsteriskPhoneAgent_2.1.11_setup.exe
платный суппорт по мере возможностей
awsswa
 
Сообщений: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: AstCallHelper помощник для телефонов

Сообщение dimana77 » 04 май 2016, 22:12

AsteriskPhoneAgent
Забавно, не натыкался на это решение. Возможно почерпну что-то от них.
PS нашел забавную возможность, можно заставлять некоторые шлюзы,телефоны и софтфоны автоматически отвечать и\или включать громкую связь.

идеологически было бы все правильно привести к единой структуре

Это было бы хорошо но невозможно технически т.к. большая часть АТСок разнесены по области и сцеплены через оптику\вч\тч каналы, все резервирует друг друга и по планам положено именно так при этом этого зверопарка еще и мало. Не так давно древний квант из эксплуатации вывели который был сцеплен с hipath и отчасти резервировал его :D
dimana77
 
Сообщений: 8
Зарегистрирован: 06 ноя 2015, 09:07

Re: AstCallHelper помощник для телефонов

Сообщение virus_net » 05 май 2016, 09:49

Проголосовал "Нет".

dimana77 писал(а):Программа должна быть кросплатформенной.

В каждой OS есть браузер, для каждой платформы есть Chrome и Firefox. И не важно Windows, Linux, FreeBSD, Android, IOS и т.п.
informer.png
browser informer
informer.png (11.55 KIB) Просмотров: 10245

Так же есть XMPP, который так же не обижен кросплатформенностью и благодаря которому можно так же рассылать все что угодно.
А ещё есть Telegram с возможностью создания ботов и соответственно возможностью интеграции с чем угодно.
Смысл пилить что-то свое под каждую из платформ ? Потом отслеживать изменения в OS и пр. Уже есть готовые продукты которые можно использовать для достижения данной цели.
dimana77 писал(а):#логин ами пользователя

ИМХО: Давать прямое подключение к AMI для пользователей ОГРОМНАЯ дыра в безопасности.
(и не надо со мной спорить по данному вопросу, все равно не переубедите, т.к. ЛЮБОЙ взлом всегда начинается хоть с какого-то доступа куда либо)
Рекомендую уходить от такой практики, пока рано или поздно это не окончилось для вас печалью. Все что вы пытаетесь сделать может и будет работать БЕЗ прямого доступа к AMI. Доступ должен быть только у API, т.е. Юзер -> API -> AMI и никак иначе.
dimana77 писал(а):Готовы ли Вы отблагодарить копейкой меня?

Нет.
dimana77 писал(а):Какой принцип распространения программы был бы приятнее Вам?

Никакого. Не стоит плодить дыры.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: AstCallHelper помощник для телефонов

Сообщение ded » 05 май 2016, 11:49

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

2. Забавная возможность, когда можно заставлять некоторые шлюзы,телефоны и софтфоны автоматически отвечать и\или включать громкую связь существует как важная функция Paging & Intercom лет 5-6 уже, позволяя как минимум - убрать коробочки интеркома у директора и секретаря ("Наташа, сделайте нам два кофе..."), и как максимум - обявления по селекторной связи ("Всем начальникам отделов, главному инженеру - прошу зайти в конференц-зал на производственное совещание!")

3. Программные телефоны могут использоваться только в качестве тестов, выигрывая в цене =0, проигрывают в эксплуатации (см. пункт ТЗ самому себе или какие выявились сложности.) Поэтому уже плотно подумываю о разработке хардварного SIP (видео)телефона, скажем на базе Orange Pi, цена которой $16 USD. Корпус будет явно дороже стоить! :) А также блок питания. На хардварном экране можно выводить всё что придумается, логотипы, фото в полный рост, статистические данные, и многое другое.

4. Присоединяюсь к высказанным мыслям коллег Samael28 и virus_net. Используя бритву Оккама точно можно утверждать, что тут не стоит плодить лишние сущности.
ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: AstCallHelper помощник для телефонов

Сообщение dimana77 » 05 май 2016, 13:34

В каждой OS есть браузер, для каждой платформы есть Chrome и Firefox. И не важно Windows, Linux, FreeBSD, Android, IOS

Я писал что на некоторых машинах нет браузера впринципе вообще и не положено ему там быть.
Так же есть XMPP, который так же не обижен кросплатформенностью и благодаря которому можно так же рассылать все что угодно.
Не обижен но завернутого его во что то единое кросплатформенно и без свистопердулек нет, еще как минимум минус всех клиентов жабы то что они слишком сильно перегружены функционалом. У нас к примеру есть свой внутренний чат на основе собственного сервера скайпа но он стоит у единиц и кроме того цена одной лицензии космическая. Встроенного sip simple в астере хватает за глаза чтобы скажем написать сотруднику в соседнем здании предложении пойти покурить или сходить в местный бар после работы. Это просто мелкое но приятное дополнение.
Код: выделить все
А ещё есть Telegram с возможностью создания ботов и соответственно возможностью интеграции с чем угодно.
Смысл пилить что-то свое под каждую из платформ ?
не перевариваю вообще его.
Код: выделить все
Потом отслеживать изменения в OS и пр. Уже есть готовые продукты которые можно использовать для достижения данной цели.
Java чуть больше чем полностью избавляет от этого, все сложности она берет на себя. Никаких затрат на этот счет вообще нет, кроме того конечный бинарник явы уже давно пакуется нативно вместе с рантаймом в минимальной обвязке под все платформы что полностью избавляет от необходимости ставить java на комп пользователя. Так же давно есть вебапы, этакий ярлычек через который прога может работать как в браузере так и локально на компе с постоянным обновление бинарников.

ИМХО: Давать прямое подключение к AMI для пользователей ОГРОМНАЯ дыра в безопасности.
(и не надо со мной спорить по данному вопросу, все равно не переубедите, т.к. ЛЮБОЙ взлом всегда начинается хоть с какого-то доступа куда либо)
Я все же поспорю (нравится дискутировать на правильные темы), проблемы безопасности надо зрить всегда в корне, если диалплан настроен нормально, выставлены только минимально необходимые права для агента и существуют нормальные правила с другой стороны транка, так же в том же астериске никто не запрещает настраивать доступ к агенту с конкретного IP. В такой ситуации даже если и влезут то ничего криминального не сделают. Скажем у нас пул городских номеров заходят потоками Е1, у каждого номера индивидуальный COS со стороны провайдера, у многих доступ только на 6 значные местные номера, у некоторых индивидуально прописан межгород и международная связь, у каждого номера есть ограничение связи поминутно. Выбил лимит минутный будь добр сходить в отдел связи чтобы они позвонили и расширили предел еще на 5 часов.

Рекомендую уходить от такой практики, пока рано или поздно это не окончилось для вас печалью. Все что вы пытаетесь сделать может и будет работать БЕЗ прямого доступа к AMI. Доступ должен быть только у API, т.е. Юзер -> API -> AMI и никак иначе.
Практика показывает что свое API может только усугубить ситуацию и сделать дыру еще больше т.к. вероятность допустить ошибки безопасности в реализации апи намного выше чем обкатанное годами решение, да в нем есть проблемы но все они так или иначе решаются и как минимум явно известны.

Нет. и Никакого. Не стоит плодить дыры.
А можно аргументацию? Мне правда интересно без подколов.

Программные телефоны могут использоваться только в качестве тестов, выигрывая в цене =0, проигрывают в эксплуатации (см. пункт ТЗ самому себе или какие выявились сложности.) Поэтому уже плотно подумываю о разработке хардварного SIP (видео)телефона, скажем на базе Orange Pi, цена которой $16 USD. Корпус будет явно дороже стоить! :) А также блок питания. На хардварном экране можно выводить всё что придумается, логотипы, фото в полный рост, статистические данные, и многое другое.
А вот это интересно, ябы может даже и помог чем-то или потестировал бы такое. Orange Pi не рекомендую, остались очень плохие впечатления после ее тестов, в конечном счете был выбран самый обычный распберри.
dimana77
 
Сообщений: 8
Зарегистрирован: 06 ноя 2015, 09:07

Re: AstCallHelper помощник для телефонов

Сообщение ded » 05 май 2016, 14:32

У нас очень хорошие впечатления после тестов Orange Pi, я прямо сейчас смотрю Full HD через неё. Подсказка: ей надо на чип радиатор наклеивать, ибо греется сильно, от этого тормозит. С радиатором - perfect!
Ну и для конечного продукта - ИП-телефона, по цене нет почти никакой разницы: Raspberry, Banana или Orange Pi.
ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: AstCallHelper помощник для телефонов

Сообщение dimana77 » 05 май 2016, 14:56

В оренже если память не изменяет были проблемы с дровами, либо не смогли найти их или глючило их, не помню уже.
dimana77
 
Сообщений: 8
Зарегистрирован: 06 ноя 2015, 09:07

Re: AstCallHelper помощник для телефонов

Сообщение Samael28 » 05 май 2016, 15:41

Тоже вставлю 5 копеек про Orange. Из 3х ЮСБов на борту завелся только один и это с официальным образом Дебиана.
Мой профайл на Upwork
Samael28
 
Сообщений: 1057
Зарегистрирован: 08 янв 2011, 19:32
Откуда: Киев

След.

Вернуться в Разработка

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH