TranscriptBot: Real-time voice transcription Slack bot
Introduction
TranscriptBot is a command-line utility that listens to the sound input from your mic, transcribes each sentence it hears using the Google Web Speech API, and posts it to Slack in real-time. It lets people on your team who are not physically present follow along a meeting or conversation without having to join in a video conference call.
Installation
- Install ffmpeg:
brew install ffmpeg
(Mac OS X) orapt-get install ffmpeg
(Ubuntu). - Install portaudio:
brew install portaudio
(Mac OS X) orapt-get install portaudio19-dev
(Ubuntu). - Install TranscriptBot:
pip install transcriptbot
Setting up an incoming webhook for your channel
To use TranscriptBot on a given Slack channel, you first need to set up an incoming webhook. Here's how:
- Sign in to your Slack team and create a new webhook after selecting the channel you want your bot to post to.
- Copy the resulting Webhook URL and add it to TranscriptBot:
$ transcriptbot hooks add my-new-hook https://hooks.slack.com/services/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
# if you want to use the hook in your next recording
$ transcriptbot hooks use my-new-hook
Repeat this process every time you want to post to a new channel.
Usage options
transcriptbot - Real-time voice transcription Slack bot
Usage:
transcriptbot record [-i <audio-device>] [--no-slack] [-k <hook-url>] [-n <name>]
transcriptbot hooks add <hook-name> <hook-url>
transcriptbot hooks remove <hook-name>
transcriptbot hooks use <hook-name>
transcriptbot hooks list
transcriptbot list_audio_devices
transcriptbot use_name <name>
Options:
--version Show version.
-h, --help Show this screen.
-i, --audio-device Specify audio device to record with (default = 0).
-k, --hook-url Hook URL to use to post transcription to Slack.
-n, --name Name to appear on Slack (default = your OS user name).
--no-slack Print the transcripts but do not post them to Slack.
License
MIT