Вы когда-нибудь задумывались, какой продукт Twilio вы больше всего подобного? Теперь вы можете написать +1 (321) 340-6085, чтобы узнать!
Эти развлечения “Какой ты?”? “ Викторины имеют Воскрес в популярности Разделяя в среднем в 1900 раз в социальных сетях По словам Buzzsumo Отказ Читайте дальше, чтобы увидеть, как вы можете сделать разбитый и веселый викторину в стиле BuzzFeed «какой продукт Twilio вы?» с твилио.
Настройте и настройте свой бот с номером Twilio
Чтобы следовать с этим постом, вам нужно две вещи:
- Учетная запись Twilio – Подпишитесь на бесплатный здесь и получите дополнительные 10 долларов, если вы обновляете эту ссылку
- Номер телефона Twilio с возможностями SMS – Настроить один здесь
Перейти к себе Автопилот Консоль и под Создать бот Выбрать Начните с нуля Отказ
Дайте свой бот название, как Что-twilio-product – это ты и нажмите Создать бот Отказ
Выберите Каналы из левого меню, а затем нажмите Программируемая обмен сообщениями Отказ
Скопируйте этот URL-адрес обмена сообщениями и на новой вкладке Настройте номер Twilio в вашем Консоль номера телефона Отказ
Если у вас еще нет номера Twilio, перейдите к Телефонные номера Раздел вашего Twilio Console И искать номер телефона в вашей стране и регионе, убедившись, что флажок SMS отмечен.
В Обмен сообщениями Раздел вашего купленного номера, в Появится сообщение Раздел, установите WebHook, чтобы стать URL-адресом вашего обмена сообщениями и ударить Сохранить Отказ
Сделайте викторину стиля Buzzfeed с автопилотом
Назад в консоль Bot Autopilot, вы должны увидеть несколько задач по умолчанию, которые уже были обучены некоторыми образцами. Например, Прощай Задача говорит: «Спасибо! Пожалуйста, обратитесь снова, если вам нужно что-нибудь. До свидания.” И запускается фразами, такими как «Это все», «нет благодарности» и т. Д. Приветствие это еще одна готовая задача. Давайте отредактим это сейчас.
Редактировать Приветствие Нажав Программа Рядом с ним, чтобы включить следующее JSON, которое представит бот с помощью действий, а затем перенаправить на новую задачу, называемую main_collect Отказ Вопросы викторины будут заданы в Main_Collect.
{
"actions": [
{
"say": "What Twilio product are you? Answer 3 questions to find out!"
},
{
"redirect": "task://main_collect"
}
]
}
Давайте сделаем задачу Main_coLlect сейчас. Вернитесь к Задачи и нажмите Добавить задачу , вызывая это main_collect Отказ Обычно вы, вероятно, захотите тренировать эту задачу на образцах, чтобы вызвать его, но потому что мы перенаправляем к нему от Приветствие Нам не нужно беспокоиться о образцах. Это простой бот, он просто хочет знать, какой продукт Twilio вы!
Сначала мы добавляем Собирать к нашим Джонским действиям Bin. Это просит серию вопросов вместе в группе. Мы также предоставляем название потока Collect (в этом случае это what_twilio_product_are_you ), а затем массив вопросов. У каждого вопроса есть имя и Проверить Инструкция по ограничению того, с чем пользователь может ответить. Мы используем Проверить атрибут разрешенные_вены обеспечить массив возможных ответов. Если это была викторина, где есть только один правильный ответ, он может иметь только одно разрешенное значение.
Если пользователь отправляет в ответ, который не в разрешенные_вены , скажи в on_failure вернутся “Пожалуйста, отправьте a, b, c или d!” И повторите вопрос к пользователю, чтобы они могли попробовать еще раз. Максимальное количество попыток пользователя может попытаться ответить на вопрос, в три раза три раза, а затем, если они не отправляют допустимый ответ, они перенаправлены обратно в приветствие задача.
{
"actions": [
{
"collect": {
"name": "what_twilio_product_are_you",
"questions": [
{
"question": "1. You have a virtual meeting🖥️ at 9am🌅. What are you doing at 8:58am?\n A. reviewing the meeting notes and agenda so you can best contribute\n B. You're drinking coffee☕, getting ready to lead the meeting or watch someone you delegated lead the meeting.\n C. Just waking up.🛏You're efficient and will look polished from the top up👔.\n D. Checking your email and Slack📰, getting some easy work tasks out of the way.",
"name": "pandemic_meeting",
"validate": {
"allowed_values": {
"list": [
"a",
"b",
"c",
"d"
]
},
"on_failure": {
"messages": [
{
"say": "Please send a, b, c, or d!"
}
],
"repeat_question": true
},
"max_attempts": {
"redirect": "task://greeting",
"num_attempts": 3
}
}
}
]
}
}
]
}
Затем вы можете скопировать и вставить строки, выделенные выше для каждого вопроса, который вы хотите, чтобы ваш Quiz-Bot спросить. Ниже введен код включает в себя три вопроса, но вы можете найти полный Собирать поток со всеми пятнадцатьми вопросами в этом Github Gist :
{
"actions": [
{
"collect": {
"name": "what_twilio_product_are_you",
"questions": [
{
"question": "1. You have a virtual meeting🖥️ at 9am🌅. What are you doing at 8:58am?\n A. reviewing the meeting notes and agenda so you can best contribute\n B. You're drinking coffee☕, getting ready to lead the meeting or watch someone you delegated lead the meeting.\n C. Just waking up.🛏You're efficient and will look polished from the top up👔.\n D. Checking your email and Slack📰, getting some easy work tasks out of the way.",
"name": "pandemic_meeting",
"validate": {
"allowed_values": {
"list": [
"a",
"b",
"c",
"d"
]
},
"on_failure": {
"messages": [
{
"say": "Please send a, b, c, or d!"
}
],
"repeat_question": true
},
"max_attempts": {
"redirect": "task://greeting",
"num_attempts": 3
}
}
},
{
"question": "2. What unusual celebrity baby name do you secretly🤐like💗?\n A. Pilot Inspektor\n B. Banks💰\n C. X Æ A-12🤖\n D. Apple🍎",
"name": "celeb_baby_name",
"validate": {
"allowed_values": {
"list": [
"a",
"b",
"c",
"d"
]
},
"on_failure": {
"messages": [
{
"say": "Please send a, b, c, or d!"
}
],
"repeat_question": true
},
"max_attempts": {
"redirect": "task://greeting",
"num_attempts": 3
}
}
},
{
"question": "3. What's your brunch order?\n A. pancakes🥞, waffles, or french toast \n B. omelette or frittatta🥚\n C. avocado🥑 toast🍞\n D. oatmeal",
"name": "brunch_order",
"validate": {
"allowed_values": {
"list": [
"a",
"b",
"c",
"d"
]
},
"on_failure": {
"messages": [
{
"say": "Please send a, b, c, or d!"
}
],
"repeat_question": true
},
"max_attempts": {
"redirect": "task://greeting",
"num_attempts": 3
}
}
}
],
"on_complete": {
"redirect": {
"method": "POST",
"uri": "https://YOUR-TWILIO-FUNCTION-URL.twil.io/buzzfeedquiz"
}
}
}
}
]
}
После последнего вопроса бот перенаправляет функцию Twilio, чтобы поднять все ответы и рассчитать все важный ответ на «какой продукт Twilio?»
Рассчитайте результаты с JavaScript в функции Twilio
Сделайте новую функцию, нажав кнопку Red Plus в вашем Функции консоли Отказ Выберите Пустой Шаблон и нажмите Создать Отказ
Добавить /buzzfeed Quiz. К пути, затем скопируйте путь и вставьте его в автопилот не JSON BINS Oncomplete: перенаправить: URI Отказ Затем добавьте следующий код JavaScript, чтобы получить память каждой из пяток ответов на ответы и создайте пустой объект ответа, который скоро будет заполнен.
//get answer from Memory
let memory = JSON.parse(event.Memory);
let respObj = {}; //empty response object to fill with Autopilot response SMS message
let q1 = memory.twilio.collected_data.what_twilio_product_are_you.answers.pandemic_meeting.answer.toLowerCase();
let q2 = memory.twilio.collected_data.what_twilio_product_are_you.answers.celeb_baby_name.answer.toLowerCase();
let q3 = memory.twilio.collected_data.what_twilio_product_are_you.answers.brunch_order.answer.toLowerCase();
Затем мы рассчитываем, какой ответ (A, B, C или D) был наиболее распространен в этом чистоте ES6 способом (с сложностью O (N)!)
const result = Object.entries(
[q1, q2, q3].reduce((previous, current) => {
if (previous[current] === undefined) previous[current] = 1;
else previous[current]++;
return previous;
}, {})).reduce((previous, current) => (current[1] >= previous[1] ? current : previous))[0];
Наконец, мы возвращаем сообщение, содержащее какой продукт Twilio, пользователь больше всего нравится на основе их предыдущих ответов на чатбот.
var msg = '';
if(result == 'a') {
msg = `You're like Programmable SMS.\n\nYou're popular, reliable, and a bit more traditional, but versatile and not boring. You may not always like change. \n\nYou are a solid teammate🧗♀️ and worker and get the job done✊. \n\nYou're a control freak and may not always lead, but still sometimes end up representing your group. Keep doing you and being a rock. You're solid❤`;
}
else if(result == 'b') {
msg = `You're like Programmable Voice.\n\nYou're the OG, a pioneer, a leader🎤. You may sometimes hesitate to take risks and innovate, but that's because you've done all of it before📅. \n\nYou have experience, mentor others, and also lead the way for others to follow🧗. \n\nYou prefer to keep things short, sweet, and succinct, and don't waste time💃. You work hard🖥️ but also know how to have fun🐬.`;
}
else if(result == 'c') {
msg=`You're like Twilio Autopilot.\n\nYou follow buzzy trends🐝 like machine learning, kubernetes, and dalgona coffee☕. \n\nYou often try to improve yourself💪 and may be a bit flighty🛫 but that's okay, you're fun🤪, creative🎨, and innovative🤖. The downside to being flexible😅 is that you may be gullible sometimes.\n\n You say "yes"👍 a lot and should probably take up yoga🧘 because though you have a lot on your plate🍽️, you aren't always the best at focusing on what's important📝.\n\n Even though you like comedies🤣, you also watch Die Hard🔫 every holiday season🎄 because you are nuanced.`;
}
else if(result == 'd') {
msg=`You're like Twilio Functions.\n\nYou like to make life easier for your friends and family🙋. You're the type of person who bakes🎂for birthdays🎁. \n\nYou're constantly trying to improve those around you📚 and are always in beta. If you ordered a grilled chicken sandwich🥪 at a restaurant🥡 and it was uncooked, you wouldn't say anything because you wouldn't want to be a bother. \n\nIf someone has a question❓ you don't know the answer to, you look it up for them.💻 You know how to juggle 🤹multiple things at once but also how to prioritize what's important.`;
}
else {
msg=`You're like Twilio Studio.\n\nYou are able to connect with a lot of people, regardless of their backgrounds🙋. You're a free-spirit, the type of person who has friends across different groups. You're included in lots of birthdays🎁. \n\nYou're a reader📚 of both literature and fun, less-serious things like comics, and are always in beta. At a restaurant🥡, you want everything! So many choices! \n\nYou question❓ everything around you, you inquisitive soul. Keep it up with your wide eyes and keep your eyes wide open. There's a whole world to explore for you!` ;
}
respObj= {"actions":[
{ "say": msg
}
]};
callback(null, respObj);
};
В настоящее время Текстройте свой номер Twilio, чтобы принять участие в своем викторине!
Что дальше
Вы можете добавить больше вопросов, больше вариантов ответов, более вариантов для ответов, более эмохис или более сложной системы подразделения ответов. С людьми, укрывающимися дома, сейчас самое прекрасное время для создания развлекательных викторин для личного или профессионального использования. Twilio AutoPilot позволяет вам легко получить творчество с чатами и викторинами, чтобы участвовать с клиентами, фанатами, друзьями и семьей, или просто повеселиться!
Оригинал: “https://dev.to/twilio/build-a-punchy-chatbot-in-eight-minutes-4jn5”