Как не отображать теги ssml на экране устройства Alexa при отправке уведомления в Alexa

  1. Я внедрил события Alexa Proactive для отправки уведомлений через наш навык в Alexa. Это работает нормально. Но проблема в том, что мы добавили тег SSML, скажем, чтобы говорить как цифры 2212545, чтобы обрабатывать аудио. Прямо сейчас этот тег отображается на экране устройства Alexa. Мы не хотим отображать тег SSML. Пожалуйста, кто-нибудь может сказать, как мы можем удалить этот тег SSML в нашем уведомлении Alexa при отображении этого тела, которое я отправляю

    {timestamp:2021-02-23T07:06:00.693Z,referenceId:db8b343f-5639-431c-a436-e7c6eee604c4,expiryTime:2021-02-24T07:06:00.693Z,event:{name:AMAZON.MessageAlert.Activated, полезная нагрузка: {состояние: {статус: НЕПРОЧИТАН}, messageGroup: {создатель: {имя: сумма 5000 для пользователя с идентификатором 2212545 будет зачислена 2021/10/02}, количество: 1}}}, релевантная аудитория: {тип: одноадресная рассылка, полезная нагрузка: {пользователь: USER_ID}}}


person Ashish Butola    schedule 23.02.2021    source источник


Ответы (1)


У меня есть небольшая библиотека для форматирования и тому подобное, и я просто запускаю отображаемый текст с помощью небольшого регулярного выражения.

Я нашел это здесь и использовал его с тех пор.

https://forums.developer.amazon.com/questions/5433/strip-ssml-tags-for-card-output.html

var regex = /(<([^>]+)>)/ig;
cardContent = someTextWithSSMLTags.replace(regex, ""); 
person AhDev    schedule 23.02.2021
comment
Благодарю за ваш ответ. Но я использую событие Alexa Proactive для отправки уведомлений. В моем случае это не сработает. Поскольку Alexa Notification (упреждающие события) имеет фиксированную схему. Пожалуйста, взгляните на тело выше - person Ashish Butola; 23.02.2021
comment
Ах, я не понял часть Alexa Proactive Event и извините меня, если я все еще что-то упускаю, но где SSML? - person AhDev; 25.02.2021
comment
{ timestamp: timestamp, referenceId: db8b34, expiryTime: expiryedate, event: { name: AMAZON.MessageAlert.Activated, payload: { state: { status: UNREAD }, messageGroup: { создатель: { name: Order Id ‹say-as интерпретирует -as ='digits'›251624 ‹/say-as› }, count: 1 } }}, relayAudience: {type: Unicast, payload: {user: USER_ID} } } - person Ashish Butola; 26.02.2021
comment
Я добавил тело запроса для упреждающего события, и в соответствии с моим вариантом использования я добавил идентификатор заказа в параметр имени, когда я говорю Alexa, каковы мои новые уведомления Alexa говорит правильно, но то же самое уведомление отображается с тегом, подобным этому ‹say-as интерпретирует-как ='цифры'›251624 ‹/say-as› . Я не хочу, чтобы этот тег отображался на экране - person Ashish Butola; 26.02.2021