自动驾驶仪和功能收集数据他

Autopilot and Functions collecting data he

我在 autopilot 中有一个任务,它从调用者那里收集数据,然后使用重定向调用一个函数。 我似乎无法访问 post 变量。请协助。

所以当 运行 出现以下错误时

错误 - 82002

Twilio 函数响应出错

由这行代码产生

var first_name = memory.twilio.collected_data.lead_qual.lead_qual_first;

删除该行,它工作正常,只是无法访问收集的数据。

以下是我包含的依赖项,任务代码和函数。

看起来像这样.. 依赖......>

lodash 4.17.11 twilio 3.29.2 fs 0.0.1-安全 得到 9.6.0 时刻时区 0.5.14 时刻 2.29.1 xmldom 0.1.27 twilio/runtime-handler 1.0.1 实用程序 0.11.0 请求 2.87.0

任务……>

    {
"actions": [
{
"collect": {
"name": "lead_qual",
"questions": [
{
"question": "What is your first name?",
"name": "lead_qual_first",
"type": "Twilio.FIRST_NAME"
},
{
"question": "What is your last name?",
"name": "lead_qual_last",
"type": "Twilio.LAST_NAME"
},
{
"question": "If we are disconnected what is the best phone number to reach you on??",
"name": "lead_qual_phone",
"type": "Twilio.PHONE_NUMBER"
},
{
"question": "What is your date of birth?",
"name": "lead_qual_dob",
"type": "Twilio.DATE"
},
{
"question": "Are you currently covered by disability, yes or no?",
"name": "lead_qual_disability",
"type": "Twilio.YES_NO"
},
{
"question": "Do you have any form of federal medicare, yes or no?",
"name": "lead_qual_medicare",
"type": "Twilio.YES_NO"
},
{
"question": "Do you have medicaid or another state sponsored insurance, yes or no?",
"name": "lead_qual_medicaid",
"type": "Twilio.YES_NO"
},
{
"question": "Finally, Are you currently insured, yes or no?",
"name": "lead_qual_insured",
"type": "Twilio.YES_NO"
}
],
"on_complete": {
"redirect": {
"method": "POST",
"uri": "https://health-agent-3097.twil.io/Evaluate-Answers"
}
}
}
}
]
}
 

函数......>

// This is your new function. To start, set the name and path on the left.

exports.handler = function(context, event, callback) {

// Require the component used to post.

const got = require("got");

// Time zone for EST to check times with.

let moment = require('moment-timezone');

const now = moment().tz('America/New_York');

// initialize the return object

var responseObject = {};

var first_name = memory.twilio.collected_data.lead_qual.lead_qual_first;

responseObject =

{

"actions":[

  {

    "say":"Force Override result"

  },

  {

    "redirect": {

      "method": "POST",

      "uri": "task://goodbye"

    }

  }

]
}

// This callback is what is returned in response to this function being invoked.

callback(null, responseObject);}

这里是 Twilio 开发人员布道者。

memory 不是传递给 Twilio 函数的参数之一。你超过了 eventcontextcallback。您正在正确使用 callback 并且 context 包含您的环境变量。

event 对象正是您在这里所需要的。 event 包括发送给函数的所有参数。根据 the documentation on the Autopilot request,您将收到一个 Memory 参数。 Memory 将是一个需要解析的 JSON 字符串。因此,请尝试访问:

const memory = JSON.parse(event.Memory);
const firstName = memory.twilio.collected_data.lead_qual.lead_qual_first;

告诉我你是怎么处理的。