alexa - Alexa技能-检索客户邮件地址node.js
问题描述
我无法理解在 Alexa 中使用该方法检索客户邮件的方法
文档说用令牌发出请求。
然后我做到了:
function AlexaRequest(accessToken){
Host: api.amazonalexa.com
Accept: application/json
Authorization: Bearer +accessToken+
GET https://api.amazonalexa.com/v2/accounts/~current/settings/Profile.email
}
2 个问题 1 - 为什么我会收到“解析错误”:Unexpected Token https ?2 - 我如何获得 Alexa 的回复?
谢谢 !
解决方案
您可以使用UpsServiceClient方法获取用户的个人信息。
请按照以下步骤或在此处观看详细教程
第 1 步:在您的意图处理程序中编写此代码
const GreetMeIntentHandler = {
canHandle(handlerInput) {
return handlerInput.requestEnvelope.request.type === 'IntentRequest'
&& handlerInput.requestEnvelope.request.intent.name === 'GreetMeIntent';
},
async handle(handlerInput) {
const { requestEnvelope, serviceClientFactory, responseBuilder } = handlerInput;
const token = requestEnvelope.context.System.user.permissions &&
requestEnvelope.context.System.user.permissions.consentToken;
if (!token) {
return handlerInput.responseBuilder
.speak('Please Provide Permissions!')
.withAskForPermissionsConsentCard(['alexa::profile:email:read'])
.getResponse();
}
let {deviceId} = requestEnvelope.context.System.device;
const upsServiceClient = serviceClientFactory.getUpsServiceClient();
const email = await upsServiceClient.getProfileEmail();
let speechText = `Hello! Your email is ${email}`;
return handlerInput.responseBuilder
.speak(speechText)
.withSimpleCard('Hello World', speechText)
.getResponse();
},
}
第 2 步:在导出中 添加withApiClient
exports.handler = skillBuilder
.addRequestHandlers(
GreetMeIntentHandler
)
.addErrorHandlers(ErrorHandler)
.withApiClient(new Alexa.DefaultApiClient())
.lambda();
推荐阅读
- crystal-reports - 在 Crystal Reports 中,布尔参数选择真假
- postgresql - CURSOR vs select 循环中的语句
- c# - 未加载资产的 Cefsharp 触发器
- java - Spring Boot 应用程序 - 406 Not Acceptable 错误,在本地工作正常,但在 AWS 上部署时不能
- javascript - Outlook 错误:发送消息时“加载项仍在工作”
- java-8 - 奇怪的TestNg DataProvider MethodMatcherException
- vba - 如何用 MS Access 表单中的数据填充 Microsoft Word 中的文本框?
- amazon-web-services - SQS 用多条记录/消息触发 Lambda?
- angular - 多次双击时的角垫图标背景颜色
- ubuntu - Ubuntu do-release-upgrade 检查不正确的地址 - 如何更改它的查找位置?