VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Distributed Device State: SUBSCRIBE между двумя Астерисками

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

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

Pegasus
Сообщения: 20
Зарегистрирован: 30 янв 2013, 18:04

Re: SUBSCRIBE между двумя Астерисками

Сообщение Pegasus »

День добрый всем.

Очень хорошо, что вопрос мною не надуман и люди данным направлением интересуются. Но есть небольшое НО: появляется дополнительная сущность - брокер.
У меня мысль была проще. (Абонент1 зареган на астер1, абонент2 зареган на астер2, между астерами транк.) Абонент1 подписывается на состояние абонента2. Астериск1 видит что у него прописано exten => 222,hint,SIP/222@астериск2 и сам как клиент подписывается на состояние абонента2. При изменениях состояния абонента2 астериск2 рассылает notify, астериск1 в свою очередь рассылает notify всем подписавшимся на абонента2. Получается что-то типа проксирования.
Как мне кажется, проблем быть не должно и реализуется достаточно просто (поэтому и думал что оно уже есть в астере).
Может кто-то что-то подобное встречал???

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

Re: SUBSCRIBE между двумя Астерисками

Сообщение virus_net »

Если бы такое было, то это сразу бы и посоветовали. Но такого нет.

P.S.
Pegasus писал(а):exten => 222,hint,SIP/222@астериск2
1. А если 222 будет и на этом сервере в нужном тебе контексте ? ;)
2. Символ @ в названии ext не стоит использовать, т.к. у парсера Asterisk`а сносит крышу от этого, т.к. в строке появляется две @ ;)
Я, для начала, выбрал такой формат: НОМЕР*DNS_ИМЯ_СЕРВЕРА

Код: Выделить всё

[externalStates]
exten => _XXX*[a-z].,hint,Custom:${EXTEN}
exten => _XXX*[a-z].,1,NoOp(Call to ${CUT(EXTEN,*,1)} on ${CUT(EXTEN,*,2)})
....
Пока работает так, ну а потом посмотрим.
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:

Код: Выделить всё

*CLI> core show hints

    -= Registered Asterisk Dial Plan Hints =-
   345*macs.domain.ru@externalStates      : Custom:345*macs.doma  State:Idle            Watchers  1
....

Код: Выделить всё

  == Extension Changed 345*macs.domain.ru[externalStates] new state InUse for Notify User 6003
   345*macs.domain.ru@externalStates      : Custom:345*macs.doma  State:InUse           Watchers  1

  == Extension Changed 345*macs.gold-telecom.com[externalStates] new state Busy for Notify User 6003
   345*macs.domain.ru@externalStates      : Custom:345*macs.doma  State:Busy            Watchers  1

  == Extension Changed 345*macs.domain.ru[externalStates] new state Idle for Notify User 6003
   345*macs.domain.ru@externalStates      : Custom:345*macs.doma  State:Idle            Watchers  1
мой 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: Distributed Device State: SUBSCRIBE между двумя Астериск

Сообщение virus_net »

ddkprog писал(а):конечно есть
И в какой же версии ? Пруф линк пожалуйста.
мой 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: Distributed Device State: SUBSCRIBE между двумя Астериск

Сообщение virus_net »

virus_net писал(а):ушел кодить
Накодил, работает как часики :) Лампочки моргают, кнопочки нажимаются, красотааааааааа. И никаких тебе тяжелых надстроек из XMPP или второго аккаунта на других серверах.

Ещё раз спасибо switch за идею, а litnimax за размещение поста с этой идеей. Готов проставить вам пива, если вы в МСК :!: ;)
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
Аватара пользователя
litnimax
Сообщения: 111
Зарегистрирован: 01 июн 2011, 22:13

litnimax

Сообщение litnimax »

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

Re: Distributed Device State: SUBSCRIBE между двумя Астериск

Сообщение virus_net »

litnimax писал(а):свое кодить прикольнее
Это так, но дело не только в этом. Зачем мне городить:
Requirements

Python 2.7.
System libs libzmq and libzmq-dev.
Python extension pyZMQ (python-zmq system packages or installed via pip).
Asterisk headers to compile res_zmq_manager (asterisk-dev package or sources).
Asterisk modules res_manager_devicestate.so and res_manager_presencestate.so.
С учетом того что у меня 1.8 и там res_manager_devicestate.so, res_manager_presencestate.so вообще нет.
Да и когда у меня у самого уже есть полностью готовая структура и схема, в которую нужно было просто новую команду добавить и усё.
Да и тем более, что ну не люблю я Python. PHP мне гораздо ближе.
litnimax писал(а):буду мимо пролетать - наберу
You are welcome ;) Пиши как что и когда :)
мой 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: Distributed Device State: SUBSCRIBE между двумя Астериск

Сообщение virus_net »

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

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

Re: Distributed Device State: SUBSCRIBE между двумя Астериск

Сообщение awsswa »

я правильно понял что ØMQ модуль только для asterisk для 12 и 13 версии ?
платный суппорт по мере возможностей
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Distributed Device State: SUBSCRIBE между двумя Астериск

Сообщение virus_net »

awsswa писал(а):я правильно понял что ØMQ модуль только для asterisk для 12 и 13 версии ?
В описании модуля и чуть выше в этом топике приведены Requirements. Соответственно он для той версии где есть необходимое.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH