Но
1. Попытался прикрутить Openfire к Elastix, всё хорошо до момента Phone mappings. В Spark не стартует телефон, а в Phone mappings появляется надпись RegistrationFailed. При том если из веб морды сделать test то он проходит, но в spark регистрация SIP не проходит.
2. Правил XMPP.conf. Пользователь подцепился и висит с статусом, но как отправлять события от этого пользователя не понятно, понятно что нужно внести что то типа
exten => busy,n, jabbersend(asterisk|${called_jid}|Пропущенный звонок от ${caller_num} (${caller_name}) по причине: АБОНЕНТ ЗАНЯТ ${called_num} (${called_name}).)
в dialplan, но куда конкретно?
Или может в меня кто то кинет ссылкой, как это реализовано хоть где-то. Спрашиваю по причине того, что Spark похоже проект мёртвый, а других клиентов которые бы поддерживали в идеале сразу джаббер и сип я не нашёл, точнее нашёл, но не нашёл как реализовать звонок из этого клиента сразу, поэтому хочется хоть получить уведомления о входящих и пропущенных вызовах на клиентские машины, чтобы был лог того что происходило, да и голосовую почту прикрутить в плане уведомлений было бы здорово.
описания макросов в инете навалом, ровно как и решений и внедряются они в extensions, только вот в основной или в кастом? и в какой момент это будет отправляться в джаббер, и каким макросом это обрабатывать?
ПЫСЫ Астериск 11, описания для 1,8, идентичны ли они?
В примерах прекрасно видно как обрабатываются ситуации "абонент занят", "абонент не ответил". Видно,
где для этого есть "место". И на мой взгляд по ссылке полный ответ на ваш вопрос.
И абсолютно не важно, макрос это будет или кусок плана набора.
мне не ясно где отрабатывается диалплан.
Я понимаю что мой вопрос крайне глуп для тех кто это делал десятки раз, но мне бы почитать всё таки процесс реализации чего то подобного от начал и до конца, причём безразлично на каком языке, акромя китайского и японского.
Я просто могу легко объяснить как выглядит ваш ответ
Человек спрашивает почему я не могу изменить список доверенных сайтов и типы и алгоритмы авторизации?
А ему отвечают, основы AD, плюс GP, плюс сценарии отработки.
Да по этому ответу проблему решить можно, но в лучшем случае в течении недели.
Можно немного больше конкретики всё же, для начала понять нужен ли вообще openfire, или более легковесного ejabberd будет достаточно?
как отрабатывает xmpp модуль, где это можно посмотреть, мне в корне не понятна например функция autoregister,что такое в понятии создателей buddy list, это группа в которой находится юзверь джаббера, или это доступные ему группы контактов?
buddy=mogorman@astjab.org ; Manual addition of buddy to list. ; For distributed events, these buddies are ; automatically added in the whitelist as ; 'owners' of the node(s).
Куда мы тут добавляемся, в этот мифический лист, а что это?
следуя банальной логике вот эта опция по умолчанию должна быть включена
;distribute_events=yes ; Whether or not to distribute events using ; this connection. Default is 'no'.
Но она по умолчанию выключена, или что такое события в понятии создателей астериска?
sendtodialplan=yes
Это тоже обязательно для отработки?
ни одной вменяемой статьи я не нашёл по интеграции с джаббером, везде одни грабли по факту, кто то использует sendtodialplan=yes, а кто то не упоминает об этом, хотя следуя логике эта опция должна быть прописана.
Можно немного конкретики господа?
ЗЫ хочется немного конкретики как получить нобелевскую премию - типа смешать вот это, нагреть тут, процедить, обработать лазером.
А вы противные начали - подучи химию пять лет, потом физику еще пару лет, потом побудь лаборантом еще пару лет - потом в помощниках у профессора еще пять лет - а потом непонятно - будет ли результат = нобелевка.
_________________
платный суппорт по мере возможностей
buddy=mogorman@astjab.org означает что данный контакт будет добавлен в контакт-лист пользователя
distribute_events=yes используется в случае если нужно передавать состояния пиров на два и более астериск-сервера.
Ответы на все ваши вопросы можно найти в документации. Мы же здесь пытаемся помочь решить проблемы, а не зачитываем в слух документацию.
https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Configuration_res_xmpp
Для отправки сообщений из ДП используйте функцию https://wiki.asterisk.org/wiki/display/AST/Application_JabberSend
Куда ее поставить должно быть понятно из той ссылки про DIALSTATUS которую я дал раньше.
А вам совет: не ленитесь, изучайте, и не ждите, что вам все разжуют и в рот положат.
Очень помогло в решении, спасибо.
| xelas @ Вт Мар 17, 2015 08:48 писал(а): |
| buddy list -- список контактов. buddy=mogorman@astjab.org означает что данный контакт будет добавлен в контакт-лист пользователя distribute_events=yes используется в случае если нужно передавать состояния пиров на два и более астериск-сервера. Ответы на все ваши вопросы можно найти в документации. Мы же здесь пытаемся помочь решить проблемы, а не зачитываем в слух документацию. https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Configuration_res_xmpp Для отправки сообщений из ДП используйте функцию https://wiki.asterisk.org/wiki/display/AST/Application_JabberSend Куда ее поставить должно быть понятно из той ссылки про DIALSTATUS которую я дал раньше. А вам совет: не ленитесь, изучайте, и не ждите, что вам все разжуют и в рот положат. |
Эту доку видел, вопрос подходит ли описание 13 для 11 версии, потому как насколько я понял, 13 в активной разработке
Почему не работает jabberSend из консоли? Это норма? или просто я чего то не понимаю?
P.S. Есть ли смысл в openfire исходя из опыта, или если исключить прозрачную авторизацию юзверей то смысла в таком решении нет?
Астериск 11 и Астериск 13 -- обычные, нормальные версии. Выражаясь вашим языком, 11-ая версия так же в "активной разработке".
И 11 и 13 версия -- это версии LTS.
Более подробно о версиях тут: http://www.asterisk.org/downloads/asteri ... k-versions и тут https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions
Что касается res_xmpp то в 11 и в 13 ой версии -- они близнецы-братья.
| xelas @ Вт Мар 17, 2015 10:35 писал(а): |
| JabberSend -- это приложение плана набора. А не приложение консоли. Астериск 11 и Астериск 13 -- обычные, нормальные версии. Выражаясь вашим языком, 11-ая версия так же в "активной разработке". И 11 и 13 версия -- это версии LTS. Более подробно о версиях тут: http://www.asterisk.org/downloads/asteri ... k-versions и тут https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions Что касается res_xmpp то в 11 и в 13 ой версии -- они близнецы-братья. |
Всё прочитал, осознал, о пропущенных сделал, буду смотреть входящие, но не суть, но не могу понять про список контактов, у юзверя он шаренный с сервера, зачем его выделять, но тоже не суть
получается 11 и 13 это тестовые версии, как то пропустил данную инфу, а стабильный релиз это 12?
И 11 и 13 - это не ТЕСТОВЫЕ, а "живые", которые постоянно совершенствуются, но и сейчас прекрасно работают.
_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
12 версия -- это стандартный релиз. По ссылке https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions указаны сроки поддержки релизов.
Условно, "тестовыми" можно назвать только релизы -RC(release candidat).
В результате ковыряний всё приходит отлично, только тогда один вопрос, зачем нужен openfire с его плагинами под астериск? Я не понимаю их скрытый смысл?, просто удобно иметь логи входящих исходящих звонков, именно логи, только для статуса получается?, так и статус юзверя можно отправлять. Или это появилось относительно недавно?
Ковыряю Elastix, там файл extensions_additional.conf генерится автоматически на основании extensions_override_elastix.conf, возвращаясь к началу темы, с обычным астериском всё ясно, указал или в extensions_additional.conf дополнительное правило (или в план засунул, в зависимости от того что нужно), если всем не нужно получать уведомления о пропущенных и так далее, и живёш спокойно, ну или группами или не важно как. С Эластиксом же не всё так просто.
Так вот вопрос внутри extensions_additional.conf есть только правила [macro-hangupcall] и [macro-record-enable], где находятся остальные правила на основании которых генерится [ext-local] и так далее?
Может кто пользуется, расскажите плиз.
| xelas @ Пт Мар 20, 2015 13:17 писал(а): |
| Поищите тут http://asteriskforum.ru/viewforum.php?f=12 |
Искал
нашёл http://asteriskforum.ru/viewtopic.php?t=10101 - но тут человек так и не добился чего хотел, а именно добавить свой алгоритм, а после получить выполнение стандартного
и вот http://asteriskforum.ru/viewtopic.php?t=11616 - но тут тупо добавил в кастом, тоже как то не оно.
Вот поэтому и задал вопрос.
Так всё нашёл, не знаю почему у людей не получилось, в копилку опыта
Идём в extensions.conf и видим там
;--------------------------------------------------------------------------------;
; Do NOT edit this file as it is auto-generated by FreePBX. All modifications to ;
; this file must be done via the web gui. There are alternative files to make ;
; custom modifications, details at: http://freepbx.org/configuration_files ;
;--------------------------------------------------------------------------------;
;*******************************************************************************
; AUTO-GENERATED AND CUSOTM USER DIALPLAN INCLUDED HERE *
;*******************************************************************************
то есть у нас есть два варианта
1. в случае использования freepx/elastix пользовать extensions_override_freepbx.conf/extensions_override_elastix.conf
2. пользовать extensions_custom.conf
В обоих случаях extensions.conf открываем и смотрим по какому алгоритму генерируется конфиг из веб морды, если изменений много, то под наименованием этого фрагмента заносим его в extensions_custom.conf и пишем полностью что нам нужно. Если изменения или дополнения не значительны, то под наименованием нужного нам контекста просто добавляем в extensions_custom.conf свои хотелки
Я для тестов чтобы отправлять и иметь лог всех входящих вызовов добавил в контекст from-trunk вот такую строку
exten => _1XXX,1, jabbersend(asterisk,${EXTEN}@asterisk.rueusew, Звонок от ${CALLERID(all)} в ${STRFTIME(${EPOCH},,%H:%M %d-%m-%Y)})
то есть extensions_custom.conf приобрёл ещё одни контекст вида
[from-pstn-custom]
exten => _1XXX,1, jabbersend(asterisk,${EXTEN}@asterisk.rueusew, Звонок от ${CALLERID(all)} в ${STRFTIME(${EPOCH},,%H:%M %d-%m-%Y)})
почему [from-pstn-custom]
потому что
; Context is really just an aliax of from-pstn
;
[from-trunk]
include => from-pstn
;-------------------------------------------------------------------------------
;-------------------------------------------------------------------------------
; from-pstn:
;
; Entry context for calls from the outside world to hit FreePBX
[from-pstn]
include => from-pstn-custom ; create this context in extensions_custom.conf to include customizations
include => ext-did
include => ext-did-post-custom
include => from-did-direct
include => ext-did-catchall ; THIS MUST COME AFTER ext-did
сответственно получилось именно так, как я буду обрабатывать события далее писать не буду, ибо там вопрос что кому нужно, но если у кого есть вопрос по веб мордам и автогенерации конфигов, то наверно это кому то поможет.
P.S. не понял в чём у человека проблема http://asteriskforum.ru/viewtopic.php?t=10101
| Цитата: |
| Сделал временно [ext-fax] в extensions_override_freepbx.conf в котором прописал все как нужно. Но мне это не нравится. А вот как сделать, чтобы подхватился [ext-fax-custom] из extensions_custom.conf, отработал свою часть и потом пошла бы работать процедура, предложенная разработчиками freePBX - не понимаю. Наведите на мысль... Как это сделать правильно? |
там порядок отработки процедуры описан, на примере [from-trunk]
вот очередь для отработки
include => from-pstn-custom ; create this context in extensions_custom.conf to include customizations
include => ext-did
include => ext-did-post-custom
include => from-did-direct
include => ext-did-catchall ; THIS MUST COME AFTER ext-did
то есть контекст -custom это как раз то что можно и нужно добавлять судя по описанию.