
# TTS无法识别日期格式
#### 问题描述
在配置西班牙语对话识别时，发现TTS播报时无法将20190801 这种格式的字符串视为年月日的格式进行播报，而直接播报成数字，客户体验不好。因此需要采取措施优化播报结果，使之播报成日期格式。
#### 问题分析
流程中发现无论是通过获取ODFS系统日期SYS.systemDate，还是通过获取TUC槽位的日期实体值，都是yyyyMMdd格式，均没有自动转换格式的能力，怀疑是局点使用的TTS（Text to Speech0）系统对日期格式有要求。
根据同局点提供的TTS进行对接调试发现，2019/08/01这种格式的日期字符串送到TTS可以正常播报为年月日的形式，因此需要在放音前手工处理，将格式进行转换。
#### 解决方法
在语义识别图元后添加一个业务接口调用图元，将语义识别图元中的槽位变量的值通过Java的字符串处理函数substring()进行格式转换和拼接。
具体参数值如下所示：
TOC.ChatBotMonth.substring(0,4)+"/"+TOC.ChatBotMonth.substring(4,6)+"/"+TOC.ChatBotMonth.substring(6,8)+ " a "+TOC.ChatBotMonth.substring(9,13)+"/"+TOC.ChatBotMonth.substring(13,15)+"/"+TOC.ChatBotMonth.substring(15,17)
![](https://support.huaweicloud.com/usermanual-cec/public_sys-resources/note_3.0-zh-cn.png)
Month为语音识别图元执行时获取的槽位变量名，在系统中使用TOC.ChatBotMonth表示。
槽位变量的使用方法请参见[参数](https://support.huaweicloud.com/usermanual-cec/cec_04_0188.html#ZH-CN_TOPIC_0000002477936158)。
![](https://support.huaweicloud.com/usermanual-cec/figure/zh-cn_image_0000001685566590.png)
