mirror of
https://github.com/jambonz/jambonz-feature-server.git
synced 2025-12-19 04:17:44 +00:00
265 lines
5.1 KiB
JSON
265 lines
5.1 KiB
JSON
{
|
|
"sip:decline": {
|
|
"properties": {
|
|
"status": "number",
|
|
"reason": "string",
|
|
"headers": "object"
|
|
},
|
|
"required": [
|
|
"status"
|
|
]
|
|
},
|
|
"dequeue": {
|
|
"properties": {
|
|
"name": "string",
|
|
"actionHook": "object|string",
|
|
"timeout": "number",
|
|
"beep": "boolean"
|
|
},
|
|
"required": [
|
|
"name"
|
|
]
|
|
},
|
|
"enqueue": {
|
|
"properties": {
|
|
"name": "string",
|
|
"actionHook": "object|string",
|
|
"waitHook": "object|string",
|
|
"_": "object"
|
|
},
|
|
"required": [
|
|
"name"
|
|
]
|
|
},
|
|
"leave": {
|
|
"properties": {
|
|
|
|
}
|
|
},
|
|
"hangup": {
|
|
"properties": {
|
|
"headers": "object"
|
|
},
|
|
"required": [
|
|
]
|
|
},
|
|
"play": {
|
|
"properties": {
|
|
"url": "string",
|
|
"loop": "number",
|
|
"earlyMedia": "boolean"
|
|
},
|
|
"required": [
|
|
"url"
|
|
]
|
|
},
|
|
"say": {
|
|
"properties": {
|
|
"text": "string|array",
|
|
"loop": "number",
|
|
"synthesizer": "#synthesizer",
|
|
"earlyMedia": "boolean"
|
|
},
|
|
"required": [
|
|
"text"
|
|
]
|
|
},
|
|
"gather": {
|
|
"properties": {
|
|
"actionHook": "object|string",
|
|
"finishOnKey": "string",
|
|
"input": "array",
|
|
"numDigits": "number",
|
|
"partialResultHook": "object|string",
|
|
"speechTimeout": "number",
|
|
"timeout": "number",
|
|
"recognizer": "#recognizer",
|
|
"play": "#play",
|
|
"say": "#say"
|
|
},
|
|
"required": [
|
|
"actionHook"
|
|
]
|
|
},
|
|
"conference": {
|
|
"properties": {
|
|
"name": "string",
|
|
"beep": "boolean",
|
|
"startConferenceOnEnter": "boolean",
|
|
"endConferenceOnExit": "boolean",
|
|
"maxParticipants": "number",
|
|
"actionHook": "object|string",
|
|
"waitHook": "object|string",
|
|
"statusEvents": "array",
|
|
"statusHook": "object|string",
|
|
"enterHook": "object|string"
|
|
},
|
|
"required": [
|
|
"name"
|
|
]
|
|
},
|
|
"dial": {
|
|
"properties": {
|
|
"actionHook": "object|string",
|
|
"answerOnBridge": "boolean",
|
|
"callerId": "string",
|
|
"confirmHook": "object|string",
|
|
"dialMusic": "string",
|
|
"dtmfCapture": "object",
|
|
"dtmfHook": "object|string",
|
|
"headers": "object",
|
|
"listen": "#listen",
|
|
"target": ["#target"],
|
|
"timeLimit": "number",
|
|
"timeout": "number",
|
|
"transcribe": "#transcribe"
|
|
},
|
|
"required": [
|
|
"target"
|
|
]
|
|
},
|
|
"listen": {
|
|
"properties": {
|
|
"actionHook": "object|string",
|
|
"auth": "#auth",
|
|
"finishOnKey": "string",
|
|
"maxLength": "number",
|
|
"metadata": "object",
|
|
"mixType": {
|
|
"type": "string",
|
|
"enum": ["mono", "stereo", "mixed"]
|
|
},
|
|
"passDtmf": "boolean",
|
|
"playBeep": "boolean",
|
|
"sampleRate": "number",
|
|
"timeout": "number",
|
|
"transcribe": "#transcribe",
|
|
"url": "string",
|
|
"wsAuth": "#auth",
|
|
"earlyMedia": "boolean"
|
|
},
|
|
"required": [
|
|
"url"
|
|
]
|
|
},
|
|
"pause": {
|
|
"properties": {
|
|
"length": "number"
|
|
},
|
|
"required": [
|
|
"length"
|
|
]
|
|
},
|
|
"redirect": {
|
|
"properties": {
|
|
"actionHook": "object|string"
|
|
},
|
|
"required": [
|
|
"actionHook"
|
|
]
|
|
},
|
|
"rest:dial": {
|
|
"properties": {
|
|
"account_sid": "string",
|
|
"application_sid": "string",
|
|
"call_hook": "object|string",
|
|
"call_status_hook": "object|string",
|
|
"from": "string",
|
|
"speech_synthesis_vendor": "string",
|
|
"speech_synthesis_voice": "string",
|
|
"speech_recognizer_vendor": "string",
|
|
"speech_recognizer_language": "string",
|
|
"tag": "object",
|
|
"to": "#target",
|
|
"headers": "object",
|
|
"timeout": "number"
|
|
},
|
|
"required": [
|
|
"call_hook",
|
|
"from",
|
|
"to"
|
|
]
|
|
},
|
|
"tag": {
|
|
"properties": {
|
|
"data": "object"
|
|
},
|
|
"required": [
|
|
"data"
|
|
]
|
|
},
|
|
"transcribe": {
|
|
"properties": {
|
|
"transcriptionHook": "string",
|
|
"recognizer": "#recognizer",
|
|
"earlyMedia": "boolean"
|
|
},
|
|
"required": [
|
|
"transcriptionHook"
|
|
]
|
|
},
|
|
"target": {
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": ["phone", "sip", "user"]
|
|
},
|
|
"url": "string",
|
|
"method": {
|
|
"type": "string",
|
|
"enum": ["GET", "POST"]
|
|
},
|
|
"name": "string",
|
|
"number": "string",
|
|
"sipUri": "string",
|
|
"auth": "#auth"
|
|
},
|
|
"required": [
|
|
"type"
|
|
]
|
|
},
|
|
"auth": {
|
|
"properties": {
|
|
"username": "string",
|
|
"password": "string"
|
|
},
|
|
"required": [
|
|
"username",
|
|
"password"
|
|
]
|
|
},
|
|
"synthesizer": {
|
|
"properties": {
|
|
"vendor": {
|
|
"type": "string",
|
|
"enum": ["google", "aws", "polly"]
|
|
},
|
|
"language": "string",
|
|
"voice": "string",
|
|
"gender": {
|
|
"type": "string",
|
|
"enum": ["MALE", "FEMALE", "NEUTRAL"]
|
|
}
|
|
},
|
|
"required": [
|
|
"vendor"
|
|
]
|
|
},
|
|
"recognizer": {
|
|
"properties": {
|
|
"vendor": {
|
|
"type": "string",
|
|
"enum": ["google"]
|
|
},
|
|
"language": "string",
|
|
"hints": "array",
|
|
"profanityFilter": "boolean",
|
|
"interim": "boolean",
|
|
"dualChannel": "boolean"
|
|
},
|
|
"required": [
|
|
"vendor"
|
|
]
|
|
}
|
|
}
|