Skip to content

Latest commit

 

History

History
95 lines (67 loc) · 4.52 KB

README.md

File metadata and controls

95 lines (67 loc) · 4.52 KB

Symbl.ai Go SDK

The Symbl.ai Go SDK provides a convenient method to work with our APIs, from applications written in Go. A prescribed or opinionated set of interfaces, classes, and functions help you quickly bootstrap to using the Symbl.ai platform and unlock conversation intelligence.

We are working diligently to support every aspect of Symbl.ai APIs. Currently, we support the following:

  • Streaming API:

    • WebSocket enabled
    • Easy to implement real-time language understanding
    • For local voice capture, provides an easy-to-understand library to enable microphone audio as an input source
  • Asynchronous APIs:

    • Transcription/Messages
    • Dynamic Topics
    • Questions
    • Follow-Ups
    • Entities
    • Action Items
    • Summary
    • Analytics
    • Trackers
    • (Applied AI) Call Score
    • (Applied AI) Insights UI
  • Management APIs:

    • Entities: Get, Create, Delete
    • Bookmarks: Get, Create, Delete
    • Trackers: Get, Create, Delete

IMPORTANT: This project is in pre-release status. Since this is the first release, we reserve the right to make breaking API changes at this time.

Documentation

See the API docs.

Requirements

The minimal Go version supported is 1.18. Realistically, much older versions will work, but let’s start with that first as we launch this project.

Installation

First, make sure that Go is installed on your system with the following command in Mac/Linux console or Windows command prompt:

$ go version
go version go1.18.4 darwin/arm64

To install Go, visit the installation guide which covers Linux, Mac and Windows.

Configuration

The SDK needs to be initialized with your account's credentials APP_ID and APP_SECRET, which are available in your Symbl.ai Platform. If you don't have a Symbl.ai Platform account, you can sign up here for free.

You must add your APP_ID and APP_SECRET to your list of environment variables. We use environment variables because they are easy to configure, support PaaS-style deployments, and work well in containerized environments like Docker and Kubernetes.

export APP_ID=YOUR-APP-ID-HERE
export APP_SECRET=YOUR-APP-SECRET-HERE

Examples

You can find a list of very simple main-style examples to consume this SDK in the examples folder. To run these examples, you need to change directory into an example you wish to run and then execute the go file in that directory. For example:

$ cd examples/async-file
go run async-file.go

For the Streaming API (Real-Time) Example

The Streaming API (Real-Time) example makes use of a microphone package contained within the repository. That package makes use of the PortAudio library which is a cross-platform open source audio library. If you are on Linux, you can install this library using whatever package manager is available (yum, apt, etc.) on your operating system. If you are on macOS, you can install this library using brew.

Community

If you have any questions, feel free to contact us at [email protected] or through our Community Slack.

This SDK is actively developed, and we love to hear from you! Please feel free to create an issue or open a pull request with your questions, comments, suggestions, and feedback. If you liked our integration guide, please star our repo!

This library is released under the Apache 2.0 License