Compare commits

...

40 Commits

Author SHA1 Message Date
Dave Horton
6f5884f7be 0.0.69 2024-04-02 14:48:33 -04:00
Dave Horton
d5bc910907 typo 2024-04-02 14:48:26 -04:00
Dave Horton
2f6696bbf8 0.0.68 2024-04-02 14:45:17 -04:00
Dave Horton
2c19b34922 added googleOptions.recognizer_id to allow someone to specify a preconfigured google recognizer for STT 2024-04-02 14:45:08 -04:00
Dave Horton
c5d977da50 0.0.67 2024-04-02 08:36:02 -04:00
Hoan Luu Huu
a6f64710c1 support google v2 enable_voice_activity_events (#50) 2024-04-02 08:35:47 -04:00
Dave Horton
3463528127 0.0.66 2024-04-01 19:14:23 -04:00
Hoan Luu Huu
030eb5f847 support google stt version 2 (#49)
* support google stt version 2

* fix review comments

* fix review comment
2024-04-01 19:14:06 -04:00
Dave Horton
f8d07d340a 0.0.65 2024-03-30 09:10:18 -04:00
Hoan Luu Huu
8a96b05f23 feat fork audio support bidirectional audio stream (#48)
* feat fork audio support bidirectional audio stream

* update bidirectionalAudio
2024-03-30 09:09:17 -04:00
Dave Horton
a6a942c1c6 0.0.64 2024-03-14 11:18:49 -04:00
Dave Horton
85fa4714fb change dial to allow an array of dub verbs instead of a single one 2024-03-14 11:18:40 -04:00
Dave Horton
d047892fff 0.0.63 2024-03-11 17:45:21 -04:00
Dave Horton
11bb83f703 add dial.boostAudioSignal to set gain on B leg after dial 2024-03-11 17:45:12 -04:00
Dave Horton
c5a263ee68 0.0.62 2024-03-10 21:05:46 -04:00
Dave Horton
47f8a593f5 dub say can either be text or object with text and synthesizer (ie like say verb syntax) 2024-03-10 21:05:37 -04:00
Dave Horton
c9d2c9aa4d 0.0.61 2024-03-10 19:13:11 -04:00
Dave Horton
1ce577c8c9 add channel property to transcribe, can be used in dial verb to indicate to transcribe only one of the two channels (#47) 2024-03-10 19:12:40 -04:00
Dave Horton
dc0abfad02 0.0.60 2024-03-07 15:11:34 -05:00
Dave Horton
1e9285b9d9 add support for playing filler noise while waiting for app to process a gather (#46) 2024-03-07 15:10:55 -05:00
Dave Horton
f3f048d94f 0.0.59 2024-03-07 09:59:28 -05:00
Dave Horton
a737d8bcbb add config.boostAudioSignal and nested dub in dial verb (#45) 2024-03-07 09:58:59 -05:00
Dave Horton
c3d69e614e 0.0.58 2024-03-07 07:47:27 -05:00
Hoan Luu Huu
9277e053a6 support azure language identification mode (#44) 2024-03-06 12:05:24 -05:00
Dave Horton
954f9479c9 0.0.57 2024-03-04 18:11:01 -05:00
Dave Horton
58385e791b rework dub verb (#43) 2024-03-04 18:10:30 -05:00
Dave Horton
85aaab5856 0.0.56 2024-02-29 19:49:12 -05:00
Dave Horton
d70324485b add support for dub channel (#42) 2024-02-29 19:48:33 -05:00
Dave Horton
2cf2c15586 0.0.55 2024-02-27 12:49:51 -05:00
Dave Horton
f6ad050a32 Feat/ambient sounds (#41)
* add config.ambientNoise

* add answer verb to force answer
2024-02-27 12:49:19 -05:00
Dave Horton
ba02161f74 0.0.54 2024-02-25 15:20:25 -05:00
Dave Horton
fabf9255ea add specs to allow coach mode in conferencing, where one participant can only be heard by another (#40) 2024-02-25 15:19:26 -05:00
Dave Horton
3f1e7cbd3b 0.0.53 2024-02-12 10:43:18 -05:00
Anton Voylenko
ff6bea3168 tag for dial verb (#38) 2024-02-12 10:42:31 -05:00
Dave Horton
4ea66245d4 0.0.52 2024-02-07 08:30:03 -05:00
Dave Horton
faa99cdce3 modify deepgram onprem property names 2024-02-07 08:29:55 -05:00
Dave Horton
d017e739b1 0.0.51 2024-02-05 13:01:05 -05:00
Dave Horton
764383cf43 add support for deepgram on-prem with deepgramOptions.deepgramUri 2024-02-05 13:00:36 -05:00
Dave Horton
3f19ce4a24 0.0.50 2023-12-26 10:14:16 -05:00
Hoan Luu Huu
1e6b24181c support config->transcribe run in background (#37)
* support config->transcribe run in background

* wip

* fix review comments
2023-12-26 10:13:57 -05:00
4 changed files with 162 additions and 8 deletions

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@jambonz/verb-specifications",
"version": "0.0.49",
"version": "0.0.69",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@jambonz/verb-specifications",
"version": "0.0.49",
"version": "0.0.69",
"license": "MIT",
"dependencies": {
"debug": "^4.3.4",

View File

@@ -1,6 +1,6 @@
{
"name": "@jambonz/verb-specifications",
"version": "0.0.49",
"version": "0.0.69",
"description": "Jambonz Verb Specification Utilities",
"main": "index.js",
"scripts": {

View File

@@ -1,4 +1,11 @@
{
"answer": {
"properties": {
"id": "string"
},
"required": [
]
},
"sip:decline": {
"properties": {
"id": "string",
@@ -43,15 +50,28 @@
"bargeIn": "#bargeIn",
"record": "#recordOptions",
"listen": "#listenOptions",
"transcribe": "#transcribeOptions",
"amd": "#amd",
"fillerNoise": "#fillerNoise",
"notifyEvents": "boolean",
"reset": "string|array",
"onHoldMusic": "string",
"actionHookDelayAction": "#actionHookDelayAction",
"sipRequestWithinDialogHook": "object|string"
"sipRequestWithinDialogHook": "object|string",
"boostAudioSignal": "number|string"
},
"required": []
},
"fillerNoise": {
"properties": {
"enable": "boolean",
"url": "string",
"startDelaySecs": "number"
},
"required": [
"enable"
]
},
"listenOptions": {
"properties": {
"enable": "boolean",
@@ -67,6 +87,7 @@
"passDtmf": "boolean",
"playBeep": "boolean",
"disableBidirectionalAudio": "boolean",
"bidirectionalAudio": "#bidirectionalAudio",
"timeout": "number"
},
"required": [
@@ -91,6 +112,34 @@
"enable"
]
},
"transcribeOptions": {
"properties": {
"enable": "boolean",
"transcriptionHook": "string",
"recognizer": "#recognizer"
},
"required": [
"enable"
]
},
"dub": {
"properties": {
"id": "string",
"action": {
"type": "string",
"enum": ["addTrack", "removeTrack", "silenceTrack", "playOnTrack", "sayOnTrack"]
},
"track": "string",
"play": "string",
"say": "string|object",
"loop": "boolean",
"gain": "number|string"
},
"required": [
"action",
"track"
]
},
"dequeue": {
"properties": {
"id": "string",
@@ -177,6 +226,7 @@
"recognizer": "#recognizer",
"play": "#play",
"say": "#say",
"fillerNoise": "#fillerNoise",
"actionHookDelayAction": "#actionHookDelayAction"
},
"required": [
@@ -187,6 +237,8 @@
"id": "string",
"name": "string",
"beep": "boolean",
"memberTag": "string",
"speakOnlyTo": "string",
"startConferenceOnEnter": "boolean",
"endConferenceOnExit": "boolean",
"endConferenceDuration": "number",
@@ -218,13 +270,16 @@
"dtmfHook": "object|string",
"headers": "object",
"anchorMedia": "boolean",
"boostAudioSignal": "number|string",
"listen": "#listen",
"target": ["#target"],
"timeLimit": "number",
"timeout": "number",
"proxy": "string",
"transcribe": "#transcribe",
"amd": "#amd"
"amd": "#amd",
"dub": ["#dub"],
"tag": "object"
},
"required": [
"target"
@@ -309,6 +364,7 @@
"passDtmf": "boolean",
"playBeep": "boolean",
"disableBidirectionalAudio": "boolean",
"bidirectionalAudio": "#bidirectionalAudio",
"sampleRate": "number",
"timeout": "number",
"transcribe": "#transcribe",
@@ -434,7 +490,8 @@
"id": "string",
"transcriptionHook": "string",
"recognizer": "#recognizer",
"earlyMedia": "boolean"
"earlyMedia": "boolean",
"channel": "number"
},
"required": [
"transcriptionHook"
@@ -589,6 +646,7 @@
"awsOptions": "#awsOptions",
"azureOptions": "#azureOptions",
"assemblyAiOptions": "#assemblyAiOptions",
"googleOptions": "#googleOptions",
"customOptions": "#customOptions"
},
"required": [
@@ -629,11 +687,34 @@
},
"azureOptions": {
"properties": {
"speechSegmentationSilenceTimeoutMs": "number"
"speechSegmentationSilenceTimeoutMs": "number",
"languageIdMode": {
"type": "string",
"enum": [
"AtStart",
"Continuous"
]
}
},
"required": [
]
},
"googleOptions" : {
"properties": {
"serviceVersion": {
"type": "string",
"enum": [
"v1",
"v2"
]
},
"recognizerId": "string",
"speechStartTimeoutMs": "number",
"speechEndTimeoutMs": "number",
"enableVoiceActivityEvents": "boolean",
"transcriptNormalization": "array"
}
},
"cobaltOptions": {
"properties": {
"serverUri": "string",
@@ -678,6 +759,8 @@
},
"deepgramOptions": {
"properties": {
"deepgramSttUri": "string",
"deepgramSttUseTls": "boolean",
"apiKey": "string",
"tier": "string",
"model": "string",
@@ -895,5 +978,12 @@
"retries": "number",
"actions": "array"
}
},
"bidirectionalAudio" : {
"properties": {
"enabled": "boolean",
"streaming": "boolean",
"sampleRate": "number"
}
}
}
}

View File

@@ -37,6 +37,14 @@ test("validate correct verbs", async (t) => {
"input" : ["speech"],
"actionHook": "/userInput"
},
"transcribe": {
"enable": true,
"transcriptionHook": "http://server.com/hook",
"recognizer": {
"vendor": "google",
"language": "de-DE",
}
},
"onHoldMusic": "http://server.com/hold",
"actionHookDelayAction": {
"enabled": true,
@@ -73,6 +81,17 @@ test("validate correct verbs", async (t) => {
}
}
},
{
"verb": "config",
"recognizer": {
"vendor": "google",
"language": "de-DE",
"label": "label1",
"azureOptions": {
"languageIdMode": "Continuous"
}
}
},
{
"verb": "config",
"record": {
@@ -295,6 +314,29 @@ test("validate correct verbs", async (t) => {
"url": "wss://myrecorder.example.com/calls",
"mixType" : "stereo"
},
{
"verb": "listen",
"url": "wss://myrecorder.example.com/calls",
"mixType" : "stereo",
"bidirectionalAudio": {
enabled: true,
streaming: true,
sampleRate: 8000
}
},
{
"verb": "config",
"listen": {
"enable": true,
"url": "wss://myrecorder.example.com/calls",
"mixType" : "stereo",
"bidirectionalAudio": {
enabled: true,
streaming: true,
sampleRate: 8000
}
}
},
{
"verb": "message",
"to": "15083084809",
@@ -370,6 +412,28 @@ test("validate correct verbs", async (t) => {
"interim": true
}
},
{
"verb": "transcribe",
"transcriptionHook": "http://example.com/transcribe",
"recognizer": {
"vendor": "nvidia",
"language" : "en-US",
"interim": true,
"googleOptions": {
"serviceVersion": "v2",
"speechStartTimeoutMs": 500,
"speechEndTimeoutMs": 1000,
"enableVoiceActivityEvents": true,
"transcriptNormalization" : [
{
"search": "dog",
"replace": "cat",
"case_sensitive": true
}
]
}
}
},
{
"verb": "rest:dial",
"account_sid": "1291964182631236912836123912",