微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

尝试通过 AWS Pinpoint 发送语音消息时找不到资源

如何解决尝试通过 AWS Pinpoint 发送语音消息时找不到资源

我目前有一个 Node.js 服务,可以通过 AWS Pinpoint 发送语音呼叫。但是,我在拨打电话后收到了 Resource not found 回复。我用 PinpointSMSVoice.sendVoiceMessage 进行了测试,它成功地拨打了电话。不起作用的是Pinpoint.sendMessages。我的请求对象如下所示:

{
  ApplicationId: 'project-id',MessageRequest: {
    Addresses: {
      ['destination-number']: {
        ChannelType: 'VOICE',Substitutions: {
          // Using a template
        }
      }
    },MessageConfiguration: {
      VoiceMessage: {
        LanguageCode: 'en-US',OriginationNumber: 'origination-number'
      }
    },TemplateConfiguration: {
      VoiceTemplate: {
        Name: 'voice-template
      }
    }
  }
};

pinpoint.sendMessages(requestObj,callback);

我应该注意,我不是在沙盒模式下,它已被批准并转移到生产模式。我已经用 SMS 测试了相同的设置,效果很好。我不太确定 PinpointSMSVoice.sendVoiceMessagePinpoint.sendMessages间的区别是什么,除了 Pinpoint.sendMessages 允许我设置模板这一事实。关于我可能还缺少什么的任何想法?

解决方法

我遇到了同样的问题。它使用 PinPointSMSVoice 客户端工作,但这不会让我使用模板。我还使用 AWS JS SDK 的 V3 对此进行了测试,该 SDK 将客户端 @aws-sdk/client-pinpoint-sms-voice 和 @aws-sdk/client-pinpoint 模块化,但行为是相同的。它在控制台的“测试消息”功能中使用相同的模板,因此似乎是 JS SDK 问题。我建议您向 JS SDK 团队 https://github.com/aws/aws-sdk-js-v3

提出这个问题 ,

使用 PinPoint 执行sendVoiceMessage操作时,需要将内容类型设置为application/json。如果你不这样做,你会得到这个例外。要查看示例(这是 AWS Java API),请参阅此 Github URL:

https://github.com/awsdocs/aws-doc-sdk-examples/blob/master/javav2/example_code/pinpoint/src/main/java/com/example/pinpoint/SendVoiceMessage.java

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。