Мухаммад Умар Ханиф

Шаг 01:

  • Прежде всего, у вас должна быть учетная запись Slack. Добавьте рабочую область «TalkMe» или с любым другим названием.
  • Создайте новое приложение slack по ссылке https://api.slack.com. Нажмите на Ваши приложения в правом верхнем углу.

  • Теперь нажмите «Создать новое приложение». Добавьте имя приложения и рабочее пространство, а затем нажмите «Создать приложение».

Шаг 02:

  • В OAuth и разрешениях добавьте следующие области для двустороннего личного общения.

Шаг 03:

  • Перейдите в строку меню «Установить приложение» и нажмите «Установить на рабочее место».
  • Это даст нам токен Slack Bot. Скопируйте его и вставьте в файл .env в редакторе кода.

Шаг 04:

  • Посетите строку меню «Подписка на события» и подпишитесь на события бота.
  • И добавьте следующие пользовательские события бота.

  • Каждый раз, когда мы меняем области разрешений в приложениях, нам нужно переустанавливать наше приложение.

Шаг 05:

  • Создайте канал «#test» в Slack или с любым другим названием.
  • Добавьте свое бот-приложение «ChatMe» в канал #test.

Шаг 06:

  • Чтобы запустить это на веб-сервере или локальном компьютере, мы будем использовать «ngrok». Он предоставляет общедоступные URL-адреса для тестирования наших чат-ботов.
  • • Загрузите «ngrok» и поместите приложение в тот же каталог, где находится код.

Шаг 07:

  • Перейдите к основной информации, скопируйте секрет подписи и поместите его в файл .env.

  • Загрузите «ngrok» и поместите приложение в тот же каталог, где находится код.

Шаг 08:

from lib2to3.pgen2 import token
from aiohttp import Payload 
import slack
import os
from pathlib import Path
from dotenv import load_dotenv
from flask import Flask, request, Response 
from slackeventsapi import SlackEventAdapter

env_path=Path('.') /'.env'
load_dotenv(dotenv_path=env_path)

app=Flask(__name___)
slack_event_adaptor-SlackEventAdapter(os.environ['SIGNING SECRET'],'/slack/events', app)

client=slack.WebClient(token=os.environ['SLACK_TOKEN'])
BOT_ID=client.api_call("auth.test") ['user_id']

@slack_event_adaptor.on('message')

def message(payLoad):
  event=payload.get('event', {})
  channel_id1=event.get('channel') 
  user_id=event.get('user')
  text1=event.get('text')
  if BOT_ID=user_id:
    client.chat_postMessage(channel=channel_id1, text=text1)
if __name___=="___main__":
  app.run(debug=True)
  message()
SLACK_TOKEN=*********************************
SIGNING_SECRET=******************************
BOT_TOKEN=***********************************
  • Запустите bot.py, это даст вам ссылку на веб-сервер. Типа http://127.0.0.1:5000/
  • Откройте терминал в каталоге, где находится ngrok.
  • И запустите команду «ngrok http 5000».
  • Это даст вам ссылку запроса переадресации. Скопируйте эту ссылку. (продолжайте открывать это окно, если оно будет закрыто, ссылка запроса на переадресацию изменится)

Шаг 09:

  • Откройте меню «Подписка на события» на веб-сайте Slack API и включите события.
  • Вставьте ссылку запроса на переадресацию с конечными точками, указанными в коде.

Шаг 10:

Окончательный результат