File Exporter
Retrieve data and reports via a secure API for programmatic access to ASAPP data.
S3 Reports
Download data and reports via S3.
Real Time Event API
Access real-time data from ASAPP Messaging.
Send data to ASAPP
Send data to ASAPP via S3 or SFTP.
Metadata Ingestion
Send conversation, agent, and customer metadata.
Batch vs Realtime
One high-level differentiating feature of these channels is how the underlying data is processed for reporting:- Real-time: Processed data flows to the reporting channel as it happens.
- Batch: Processed data aggregates into time-based buckets, delivered with some delay to the reporting channel.
- Reports visible in ASAPP’s Desk/Admin are considered real-time reports.
- RTCI reports are real-time reports.
- ASAPP’s S3 reports are batch reports, delivered with a predictable time delay.
- Historical Reports are batch reports.
Batch vs Real-time Metric Discrepancies
Real-time metrics are calculated with a continual process, where computations are evaluated repeatedly with the most current data available. With multiple active and potentially geographically dispersed instances of an application communicating asynchronously across a global message bus, at times the data used to calculate real-time metrics can be intermediate or incomplete. On the other hand, metrics computed using batch processing are computed with all available, terminal data for each reported interaction, and so can provide a more accurate metric at the expense of a time delay vs real-time reporting. ASAPP S3 reports, for example, are normally computed over hours or days, and can therefore incorporate the most complete set of data points required to calculate a metric. As a simplified example, let’s consider a metric that shows a daily average for customer satisfaction ratings. Let’s assume:- the day starts at 8:00AM
- batch processing works against hourly aggregate buckets
- batch calculations run at 5 minutes past the hour
- it is a very slow day :)
At 8:00 AM, batch processing will not have incorporated the rating that was provided at 8:00AM. So the average rating can’t be computed for a batch report. Since real-time reporting has access to up-to-the-minute data, real-time reporting shows a value of 4 for the daily average customer satisfaction rating.
At 12:00PM, the real-time metric shows an average satisfaction over 4 transactions as 3.25. The batch system shows the average satisfaction rating as 4 over 3 transactions, since the 12:00 transaction has not yet been incorporated into the batch processing calculation. Given our example scenario, the interactions at 12:00 and 12:05 would not be incorporated into the batch reported metric until 1:05PM.
In this simplified example, the batch processed metric would align with the real-time metric around 2:05 PM, once both the batch metric and the real-time metric are calculated against the same underlying data set.
The next example shows how values provided by real-time vs batch processing might show inconsistent values for “rep assigned time”.