|
Switching to VoIP Authors: Wallingford Th. Published year: 2005 Pages: 46-47/172 |
5.4. Messaging ApplicationsTelephony messaging applications are one-way in nature, distinguishing them from call-handling applications. That is, a message is sent from one party to another, and unlike a two-way phone call, the receiving party cannot respond in the same medium without initiating a return call. For example, a voice mail message is received. The receiving party must then make a call back to the sender in order to respond, if a response is necessary. 5.5.1. Overhead PagingOverhead paging is when an endpoint broadcasts the voice of the caller over a large group of endpoints simultaneously . Most legacy overhead paging applications use public address speakers or ceiling speakers wired to a power amplifier. This PA is connected to an analog port on the PBXthe "paging channel"and the PBX sees the amplifier as an analog endpoint. Some PBX systems permit the use of TDM and analog telephones to be used as broadcast endpoints, too. 5.5.2. BargingBarging is similar to overhead paging, but instead of broadcasting the caller's voice over a large group of endpoints, the caller can send his voice to a single extension. It's called barging because this feature tends to allow callers to interrupt calls in progress. Some PBX dialects call this feature announce . 5.5.3. Voice MailVoice mail is one of the most beloved telephony applications. Essentially, it records voice messages on behalf of people who aren't available to answer their calls. Practically everybody uses a form of voice mail, from the old-fashioned cassette tape answering machine all the way up to sophisticated multisubscriber voice mail services. Some switches have voice mail built in, but most offload the voice mail functions to a dedicated server, usually a PC running a flavor of Unix, Windows, or even OS/2. Messages are stored as digitized sound files when the caller is prompted to speak. Later, the intended recipient plays back the voice mail messages from a phoneeither the phone attached to the same switch as the voice mail server or perhaps from a phone on the PSTN that has dialed access to the voice mail server. 5.5.3.1 Message notification (pager, email, etc.)Some voice mail servers add the ability to notify each user when she has messages waiting. This may mean signaling the PBX to light an indication lamp on that user 's phone, or it may mean causing that user's phone to produce a stuttering, abnormal dial-tone when the receiver is off the hook. In either event, the idea is to notify the user that messages are awaiting an ear. Some network-aware voice mail servers can send an email to a user when he has messages waiting, or even email the message itself, in the form of a WAV file, for example. Most voice mail servers support some kind of dialed notification as wellmeaning numeric or alphanumeric paging or an automatic agent that calls the user's cell phone to tell, via a recorded voice, that new messages are waiting to be heard . The user can then listen to the messages if he wants. With some tweaking and a few additional software packages, a Linux-based Asterisk server can be set up to replicate all of these scenarios. In its default configuration, Asterisk can be used to automatically notify voice mail subscribers by email when they've received a callusing sendmail or qmail. |
5.6. Advanced Call-Handling ApplicationsHere are some call-handling applications that, while a little more advanced, your users may well insist on having. 5.6.1. Call Parking and OrbitCall parking is a form of hold and transfer offered on some PBXs. It allows calls to be placed on hold at ad hoc virtual extensions (i.e., parked) until the intended recipient of the transfer can be located. She then dials the virtual extension and is connected with the holding caller. Orbit adds a bit of functionality to call parking by causing the holding call to eventually ring back at the phone where it was parked to begin with (orbiting) or perhaps ring another phone in a programmed sequential group . 5.6.2. Project 5.2. Set Up Call ParkingWhere do calls go when they get parked? Parking zones. In reality, these zones are just extensions that Asterisk sets up and tears down using its built-in parking application. The extensions themselves cannot be used for any other purposeso, if you define a particular range of extension numbers to be used for parking, those numbers are off-limits as "real" extensions. By default, Asterisk gives you 20 parking zones, extensions 701-720. The way you park a call in progress is to transfer it to extension 700, and it will automatically be parked in the lowest available parking zone, starting with 701. To enable call parking, you'll just need to make sure:
The contents of features.conf (or parking.conf ) should look like this:
[general]
parkext => 700
parkpos => 701-720
context => parkedcalls
Don't forget to issue a "restart now" at the Asterisk CLI. Try calling into your PSTN interface from a second telephone company line or from your cell phone. When your ring group from Project 4.2 rings, answer the call on one of the SIP phones, then perform a transfer to extension 700. On the Cisco 7960, this is done by pressing the More softkey, then the Transfer softkey, then dialing 700, then pressing the Dial softkey. A spoken voice will tell you which park extension is going to hold the call. Then, press the Transfer softkey again to complete the park. The call with your cell phone will cease on the 7960, but the softPBX is keeping the call on hold, parked at extension 701. Subsequent calls would be parked at 702, 703, and so on. Now, go get yourself a cup of coffee or a refreshing ice water. When you return, assuming your cell phone hasn't run out of battery power, that call will still be parked. To unpark it and resume it, call 701 from one of your SIP phones. 5.6.2.1 Put that call in orbitTo add an orbit-style timer to the parking zone, so that the holding call automatically rings back to the parker , add the following to features.conf : parkingtime => 120 Now, parked calls will orbit back to the parker after exactly 2 minutes. This will help if, in the course of getting that cup of coffee, you forgot you parked a call. 5.6.3. Automatic Call ReturnACR is a function generally ascribed to the PSTN, especially when caller ID isn't available. By dialing a DTMF code on the phone, *69 in many areas, a PSTN subscriber can automatically return the call of the last person to have called his line. (This is a function of SS7's CLAS feature set.) Some PBXs support a similar function. 5.6.4. Hunt Groups and Ring GroupsHunt groups are logical, sequential groups of endpoints that ring individually when the phone before them in the sequence is busy or unavailable. In a group of three phones, phone B will ring only when phone A is busy, and phone C will ring only when phones A and B are both busy. Ring groups , conversely, are groups of phones that ring simultaneously until one of them is answered , connecting the call. Then the rest of the phones stop ringing until the next call comes to the ring group. An example of a ring group configuration using Asterisk is given in Chapter 4. 5.6.5. Project 5.3. Set Up a Private Hunt Group5.6.5.1 What you need for this project:
To configure Asterisk for a sequential hunt group of private phones, let's start with the extension configuration ( extensions.conf ) for the IP phones used in the last couple of examples:
exten => 103,1,Dial(SIP/103,40,r)
exten => 104,1,Dial(SIP/104,40,r)
Consider that extensions 103 and 104 both ring a SIP phone for 40 seconds each, individually. A hunt group would ring them both, one at a time for a certain duration, in sequence. Here's a bit of dial-plan that establishes a sequential ring group at extension number 100 consisting of SIP phones 103 and 104:
exten => 100,1,Dial(SIP/103,10,r)
exten => 100,2,Dial(SIP/104,10,r)
So, 100's first priority is to attempt to connect the call on SIP phone 103. It rings that phone for 10 seconds before giving up and going on to its next priority, which is to ring SIP phone 104. It's the second property of the exten declaration that assigns a prioritycheck out Chapter 17 for the details on the exten declaration in Asterisk. 5.6.5.2 Add cell phone bridging to this hunt groupIt's not just private phones that can be the destination for a sequential hunt group. You can add outside dialing instructions, too. The following configuration adds a third sequence in the hunt group, the dialing of a PSTN phone number. This could be a cell phone, which would have the effect of making you very hard not to get hold of when somebody dials your 100 extension: exten => 100,3,Dial(Zap/1/12165241234,40,r)
5.6.6. Hold QueuesWhen more people are calling into a system than there are attendants to answer their calls, those inbound callers must be put on hold until an attendant becomes available to deal with them. The hold queue is a call-ordering application that keeps people waiting in line in the same order in which the phone system originally fielded their calls. This way, people who called in after you don't get on the phone with an attendant before you do. Hold queues are most common in call centers where lots of people are answering a very high volume of calls simultaneously. If you've ever called the electric company or insurance company to ask a question about your bill, then you've almost certainly made your way through a hold queue. 5.6.7. DirectoriesA directory application in telephony is the same as a directory in the phone book sense or in the network object sense. If you've ever dealt with LDAP, Novell NDS, or Microsoft Active Directory, then the concept of an online directory should be familiar. In the case of telephony, the directory provides subscribers and inbound callers alike with information about how to reach people on the phone system. This information is presented either on an endpoint's display, in a web-based or PC application, or through audible interactive voice reponse prompts in a phone connected to the host system. Most telephone system directories allow you to search for a contact's extension by "spelling" her name using the alpha-equivalent dial-pad technique or by choosing from a list of departments in order to narrow a large directory down to a particular contact in several steps. Once found, most directories can dial the contact's extension or phone number and connect the user by transferring the call.
5.6.8. PresencePresence isn't so much an application as a genre of applications designed to make it easier to find a particular phone user. This may mean ringing his desk phone and cell phone simultaneously or sequentially, or it may mean simply allowing him to notify an attendant when he's available to receive calls. It may also mean publishing information about his availability, or presence, in a directory application. This information might be the user's current location or possibly a list of people from whom he is willing to receive phone calls at the moment. This is the rough extent of presence applications in traditional telephony. Presence is implemented much more completely in VoIP than in PBX settings, thanks to standards that more capably deal with presence issues. One such standard is SIMPLE, or SIP Instant Messaging Presence Leveraging Exensions. 5.6.9. BridgingWhen a call is bridged , it is simultaneously connected to more than one endpoint. This could mean it is bridged between two users on separate phones or bridged between two phones on behalf of a single user. Why would a single user ever want to field the same call on two phones at once? People don't call themselves, after all. Well, really, it's quite useful. Beginning a call on the desk phone, bridging it to a cell phone, walking out the building and driving away while continuing the call on that cell phone, then returning to the office and resuming the call on the desk phone, all without any disconnection or interruption of the callthat's an obvious "killer app" for bridging. But there are other uses for itrecording calls, for example, requires bridging, because both the person talking and the recording device need a connection to the call. This function is fairly rare among traditional PBX systems, but many who have it swear by it. |
|
Switching to VoIP Authors: Wallingford Th. Published year: 2005 Pages: 46-47/172 |