Add Node.js WebSocket example scripts
listen.mjs: prints all events as JSON objects. transcripts.mjs: prints transcript text only. Both use Node 21+ built-in WebSocket — no libraries required. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
24
examples/listen.mjs
Normal file
24
examples/listen.mjs
Normal file
@@ -0,0 +1,24 @@
|
||||
// Connect to the STT server and print all events.
|
||||
// Usage: node listen.mjs
|
||||
|
||||
const PORT = process.env.STT_PORT ?? '11501'
|
||||
const ws = new WebSocket(`ws://localhost:${PORT}`)
|
||||
|
||||
ws.addEventListener('open', () => {
|
||||
process.stderr.write(`connected to ws://localhost:${PORT}\n`)
|
||||
})
|
||||
|
||||
ws.addEventListener('message', ({ data }) => {
|
||||
const event = JSON.parse(data)
|
||||
console.log(event)
|
||||
})
|
||||
|
||||
ws.addEventListener('close', () => {
|
||||
process.stderr.write('disconnected\n')
|
||||
process.exit(0)
|
||||
})
|
||||
|
||||
ws.addEventListener('error', (err) => {
|
||||
process.stderr.write(`error: ${err.message}\n`)
|
||||
process.exit(1)
|
||||
})
|
||||
19
examples/transcripts.mjs
Normal file
19
examples/transcripts.mjs
Normal file
@@ -0,0 +1,19 @@
|
||||
// Connect to the STT server and print transcript text only.
|
||||
// Usage: node transcripts.mjs
|
||||
|
||||
const PORT = process.env.STT_PORT ?? '11501'
|
||||
const ws = new WebSocket(`ws://localhost:${PORT}`)
|
||||
|
||||
ws.addEventListener('open', () => {
|
||||
process.stderr.write(`connected to ws://localhost:${PORT}\n`)
|
||||
})
|
||||
|
||||
ws.addEventListener('message', ({ data }) => {
|
||||
const event = JSON.parse(data)
|
||||
if (event.event === 'transcript') {
|
||||
console.log(event.text)
|
||||
}
|
||||
})
|
||||
|
||||
ws.addEventListener('close', () => process.exit(0))
|
||||
ws.addEventListener('error', () => process.exit(1))
|
||||
Reference in New Issue
Block a user