Speechly Browser Client
Add voice features to any web app with Speechly Browser Client. It handles authentication, audio capture, network streaming and connection management with the Speechly Streaming API.
If you are using React, you can use the Speechly React Client instead. It provides the same functionalities, but provides a programming model that is idiomatic to React.
Documentation
Install
Using npm:
npm install @speechly/browser-client
Using yarn:
yarn add @speechly/browser-client
Using unpkg CDN:
CDN
<script type="module">
import { BrowserClient, BrowserMicrophone } from "//unpkg.com/@speechly/browser-client?module=true"
</script>
Usage
Create new BrowserMicrophone
and BrowserClient
instances:
import { BrowserClient, BrowserMicrophone } from '@speechly/browser-client';
const microphone = new BrowserMicrophone();
const client = new BrowserClient({
appId: 'YOUR-APP-ID',
logSegments: true,
debug: true,
});
Capture browser microphone audio:
const myButton = document.getElementById('myButton');
const attachMicrophone = async () => {
if (microphone.mediaStream) return;
await microphone.initialize();
await client.attach(microphone.mediaStream);
};
const handleClick = async () => {
if (client.isActive()) {
await client.stop();
} else {
await attachMicrophone();
await client.start();
}
};
myButton.addEventListener('click', handleClick);
React to API updates:
client.onSegmentChange((segment) => {
console.log('Tentative segment:', segment)
if (segment.isFinal) {
console.log('Final segment:', segment)
}
})
Contributing