Facebook Messenger api - 消息的元数据未在响应中返回
Facebook messenger api - Metadata on the message is not coming back in the response
我有以下代码可以发送带有元数据的短信。当用户回复文本时,消息中的元数据字段为空。是错误还是 Messenger api 不支持此功能?
function sendTextMessage(recipientId, messageText, metadata) {
var messageData = {
recipient: {
id: recipientId
},
message: {
text: messageText,
metadata: metadata,
}
};
callSendAPI(messageData);
}
function callSendAPI(messageData) {
request({
uri: 'https://graph.facebook.com/v2.6/me/messages',
qs: { access_token: PAGE_ACCESS_TOKEN },
method: 'POST',
json: messageData
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
var recipientId = body.recipient_id;
var messageId = body.message_id;
if (messageId) {
console.log("FBHook Successfully sent message with id %s to recipient %s",
messageId, recipientId);
} else {
console.log("FBHook Successfully called Send API for recipient %s",
recipientId);
}
} else {
console.error(response.error);
}
});
}
这不是预期的行为方式。如果订阅 "message_echoes" 字段,元数据字段将立即返回到 webhook。这是为了协调链接到该页面的多个应用程序。
来自更新日志 - https://developers.facebook.com/docs/messenger-platform/changelog
"New field: metadata, passed from the Send API and sent to the message_echoes callback, to help interoperability betwen multiple bots."
我有以下代码可以发送带有元数据的短信。当用户回复文本时,消息中的元数据字段为空。是错误还是 Messenger api 不支持此功能?
function sendTextMessage(recipientId, messageText, metadata) {
var messageData = {
recipient: {
id: recipientId
},
message: {
text: messageText,
metadata: metadata,
}
};
callSendAPI(messageData);
}
function callSendAPI(messageData) {
request({
uri: 'https://graph.facebook.com/v2.6/me/messages',
qs: { access_token: PAGE_ACCESS_TOKEN },
method: 'POST',
json: messageData
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
var recipientId = body.recipient_id;
var messageId = body.message_id;
if (messageId) {
console.log("FBHook Successfully sent message with id %s to recipient %s",
messageId, recipientId);
} else {
console.log("FBHook Successfully called Send API for recipient %s",
recipientId);
}
} else {
console.error(response.error);
}
});
}
这不是预期的行为方式。如果订阅 "message_echoes" 字段,元数据字段将立即返回到 webhook。这是为了协调链接到该页面的多个应用程序。
来自更新日志 - https://developers.facebook.com/docs/messenger-platform/changelog
"New field: metadata, passed from the Send API and sent to the message_echoes callback, to help interoperability betwen multiple bots."