Я не программист, поэтому, пожалуйста, прости меня. Но я потратил часы на изучение топи c сбора информации с помощью Twilio AutoPilot и разместил эти данные в Airtable, после чего я заставлю Zapier кое-что сделать с этими данными. Сегодня у меня наконец был прорыв, и теперь я могу отправлять данные из звонка или текста в Airtable. Единственный способ заставить окончание работать - отправить вызов или текст в Studio, чтобы завершить вызов sh. Кажется, все работает с точки зрения конечного пользователя, но я получаю ошибку 90100 от Twilio. Я уверен, что мне просто не хватает одной строки кода, чтобы это сработало, и я нахожусь в конце своей веревки.
{
"actions": [
{
"say": "Okay lets get you a new appointment. I just need you to answer a few questions."
},
{
"collect": {
"name": "member",
"questions": [
{
"question": "Please tell me your first name.",
"name": "name",
"type": "Twilio.FIRST_NAME"
},
{
"question": "Thanks, and what is your email address?",
"name": "email",
"type": "Twilio.EMAIL"
}
],
"on_complete": {
"redirect": "task://complete_booking"
}
}
}
]
}
Затем у меня есть другая настройка задачи для перенаправления в функцию Twilio , Это, вероятно, излишне, но это то, что я нашел в исследовании.
{
"actions": [
{
"redirect": {
"method": "POST",
"uri": "https://TWILIO_FUNCTION_URL/atable_post"
}
}
]
}
Тогда функция выглядит следующим образом. Имейте в виду, это правильная публикация в airtable.
exports.handler = function(context, event, callback) {
let memory = JSON.parse(event.Memory);
let name = memory.twilio.collected_data.member.answers.name.answer;
let email = memory.twilio.collected_data.member.answers.email.answer;
console.log(memory);
let member = {
name : memory.twilio.collected_data.member.answers.name.answer,
email : memory.twilio.collected_data.member.answers.email.answer,
date : Date.now()
};
var Airtable = require("airtable");
var base = new Airtable({apikey: context.AIRTABLE_API_KEY}).base("AIRTABLE_ID");
base("Members1").create(member, function(err, record) {
if (err) { console.error(err); return; }
console.log(record.getId());
callback(null, member);
});
};
В этот момент звонок завис, поэтому я перенаправил его в Studio Flow, который работает, и звонок завершается с ответом, который я дал это до завершения разговора. Опять же, все работает нормально, но я получаю следующую ошибку от twilio, и я не знаю, как ее устранить.
Недопустимые действия автопилота JSON: недопустимое действие автопилота
Любая помощь будет принята с благодарностью. Спасибо!