When you configure the hotel features of a PBX one important propriety of an "extension" (type "room") is the variable "allowcalls/EXT" where is reflected the status of the room:
- check-in (with guests) = 1
- check-out (without guests) = 0
In the dialplan of outgoing calls for the room, if needed, you can check the status and allow/block the calls in base of the status.
Description of matches
- 0.
- Set - ALLOWED - ${DB(allowcalls/${CALLERID(num)})} // With the application Set we assign to the temporary local variable called ALLOWED the value inside the DB (check-in / check-out)
- Custom application - GotoIf($["${ALLOWED}" != "1"]?blocked,1) // The dialplan will jump to the match "blocked" if the database value is 0, will go to the next application is the value is 1
- Trunk group - ISDN // Use the ISDN lines to place the outgoing call
- 01XX
- Trunk group - ISDN // Use the ISDN lines to place the outgoing call when an emergency number is called. Here there is no check of check-in/check-out to leave open the calls to this kind of services
- 9
- Dial the phone - 700 // Which is the reception desk
- blocked
- Play sound - 00000/disabilitato // We play a warning message if someone try to place an outgoing calls but the status of the room is check-out (DB value 0)