{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/ServerMessageVoiceRequest", "title": "ServerMessageVoiceRequest", "type": "object", "properties": { "phoneNumber": { "description": "This is the phone number that the message is associated with.", "oneOf": [ { "$ref": "#/components/schemas/CreateByoPhoneNumberDTO", "title": "ByoPhoneNumber" }, { "$ref": "#/components/schemas/CreateTwilioPhoneNumberDTO", "title": "TwilioPhoneNumber" }, { "$ref": "#/components/schemas/CreateVonagePhoneNumberDTO", "title": "VonagePhoneNumber" }, { "$ref": "#/components/schemas/CreateVapiPhoneNumberDTO", "title": "VapiPhoneNumber" }, { "$ref": "#/components/schemas/CreateTelnyxPhoneNumberDTO", "title": "TelnyxPhoneNumber" } ] }, "type": { "type": "string", "description": "This is the type of the message. \"voice-request\" is sent when using `assistant.voice={ \"type\": \"custom-voice\" }`.\n\nHere is what the request will look like:\n\nPOST https://{assistant.voice.server.url}\nContent-Type: application/json\n\n{\n \"messsage\": {\n \"type\": \"voice-request\",\n \"text\": \"Hello, world!\",\n \"sampleRate\": 24000,\n ...other metadata about the call...\n }\n}\n\nThe expected response is 1-channel 16-bit raw PCM audio at the sample rate specified in the request. Here is how the response will be piped to the transport:\n```\nresponse.on('data', (chunk: Buffer) => {\n outputStream.write(chunk);\n});\n```", "enum": [ "voice-request" ] }, "timestamp": { "type": "number", "description": "This is the timestamp of the message." }, "artifact": { "description": "This is a live version of the `call.artifact`.\n\nThis matches what is stored on `call.artifact` after the call.", "allOf": [ { "$ref": "#/components/schemas/Artifact" } ] }, "assistant": { "description": "This is the assistant that the message is associated with.", "allOf": [ { "$ref": "#/components/schemas/CreateAssistantDTO" } ] }, "customer": { "description": "This is the customer that the message is associated with.", "allOf": [ { "$ref": "#/components/schemas/CreateCustomerDTO" } ] }, "call": { "description": "This is the call that the message is associated with.", "allOf": [ { "$ref": "#/components/schemas/Call" } ] }, "chat": { "description": "This is the chat object.", "allOf": [ { "$ref": "#/components/schemas/Chat" } ] }, "text": { "type": "string", "description": "This is the text to be synthesized." }, "sampleRate": { "type": "number", "description": "This is the sample rate to be synthesized." } }, "required": [ "type", "text", "sampleRate" ] }