Я создаю SMS-бота, используя потоки Twilio Studio. Я добавил виджет «Установить переменные» со следующей жидкостью код в значении переменной:
{% capture address %}{{widgets.request_address.inbound.Body | lower | strip}}{% endcapture %}
{% if address == "yes" %}{{ flow.data.address }}{% else %}{{ widgets.request_address.inbound.Body }}{% endif %}
Документация предполагает, что это должно работать:
Переменные могут иметь статические значения, такие как одно число или строку, или динамические значения, задаваемые с помощью языка шаблонов Liquid.
Однако код не анализируется, а вместо этого сохраняется в виде строки в переменной.
Я что-то упускаю? Студия Twilio просто не поддерживает это, несмотря на то, что написано в документации?
Обновление:
Я думаю, что виджет может разрешить только один блок Liquid. Позже в документации говорится:
Это может быть числовое или строковое значение или жидкий блок шаблона, как в примере выше.
Следующий код работает (но, очевидно, не так гибок в отношении ввода)
{% if widgets.request_address.inbound.Body == "yes" or widgets.request_address.inbound.Body == "Yes" %}{{ flow.data.address }}{% else %}{{ widgets.request_address.inbound.Body }}{% endif %}