Как проверить группы пользователей Slack Team с помощью @ slack / bolt - PullRequest
0 голосов
/ 06 августа 2020

Я пытаюсь создать Slack-бота, используя @ slack / bolt. Цель состоит в том, чтобы различать ответы ботов среди групп пользователей. Например, если пользователь принадлежит к группе администраторов, ответ должен быть более формальным et c.

Однако я не смог найти, как проверить, принадлежит ли пользователь к такой группе. Мой код просто такой. Было бы замечательно, если бы вы могли помочь или предложить мне какое-нибудь решение.

require('dotenv').config();
const { App } = require('@slack/bolt');

const bot = new App({
    signingSecret: process.env.SLACK_SIGNING_SECRET,
    token: process.env.SLACK_BOT_TOKEN,
    name: process.env.BOT_NAME,
});

(async () => {
    // Start the app
    await bot.start(process.env.PORT || 3000);

    console.log('⚡️ Bolt app is running!');
})();

bot.event('app_mention', async ({ event, context }) => {
    try {
        let message = event.text.split(' ')[1];
        let userID = event.user;
        let answer = await generateAnswer(message);
        await bot.client.chat.postMessage({
            token: context.botToken,
            channel: event.channel,
            text: answer,
        });
        console.log(event);
    } catch (e) {
        console.log(`error responding ${e}`);
    }
});

const generateAnswer = (message) => {
    return new Promise((resolve, reject) => {
        switch (message) {
            case 'ping':
                resolve('pong');
                break;
            default:
                resolve('Hi'); // If admin resolve("Hello")
        }
    });
};
...