Socket
Book a DemoInstallSign in
Socket

@speechmatics/flow-client

Package Overview
Dependencies
Maintainers
2
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@speechmatics/flow-client

Javascript client for the Speechmatics Flow API

latest
npmnpm
Version
0.2.2
Version published
Maintainers
2
Created
Source

Speechmatics Flow client 🤖

Official Javascript client for the Speechmatics Flow API.

Installation

npm i @speechmatics/flow-client

[!WARNING]
For React Native, make sure to install the event-target-polyfill package, or any other polyfill for the EventTarget class

Usage

The two main exports from this package are the FlowClient class, and the fetchPersonas function.

The FlowClient class is an EventTarget. You can listen for incoming events including audio and transcription messages:

import { FlowClient, AgentAudioEvent } from "@speechmatics/flow-client";
const flowClient = new FlowClient('wss://flow.api.speechmatics.com', { appId: "example" });

function onAgentAudio(audio: AgentAudioEvent) {
  // audio.data is PCM16_SLE data. How you play this depends on your environment
  myAudioPlayFunction(audio.data)
}

flowClient.addEventListener("agentAudio", onAgentAudio);

flowClient.startConversation(YOUR_JWT, {
  config: {
    template_id: "flow-service-assistant-amelia",
    template_variables: {},
  },
  // Optional, this is the default
  audio_format: {
    type: 'raw',
    encoding: 'pcm_s16le',
    sample_rate: 16000,
  },
});

// PCM audio can be sent to the client (either f32 or int16 depending on the audio_format defined above)
function onPCMAudio(audio: Int16Array) {
  flowClient.sendAudio(audio);
}


function onSessionEnd() {
  // Ends conversation and closes websocket
  flowClient.endConversation();

  // Event listeners can also be removed like so
  flowClient.removeEventListener("agentAudio", onAgentAudio);
}

React hooks

See the package @speechmatics/flow-client-react for integration with React based projects.

Keywords

voice

FAQs

Package last updated on 18 Feb 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.