Asterisk extension mint trunk

Fórumok

Asteriskben (trixbox-freepbx) meg lehet csinálni, hogy egy extension trunk -ként viselkedjen?
Van egy GSM adapterünk, ott figyel extension-ként, befele jövet van is rajta autoforward, át is dob az IVR-re frankón, még a hívószám is átjön.
Kifele úgy tudok most telefonálni hogy felhívom a mellékét, akkor ad egy tárcsahangot, aztán tárcsázhatok kifelé, megy is.
Ennél egy fokkal jobb volna ha trunk-ként tudna üzemelni ... :)

Hozzászólások

Ha extension, akkor sip vagy iax2 vagy zap vagy custom. Melyik is?

De! A trunk van a pbx kulso oldalan, az extension a belso oldalan. A ketto kozott mennek a kapcsolasok. Gyanitom, hogy egyszerre nem lehet trunk es extension ugyanaz az interfesz.

Szia.

Töröld ki az asteriskből mint mellék. Aztán adj hozzá egy TRUNK-öt a következőképpen:

TRUNK name: egyértelmű

PEER details:

type=peer
host=mobigaterIPcíme

USER context: mellék száma /username/

User details:

username=mellék száma /usernév/
type=friend
secret=nagyontitkosjelszó
qualify=yes
nat=no
host=dynamic
context=from-internal
canreinvite=no

Register string üres marad.

Mobigeter ujraindít.
A kimenő hívásokra meg állíts be szabályt, hogy csak a mobil hívások mennyenek rajta, így nem kell majd a mellékre "becsörögnöd", csak szimplán a számot kell majd tárcsáznod.

--
Nem az erős, aki sosem esik el, hanem az, aki mindig fel tud állni!

Kösz, ki fogom próbálni.
Ha ez így működik (próbáltad?) az nagyon jó :)
Nem kell ezeknek a cuccoknak valamit tudni a SIP protokollból, amit mondjuk a trunk-képes eszközök tudnak, a nem-képes eszközök pedig nem?
Más mi indokolná a kb. 30eFt különbséget?

--
Gabriel Akos

Sajnos nem működik. Ez egy Planet VIP-281GS, 32-33ezer Ft-ba kerül nettó. Valszeg nem véletlenül kerülnek az "igazi" GSM adapterek duplaennyibe. Az a bajom, hogy a konkrét "feature" nevét nem tudom, ami egyértelműen megmondja nekem, hogy a cucc alkalmas-e vagy sem...

A type=friend egyébként azt jelenti, hogy type=peer&user ha jól tudom

username password mezőbe egyébként azt kéne beírni ugye, amivel az asterisk lép be a gsm adapterbe (merthogy a neophone-os trunknél is az van) márpedig ennek az adapternek ilyen usernév/password beállítása nincsen, hacsak nem a webes felület admin jelszava... :)

--
Gabriel Akos

nekem megy! csak fordítva... mivel authentikációt a gsm adapter várja kimenő híváskor

teljesen mindegy, hogy a PBX regisztrál a gsm trunk-ra vagy a GSMGW jelentkezik a központra. Értelem szerűen ITSP-nél te jelentkezel, GW-nél meg amelyik/amelyikre tud.

Megjegyzem, hogy vannak eszközök amik bejelentkezés nélkül is tudnak trunk-ként viselkedni tisztán ip alapon és sip üzeneten, ez persze biztonsági kockázatot jelent.

kimenő híváshoz ha authentikáció kell a gsm-nek, méghozzá neki kell regisztrálni a pbx-re, ezért type=peer helyett friend (mint ahogy a melléknél is van). Természetesen a GSM adapteren is be kell állítani a PBX ip-jét és az itt beállított username&jelszót.. továbbá a tárcsázási szabályokat+a bejövő hívásnál hogyan küldje az adatokat

Trunk name: GSM
Peer details:
type=friend
username=/username/
secret=/pass/
context=from-trunk
insecure=port,invite #1.4.1x-nél régebbi asterisknél: very
qualify=yes
dtmfmode=rfc2833
disallow=all
host=dynamic
allow=alaw&ulaw&g729
nat=never

#GSM felöl jövő hívás menjen a Inbound Route-ba, nem szükséges authentikáltatni...
USER context: GSM-xIN (azért x hogy ABC-ben biztos hátrébb legyen)
USER details:
type=peer
host=/ipcim/
port=/default 5060, ha elhagyod az opciót/
qualify=yes
context=from-trunk

Üdv:
Csabka

ui: ha SIP mellékre be tudsz regisztrálni, akkor mennie kell a fentinek is... ne felejtsd el a 1-stage-dialingot beállítani.

Akkor, hogy regisztrál be extension-ként?

--
Nem az erős, aki sosem esik el, hanem az, aki mindig fel tud állni!

Olyan beállítása (user/password/hostname) természetesen van.
Az a bajom, hogy én a neophone-ból indulok ki, a neophone konkrétan sehogy se jelentkezik be hozzánk, ellenben mi bejelentkezünk a neophone-hoz. Ebből gondolom, hogy a gsm adapterbe is a telefonközpont kéne bejelentkezzen és nem fordítva. Nem?

B kérdés: mobigater-rel írtad a példát: próbáltad már azzal? Működött simán?
--
Gabriel Akos

Szia,

Megint beleokoskodok. Hatha igazam van :-). A nagyon okosok remelem kijavitanak.

Asterisknel az extension regisztral be a PBX-re, es a trunkra, mint szolgaltatora regisztral be az asterisk. Azaz az extension az asterisk kliense, a trunkon pedig az asterisk a sip szolgaltato kliense.

Ahogy atfutottam a manualt, ugye VoIPra csak sip proxy beallitasok vannak, azaz a VIP-281GS csak kliense tud lenni egy VoIP PBX-nek. Ezert tudsz Asterix PBX-re mint Extensiont beregisztralni. De SIP -en nem tudsz VIP-281GS -ben sip klienseket vagy extensiont felvenni, hogy arra meg Asterisk PBX mint trunkre belephessen.

Szerintem nem lehet ugy beallitani a VIP-281GS -t, hogy trunkja legyen az Asterisknek.

A mobigater oké, lehet:) Én próbáltam a Planet-et, az egyelőre nem megy.
Azt írtad, töröljem ki a melléket. Akkor a következő sorokba mit írjak?
Nálam 223 a mobil belső melléke, és mondjuk 1234567 a mobilszáma.
"
USER context: mellék száma /username/

User details:

username=mellék száma /usernév/
"

? :)

--
Gabriel Akos

Szia,

Ez a FreePBX-ben (és a GUIk nagy részében) egy hibás megközelítés arra, hogy a Trunknek mindig authentikálnia kell.

A megoldás! Két bejegyzést kell Tenned:

Az egyiket a sip.conf-ba:

Ide fel kell venned azt a bejegyzést ahová a GSM adaptered beauthentikál:

Pl.:

[gsm1]
username=gsm1
type=friend
secret=gsm1
record_out=Never
record_in=Never
qualify=yes
port=5060
nat=yes
host=dynamic
dtmfmode=inband
dial=SIP/gsm1
context=from-pstn
canreinvite=no
callerid=gsm1
call-limit = 1
insecure=very

És az extensions_additional.conf-ba:

Valahol az [outrt-....] helyen kell kicsit beleszerkesztened, ahol a GSM kimenő trunköt létrehoztad (ha a freepbx-ben szerkeszted akkor el is menti ezeket a beállításokat.

[outrt-....]
...
exten => _0620X.,n,Dial(SIP/${EXTEN}@gsm,90,Tt)
...

Ahol a
_0620X. : a hívott szám eleje, ha egyezik
n : sorszám
Dial : :o)
@gsm : A trunk ahol a 0620 hívásokat végződteted

Ennyi...

Amennyiben csak egy pici egyszerű központot szeretnél beállítani akkor jobban jársz ha mindent kézzel csinálsz... ha nyitsz egy új fórumot segítek beállítani, szerintem nem lesz több 30 sornál ;o)

Chrys

http://www.voipnetwork.hu
a NAGYOK tudásávan, a kicsik rugalmasságával

Na kipróbáltam úgy is, hogy a meglevő tutira működő konfigba a lehető legáltalánosabb helyre próbáltam berakni, nem ment.
Tovább nyomoztam, nem (csak) a gsm trunk a baja, mert ha a tutira működő neophone trunkname-t írtam be, azzal sem ment.

ez van a dialplan-ban:

[ Context 'outrt-004-Mobil' created by 'pbx_config' ]
'_0620XXXXXXX' => 1. Set(MOHCLASS=${IF($["x${MOHCLASS}"="x"]?abba:${MOHCLASS})}) [pbx_config]
2. Macro(user-callerid|SKIPTTL|) [pbx_config]
3. Set(_NODEST=) [pbx_config]
4. Macro(record-enable|${AMPUSER}|OUT|) [pbx_config]
5. Macro(dialout-trunk|2|${EXTEN}||) [pbx_config]
6. Macro(dialout-trunk|5|${EXTEN}||) [pbx_config]
7. Macro(outisbusy|) [pbx_config]

A macro-dialout-trunk pedig így néz ki:

[macro-dialout-trunk]
include => macro-dialout-trunk-custom
exten => s,1,Set(DIAL_TRUNK=${ARG1})
exten => s,n,ExecIf($[$["${ARG3}" != ""] & $["${DB(AMPUSER/${AMPUSER}/pinless)}" != "NOPASSWD"]],Authenticate,${ARG3})
exten => s,n,GotoIf($["x${OUTDISABLE_${DIAL_TRUNK}}" = "xon"]?disabletrunk,1)
exten => s,n,Set(DIAL_NUMBER=${ARG2})
exten => s,n,Set(DIAL_TRUNK_OPTIONS=${DIAL_OPTIONS})
exten => s,n,Set(GROUP()=OUT_${DIAL_TRUNK})
exten => s,n,GotoIf($["${OUTMAXCHANS_${DIAL_TRUNK}}foo" = "foo"]?nomax)
exten => s,n,GotoIf($[ ${GROUP_COUNT(OUT_${DIAL_TRUNK})} > ${OUTMAXCHANS_${DIAL_TRUNK}} ]?chanfull)
exten => s,n(nomax),GotoIf($["${INTRACOMPANYROUTE}" = "YES"]?skipoutcid)
exten => s,n,Set(DIAL_TRUNK_OPTIONS=${TRUNK_OPTIONS})
exten => s,n,Macro(outbound-callerid,${DIAL_TRUNK})
exten => s,n(skipoutcid),AGI(fixlocalprefix)
exten => s,n,Set(OUTNUM=${OUTPREFIX_${DIAL_TRUNK}}${DIAL_NUMBER})
exten => s,n,Set(custom=${CUT(OUT_${DIAL_TRUNK},:,1)})
exten => s,n,GotoIf($[$["${MOHCLASS}" = "default"] | $["foo${MOHCLASS}" = "foo"]]?gocall)
exten => s,n,Set(DIAL_TRUNK_OPTIONS=M(setmusic^${MOHCLASS})${DIAL_TRUNK_OPTIONS})
exten => s,n(gocall),Macro(dialout-trunk-predial-hook,)
exten => s,n,GotoIf($["${PREDIAL_HOOK_RET}" = "BYPASS"]?bypass,1)
exten => s,n,GotoIf($["${custom}" = "AMP"]?customtrunk)
exten => s,n,Dial(${OUT_${DIAL_TRUNK}}/${OUTNUM},300,${DIAL_TRUNK_OPTIONS})
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s,n(customtrunk),Set(pre_num=${CUT(OUT_${DIAL_TRUNK},$,1)})
exten => s,n,Set(the_num=${CUT(OUT_${DIAL_TRUNK},$,2)})
exten => s,n,Set(post_num=${CUT(OUT_${DIAL_TRUNK},$,3)})
exten => s,n,GotoIf($["${the_num}" = "OUTNUM"]?outnum:skipoutnum)
exten => s,n(outnum),Set(the_num=${OUTNUM})
exten => s,n(skipoutnum),Dial(${pre_num:4}${the_num}${post_num},300,${DIAL_TRUNK_OPTIONS})
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s,n(chanfull),Noop(max channels used up)
exten => s-BUSY,1,Noop(Dial failed due to trunk reporting BUSY - giving up)
exten => s-BUSY,n,Playtones(busy)
exten => s-BUSY,n,Busy(20)
exten => s-NOANSWER,1,Noop(Dial failed due to trunk reporting NOANSWER - giving up)
exten => s-NOANSWER,n,Playtones(congestion)
exten => s-NOANSWER,n,Congestion(20)
exten => s-CANCEL,1,Noop(Dial failed due to trunk reporting CANCEL - giving up)
exten => s-CANCEL,n,Playtones(congestion)
exten => s-CANCEL,n,Congestion(20)
exten => _s-.,1,GotoIf($["x${OUTFAIL_${ARG1}}" = "x"]?noreport)
exten => _s-.,n,AGI(${OUTFAIL_${ARG1}})
exten => _s-.,n(noreport),Noop(TRUNK Dial failed due to ${DIALSTATUS} - failing through to other trunks)
exten => disabletrunk,1,Noop(TRUNK: ${OUT_${DIAL_TRUNK}} DISABLED - falling through to next trunk)
exten => bypass,1,Noop(TRUNK: ${OUT_${DIAL_TRUNK}} BYPASSING because dialout-trunk-predial-hook)
exten => h,1,Macro(hangupcall,)

; end of [macro-dialout-trunk]

Gondolom a sima Dial-on kívül kell még valami ebből a híváshoz, de mi?

--
Gabriel Akos

Szia,

Nos akkor.

Context 'outrt-004-Mobil' első sorai:

exten => _0620X.,1,Dial(SIP/${EXTEN}@gsm,90,Tt)
exten => _0630X.,2,Dial(SIP/${EXTEN}@gsm,90,Tt)
exten => _0670X.,3,Dial(SIP/${EXTEN}@gsm,90,Tt)
exten => _06X.,4,Dial(SIP/${EXTEN}@foldiszolgáltató,90,Tt)

más ne legyen benne ne a dialout macrot-használd...

Teszt ?! :o)

Krisz

http://www.voipnetwork.hu
a NAGYOK tudásával, a kicsik rugalmasságával

megoldottam. nem kell extension.
peer-ként kell felvenni csak.
dial pattern-t kell neki megadni, onnantól megy.
befelé meg a "hotline" funkción keresztül megy.
nem szép megoldás, de működik.

--
Gabriel Akos