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.0b5.tar.gz (24.6 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: speechly_api-0.1.0b5.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.0b5.tar.gz
Algorithm Hash digest
SHA256 be465280c41c458efe357e0e3073dc7a0e7700d9a1bae78b7bd8ec75fd6769b5
MD5 97d9d17838c1e9298db7ce990ad348ef
BLAKE2b-256 9ebed1b98ad15f7f86d02a7f1452a4095dd549075c52b4776ac55d91b695aaa3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: speechly_api-0.1.0b5-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.0b5-py3-none-any.whl
Algorithm Hash digest
SHA256 559843672621a0038533cdb42b38b7c622be03371d66e1e372f8acc0c2f7fac1
MD5 af513f31589215e4984bca988d61ce8f
BLAKE2b-256 c69ee6611a4eed521cda57df2834c43ff3558f1bcf3db4ef9576dff9c07f613a

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