Enabling Pub/Sub notifications lets you receive a notification each time a Insights event completes. You can configure Insights to send a notification for all events or only specified events. To learn more about the events that can trigger Pub/Sub notifications, see the reference documentation.
Prerequisites
- Follow the instructions to create a Pub/Sub topic and a pull subscription.
Enable Pub/Sub notifications
You can configure Insights to send a notification for specific events only or for all events. The following code sample configures Insights to only send a notification each time a conversation or an analysis is created.
REST
Before using any of the request data, make the following replacements:
- PROJECT_ID: your Google Cloud project ID.
- TOPIC_ID: the ID for the notification topic (for example, notify each time a conversation is created). Each notification topic should have a unique ID.
HTTP method and URL:
PATCH https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/settings?updateMask=pubsub_notification_settings
Request JSON body:
{ "pubsub_notification_settings": { "create-conversation": "projects/PROJECT_ID/topics/TOPIC_ID_1", "create-analysis": "projects/PROJECT_ID/topics/TOPIC_ID_2" }, }
To send your request, expand one of these options:
You should receive a JSON response similar to the following:
{ "name": "projects/PROJECT_ID/locations/us-central1/settings", "createTime": "2021-01-20T10:10:10.123000Z", "updateTime": "2021-01-20T11:11:11.456000Z", "pubsubNotificationSettings": { "create-conversation": "projects/PROJECT_ID/topics/TOPIC_ID_1", "create-analysis": "projects/PROJECT_ID/topics/TOPIC_ID_2" } }
Python
To authenticate to Insights, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.
Java
To authenticate to Insights, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.
Node.js
To authenticate to Insights, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.
Content of the Pub/Sub message
The content of the Pub/Sub message depends on the event that triggers that Pub/Sub notification.
Trigger | Message Data | Message Attributes |
---|---|---|
create-analysis | Long-running operation whose response is an analysis | {"operation_name": "projects/{project}/locations/{location}/operations/{operation}"} |
create-conversation | Conversation | {"conversation_name": "projects/{project}/locations/{location}/conversations/{conversation}"} |
export-insights-data | Long-running operation whose response is empty | {"operation_name": "projects/{project}/locations/{location}/operations/{operation}"} |
ingest-conversations | Long-running operation whose response is empty | {"operation_name": "projects/{project}/locations/{location}/operations/{operation}"} |
update-conversation | Conversation | {"conversation_name": "projects/{project}/locations/{location}/conversations/{conversation}"} |
upload-conversation | Long-running operation whose response is empty | {"operation_name": "projects/{project}/locations/{location}/operations/{operation}"} |