我创建了一个Whatsapp聊天机器人,该机器人可以收集各种用户信息,但无法收集用户发送的图像。我怎样才能做到这一点?我尝试过使用正确的字段类型,但是默认字段都不适用于图像吗?如果有人知道解决方案,请提供帮助。
答案 0 :(得分:2)
Heyooo。 ?Twilio开发人员推广人员在这里。
如果用户通过Whatsapp发送图像,则图像URL将在已发送的Webhook中可用。您可以看一下Webhook包含的有效负载:
body: {
MediaContentType0: 'image/jpeg',
SmsMessageSid: 'MM9...',
NumMedia: '1',
SmsSid: 'MM9...',
SmsStatus: 'received',
Body: '',
To: 'whatsapp:+141...',
NumSegments: '1',
MessageSid: 'MM9bc...',
AccountSid: 'ACa34...',
From: 'whatsapp:+49176...',
MediaUrl0: 'https://api.twilio.com/2010-04-01/Accounts/ACa34bb5d3c305d08ae1308786f4d79b72/Messages/MM9bc3...',
ApiVersion: '2010-04-01'
}
您会发现NumMedia
和MediaUrl0
属性,其中包括已发送图像的URL。然后,您可以下载这些图像并对它们进行任何处理。
要在发送消息和Webhook之后检索图像,请查看the MediaResource Docs。您还可以通过以下方式以编程方式获取媒体:
client.messages('MM...')
.media('ME...')
.fetch()
.then(media => console.log(media.contentType));
如果您使用的是Studio,可以看看this tutorial,它以一个有趣的用例来处理Whatsapp Media。
让我知道是否有帮助。 ?
(很难提供更多建议,因为我不确定您要做什么。)