我正在创建一个机器人,它将在Circuit中接收消息,然后将其与打印此消息的用户的电子邮件一起发送到其他地方。
例如,我使用xlator-bot https://github.com/circuit/xlator-bot
this.receiveItem = function receiveItem(item) {
logger.info('[APP]: receiveItem');
if (item.type !== 'TEXT' || self.sentByMe(item)) {
logger.debug('[APP]: skip it is not text or I sent it');
return;
}
if (!item.text || !item.text.content) {
logger.info('[APP]: skip it does not have text');
return;
}
self.receiveText(htmlToText.fromString(item.text.content))
.then (function addResponseItem(responseItem){
logger.info('[APP]: addResponseItem');
var comment = {
convId: item.convId,
parentId: (item.parentItemId) ? item.parentItemId : item.itemId,
content: responseItem
};
return client.addTextItem(item.convId, comment);
})
.catch(function(e){
logger.error('[APP]:', e);
});
};
我想获取在此函数中发送项目的用户的电子邮件作为字符串变量。谁能建议我该怎么做?
答案 0 :(得分:0)
item
具有属性creatorId
,它是发送者的userId。 API getUserById
将返回包含emailAddress
属性的用户对象。
请参阅 https://circuitsandbox.net/sdk/classes/Item.html#property_creatorId和https://circuitsandbox.net/sdk/classes/Client.html#method_getUserById以及 https://circuitsandbox.net/sdk/classes/User.html#property_emailAddress