{"__v":22,"_id":"543e9a81fd81651c008e4cdb","category":{"__v":21,"_id":"543bf3e22a30961a00b66eb3","pages":["5489d5e61ea5330b007b5a51","5489e243d8dec60b00034297","5489e318aefb240b00d197ef","56cdf622e538330b0021ab5a"],"project":"542dbe0ecb19820800c1f4d7","version":"542ecc0a6b0eb6080066ca77","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2014-10-13T15:46:42.097Z","from_sync":false,"order":1,"slug":"inboundxml","title":"InboundXML"},"is_link":false,"parentDoc":null,"project":"542dbe0ecb19820800c1f4d7","user":"542dc547cb19820800c1f4f1","version":{"__v":29,"_id":"542ecc0a6b0eb6080066ca77","forked_from":"542dbe0fcb19820800c1f4da","project":"542dbe0ecb19820800c1f4d7","createdAt":"2014-10-03T16:17:14.165Z","releaseDate":"2014-10-03T16:17:14.165Z","categories":["542ecc0a6b0eb6080066ca78","542ef44f6b0eb6080066cb24","543bf3e22a30961a00b66eb3","5446952b82bd7e08002768a0","544821ae8d7af31a00dd41ce","544a7885f1aefa08006efc69","544c758e11845f0e001ed8de","544e5565b80812080035be55","544e558dbd51b9080037f8ca","5450b045a66f020800dba73d","5450eb6aa66f020800dba945","5450f39ea66f020800dba989","5450f877a66f020800dba9cf","54510356a66f020800dbaa17","5451274514af501a00b50c99","54513345a66f020800dbab24","54513cc014af501a00b50d24","54515eec14af501a00b50db9","54519b1d14af501a00b50ea9","54519b2aa66f020800dbacb4","54524f9704160008005b1d27","54538d2308d1800800473d95","54538d420c09721000a06a03","54538e5608d1800800473d9a","5453ea9547c30114004fb375","5453eb12b077c31c00067bcb","5453eb27b077c31c00067bcd","5453ed5db077c31c00067bde","548075cbe291c51a00e7e096"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"2.0.0","version":"2"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2014-10-15T16:02:09.103Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"basic_auth":false,"results":{"codes":[]},"settings":"","try":true,"auth":"never","params":[],"url":""},"isReference":false,"order":16,"body":"The `<Say>` element reads text to the caller using a text-to-speech engine. `<Say>` is good to use with dynamic data, while `<Play>` may be a better choice for static information or prompts. The text to be read is nested within the `<Say>` element.\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"voice\",\n    \"0-1\": \"The gender of the voice that will speak the text. Allowed values are \\\"man\\\" or \\\"woman\\\". The default value is \\\"woman\\\".\",\n    \"1-0\": \"language\",\n    \"1-1\": \"The language used to speak the text. Allowed values are \\\"en\\\" (American English), \\\"en-gb\\\" (British English), \\\"es\\\" (Spanish), \\\"fr\\\" (French), \\\"it\\\" (Italian) and \\\"de\\\" (German). The default value is \\\"en\\\"\",\n    \"2-0\": \"loop\",\n    \"2-1\": \"The amount of times the text should be repeated. Allowed values are any integer greater than or equal to 0. \\\"0\\\" indicates an infinite loop.\",\n    \"3-0\": \"loop\",\n    \"3-1\": \"test\",\n    \"h-0\": \"Attribute\",\n    \"h-1\": \"Description\"\n  },\n  \"cols\": 2,\n  \"rows\": 3\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Nesting\",\n  \"body\": \"In addition to the default `<Response>` element, `<Say>` can be nested within a `<Gather>`. Nothing can be nested inside `<Say>` except the text to be read to the caller.\"\n}\n[/block]\nThe maximum text size for a `<Say>` is 4kb. Commas and periods will cause pauses. `<Say>` may speak things such as abbreviations or times differently than you expect so be sure to double check for correct pronunciation\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Example\"\n}\n[/block]\nThe InboundXML below will say “Hello” in a man’s voice three times, “Hello, my name is Jane.” in a woman’s voice one time, and then repeat “Now I will not stop talking.” until the caller hangs up.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"<Response>\\n    <Say loop='3' voice='man'>Hello.</Say>\\n    <Say voice='woman'>Hello, my name is Jane.</Say>\\n    <Say loop='0'>Now I will not stop talking.</Say>\\n</Response>\",\n      \"language\": \"xml\"\n    }\n  ]\n}\n[/block]","excerpt":"","slug":"say","type":"basic","title":"<Say>"}
The `<Say>` element reads text to the caller using a text-to-speech engine. `<Say>` is good to use with dynamic data, while `<Play>` may be a better choice for static information or prompts. The text to be read is nested within the `<Say>` element. [block:parameters] { "data": { "0-0": "voice", "0-1": "The gender of the voice that will speak the text. Allowed values are \"man\" or \"woman\". The default value is \"woman\".", "1-0": "language", "1-1": "The language used to speak the text. Allowed values are \"en\" (American English), \"en-gb\" (British English), \"es\" (Spanish), \"fr\" (French), \"it\" (Italian) and \"de\" (German). The default value is \"en\"", "2-0": "loop", "2-1": "The amount of times the text should be repeated. Allowed values are any integer greater than or equal to 0. \"0\" indicates an infinite loop.", "3-0": "loop", "3-1": "test", "h-0": "Attribute", "h-1": "Description" }, "cols": 2, "rows": 3 } [/block] [block:callout] { "type": "info", "title": "Nesting", "body": "In addition to the default `<Response>` element, `<Say>` can be nested within a `<Gather>`. Nothing can be nested inside `<Say>` except the text to be read to the caller." } [/block] The maximum text size for a `<Say>` is 4kb. Commas and periods will cause pauses. `<Say>` may speak things such as abbreviations or times differently than you expect so be sure to double check for correct pronunciation [block:api-header] { "type": "basic", "title": "Example" } [/block] The InboundXML below will say “Hello” in a man’s voice three times, “Hello, my name is Jane.” in a woman’s voice one time, and then repeat “Now I will not stop talking.” until the caller hangs up. [block:code] { "codes": [ { "code": "<Response>\n <Say loop='3' voice='man'>Hello.</Say>\n <Say voice='woman'>Hello, my name is Jane.</Say>\n <Say loop='0'>Now I will not stop talking.</Say>\n</Response>", "language": "xml" } ] } [/block]