Asterisk átirányítás mellékről

Fórumok

Sziasztok!

Egy olyan kérdés merült fel bennem hogy hogy lehet asterisk alapú rendszeren (asterisk/freepbx/Elastix,stb) melléken átirányítást kezdeményezni.
Gondolok itt arra mint hogy az átkapcsolásnak és az átvételnek is van egy default kódja (pl: "*8") És hogy van e olyan amit ha beütünk, akkor minden a mellékre érkező hívás át lesz rá irányítva, anélkül hogy belenyulnék a route-okba a szerveren, tehát pl *XYZ0630998877 és innentől ha a melléket hívják akkor a 0630998877 fog csörögni. Van ilyenje az asterisk-nek, enged az extension-nek ilyesmit? Sajnos nem nagyon találtam a témában ilyet, illetve mindenhol *72 *73-at találtam, amit egy Linksys telefon felismert, de mint saját opciója és nem az asterisk-é.

Segítségetek előre is köszönöm.

Hozzászólások

1) A telefon is tud átirányítást - ilyenkor Ő fogadja a hívást, és kezdeményez egy újat.
Jól mondod, ez központ független.
2) ha nem akarod, hogy ezt a telefonod csinálja, akkor ne neki mondjad (azaz, kapcsold ki a telefonod konfigjában ezt az opciót, avagy állíts át a központot/készüléket, hogy ne ugyanarra bind-eljenek.

Szia!

Esetleg a followme az megoldás lehet a problémára. A google és a followme valamint az elsatix, asterisk és a freepbx szavak segítenek.

A followme ugyan híváskövetés, de ha az adott mellék DND-ben lakik vagy ha nem veszi fel x mp-ig akkor menni fog a külső telefonszámra a meghatároztott route szerint.

A másik a call redirection amit kereshetsz ez * os kódokkal érhető el. (itt is a google lesz a barátod)

Üdv.:
DK

Telefonközpont, VoIP

Szia!
Köszönöm a hozzászólást.
Viszont ezt alapból tudja minden soft pbx.

Nekem az lett volna a kérdés, hogy magába az asterisk-be van-e erre beépített funkció, amivel ezt a jogosultságot adja az extension-nek.
Tehát az átirányítást a mellék szerkeszti, de nem hajtja végre, hanem a soft pbx.
Akár script-et is írhatok rá (egy numberplan lenne, ami meghív mondjuk egy perl scriptet, ami az SQL-be átírja mondjuk a DIAL mezőben a SIP/XXX-et), az se probléma, csak mégmielött nekiesnék, gyárilag van-e ilyen? :)

Köszönöm Mindenkinek!

Szia!

Perl-el és AGI-val és SQL-el is meg lehet oldani, de van egy apró hibája a dolognak, mégpedig, hogy a CDR-be a teljes szám fog belekerülni az általad megálmodott mellék+telefonszámmal együtt.

De ha nem az előre gyártott free cuccokat nézzük (amikben már meg van írva) és kézzel szeretnéd összerakni, akkor ott van annak a lehetősége, hogy a features.conf-ban csinálsz egy applikációt/makrót a *87-re (vagy bármi másra) és az adott mellékhez tartozó átirányítás telefonszámot beleteszed az Asterisk saját adatbázisába (ami SQLite kicsi és gyorsz), amikor meg tárcsázol, nem nyúlsz külső API-hoz, csak kiolvasod a DB-ben lévő értéket és ha van benne valami akkor arra megy a hívás, ha meg nem van akkor nem arra. :o)

Features.conf:
http://www.voip-info.org/wiki/view/Asterisk+config+features.conf

Asterisk DB:
http://www.voip-info.org/wiki/view/Asterisk+database

Üdv:
DK

Telefonközpont, VoIP

Na a features config eszembe se jutott, tényleg, igazából ezzel meg egy script-tel már nagyon szabadon lehet gondolkodni akár analóg készülékek esetében is (ATA). Köszönöm mindenkinek. Részemről kimerítettük a témát, méghozzá igen hasznosan. :)

Hali!

Végül hogyan sikerült összerakni?

Nekem is features.conf-ot javasoltak:
a

featuremap]
blindxfer => #1 ; Blind transfer (default is #) -- .... the T and/or t option in the Dial()......
;disconnect => *0 ; Disconnect (default is *) -- .....
;automon => *1 ; One Touch Record a.k.a. Touch Monitor -- ........
atxfer => *2 ; Attended transfer -- .... set the T and/or t option in the Dial() ... app call!
;parkcall => #72 ; Park call (one step parking) -- M......
;automixmon => *3 ; One Touch Record a.k.a. Touch MixMonitor -- .........

Az atxfer-t és a blinxfer-t uncommenteltem.

a dialplanom:

[vonalas_bejovo]

exten => s,1,Answer()
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n,Set(TIMEOUT(digit)=1)
exten => s,n,Background(noi1_szurt_2)
exten => s,n,WaitExten(15)
exten => s,n(lbl_vonalas_bejovo_0),Dial(SIP/101,30,tT) <====== berakva a tT opció
exten => s,n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?lbl_vonalas_bejovo_1:)
exten => s,n,GotoIf($["${DIALSTATUS}" = "CONGESTION"]?lbl_vonalas_bejovo_1:)
exten => s,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?lbl_vonalas_bejovo_1:)
exten => s,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?lbl_vonalas_bejovo_1:)
exten => s,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?lbl_vonalas_bejovo_1:)
exten => s,n,GotoIf($["${DIALSTATUS}" = "DONTCALL"]?lbl_vonalas_bejovo_1:)
exten => s,n,GotoIf($["${DIALSTATUS}" = "TORTURE"]?lbl_vonalas_bejovo_1:)
exten => s,n,WaitExten(3600)
exten => s,n,Hangup()
exten => s,n(lbl_vonalas_bejovo_1),Busy(5)
...
...
...
exten => 101,1,Goto(s,lbl_vonalas_bejovo_0)

Itt pedig a hatodik sorban beraktam a hívást eredetileg felvevő mellék dial-jába a tT kapcsolókat.

Ennek ellenére nem mukod...

Mit csinálok rosszul?

BLACi