Overview
TopView Voice Notification makes VOIP phone calls for alarm notification.
The VOIP protocol is SIP. TopView is a "SIP client" that connects to the SIP Server to make phone calls.
Each phone call in TopView is made by a separate call process (executable) that
- connects to the SIP Server
- registers with the SIP Server
- makes the phone call
- completes the phone call (hangs up)
- unregisters with the SIP server
Issue: Unregister event (TopView 6.35 and earlier)
An issue was discovered where a TopView VOIP phone call in v6.35 and earlier may not properly unregister with the SIP Server at the end of the call.
Even though the TopView call process that connected and registered the call is no longer running or connected to the SIP Server, some SIP Servers may persist the connection/registration if the unregister does not occur.
How this issue may present itself
If TopView is not successfully unregistering at the end of a call, one of the following may occur:
- TopView is able to register and make a call, or a few calls, but then fails to register future calls. This can occur if the SIP Server is not cleaning up the previous connections and limits the user/extension to a certain number of concurrent connections. After TopView makes this number of calls, future calls will fail to register.
- TopView will periodically either register successfully and call, or fail registration and not call. This can occur if the SIP Server cleans up older connections (that did not unregister) at a slower rate than new call connections/registrations are occurring.
In addition you may see the following message in the log file for a TopView call that cannot register:
403;text="Register exceeds max contacts"
How to resolve this issue
- We have issued a patch for TopView v.6.35 to resolve this issue. This patch is available on the TopView 6.35 download page's patches section and labeled as patch "6.35.1.2 VOIP Phone call unregister".
If you are using the Grandstream UCM device you should also enable the keep-alive settings described below.
- If you are unable to upgrade to 6.35 and are using the Grandstream UCM device to make calls, follow the information below to enable keep-alive for the TopView extension(s).
Grandstream UCM device for VOIP calls over analog lines
As mentioned in the
TopView UCM Configuration document, TopView users making phone calls through a Grandstream UCM device should enable the TopView Voice Notification setting to require registration with the SIP Server. If TopView is not correctly unregistering at the end of a call, the following extension settings can be used as a workaround.
The Grandstream UCM device contains an extension setting that will monitor the connection from a call to ensure that the connection is still alive - if the connection is not alive it will close the connection and unregister the previous registration. If TopView is failing to unregister calls, this setting will force the Grandstream to clean up the connection after the call has completed.
- Log into the Grandstream UCM device (web browser)
- From the left menu select
Extension/Trunk > Extensions
- For each extension used by TopView, click the edit button (pencil) to the right of the extension
- Check the box "Enable Keep-alive"
- To the right of the checkbox is the Keep-alive Frequency. Set this to 10 (seconds)
- Set "Concurrent registrations" to 10
- Click [Save] then [Apply Changes]
How an unregistered TopView extension presents itself in the Grandstream Web UI
The listed extensions include a "Status" column with one of the following values:
- Unavailable: there is no SIP client registered to the extension
- Idle: a SIP client is registered on the extension, no call is active
- Ringing: the SIP client is registered and the extension is ringing
- In Use: the SIP client is registered and a call is active
When a TopView call is not active, the listed status for the TopView extension should be "Unavailable". If the status column is "Idle", this indicates that the call was not unregistered.