Article Quicklinks (opens in new tab):

Before Starting

Setting Up an Automation

Exporting Speech-to-Text Transcriptions

> Steps for Transcription

> Steps for Export to Slack

Troubleshooting Tips

Before starting, please make sure:

  • You've successfully added an Expert or Custom plan with CloudTalk

  • CloudTalk Support has enabled Speech-to-Text for your account

  • Your team has a Slack channel which has been connected with CloudTalk

  • Token permissions for your team Slack channel include chat:write permissions, meaning your workplace allows data coming in from another app to post on Slack channels in place of an individual user. You can reference the Slack API help guide to read about how Slack tokens work

Setting up an Automation

You will start by logging into your CloudTalk Dashboard. On the lefthand side of the screen, you will see a list of other tabs under Dashboard. To reach the automations tab, click on Account > Workflow Automations.

Click the blue button to + Add Workflow.

You can give your new Workflow Automation a name to distinguish it from other automated tasks you set up.

Exporting Speech-to-Text Transcriptions

In this example, we will actually need to use two Workflows: one to automate transcription formation, and one to automate the export process of those transcriptions once they are finished. For another variation on this automation, check out our guide on exporting transcriptions to an API endpoint.

Example Goal:

  • Transcribe all call recordings.

  • Forward all transcriptions to Slack.

Steps for Transcription:

  1. Start by defining a trigger. In this example, our trigger will be whenever a recording gets uploaded. Under Object, we will select recording. For Action, we select uploaded.

    Note: This is the only available action for a recording Object.

  2. We could choose to set up an optional condition. Choose a dynamic Property and reference its example Value by looking at the Useful data for your Workflow section, if Conditions are necessary. For the purposes of our example, we don't really need one. We can click to Skip and continue without action.

  3. The next step is to choose an action type which will take place whenever a recording gets uploaded. We select the Action type > Speech to Text.

    1. For Key > language, enter into the Value box the appropriate language for our recordings. Choose from the Google Cloud list of languages and copy/paste the code listed in its BCP-47 column.

    2. For Key > model, you can choose a specific machine learning model. In most cases the phone_call model is sufficient for the CloudTalk platform.

    3. When Key > enhancedModel is set to true, a more advanced model which has been optimized for accuracy will be applied. However, this option will increase costs of transcription.

  4. Confirm and continue, Save and Activate.

Steps for Export to Slack:

  1. We must make a second Workflow for automating the export to Slack. It is always advisable to name Workflows descriptively.

  2. Define a trigger of Object type transcription and Action type created. This trigger will initiate any time a transcription gets created.

    Note: This is the only available action for a transcription Object.

  3. There are some relevant tags to choose from if Conditions are necessary, though we will not use any in our example. Click the white button to Skip and continue without action.

  4. The next step is to choose an action which will take place when our conditions are met. We select the Action type > Send notification to Slack.

  5. Under Values, various Keys should appear with their boxes already populated. These cannot be edited. The input token should autofill the first Key box. The x's which populate the Value box for Key: token are only placeholders. In order to connect to Slack, we must create a new token to enter here. In a separate tab, visit Slack's App Directory on your desktop and click on Installed apps, searching for and selecting CloudTalk. Copy and paste the generated token into the Value box. Refer to the Slack help center for additional guidance on Slack tokens.

  6. Enter the name of your Slack channel in the Value box for Key: channel. Our Slack channel name here is #call-transcript.

  7. Next to Key: text, we choose to enter a dynamic value, or a value that will populate based on information from the system. To accomplish this, we will click into the Value box for Key: text, then click on a keyword from the Useful data for your Workflow section. Clicking the blue + sign next to transcription opens up more options, from which we can choose a json or csv file format.

  8. We have chosen the dynamic value of the transcription.csv, which will send to Slack. We know the Slack notification will contain the content of a given transcription which has triggered the automation, in csv format.

  9. We can choose to Test now to make sure our conditions are working correctly. Be aware that clicking Submit for a Test will send a real Slack notification to the input in the Channel value. It's a good idea to make your team aware of the testing process.

  10. Remember to Save or Save and activate to put the automated Slack notification in place immediately.

We have now accomplished our goal of forwarding transcriptions to the team Slack channel, a process which we can later edit and toggle off or on at our choosing.

Troubleshooting Tips

  • When it comes to Slack:

    • Confirm your team's Slack app is up and running and that you are signed in

    • Check that you have successfully authorized Slack to access CloudTalk

    • Make sure your token scopes include chat:write permissions. Refer to the Slack API guides or the Slack help center for assistance.

  • Faulty conditions are often the result of unrecognized inputs in the Property box, or inputs in the Value box which will always result in no matches.

  • After clicking into the Property box, you must click one of the pre-selected keywords within the Useful data for your Workflow section to the right. Otherwise, refer to the images for proper formatting of dynamic values.

  • You can also refer to the Useful data for your Workflow section to validate whether the Value you entered seems to be a good match for the property you've chosen.

  • When setting a value for a condition that searches entered phone numbers, make sure you are using the number recognized through CloudTalk. Format matters. If the suggested value example in the Useful data for your Workflow section has a number with the format "+555555555555" (no hyphens included) but the entered value looks like "+555-555-555-555" (hyphens included), your condition will never find matches.

Related Links

How to forward Incoming SMS to Slack

Did this answer your question?