Contents
Submitting Call Report Records
When OCS attempts a call, it sends the call report record to Web or Application Server via an HTTP POST request. This record can be used to manage compliance with Contact Attempt rules.
Call report records are sent to an external system twice.
For each attempt to place a call made from a started outbound dialing campaign in autodial mode, OCS sends a call report record (an HTTP POST request with GSW_HIST_SEQUENCE_NUM: 0) to Web or Application Server. When the call is finalized with any result (Answer, Answering Machine, Abandoned, DoNotCall, and so on), the second record (an HTTP POST request with GSW_HIST_SEQUENCE_NUM: 1) containing the GSW_CALL_RESULT parameter is sent to Web or Application Server.
Note: The GSW_HIST_SEQUENCE_NUM: 1 record overwrites the GSW_HIST_SEQUENCE_NUM: 0 record when dialing rules are applied by the compliance manager.
Feature Configuration
Add the following configuration options, as described on the OCS Option Descriptions page in this manual:
- send-history
- history-uri
- history-wait-condition-threshold
- history-wait-recovery-timeout
- validation-race-condition-call-result
The data posted to Web or Application Server can contain the following attributes. Refer to the Reference Manual for a detailed description of each attribute.
| Attribute Name | Attribute Name | Attribute Name |
|---|---|---|
| GSW_ABANDONED | GSW_ACW_COMPLETED | GSW_AGENT_ANSWERED |
| GSW_AGENT_ID | GSW_AGENT_RELEASED | GSW_AGENT_RINGING |
| GSW_ANSWERED | GSW_BLOCKING_RULE | GSW_BLOCKING_RULE_TYPE |
| GSW_CALL_ATTEMPT_GUID | GSW_CALL_RESULT | GSW_CALL_TIME |
| GSW_CALLING_LIST | GSW_CALLING_LIST_DBID | GSW_CAMPAIGN_GROUP_GUID |
| GSW_CAMPAIGN_GROUP_NAME | GSW_CAMPAIGN_NAME | GSW_CAMPAIGN_TEMPLATE_NAME |
| GSW_CHAIN_ID | GSW_CHAIN_N | GSW_COMPLETE_PROCESSING |
| GSW_COUNTRY_CODE | GSW_CPD_COMPLETED | GSW_CPN_DIGITS_SET |
| GSW_CUSTOMER_ID | GSW_D_AREA_CODE | GSW_D_COUNTRY_CODE |
| GSW_D_STATE_CODE | GSW_D_TZ_JAVA_NAME | GSW_DEVICE_MASK |
| GSW_DIAL_MODE | GSW_DIALING | GSW_DIVERTED |
| GSW_GROUP_NAME | GSW_HIST_SEQUENCE_NUM | GSW_OPTIMIZE_BY |
| GSW_OPTIMIZE_GOAL | GSW_PHONE | GSW_PHONE_TYPE |
| GSW_POSTAL_CODE | GSW_QUEUED | GSW_QUEUE_NAME |
| GSW_RECORD_STATUS | GSW_RECORD_TYPE | GSW_RELEASED |
| GSW_RINGING | GSW_SCHEDULED_TIME | GSW_START_PROCESSING |
| GSW_STATE_CODE | GSW_TENANT_CCID | GSW_TENANT_NAME |
| GSW_TZ_JAVA_NAME | GSW_TZ_NAME | GSW_TZ_OFFSET |
| <USER FIELD KEY NAME> |
Responses
When OCS sends the HTTP POST request, Web or Application Server returns a response code:
- 200 OK — success
- 4xx or 5xx — failure
Re-submitting Failed Records
If OCS receives any response other than 200 OK from Web or Application Server after submitting the HTTP POST request, it treats the record as failed and re-submits the record.
OCS checks the value in the history-wait-recovery-timeout, which stores the time OCS should wait before re-submitting another HTTP POST request and will re-submit the HTTP POST request to Web or Application Server.
If OCS reaches the threshold specified in the history-wait-condition-threshold option, the wait condition is triggered, which means dialing is suspended until re-submission of all failed records is completed.
If OCS reaches the threshold specified in the history-wait-condition-threshold option before receiving a 200 OK response, it stops dialing.
Race Conditions
If OCS sends a pre-dial validation request to Web or Application Server for a contact record that Web or Application Server is currently processing but has not yet saved (for example, it has not yet sent a response or the record is marked for re-processing), a race condition occurs.
As a prevention measure, OCS checks for a race condition before submitting a pre-dial validation request. If it detects a race condition, it will not dial the record. Instead, OCS refers to the call result specified in the validation-race-condition-call-result option and attempts to apply that treatment to the call result.
In this scenario, the following log entry appears:
Predial check aborted due to race condition for phone %s
