0

我正在创建一个机器人,它将在 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);
            });
    };

我想获取在此函数中作为字符串变量发送项目的用户的电子邮件。谁能建议我该怎么做?

4

1 回答 1

0

item一个属性creatorId,即发送者的用户 ID。APIgetUserById将返回包含该emailAddress属性的用户对象。

请参阅 https://circuitsandbox.net/sdk/classes/Item.html#property_creatorIdhttps://circuitsandbox.net/sdk/classes/Client.html#method_getUserByIdhttps://circuitsandbox.net/sdk/classes/User .html#property_emailAddress

于 2019-07-25T13:19:59.433 回答