Skip to main content

Speechly Public Protobuf Stubs

Project description

Speechly

Complete your touch user interface with voice

Speechly website   |   Docs   |   Blog

Speechly API

This repository stores the definitions and generated code for Speechly public APIs.

Protocol buffers definitions are located in speechly/.

Generated Go code and the module is located in go/, Python code and package in python/, Javascript code and package in javascript/ and Swift code in Sources/. Swift Package Manager requires the manifest to be in the root of the repository, hence why Swift code is not put into its dedicated subdirectory.

Make sure to check language-specific READMEs.

Building

You can run the build for all languages with make build from the root of this repo.

Using Swift stubs

You can add Swift stubs to your project using Swift Package Manager. Here's an example configuration:

// swift-tools-version:5.3

import PackageDescription

let package = Package(
  name: "my-package",
  products: [
    .executable(name: "SomeName", targets: ["SomeTarget"]),
  ],
  dependencies: [
    .package(name: "speechly-api", url: "https://github.com/speechly/api.git" , from: "1.0.0-alpha.1"),
  ],
  targets: [
    .target(
      name: "SomeTarget",
      dependencies: [
        .product(name: "SpeechlyAPI", package: "speechly-api"),
      ]),
  ]
)

Thereafter you can use the stubs in your code (you will most likely need to add grpc-swift and swift-nio dependencies to write gRPC clients):

import NIO
import GRPC
import SpeechlyAPI

class IdentityClient {
  let client: SpeechlyAPI.Speechly_Identity_V1_IdentityClient

  init() {
    let group = GRPC.PlatformSupport.makeEventLoopGroup(loopCount: 1)
    let channel = GRPC.ClientConnection.secure(group: group).connect(host: "api.speechly.com", port: 443)

    self.client = SpeechlyAPI.Speechly_Identity_V1_IdentityClient(channel: channel)
  }

  func login(appId: String, deviceId: String) -> NIO.EventLoopFuture<String> {
    let request = SpeechlyAPI.Speechly_Identity_V1_LoginRequest.with {
      $0.appID = appId
      $0.deviceID = deviceId
    }

    return self.client.login(request).response.map({ (response: SpeechlyAPI.Speechly_Identity_V1_LoginResponse) -> String in
      return response.token
    })
  }

  deinit {
    let future = self.client.channel.close()

    do {
      try future.wait()
    } catch {
      print("Error closing gRPC channel: \(error)")
    }
  }
}

About Speechly

Speechly is a developer tool for building real-time multimodal voice user interfaces. It enables developers and designers to enhance their current touch user interface with voice functionalities for better user experience. Speechly key features:

Speechly key features

  • Fully streaming API
  • Multi modal from the ground up
  • Easy to configure for any use case
  • Fast to integrate to any touch screen application
  • Supports natural corrections such as "Show me red – i mean blue t-shirts"
  • Real time visual feedback encourages users to go on with their voice
Example application Description
Instead of using buttons, input fields and dropdowns, Speechly enables users to interact with the application by using voice.
User gets real-time visual feedback on the form as they speak and are encouraged to go on. If there's an error, the user can either correct it by using traditional touch user interface or by voice.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

speechly_api-0.1.0b6.tar.gz (24.6 kB view details)

Uploaded Source

Built Distribution

speechly_api-0.1.0b6-py3-none-any.whl (30.6 kB view details)

Uploaded Python 3

File details

Details for the file speechly_api-0.1.0b6.tar.gz.

File metadata

  • Download URL: speechly_api-0.1.0b6.tar.gz
  • Upload date:
  • Size: 24.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.8.6

File hashes

Hashes for speechly_api-0.1.0b6.tar.gz
Algorithm Hash digest
SHA256 8630c3177f1a00c8d74db4c897bfeb163a24d31d39ab339824198c18e4557236
MD5 4753c8ac71fc610078aabd4b72beffe5
BLAKE2b-256 b8d9bfd4e1987337f0b4aa48329328ccc3016489ffe556479aaa917084b76ce8

See more details on using hashes here.

File details

Details for the file speechly_api-0.1.0b6-py3-none-any.whl.

File metadata

  • Download URL: speechly_api-0.1.0b6-py3-none-any.whl
  • Upload date:
  • Size: 30.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.8.6

File hashes

Hashes for speechly_api-0.1.0b6-py3-none-any.whl
Algorithm Hash digest
SHA256 0a6694d34adb27e95ecd56650a2759feb9244baf18d615809296821f8f38e7a0
MD5 c46d28f625c08ab6e02aa5c5c68e7c8a
BLAKE2b-256 3b66feda705d4402f3c0314c9e4e3845c315cb95e8b22104bf947a0ebd0ce974

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page