Как передать информацию от одного намерения к другому

Я прочитал электронную почту пользователя с помощью входа в Google для связывания учетной записи. Как передать данные этого разговора следующему намерению?


app.intent("Get Signin",(conv , params, signin) =>{
    if(signin.status === 'OK'){
        const email = conv.user.email
        conv.ask(`I got your email as ${email}. How would you like to redeem?`)
        conv.ask(new Suggestions(['QR code'],['16 digit code'],['Cancel']))
    }
    else
    {
        conv.close("Please sign in to redeem");
    }
})





app.intent("numcode",(conv,{num, points}) => {
    const mailOptions = {
        from: "abc", 
        to: email, 
        subject: "YAY!", 
        html: `<p>Hello !! <br> You have ${points} in (${num}). </p>`
    }
    transporting.sendMail(mailOptions, (err, info) => {
        if(err)
        {
          console.log(err);
        }
    })
    conv.ask("You have succesfully finished.");
})

Я хочу отправить пользователю письмо, поэтому то, что следует заменить на «кому: электронная почта» или что нужно добавить в мой код.


person Laxmi Anusri Patti    schedule 16.06.2020    source источник


Ответы (1)


Вам не нужно передавать это следующему намерению. После того, как ваш пользователь вошел в систему через привязку учетной записи, электронная почта пользователя станет доступной через объект conv. Вы можете позвонить conv.user.email, чтобы получить его. Когда ваш пользователь запускает ваше намерение numcode, он должен заполнить свойство to адресом электронной почты пользователя.

В настройках почты вы можете сделать следующее:

const mailOptions = {
        from: "abc", 
        to: conv.user.email, 
        subject: "YAY!", 
        html: `<p>Hello !! <br> You have ${points} in (${num}). </p>`
    }
person Jordi    schedule 16.06.2020