mirror of
https://github.com/jambonz/verb-specifications.git
synced 2026-03-24 12:39:08 +00:00
Compare commits
52 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c5d977da50 | ||
|
|
a6f64710c1 | ||
|
|
3463528127 | ||
|
|
030eb5f847 | ||
|
|
f8d07d340a | ||
|
|
8a96b05f23 | ||
|
|
a6a942c1c6 | ||
|
|
85fa4714fb | ||
|
|
d047892fff | ||
|
|
11bb83f703 | ||
|
|
c5a263ee68 | ||
|
|
47f8a593f5 | ||
|
|
c9d2c9aa4d | ||
|
|
1ce577c8c9 | ||
|
|
dc0abfad02 | ||
|
|
1e9285b9d9 | ||
|
|
f3f048d94f | ||
|
|
a737d8bcbb | ||
|
|
c3d69e614e | ||
|
|
9277e053a6 | ||
|
|
954f9479c9 | ||
|
|
58385e791b | ||
|
|
85aaab5856 | ||
|
|
d70324485b | ||
|
|
2cf2c15586 | ||
|
|
f6ad050a32 | ||
|
|
ba02161f74 | ||
|
|
fabf9255ea | ||
|
|
3f1e7cbd3b | ||
|
|
ff6bea3168 | ||
|
|
4ea66245d4 | ||
|
|
faa99cdce3 | ||
|
|
d017e739b1 | ||
|
|
764383cf43 | ||
|
|
3f19ce4a24 | ||
|
|
1e6b24181c | ||
|
|
63aa94a9ec | ||
|
|
d4614c2ad1 | ||
|
|
7da6165b93 | ||
|
|
ad76081fa7 | ||
|
|
ce94e943d2 | ||
|
|
436fb557dc | ||
|
|
203b8600a8 | ||
|
|
b877ca52d0 | ||
|
|
cdb671d25d | ||
|
|
6ae0aff8b1 | ||
|
|
9a2a22dd88 | ||
|
|
369583d536 | ||
|
|
77d203ca80 | ||
|
|
9cb550f49e | ||
|
|
de88976293 | ||
|
|
60efb4b9af |
@@ -1,4 +1,4 @@
|
||||
# verb-specificiations
|
||||
# verb-specifications
|
||||
Jambonz Verb Specification Utilities
|
||||
|
||||
#### Running the test suite
|
||||
|
||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "@jambonz/verb-specifications",
|
||||
"version": "0.0.42",
|
||||
"version": "0.0.67",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@jambonz/verb-specifications",
|
||||
"version": "0.0.42",
|
||||
"version": "0.0.67",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"debug": "^4.3.4",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@jambonz/verb-specifications",
|
||||
"version": "0.0.42",
|
||||
"version": "0.0.67",
|
||||
"description": "Jambonz Verb Specification Utilities",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
|
||||
139
specs.json
139
specs.json
@@ -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",
|
||||
@@ -411,7 +467,8 @@
|
||||
"headers": "object",
|
||||
"timeout": "number",
|
||||
"amd": "#amd",
|
||||
"dual_streams" : "boolean"
|
||||
"dual_streams": "boolean",
|
||||
"sipRequestWithinDialogHook": "string"
|
||||
},
|
||||
"required": [
|
||||
"call_hook",
|
||||
@@ -433,7 +490,8 @@
|
||||
"id": "string",
|
||||
"transcriptionHook": "string",
|
||||
"recognizer": "#recognizer",
|
||||
"earlyMedia": "boolean"
|
||||
"earlyMedia": "boolean",
|
||||
"channel": "number"
|
||||
},
|
||||
"required": [
|
||||
"transcriptionHook"
|
||||
@@ -459,7 +517,8 @@
|
||||
"vmail": "boolean",
|
||||
"tenant": "string",
|
||||
"trunk": "string",
|
||||
"overrideTo": "string"
|
||||
"overrideTo": "string",
|
||||
"proxy": "string"
|
||||
},
|
||||
"required": [
|
||||
"type"
|
||||
@@ -584,6 +643,10 @@
|
||||
"nvidiaOptions": "#nvidiaOptions",
|
||||
"sonioxOptions": "#sonioxOptions",
|
||||
"cobaltOptions": "#cobaltOptions",
|
||||
"awsOptions": "#awsOptions",
|
||||
"azureOptions": "#azureOptions",
|
||||
"assemblyAiOptions": "#assemblyAiOptions",
|
||||
"googleOptions": "#googleOptions",
|
||||
"customOptions": "#customOptions"
|
||||
},
|
||||
"required": [
|
||||
@@ -599,6 +662,58 @@
|
||||
"required": [
|
||||
]
|
||||
},
|
||||
"awsOptions": {
|
||||
"properties": {
|
||||
"accessKey": "string",
|
||||
"secretKey": "string",
|
||||
"securityToken": "string",
|
||||
"region": "string",
|
||||
"vocabularyName": "string",
|
||||
"vocabularyFilterName": "string",
|
||||
"vocabularyFilterMethod": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"remove",
|
||||
"mask",
|
||||
"tag"
|
||||
]
|
||||
},
|
||||
"languageModelName": "string",
|
||||
"piiEntityTypes": "array",
|
||||
"piiIdentifyEntities": "boolean"
|
||||
},
|
||||
"required": [
|
||||
]
|
||||
},
|
||||
"azureOptions": {
|
||||
"properties": {
|
||||
"speechSegmentationSilenceTimeoutMs": "number",
|
||||
"languageIdMode": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"AtStart",
|
||||
"Continuous"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
]
|
||||
},
|
||||
"googleOptions" : {
|
||||
"properties": {
|
||||
"serviceVersion": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"v1",
|
||||
"v2"
|
||||
]
|
||||
},
|
||||
"speechStartTimeoutMs": "number",
|
||||
"speechEndTimeoutMs": "number",
|
||||
"enableVoiceActivityEvents": "boolean",
|
||||
"transcriptNormalization": "array"
|
||||
}
|
||||
},
|
||||
"cobaltOptions": {
|
||||
"properties": {
|
||||
"serverUri": "string",
|
||||
@@ -643,6 +758,8 @@
|
||||
},
|
||||
"deepgramOptions": {
|
||||
"properties": {
|
||||
"deepgramSttUri": "string",
|
||||
"deepgramSttUseTls": "boolean",
|
||||
"apiKey": "string",
|
||||
"tier": "string",
|
||||
"model": "string",
|
||||
@@ -746,6 +863,11 @@
|
||||
"required": [
|
||||
]
|
||||
},
|
||||
"assemblyAiOptions": {
|
||||
"properties": {
|
||||
"apiKey": "string"
|
||||
}
|
||||
},
|
||||
"resource": {
|
||||
"properties": {
|
||||
"externalReference": "#resourceReference",
|
||||
@@ -855,5 +977,12 @@
|
||||
"retries": "number",
|
||||
"actions": "array"
|
||||
}
|
||||
},
|
||||
"bidirectionalAudio" : {
|
||||
"properties": {
|
||||
"enabled": "boolean",
|
||||
"streaming": "boolean",
|
||||
"sampleRate": "number"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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,
|
||||
@@ -62,6 +70,28 @@ test("validate correct verbs", async (t) => {
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"verb": "config",
|
||||
"recognizer": {
|
||||
"vendor": "google",
|
||||
"language": "de-DE",
|
||||
"label": "label1",
|
||||
"assemblyAiOptions": {
|
||||
"apiKey": "apikey"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"verb": "config",
|
||||
"recognizer": {
|
||||
"vendor": "google",
|
||||
"language": "de-DE",
|
||||
"label": "label1",
|
||||
"azureOptions": {
|
||||
"languageIdMode": "Continuous"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"verb": "config",
|
||||
"record": {
|
||||
@@ -284,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",
|
||||
@@ -359,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",
|
||||
|
||||
Reference in New Issue
Block a user