έχω ένα σύστημα με asterisk σε vps και έχω εκεί παρόχους registered. έχω τα extensions 400-499 και είναι registred πάνω του κάποια softclients από κινητά ή υπολογιστές μέσω 3/4G ή dsl. Μέχρι τώρα όλα καλα.
Θέλω δυο extensions να τα κάνω register πάνω σε 2 άλλα asterisk. Έτσι ο πρώτος asterisk θα παίζει τον ρόλο του server και τα άλλα 2 τον ρόλο του client.
Δοκίμασα να πάρω το extension 450 και να το κάνω register στο sip.conf του client asterisk ως εξής:
Δείχνει registered αλλά δεν μπορώ να κάνω/δεχτώ κλήσεις στον client 450. Όπως επίσης, τα εσωτερικά 4xx δεν μπορούν να καλέσουν το 450, αλλά και το αντίθετο.Κώδικας:register => 450:mypassword@VPS_IP
Εϊναι σε asterisk 11.25.3 χωρίς gui. Ψάχνω επίσης πως από τα εσωτερικά του client asterisk να μπορώ να καλώ τα υπόλοιπα εσωτερικά τηλέφωνα 4xx του server asterisk.
Εμφάνιση 1-15 από 40
Θέμα: asterisk σαν server
-
28-06-19, 10:24 asterisk σαν server #1
Τελευταία επεξεργασία από το μέλος atux_null : 28-06-19 στις 10:41.
-
28-06-19, 10:58 Απάντηση: asterisk σαν server #2
Είτε οι συσκευές απευθείας στο VPS είτε sip trunks μεταξύ των asterisk και κατάλληλο call routing
-
28-06-19, 12:11 Απάντηση: asterisk σαν server #3
Το registration υπάρχει. Αλλά αναφέρω ότι δεν μου γίνεται η δρομολόγηση της κλήσης. Softclients & client asterisks κάνουν register στην public IP του VPS.
Καμιά ιδέα?
-
28-06-19, 13:10 Re: asterisk σαν server #4
Dialplan και sip settings και από τα δύο μηχανάκια.
-
02-07-19, 08:59 Απάντηση: Re: asterisk σαν server #5
Λάθος έκδοση έχω γράψει. Είναι η 13 που έχω βάλει από τα repositories του Debian.
Server:
Sip.conf
Κώδικας:[general] context=default srvlookup=no language=en tos_sip=cs3 tos_audio=ef tos_video=af41 tos_text=af41 cos_sip=3 cos_audio=5 cos_video=4 cos_text=3 vmexten=voicemail contactdeny=0.0.0.0/0.0.0.0 contactpermit=0.0.0.0/0.0.0.0 callcounter = yes ;nat=force_rport,comedia ; SIP clients on the network [400] host=dynamic type=friend user=400 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="400" <400> maibox=400@Office ;nat=force_rport,comedia [401] host=dynamic type=friend user=401 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="401" <401> maibox=401@Office [450] host=dynamic type=friend user=450 secret=admin1234 call-limit=2 contaxt=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no callerid="450" <450> maibox=450@Office
Κώδικας:[globals] [default] exten => _X!,1,Congestion() [DialIn] [AllCalls] exten => _X!,1,GoTo(DefaultPlan,${EXTEN},1) exten => _X!,2,Busy(3) [DefaultPlan] exten => _4XX,2,Answer() exten => _4XX,3,VoiceMail(${EXTEN}@Office,u) exten => _4XX,4,HangUp() exten => _4XX,102,Answer() exten => _4XX,103,VoiceMail(${EXTEN}@Office,b) exten => _4XX,104,HangUp() exten => 499,1,VoiceMailMain(@Office) exten => 499,2,HangUp() exten => voicemail,1,VoiceMailMain(${CALLERID(num)}@Office) exten => voicemail,2,HangUp()
Client:
Sip.conf
Κώδικας:[general] context=default srvlookup=no language=en ;bindport=55590 tos_sip=cs3 tos_audio=ef tos_video=af41 tos_text=af41 cos_sip=3 cos_audio=5 cos_video=4 cos_text=3 vmexten=voicemail contactdeny=0.0.0.0/0.0.0.0 contactpermit=0.0.0.0/0.0.0.0 callcounter = yes ;nat=force_rport,comedia register => 450@192.168.1.115 ; SIP clients on the network [500] host=dynamic type=friend user=500 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="500" <500> maibox=500@Office ;nat=force_rport,comedia [501] host=dynamic type=friend user=501 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="501" <501> maibox=501@Office [192.168.1.115] username=450 type=friend secret=admin1234 host=192.168.1.115 fromuser=450 context=DialIn disallow=all allow=g729 allow=gsm allow=alaw trustrpid=yes sendrpid = yes canreinvite = no directmedia = no qualify = yes insecure=port,invite
Κώδικας:[globals] [default] exten => _X!,1,Congestion() [DialIn] exten => 450,1,Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})}) exten => 450,n,Answer() exten => 450,n,Wait(1) exten => 450,n,Dial(SIP/500,20) exten => 450,n,VoiceMail(500@Office,u) exten => 450,n,Busy(3) [AllCalls] exten => _X!,1,GoTo(DefaultPlan,${EXTEN},1) exten => _X!,2,Busy(3) [DefaultPlan] exten => _5XX,2,Answer() exten => _5XX,3,VoiceMail(${EXTEN}@Office,u) exten => _5XX,4,HangUp() exten => _5XX,102,Answer() exten => _5XX,103,VoiceMail(${EXTEN}@Office,b) exten => _5XX,104,HangUp() exten => 599,1,VoiceMailMain(@Office) exten => 599,2,HangUp() exten => voicemail,1,VoiceMailMain(${CALLERID(num)}@Office) exten => voicemail,2,HangUp()
- - - Updated - - -
καμιά ιδέα κανείς, παρακαλώ?
-
02-07-19, 10:12 Re: asterisk σαν server #6
Ας ξεκινήσουμε με τον server.
Δουλεύει οποιαδήποτε τοπική κλήση;
Ρωτάω γιατί το dialplan δεν βγάζει και πολύ νόημα.
Όταν κάποιος καλεί κάποιο 4ΧΧ πάει εδώ
[DefaultPlan]
exten => _4XX,2,Answer()
exten => _4XX,3,VoiceMail(${EXTEN}@Office,u)
exten => _4XX,4,HangUp()
exten => _4XX,102,Answer()
exten => _4XX,103,VoiceMail(${EXTEN}@Office,b)
exten => _4XX,104,HangUp()
exten => 499,1,VoiceMailMain(@Office)
exten => 499,2,HangUp()
exten => voicemail,1,VoiceMailMain(${CALLERID(num)}@Office)
exten => voicemail,2,HangUp()
Στο pattern 4xx κάνεις answer ο ίδιος την κλήση και μετά την ρίχνεις στο voicemail αντί να κάνεις dial κάποιο εσωτερικό.
Επίσης γιατί πηδάς από το 4 στο 102;
-
02-07-19, 12:37 Απάντηση: asterisk σαν server #7
καλημέρα. όλα τα softphones(zoiper) που έχω στον server, δουλεόυν. το 400 μπορεί να καλέσει το 401, 402 και όλοι οι συνδυασμοί μεταξύ τους. Αν έχεις κάποια πρόταση βελτίωσης, δεν έχω θέμα και θα το εκτιμούσα.
Ο λόγος που έχω μεγάλη κενό στην αρίθμηση από το 4 στο 102 είναι επειδή κατα καιρούς βάζω αλλαγές και για να τις προσθέτω μέσα ως 5,6,7.. κ για να μην κάνω αλλαγές μετά στην αρίθμηση.
Παρόλα αυτά έχω συμμαζέψει την αρίθμηση 1,2,3,4. τα εσωτερικά μπορούν να μιλήσουν μεταξύ τους, αλλά οι άλλοι asterisk_clients έχουν πάλι το ίδιο θέμα
οποιαδήποτε πρόταση είναι ευπρόσδεκτη.
- - - Updated - - -
Διόρθωσα την αρίθμηση του server και το extensions.conf είναι ως εξής:
Κώδικας:[globals] [default] exten => _X!,1,Congestion() [AllCalls] exten => _X!,1,GoTo(DefaultPlan,${EXTEN},1) exten => _X!,2,Busy(3) exten => 400,1,Answer() exten => 400,2,Dial(SIP/400,60) exten => 400,3,Playback(vm-nobodyavail) exten => 400,4,VoiceMail(400@main) exten => 400,5,Hangup() exten => 401,1,Answer() exten => 401,2,Dial(SIP/401,60) exten => 401,3,Playback(vm-nobodyavail) exten => 401,4,VoiceMail(401@main) exten => 401,5,Hangup() [DefaultPlan] exten => _4XX,1,Answer() exten => _4XX,2,VoiceMail(${EXTEN}@Office,u) exten => _4XX,3,HangUp() exten => _4XX,4,Answer() exten => _4XX,5,VoiceMail(${EXTEN}@Office,b) exten => _4XX,6,HangUp() exten => 499,1,VoiceMailMain(@Office) exten => 499,2,HangUp() exten => voicemail,1,VoiceMailMain(${CALLERID(num)}@Office) exten => voicemail,2,HangUp() [DialIn] exten => _4XX,1,Dial(SIP/${EXTEN},15,Tr)
-
02-07-19, 17:18 Απάντηση: asterisk σαν server #8
-
02-07-19, 18:49 Απάντηση: asterisk σαν server #9
καλησπέρα κ ευχαριστώ για την απάντηση. Δεν θέλω να ενώσω τους asterisk. Θέλω ένας να παίξει το ρόλο του server και όλοι οι άλλοι να παίζουν τον ρόλο του client. Έτσι όλοι οι clients να μπορούν να μιλάνε μεταξύ τους μέσα από την αρίθμηση του server, αλλά και ότι άλλο τους προσφέρει ο server.
Αυτή τη στιγμή έχω φτάσει στο σήμείο όπου όλα τα εσωτερικά μιλάνε μεταξυ τους, αλλά όταν τα κάνω register στον asterisk client, δεν μπορούν να τον κάλέσουν στο 450,451 (βάση του config που είναι παραπάνω). Επίσης, δεν γίνεται και το αντίθετο, από τους asterisk clients δεν πάει η κλήση στα 4ΧΧ εσωτερικά
-
02-07-19, 22:40 Απάντηση: asterisk σαν server #10
Αν έχεις κάποιο αντίστοιχο dialplan για το 450 όπως το παρακάτω
exten => 400,1,Answer()
exten => 400,2,Dial(SIP/400,60)
exten => 400,3,Playback(vm-nobodyavail)
exten => 400,4,VoiceMail(400@main)
exten => 400,5,Hangup()
Αν δεν έχεις το παραπάνω dialplan για το 450 λογικό να μην πηγαίνει τίποτα απέναντι γιατί δεν κάνεις dial πουθενά το εσωτερικό.
-
02-07-19, 23:11 Απάντηση: asterisk σαν server #11[192.168.1.115]
username=450
type=friend
secret=admin1234
host=192.168.1.115
fromuser=450
context=DialIn
disallow=all
allow=g729
allow=gsm
allow=alaw
trustrpid=yes
sendrpid = yes
canreinvite = no
directmedia = no
qualify = yes
insecure=port,invite
-
03-07-19, 11:39 Απάντηση: asterisk σαν server #12
έκανα κάποιες αλλαγές, όπου συμμάζεψα το config κ χρειάστηκε να αλλάξω ΙΡs. Εξακολουθώ να μην μπορώ να καλέσω από τους asterisk clients προς τον asterisk server αλλά και το αντίθετο.
server
sip.conf
Κώδικας:[general] context=default srvlookup=no language=en useragent=LabITSP tos_sip=cs3 tos_audio=ef tos_video=af41 tos_text=af41 cos_sip=3 cos_audio=5 cos_video=4 cos_text=3 vmexten=voicemail contactdeny=0.0.0.0/0.0.0.0 contactpermit=0.0.0.0/0.0.0.0 callcounter = yes ;nat=force_rport,comedia ; SIP clients on the network [400] host=dynamic type=friend user=400 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="400" <400> maibox=400@Office ;nat=force_rport,comedia [401] host=dynamic type=friend user=401 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="401" <401> maibox=401@Office [450] host=dynamic type=friend user=450 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no callerid="450" <450> maibox=450@Office [451] host=dynamic type=friend user=451 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no callerid="451" <451> maibox=451@Office
Κώδικας:[globals] [default] exten => _X!,1,Congestion() [AllCalls] exten => _X!,1,GoTo(DefaultPlan,${EXTEN},1) exten => _X!,2,Busy(3) exten => 400,1,Answer() exten => 400,2,Dial(SIP/400,60) exten => 400,3,Playback(vm-nobodyavail) exten => 400,4,VoiceMail(400@main) exten => 400,5,Hangup() exten => 401,1,Answer() exten => 401,2,Dial(SIP/401,60) exten => 401,3,Playback(vm-nobodyavail) exten => 401,4,VoiceMail(401@main) exten => 401,5,Hangup() [DefaultPlan] exten => _4XX,1,Answer() exten => _4XX,2,VoiceMail(${EXTEN}@Office,u) exten => _4XX,3,HangUp() exten => _4XX,4,Answer() exten => _4XX,5,VoiceMail(${EXTEN}@Office,b) exten => _4XX,6,HangUp() exten => 499,1,VoiceMailMain(@Office) exten => 499,2,HangUp() exten => voicemail,1,VoiceMailMain(${CALLERID(num)}@Office) exten => voicemail,2,HangUp() [DialIn] exten => _4XX,1,Dial(SIP/${EXTEN},15,Tr)
client
sip.conf
Κώδικας:[general] context=default srvlookup=no language=en tos_sip=cs3 tos_audio=ef tos_video=af41 tos_text=af41 cos_sip=3 cos_audio=5 cos_video=4 cos_text=3 vmexten=voicemail contactdeny=0.0.0.0/0.0.0.0 contactpermit=0.0.0.0/0.0.0.0 callcounter = yes ;nat=force_rport,comedia register => 450:admin1234@192.168.1.46 ; SIP clients on the network [500] host=dynamic type=friend user=500 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="500" <500> maibox=500@Office ;nat=force_rport,comedia [501] host=dynamic type=friend user=501 secret=admin1234 call-limit=2 context=AllCalls dtmfmode=rfc2833 qualify=no disallow=all allow=alaw allow=g729 allow=gsm canreinvite=no ;deny=0.0.0.0/0.0.0.0 ;permit=192.168.0.0/255.255.0.0 callerid="501" <501> maibox=501@Office [450] username=450 type=friend secret=admin1234 host=192.168.1.46 fromuser=450 context=DialIn disallow=all allow=g729 allow=gsm allow=alaw trustrpid=yes sendrpid = yes canreinvite = no directmedia = no qualify = yes insecure=port,invite
Κώδικας:[globals] [default] exten => _X!,1,GoTo(DefaultPlan,${EXTEN},1) exten => _X!,2,Busy(3) [AllCalls] exten => 450,1,Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})}) exten => 450,n,Answer() exten => 450,n,Wait(1) exten => 450,n,Dial(SIP/500,20) exten => 450,n,VoiceMail(500@Office,u) exten => 450,n,Busy(3) [DefaultPlan] exten => _5XX,1,Answer() exten => _5XX,2,VoiceMail(${EXTEN}@Office,u) exten => _5XX,3,HangUp() exten => _5XX,4,Answer() exten => _5XX,5,VoiceMail(${EXTEN}@Office,b) exten => _5XX,6,HangUp() exten => 599,1,VoiceMailMain(@Office) exten => 599,2,HangUp() exten => voicemail,1,VoiceMailMain(${CALLERID(num)}@Office) exten => voicemail,2,HangUp() [DialIn] exten => _5XX,1,Dial(SIP/${EXTEN},15,Tr)
-
03-07-19, 12:53 Απάντηση: asterisk σαν server #13
Ανέβασε τα παρακάτω
Server A
sip show peers
log κλήση προς 450
server b
sip show peers
sip show registry
log κλήση προς 450 από server A
-
03-07-19, 13:46 Απάντηση: asterisk σαν server #14
Κλήση από το 401 προς το 450.
Server logs:
Κώδικας:server*CLI> sip show peers Name/username Host Dyn Forcerport Comedia ACL Port Status Description 400/400 192.168.1.120 D Auto (No) No 5060 Unmonitored 401/401 192.168.1.106 D Auto (No) No 5060 Unmonitored 450/s 192.168.1.47 D Auto (No) No 5060 Unmonitored 451/s 192.168.1.48 D Auto (No) No 5060 Unmonitored 4 sip peers [Monitored: 0 online, 0 offline Unmonitored: 4 online, 0 offline] == Using SIP RTP TOS bits 184 == Using SIP RTP CoS mark 5 -- Executing [450@AllCalls:1] Goto("SIP/401-0000000d", "DefaultPlan,450,1") in new stack -- Goto (DefaultPlan,450,1) -- Executing [450@DefaultPlan:1] Answer("SIP/401-0000000d", "") in new stack -- Executing [450@DefaultPlan:2] VoiceMail("SIP/401-0000000d", "450@Office,u") in new stack [Jul 3 13:44:14] WARNING[3603][C-0000000b]: app_voicemail.c:6549 leave_voicemail: No entry in voicemail config file for '450' -- Executing [450@DefaultPlan:3] Hangup("SIP/401-0000000d", "") in new stack == Spawn extension (DefaultPlan, 450, 3) exited non-zero on 'SIP/401-0000000d' server*CLI>
Client logs:
Κώδικας:client_A*CLI> sip show peers Name/username Host Dyn Forcerport Comedia ACL Port Status Description 450/450 192.168.1.46 Auto (No) No 5060 OK (1 ms) 500/500 192.168.1.116 D Auto (No) No 5060 Unmonitored 501 (Unspecified) D Auto (No) No 0 Unmonitored 3 sip peers [Monitored: 1 online, 0 offline Unmonitored: 1 online, 1 offline] client_A*CLI> sip show registry Host dnsmgr Username Refresh State Reg.Time 192.168.1.46:5060 N 450 105 Registered Wed, 03 Jul 2019 13:41:08 1 SIP registrations. client_A*CLI>
-
03-07-19, 14:30 Απάντηση: asterisk σαν server #15
Εκτελεί κανονικά το dialplan που έχεις ορίσει για τα 4χχ
Κώδικας:[DefaultPlan] exten => _4XX,1,Answer() exten => _4XX,2,VoiceMail(${EXTEN}@Office,u) exten => _4XX,3,HangUp() exten => _4XX,4,Answer() exten => _4XX,5,VoiceMail(${EXTEN}@Office,b) exten => _4XX,6,HangUp()
Server B
Log κλήση 450 προς server A
Bookmarks