{[{resultsCount}]} {[{resultsWord}]}

FreePBX based Τηλεφωνικό Κέντρο (PJSIP)

  • Δημοσιεύτηκε : 10/09/2017
  • Τελευταία ανανέωση : 16/08/2022

Για την παραμετροποίηση των τηλεφωνικών κέντρων που βασίζονται σε Asterisk διανομές όπως FreePBX, θα πρέπει να ακολουθήσουμε τα παρακάτω βήματα.

Δημιουργία νέου SIP trunk

  • Από την ενότητα Connectivity -> Trunk δημιουργούμε νέο SIP (chan_pjsip) Trunk με τις παρακάτω ρυθμίσεις:

general2.png

Trunk Name: Modulus
Outbound CallerID: Ο αριθμός που μας έχει αποδοθεί με μορφή 2ΧΧΧΧΧΧΧΧΧ
Maximum Channels: 2 (Εκτός και αν το πακέτο inBundle ή inTrunk που έχετε επιλέξει παρέχει περισσότερα κανάλια φωνής)

  • PJSIP Settings -> General

general-pjsip-settings.png

Username: Το username που σας έχει σταλεί με email
Secret: Το password που σας έχει σταλεί με SMS
Authentication: Outbound
Registration:
Send
SIP Server: voips.modulus.gr
SIP Server Port: Το πεδίο αυτό το αφήνουμε κενό
Context: from-trunk

  • PJSIP Settings -> Advanced
adv4.png

adv5.png

DTMF Mode: RFC 4733
Send Line in Registration:
No
Permanent Auth Rejection:
No
Forbidden Retry Interval:
60
Fatal Retry Interval: 60
General Retry Interval: 60
Expiration: 180
Max Retries: 1000000
Qualify Frequency: 30
Contact User: Το USERNAME σας
From User: Το USERNAME σας
Support T.38 UDPTL : Yes
Trust RPID/PAI: Yes
Send RPID/PAI: Send P-Asserted-Identity header
Send Private CallerID Information: Yes

  • PJSIP Settings -> Codecs

codec2.png

Ρυθμίστε τους Codecs με την σειρά που φαίνεται παραπάνω

Στο σημείο αυτό, έχουμε ολοκληρώσει την παραμετροποίηση του Trunk και θα ασχοληθούμε με μια βασική δρομολόγηση, ώστε το τηλεφωνικό μας κέντρο να μπορεί να λάβει (εισερχόμενες) και να πραγματοποιήσει (εξερχόμενες) κλήσεις.

Δημιουργία νέου Inbound Route

  • Δημιουργούμε νέο κανόνα inbound route από την ενότητα Connectivity -> Inbound Routes με τις παρακάτω ρυθμίσεις κατ' ελάχιστο ή/και σύμφωνα με τις προτιμήσεις μας:


inbound-routes.png

Description: Modulus
DID Number: Εάν στο κέντρο σας λαμβάνετε κλήσεις για έναν μόνο αριθμό modulus, συμπληρώστε σε αυτό το πεδίο το username που χρησιμοποιήσατε στη ρύθμιση του SIP trunk της προηγούμενης ενότητας. Αν δέχεστε κλήσεις σε περισσότερους από έναν αριθμούς modulus στο ίδιο κέντρο FreePBX, τότε εδώ θα συμπληρώστε ολόκληρο τον αριθμό (10-ψήιφο) για να δημιουργήσετε έναν κανόνα δρομολόγησης ο οποίος θα ισχύει μόνο για τον αριθμό που συμπληρώσατε. Σε αυτή περίπτωση, ενημερώστε το τμήμα τεχνικής εξυπηρέτησης της εταιρείας μας προκειμένου να προχωρήσει στην ανάλογη παραμετροποίηση.
Set Destination: Ορίζουμε το πού επιθυμούμε να δρομολογηθεί η κλήση ανάλογα με τις προτιμήσεις μας (στο παραπάνω παράδειγμα δρομολογούμε την κλήση σε voicemail)

Δημιουργία νέου Outbound Route

  • Δημιουργούμε νέο κανόνα outbound route από την ενότητα Connectivity -> Outbound Routes με τις παρακάτω ρυθμίσεις κατ' ελάχιστο ή/και σύμφωνα με τις προτιμήσεις μας:


outbound-routes-1.png

outbound-routes-2.png

Route Name: Modulus
Trunk Sequence for matched routes: Modulus
Match Pattern: Χ. (λατινικός κεφαλαίος χαρακτήρας Χ και τελεία)

Επαλήθευση λειτουργίας

  • Μετά την εφαρμογή των παραπάνω, επιλέγουμε το κόκκινο πλήκτρο "Apply" προκειμένου να εφαρμοστούν οι αλλαγές.
    Για να επιβεβαιώσουμε ότι η επικοινωνία με τους διακομιστές της modulus διεξάγεται κανονικά, συνδεόμαστε σε τερματικό του μηχανήματος όπου εκτελείται το FreePBX (είτε με τοπική κονσόλα είτε με SSH) και εκτελούμε την εντολή:


/usr/sbin/asterisk -x 'pjsip show registrations'


<Registration/ServerURI..............................> <Auth..........> <Status.......>
==========================================================================================

Modulus/sip:voips.modulus.gr:5060 Modulus Registered

Αν όλα έχουν πάει καλά, θα πρέπει η κατάσταση "Status" της εγγραφής που αφορά στο SIP trunk με τη modulus να έχει την ένδειξη "Registered".

Troubleshooting:

Σε περίπτωση που αντιμετωπίζετε πρόβλημα στην σύνδεση του κέντρου σας παρακαλούμε όπως κάνετε τις κάτωθι αλλαγές:

Πραγματοποιούμε την είσοδο στο κέντρο και βρίσκουμε το trunk της Modulus που έχουμε φτιάξει.

Στη συνέχεια πατάμε το edit που βρίσκεται δεξιά (το εικονίδιο με το μολύβι) και στη συνέχεια κάνουμε την κάτωθι αλλαγή:

PJSIP Settings -> SIP Server Port -> 6050

Ενεργοποίηση κρυπτογράφησης TLS/SRTP (προαιρετικά)

H modulus παρέχει την δυνατότητα κρυπτογράφησης της σηματοδοσίας και της φωνής προκειμένου να παρέχει στους συνδρομητές της την μέγιστη δυνατή ασφάλεια στις επικοινωνιών τους.

Για την ενεργοποίηση, θα χρειαστεί να προχωρήσουμε στα παρακάτω επιπρόσθετα βήματα:

Από το κεντρικό menu στο πάνω μέρος της οθόνης επιλέγουμε Settings > Asterisk SIP Settings > SIP Settings [chan_pjsip]. Εκεί, κάνουμε τις παρακάτω αλλαγές:

  • Certificate Manager: Default (εκτός και αν κάνετε χρήση άλλου certificate, οπότε και επιλέγετε εκείνο)
  • SSL Method: tlsv1_2
  • Ενεργοποιούμε (κάνουμε Yes) το transport "tls - 0.0.0.0 - All"
  • Κάνουμε Submit τις αλλαγές που κάναμε

Στη συνέχεια θα πάμε να κάνουμε και κάποιες αλλαγές στα modulus SIP Trunks. Από το κεντρικό menu επιλέγουμε Connectivity > Trunks > ανοίγουμε τις ρυθμίσεις του trunk που μας ενδιαφέρει (click στο μολύβι)

  • Στην καρτέλα pjsip Settings > General > SIP Server Port: αυτό το πεδίο το αφήνουμε κενό
  • Στην καρτέλα pjsip Settings > General > Transport: επιλέγουμε "tls - 0.0.0.0 - All"
  • Στην καρτέλα pjsip Settings > Advanced > Media Encryption: επιλέγουμε "SRTP via in-SDP (recommended)"
  • Κάνουμε Submit τις αλλαγές που κάναμε
  • Πατάμε Apply στο πάνω δεξιά μέρος της οθόνης ώστε να γίνει reload

Σαν τελευταίο βήμα, θα πρέπει να κάνουμε restart τον asterisk. Αυτό μπορεί να γίνει με την παρακάτω εντολή ή εναλλακτικά, κάνοντας reboot το τηλεφωνικό μας κέντρο.

/usr/sbin/asterisk -x 'core restart gracefully'

Τέλος, επαναλαμβάνουμε το βήμα "Επαλήθευση λειτουργίας" ώστε να δούμε ότι τα trunks μας είναι registered.