Χρήση BLF για παρουσίαση και διαχείριση της κατάστασης Day/Night του FreePBX

 Το module Day/Night Control που περιλαμβάνεται στο FreePBX (και σε όσες διανομές περιλαμβάνουν το FreePBX, όπως το Elastix, το trixbox κλπ) μας δίνει τη δυνατότητα να επιλέγουμε χειροκίνητα πώς θα δρομολογούνται οι εισερχόμενες κλήσεις. Για παράδειγμα, μπορούμε να επιλέξουμε ότι στην κατάσταση «Day» θα κωδωνίζουν κάποια εσωτερικά και στην κατάσταση «Night» οι κλήσεις θα δρομολογούνται στο voice mail ή θα εκτρέπονται στο κινητό μας. Σε συνδυασμό με το module Time Conditions, μπορούμε να δρομολογούμε τις κλήσεις για κάθε μέρα και ώρα του χρόνου, αλλά και να έχουμε τη δυνατότητα να ακυρώνουμε τη δρομολόγηση αυτή, σε περίπτωση που βρισκόμαστε στο γραφείο μη εργάσιμη ώρα.

Η μετάβαση από την κατάσταση «Day» στην κατάσταση «Night» και αντίστροφα γίνεται με την κλήση του αριθμού *28x, όπου x είναι ένας αριθμός από το 0 μέχρι και το 9. Το FreePBX μας δίνει 10 καταστάσεις Day/Night. Στις περισσότερες περιπτώσεις χρησιμοποιείται μόνο η πρώτη κατάσταση (*280), αλλά μπορεί να υπάρξουν και περιπτώσεις (με πολλούς εισερχόμενους αριθμούς) όπου οι 10 καταστάσεις δεν επαρκούν.

Ας δούμε ένα παράδειγμα χρήσης του Day/Night Control:

  • Στην κατάσταση «Day» έχουμε ορίσει (για τις εισερχόμενες κλήσεις) να κωδωνίζει η τηλεφωνική συσκευή της γραμματείας
  • Στην κατάσταση «Night» έχουμε ορίσει να προωθούνται οι εισερχόμενες κλήσεις σε κάποιο κινητό
  • Η γραμματέας, όταν έρχεται το πρωί στο γραφείο, καλεί το *281 (χρησιμοποιούμε τη δεύτερη κατάσταση Day/Night), ώστε να θέσει το τηλεφωνικό κέντρο σε λειτουργία ημέρας και να απαντά όλες τις εισερχόμενες κλήσεις
  • Το απόγευμα, όταν η γραμματέας αποχωρεί από το γραφείο, καλεί πάλι το *281, θέτοντας το τηλεφωνικό κέντρο σε λειτουργία νυκτός, ώστε να προωθούνται όλες οι εισερχόμενες κλήσεις στο κινητό ενός τεχνικού που παρέχει υποστήριξη

Το σενάριο του παραδείγματος λειτουργεί καλά και χωρίς πρόβλημα, αλλά υπάρχει ένα θέμα, το οποίο δυσχεραίνει τη γραμματέα: δεν μπορεί να δει σε ποια κατάσταση βρίσκεται το τηλεφωνικό κέντρο και έτσι κάθε φορά που θέλει να αλλάξει την κατάσταση καλεί το *281, ακούει την κατάσταση στην οποία μόλις έθεσε το τηλεφωνικό κέντρο και αν χρειάζεται, ξανακαλεί το *281 για να το θέσει στη σωστή κατάσταση.

Το θέμα αυτό λύνεται εύκολα, προγραμματίζοντας ένα κουμπί BLF στην τηλεφωνική συσκευή, το οποίο και δείχνει την κατάσταση Day/Night, αλλά και μπορεί να χρησιμοποιηθεί για να αλλάξει την κατάσταση. Στις οδηγίες που ακολουθούν χρησιμοποιούμε την κατάσταση Day/Night 1, δηλαδή αναπαράγουμε τη λειτουργία που εκτελείται όταν καλέσουμε το *281.

Μεταβολή του Asterisk dialplan
Τοποθετήστε τον κώδικα που ακολουθεί στο αρχείο /etc/asterisk/extensions_custom.conf. Αν δεν είστε σίγουροι πού να το τοποθετήσετε, απλά βάλτε το στην αρχή του αρχείου. Κατόπιν εκτελέστε την εντολή asterisk -rx reload, ή επανεκκινήστε το τηλεφωνικό κέντρο.

exten => DayNightControl_1,hint,Custom:DAYNIGHT1
exten => DayNightControl_1,1,Answer
exten => DayNightControl_1,n,Wait(1)
exten => DayNightControl_1,n,Set(INDEX=1)
exten => DayNightControl_1,n,Set(DAYREC=beep&silence/1&reception&digits/1&activated)
exten => DayNightControl_1,n,Set(NIGHTREC=beep&silence/1&reception&digits/1&de-activated)
exten => DayNightControl_1,n,Set(DAYNIGHTMODE=${DB(DAYNIGHT/C${INDEX})})
exten => DayNightControl_1,n,GotoIf($["${DAYNIGHTMODE}" = "NIGHT"]?day:night)
exten => DayNightControl_1,n,Hangup
exten => DayNightControl_1,n(day),Set(DB(DAYNIGHT/C${INDEX})=DAY)
exten => DayNightControl_1,n,Set(DEVICE_STATE(Custom:DAYNIGHT1)=INUSE)
exten => DayNightControl_1,n,Playback(${DAYREC})
exten => DayNightControl_1,n,Hangup
exten => DayNightControl_1,n(night),Set(DB(DAYNIGHT/C${INDEX})=NIGHT)
exten => DayNightControl_1,n,Set(DEVICE_STATE(Custom:DAYNIGHT1)=NOT_INUSE)
exten => DayNightControl_1,n,Playback(${NIGHTREC})
exten => DayNightControl_1,n,Hangup

Η πρώτη γραμμή του κώδικα δημιουργεί ένα hint για τον «αριθμό» DayNightControl_1, ενώ οι υπόλοιπες γραμμές ελέγχουν την τρέχουσα κατάσταση, την μεταβάλλουν και ενημερώνουν φωνητικά τον καλούντα για τη νέα κατάσταση. Στις παραπάνω οδηγίες έχουμε επιλέξει να κάνουμε το λαμπάκι του BLF κόκκινο την ημέρα και πράσινο τη νύχτα. Μπορείτε να αντιστρέψετε τα INUSE και NOT_INUSE, αν αυτό σας εξυπηρετεί καλύτερα. Επίσης μπορείτε να αλλάξετε την τιμή του INDEX, ώστε να παρακολουθήσετε κάποια άλλη κατάσταση Day/Night (0 μέχρι και 9).

Προγραμματισμός της τηλεφωνικής συσκευής
Προγραμματίστε ένα από τα κουμπιά BLF της τηλεφωνικής σας συσκευής, θέτοντας σαν αριθμό ο οποίος παρακολουθείται και καλείται το DayNightControl_1. Το DayNightControl_1 είναι το εσωτερικό που δημιουργήσαμε πιο πάνω, η πιο σωστά ο «αριθμός» κλήσης τον οποίο χειριζόμαστε.  Αμέσως μετά την αποθήκευση, το κουμπί BLF θα ανάψει πράσινο ή κόκκινο (ανάλογα με την τρέχουσα κατάσταση Day/Night). Για να μεταβάλλετε την τρέχουσα κατάσταση, απλά πιέστε το κουμπί: θα ακούσετε την νέα κατάσταση και το χρώμα του κουμπιού θα αλλάξει.

Σημείωση: Απαραίτητη προϋπόθεση για να δουλέψουν όλα τα παραπάνω είναι να έχετε ενεργοποιήσει την αντίστοιχη κατάσταση Day/Night (1 στο παράδειγμά μας) μέσω του FreePBX.

Σχετικά άρθρα:

Κατηγορίες: Tips & Tricks & more, Το ολοκληρωμένο τηλεφωνικό κέντρο. Ετικέτες: , , , , . Προσθήκη στους σελιδοδείκτες.


Γράψτε απάντηση