Call Park is a Centrex-type feature. You can use Call Park to place an active call on hold and then resume the call from any other Centrex extension. Following the basic strategy for call tests I outlined previously:
- We will use lines A, B, and C; A and C must be Centrex lines, B can be an outside line.
- A will be the terminator. B will be the originator and the held party. C will be the retriever.
- B calls A, A answers, A places B on hold, A hangs up, C retrieves the call.
- The first two steps are already defined as a method on CallGenerator, so there’s no real work there. A little bit of poking around for various systems shows that there are several methods for A to put B on hold, mainly consisting of A performing a hook flash and dialing an access code. We’ll plan on putting the access code for Call Park into a config file. The same goes for Call Retrieve by C. We’ll also add a voice path verification after the call is retrieved — this is a method on CallGenerator so it isn’t much extra work on our part.
- A simple variant would be for A to be the retriever. This is actually an easier case to test, but if we write the script expecting A, B, C, we can just tell it to use A in place of C and the variant script is “free”. Another variant would have A as the originator and B as the terminator.
- An edge case might include B hanging up before C can retrieve the call. Then when C performs the Call Retrieve procuedure an error will occur. To write this script, we’ll need to figure out what that error is supposed to be (probably an error tone like reorder, but possibly a recorded message).
- A crazy variant would be for B, while on hold, to perform the Call Park procedure. (In this case, B would have to be a Centrex line.) Even crazier would be for B to then attempt to Call Retrieve A’s parked call (himself!). Warning: do not attempt this. You could create a black hole and get sucked in, causing severe, widespread property damage and injury or death.
Related posts:


