Я работаю над чат-ботом twilio-programable-sms, который должен предоставить пользователю большую часть информации в начале первого разговора.В настоящее время мы написали о 562 символах.Для некоторых наших пользователей это разбивается на куски по 160 символов, которые не обязательно отображаются в их приложении SMS в правильном порядке.
Чтобы учесть это, мы пытаемся разбить наше сообщениена 160 символов или менее отдельных сообщений, каждое из которых отправляет одно за другим.
Однако мои товарищи по команде и я в настоящее время не уверены, как этого добиться.Наше приложение в настоящее время написано, чтобы предоставить ответ twiml для каждого сообщения, полученного от пользователя.Мне не удалось найти способ создать ответ twiml, который бы указывал на количество последовательных сообщений, и теоретические решения, которые мы придумали, кажутся хакерскими и ошибочными.
Чтобы продемонстрировать, в настоящее время наш код выглядиткак это.Как видите, когда новый пользователь отправляет ключевое слово «старт», мы объединяем 4 сообщения в один длинный текстовый ответ.Однако мы бы хотели, чтобы каждое сообщение отправлялось индивидуально, одно за другим, с интервалом в одну или две секунды.
case @body
when "start"
if !!@user
CreateMessage::SubscriptionMessage.triage_subscribable_type(!!@user)
else
[
CreateMessage::AlphaMessage.personalized_welcome(@conversation.from, true),
CreateMessage::SubscriptionMessage.introduce_bcd,
CreateMessage::SubscriptionMessage.for_example,
CreateMessage::SubscriptionMessage.intvite_to_start
].join("\n\n")
end
Мы бы по возможности не создавали фоновое задание работник / хрон, но приветствуем любые и все предложенные решения.