ΤΙ ΧΡΕΙΑΖΕΣΤΕ
- FreePBX έκδοση 2.11 ή 12
- phpMyAdmin για την διαχείριση της βάσης δεδομένων
ΣΗΜΕΙΩΣΕΙΣ:
- Πρέπει να επικοινωνήσετε με τον πάροχό σας και να τους ενημερώσετε ότι όταν σας καλέσει κάποιος και κλείσετε εσείς πρώτος το τηλέφωνο, να τερματίζεται αμέσως η κλήση, διότι αλλιώς τερματίζεται μετά από 60 ή 90 δευτερόλεπτα και θα έχετε πρόβλημα με τον Asterisk αν τον βάλετε να απορρίπτει τις κλησεις ή να τις απαντάει και να τις τερματίζει διότι θα σας κρατάει ανοιχτή την γραμμή μέχρι να περάσει το χρονικό διάστημα που ανέφερα.
- Η δικιά μου υλοποίηση έχει γίνει με Asterisk 11.15.0 και FreePBX 12.0.62 σε λειτουργικό Mageia Linux 4 64bit. Έχει λειτουργήσει και με FreePBX 2.11 στο ίδιο λειτουργικό. Φυσικά κατά 99% θα λειτουργήσει σε οποιαδήποτε υλοποίηση τρέχει FreePBX 2.11 ή 12 (Elastix, PBX In a Flash, custom εγκαταστάσεις) .
- Για μεγαλύτερη ευκολία δεν θα αναφέρω πως δημιουργούμε από την αρχή μια βάση δεδομένων με τους πίνακες και τα πεδία που απαιτούνται για την υλοποίηση. Θα δώσω έτοιμη την δικιά μου βάση, με την δικιά μου blacklist και μετά ο κάθε ένας, εφ’ όσον έχει τις γνώσεις, μπορεί να την τροποποιήσει.
ΟΔΗΓΙΕΣ
- Επισκεφθείτε την σελίδα http://www.voipsupport.it/pmwiki/pmw...DynamicRouting και κατεβάστε το module Dynamic Routes. Η τελευταία έκδοση την στιγμή που γράφτηκε ο οδηγός είναι η 2.11.0.0 και παίζει απροβλημάτιστα και σε FreePBX 12.
- Κάνετε login στο FreePBX (unembedded FreePBX για χρήστες Elastix) και πάμε στο μενού Admin / Module Admin. Από εκεί διαλέγετε την επιλογή Upload modules και στο Type διαλέγετε Upload (From Hard Disk). Βρίσκετε το αρχείο που κατεβάσατε προηγουμένως, πατάτε το κουμπί Upload και μετά ολοκληρώνετε την διαδικασία εγκατάστασης του module. Για περισσότερα σχετικά με την διαχείριση των modules δείτε εδώ (http://wiki.freepbx.org/display/F2/M...in+User+Guides)
- Αφού εγκατασταθεί το module κάνετε κλικ στο κόκκινο κουμπί που γράφει Apply Config, κάνετε refresh την σελίδα και θα δείτε ένα νέο μενού που ονομάζεται Dynamic Routes.
- Κατεβάζετε το συννημένο αρχείο της βάσης δεδομένων, το αποσυμπιέζετε, ανοίγετε το phpMyAdmin και παραμένετε στην αρχική του σελίδα. Πατάτε στην επιλογή Import και από το πεδίο Browse your computer: βρίσκετε το αρχείο της βάσης δεδομένων που κατεβάσατε προηγουμένως. Στο πεδίο Partial Import ξετικάρετε την επιλογή Allow the interruption of an import in case the script detects it is close to the PHP timeout limit. (This might be a good way to import large files, however it can break transactions.) και τέλος πατάτε το κουμπί Go. Η βάση είναι πολύ μικρή, οπότε σε λίγα δευτερόλεπτα θα δείτε ότι έχει ολοκληρωθεί επιτυχώς η εισαγωγή της και θα πρέπει να την δείτε με το όνομα blacklist στο αριστερό μέρος του phpMyAdmin όπου βρίσκονται όλες οι βάσεις δεδομένων MySQL του συστήματος.
- Στην λίστα με τις βάσεις δεδομένων πατάτε στο όνομα της βάσης που εισάγατε πριν λίγο και διαλέγετε την καρτέλα Privileges. Πατάτε Add user και στα πεδία User name και Password βάζετε ένα Username και ένα password για τον χρήστη ο οποίος θα έχει δικαιώματα ανάγνωσης και εγγραφής στην συγκεκριμένη βάση. Στο πεδίο Host γράφετε localhost. Τέλος πατάτε Go για να πραγματοποιηθούν οι αλλαγές. ΝΑ ΣΗΜΕΙΩΣΕΤΕ ΚΑΠΟΥ ΤΟ USERNAME ΚΑΙ ΤΟ PASSWORD ΕΠΕΙΔΗ ΘΑ ΧΡΕΙΑΣΤΟΥΝ ΣΤΗΝ ΣΥΝΕΧΕΙΑ.
- Επιστρέφετε στο FreePBX, διαλέγετε το μενού Dynamic Routes και πατάτε Add Route. Δίνετε ένα όνομα στο Route και στο Source type διαλέγετε MySQL και συμπληρώνετε ως εξής τα πεδία που θα εμφανιστούν. Το περιεχόμενο στο πεδίο Query το κάνετε copy-paste όπως το βλέπετε:
Host: localhost
Database: blacklist
Username: το username του χρήστη της βάσης
Password: το password του χρήστη της βάσης
Query: select aporipsi from lista where arithmos like '[NUMBER]'
Στην κατηγορία Match κάνουμε τα εξής:
- Στο Default destination διαλέγετε τι θα γίνεται με την εισερχόμενη κλήση αν ο αριθμός που σας καλεί ΔΕΝ είναι στην λίστα.
- Στο κενό πεδίο γράφετε nai και διαλέγετε τι θα γίνεται με την εισερχόμενη κλήση αν ο αριθμός που σας καλεί ΕΙΝΑΙ στην λίστα.
Τέλος πατάτε Save. - Πάτε στα inbound routes σας και διαλέγετε αυτό του οποίου οι εισερχόμενες κλήσεις θα φιλτράρονται. Στο Set Destination διαλέγετε το Dynamic Route που φτιάξαμε πριν λίγο. Πατάτε Submit και στην συνέχεια το κόκκινο κουμπί που γράφει Apply Config.
ΣΗΜΕΙΩΣΕΙΣ:
- Υπενθυμίζω ότι το που θα πηγαίνει η κλήση (Ring Group, Queue κλπ) αν ο αριθμός δεν είναι στην blacklist το ορίζετε στο Dynamic Route στο προηγούμενο βήμα.
- Αν έχετε και άλλο inbound route για το οποίο θέλετε να φιλτράρετε τις εισερχόμενες κλήσεις του, φτιάχνετε ένα δεύτερο Dynamic Route με τις ίδιες ρυθμίσεις που αναφέρονται στο βήμα 6 και αλλάζετε μόνο τον προορισμό στο Default destination.
- Αν θέλετε να προσθέσετε στην blacklist έναν αριθμό μπαίνετε στο phpMyAdmin και κάνετε τα εξής:
- Στην λίστα με τις βάσεις πατάτε πάνω στο όνομα της βάσης και στην συνέχεια θα δείτε στο δεξί μέρος της οθόνης τον μοναδικό πίνακα και πατάτε την επιλογή Browse δίπλα από το όνομά του.
- Στο πάνω μέρος της οθόνης πατάτε την επιλογή Insert. Το id μπορείτε να το αφήσετε κενό. Στο πεδίο arithmos βάζετε τον αριθμό που θέλετε. Στο πεδίο aporipsi γράφετε nai . Τέλος πατάτε Go και είστε έτοιμοι.
Μήνυμα