Integrate AutoTranscribe into your SIPREC system using ASAPP Media Gateway
.WAV
media files with speaker-separated channels.
Recordings for training and real-time streams should have both the same sample rate (8000 samples/sec) and audio encoding (16-bit PCM).
See the Customization section of the AutoTranscribe Product Guide for more on data requirements for transcription model training./start-streaming
and /stop-streaming
endpoints of the Start/Stop API are used to control when transcription occurs for every call media stream (identified by the GUID/UCID) sent to ASAPP’s media gateway.
See the Endpoints section to learn how to interact with them.
ASAPP will not begin transcribing call audio until requested to, thus preventing transcription of audio at the very beginning of the SIPREC session such as standard IVR menus and hold music.
Stop requests are used to pause or end transcription for any needed reason. For example, a stop request could be used mid-call when the agent places the call on hold or at the end of the call to prevent transcribing post-call interactions such as satisfaction surveys.
transcript
type messages is JSON encoded with these fields:
Field | Sub field | Description | Example Value | |
---|---|---|---|---|
externalConversationId | Unique identifier with the GUID/UCID of the SIPREC call | 00002542391662063156 | ||
streamId | Unique identifier assigned by ASAPP to each call participant’s stream returned in response to /start-streaming and /stop-streaming | 5ce2b755-3f38-11ed-b755-7aed4b5c38d5 | ||
sender | externalId | Customer or agent identifier as provided in request to /start-streaming | ef53245 | |
role | A participant role, either customer or agent | customer, agent | ||
autotranscribeResponse | message | Type of message | transcript | |
start | The start ms of the utterance | 0 | ||
end | Elapsed ms since the start of the utterance | 1000 | ||
utterance | text | Transcribed utterance text | Are you there? |
transcript
message format:
GET /conversation/v1/conversation/messages
Once a conversation is complete, make a request to the endpoint using a conversation identifier and receive back every message in the conversation.
Message Limit
This endpoint will respond with up to 1,000 transcribed messages per conversation, approximately a two-hour continuous call. All messages are received in a single response without any pagination.
To retrieve all messages for calls that exceed this limit, use either a real-time mechanism or File Exporter for transcript retrieval.
utterances
data feed.
The File Exporter service is meant to be used as a batch mechanism for exporting data to your data warehouse, either on a scheduled basis (e.g. nightly, weekly) or for ad hoc analyses. Data that populates feeds for the File Exporter service updates once daily at 2:00AM UTC.
Visit Retrieving Data for AI Services for a guide on how to interact with the File Exporter service.
asapp-api-id
API Key and the asapp-api-secret
. You can find them under your Apps in the AI Services Developer Portal.All requests to ASAPP sandbox and production APIs must use HTTPS
protocol. Traffic using HTTP
will not be redirected to HTTPS
.POST /mg-autotranscribe/v1/start-streaming/
Use this endpoint to tell ASAPP to start or resume transcription for a given call.
When to Call
Transcription can be started (or resumed after a /stop-streaming
request) at any point during a call.
Request Details
Requests must include a call identifier with the GUID/UCID of the SIPREC call, a namespace (e.g. siprec
), and an identifier from your system(s) for each of the customer and agent participants on the call.
Agent identifiers provided here can tell ASAPP whether agents have changed, indicating a new leg of the call has begun. This agent information enables other services to target specific legs of calls rather than only the higher-level call.
guid
field expects the decimal formatting of the identifier.Cisco example: 0867617078-0032318833-2221801472-0002236962
Avaya example: 00002542391662063156
en-us
for English or es-us
for Spanish)customer
and agent
object. Each object contains a stream identifier (streamId
), status code and status description.
POST /mg-autotranscribe/v1/stop-streaming/
Use this endpoint to tell ASAPP to pause or end transcription for a given call.
When to Call
Transcription can be stopped at any point during a call.
Request Details
Requests must include a call identifier with the GUID/UCID of the SIPREC call and a namespace (e.g. siprec
).
guid
field expects the decimal formatting of the identifier.Cisco example: 0867617078-0032318833-2221801472-0002236962
Avaya example: 00002542391662063156
customer
and agent
object. Each object contains a stream identifier (streamId
), status code and status description. Each object also contains a summary
object of transcription stats related to that participant’s stream.
GET /conversation/v1/conversation/messages
Use this endpoint to retrieve all the transcript messages for a completed call.
When to Call
Once the conversation is complete. Conversation transcripts are available for seven days after they are completed.
/start-streaming
and /stop-streaming
endpoints, the following error codes may be returned:
Code | Description |
---|---|
400-201 | MG AutoTranscribe API parameter incorrect |
400-202 | AutoTranscribe parameter or combination incorrect |
400-203 | No call with specified guid found |
409-201 | Call transcription already started or already stopped |
409-202 | Another API request for same guid is pending |
409-203 | SIPREC BYE being processed |
500-201 | MG AutoTranscribe or AutoTranscribe internal error |
00002542391662063156
/mg-autotranscribe/v1/start-streaming
Request
transcript
messages are sent for each participant from ASAPP’s webhook publisher to a target endpoint configured to receive the messages./stop-streaming
endpoint to pause transcription and prevents hold music and promotional messages from being transcribed./mg-autotranscribe/v1/stop-streaming
Request