Campaign Group Status Reporting
Starting with release 8.1.512.02, Outbound Contact Server can send data about Campaign Group state changes to a Web or Application server. The data is communicated to the Web or Application server using HTTP POST. The following states and information can be reported:
- Campaign Group loaded
- Campaign Group started
- Campaign Group stopped
- Campaign Group unloaded
- Campaign Group dial mode change
OCS can also periodically send data about active Campaign Groups, with a user-configurable time interval.
Starting with release 8.1.517.04, OCS submits a set of real-time statistics related to the Campaign Group and its Calling Lists in the Campaign Group State POST HTTP notifications.
The following table describes statistics-related attributes that OCS passes to an external Web/Application server in the JSON body of the HTTP notification:
|GSW_STAT_BUSY_FACTOR||Non-negative numeric or null||Campaign Group||
|GSW_STAT_HIT_RATIO||Non-negative numeric or null||
|GSW_STAT_OVERDIAL_RATE||Non-negative numeric or null||Campaign Group||
|GSW_STAT_TIME_TO_COMPLETE||Non-negative numeric or null||
To configure this feature, use the following configuration options:
- Set send-campaigngroup-states to true to enable the feature.
- Set campaigngroup-states-uri to the URI of the Web or Application server.
- If you want to generate periodic messages about current Campaign Group activity that also contain Campaign Group statistics, set campaigngroup-states-interval to the frequency at which you want to send the messages (the default is 10 seconds).
OCS uses the following options to retrieve connection information about the configuration:
OCS uses the following Trace-level log messages to report that HTTP POST requests have been sent. No actions are required in response to these events.
|81000||TRACE||Sending HTTP status notification CampaignGroupState for Campaign Group %s to %s|| %s
Campaign Group name
%s URI to which the notification has been sent.
|An HTTP status notification has been sent to a Web or Application server that the status of a Campaign Group has changed. For information included in the JSON body of HTTP POST requests, see Fields in HTTP POST Requests to Web or Application Server, below.|
|81001||TRACE||Sending periodic HTTP status notification CampaignGroupState for Campaign Group %s to %s|| %s
Campaign Group name
%s URI to which the notification has been sent
|A periodic HTTP status notification has been sent to a Web or Application server for an active Campaign Group. For information included in the JSON body of HTTP POST requests, see Fields in HTTP POST Requests to Web or Application Server, below.|
There is no error-handling carried out by this feature. If the HTTP POST to the Web or Application server fails, no post-processing or retries are executed.
Fields in HTTP POST Requests to Web or Application Server
The fields in the table below are passed by OCS in the JSON body of HTTP POST requests to the Web or Application server. All mandatory fields are sent, but fields not relevant to the status change or periodic activity scenario are left unassigned or set to a default value:
|GSW_USER_EVENT||String||Yes||Set to CampaignGroupState.|
|GSW_DATE_TIME||String||Yes||Timestamp when action occurred; UTC time as seconds, with msec precision.|
|GSW_TENANT_NAME||String||Yes||Defaults to Unknown if not set.|
|GSW_TENANT_CCID||String||Yes||Defaults to Unknown if not set.|
|GSW_CAMPAIGN_GROUP_GUID||String||Yes||Unique UUID for Campaign Group|
|GSW_CAMPAIGN_TEMPLATE_NAME||String||Yes, if present in configuration|
|GSW_QUEUE_NAME||String||Yes||Name of the Voice Transfer Destination DN.|
|GSW_DIAL_MODE||Integer||No||Defined only for running Campaign Groups. Use Enumeration Values for GSW_CM_AttrDialMode.|
|GSW_OPTIMIZE_BY||Integer||No||Optimization method for the Campaign. Use Enumeration Values for GSW_CM_AttrOptimizeBy. Available for Predictive modes only.|
|GSW_OPTIMIZE_GOAL||Integer||No||Available for Predictive modes only.|
|GSW_CAMPAIGN_GROUP_STATE||Integer||Yes||Use Enumeration Values for GSW_CM_AttrGroupCampStatus.|
Identifies client request which has caused message generation. Use CM_ReqSetDialingMode when dial mode is changed.
Use CMMessageType enum values CM_ReqLoadCampaign, CM_ReqUnloadCampaign, CM_ReqStartDialing, CM_ReqStopDialing, or CM_ReqSetDialingMode.
|GSW_CAMPAIGN_GROUP_ACTOR||Integer||Yes|| Distinguishes action caused by OCS Client or automatic action taken by OCS itself (either per Schedule or per internal Campaign Group condition). Valid values are:|
0 (zero) -- Actor Type unknown