The structure SL_APPL_INFO_ST provides the call information tag string and specifies how much of the appl_info array is being used.
typedef struct { size_t appl_info_length; char appl_info[SL_MAX_APPL_INFO_LEN] ; } SL_APPL_INFO_ST ;
This structure, which forms part of a message block to be communicated between a signaling process and a state table application, is only dealt with if the corresponding signaling process has registered with the capability SL_SIGPROC_CAPABILITY_APPL_INFO (see SL_SIGPROC_CAPABILITY_TYPE (signaling process capability) for more information).
This array holds the call information tag string. The maximum length of the tag string, APPL_INFO_LEN, is defined in slcommon.h. For any of the state table actions: MakeCall, AnswerCall, TransferCall, ReconnectCall and TerminateCall, the string in SV541 (System: Call Info: Info out) is copied to the appl_info field before the appropriate action; SV542 is set with the response from the signaling process when the action returns. Refer to the Blueworx Voice Response for AIX: Application Development using State Tables information for more information about state table actions and system variables.
In the case of an SL_CALL_SETUP_IND primitive (used to alert the application about a new incoming call), any call information in appl_info sent from a signaling process is written to SV542 right from the start of the state table (assuming the process has previously registered with the capability SL_SIGPROC_CAPABILITY_APPL_INFO). In the case of an SL_CALL_DISCONNECT_IND primitive (used to alert the application about a hangup event from the far end), the appl_info field is written to SV543 rather than SV542, as the hangup may occur in the middle of a call action that is itself writing to SV542.