102 Global Call API for HMP on Windows Programming Guide — August 2006
Alarm Handling
network ASO ID. This define is useful in many contexts. For example, notification of all alarms on
a line device can be configured using the call:
gc_SetAlarmNotifyAll(..., ALARM_SOURCE_ID_NETWORK_ID, ...)
The ALARM_SOURCE_ID_NETWORK_ID is a value that can be used to represent, for a given
line device, whatever the network ASO ID happens to be.
8.2.3.1 Configuring Alarm Notification
In order for an alarm to be sent to the application, the “notify” attribute of the alarm must be set to
“yes”. Initially, the notify attribute of all alarms is set to “no”. The gc_SetAlarmConfiguration()
function is used to set and change the notify attribute for a specified alarm source object on a given
line device. To retrieve the status of the alarm configuration parameters, use the
gc_GetAlarmConfiguration() function.
Alternatively, the gc_SetAlarmNotifyAll() function can be used as a shortcut when the
application wants to change the notification status, that is, when the application wants to change
from “notify” to “no notify”, for all line devices that have the specified alarm source object.
8.2.3.2 Configuring Alarm Flow
The gc_SetAlarmFlow( ) function is used to further refine which of the alarms are sent (that is,
allowed to “flow”) to the application. Alarm flow configuration is controlled on a line device basis.
The alarm flow can be configured in any of the following ways:
All alarms are sent to the application
All, and only, blocking alarms are sent to the application
Only the first alarm on and the last alarm off are sent to the application
Only the first blocking alarm on and the last blocking alarm off are sent to the application
Note: To configure the alarm flow so that no alarms are sent to the application, use the
gc_SetAlarmConfiguration() function and set the notify attribute of all alarms to “no”.
To determine the current alarm flow options, use the gc_GetAlarmFlow() function.
8.2.3.3 Configuring Blocking and Non-Blocking Alarm Classification
For any given alarm source object, the gc_SetAlarmConfiguration() function can be used to set
and change which alarms are blocking or non-blocking. This information is stored in the
ALARM_LIST data structure.
To retrieve the status of the current alarm configuration, use the gc_GetAlarmConfiguration()
function.
8.2.3.4 Configuring Alarm Parameters
The gc_SetAlarmParm( ) function is used to set alarm parameters that control ASO parameters
such as timing. An example of a timing parameter would be setting how long a loss of