Slack je pohodlný a oblíbený nástroj, který můžete vylepšit svými vlastními příkazy přizpůsobenými vaší organizaci.
Slack je nástroj, který umožňuje týmům komunikovat a spolupracovat. Jednou z jeho klíčových vlastností je použití příkazů lomítka. Tyto příkazy spouštějí specifické akce nebo integrace v rámci platformy.
Zatímco vám Slack poskytuje několik vestavěných příkazů lomítka, můžete vytvářet vlastní příkazy pomocí rozhraní API Slack. Potom můžete nakonfigurovat vlastní příkaz tak, aby provedl určitou úlohu, když ji spustí uživatel.
Proč vytvořit vlastní příkaz lomítka ve Slacku?
Vestavěné příkazy lomítka Slack nemusí vyhovovat specifickým potřebám vašeho týmu nebo organizace. Vytvořením vlastních příkazů lomítka můžete svému týmu vytvořit přizpůsobenější prostředí. To zase zvyšuje angažovanost týmu.
Nastavení aplikace Slack
Chcete-li to dotáhnout do konce, měli byste být spokojeni s základní použití Slacku. Přihlaste se do svého účtu Slack v prohlížeči a vytvořte nový pracovní prostor. Tento pracovní prostor budete používat k testování aplikací, než je použijete v pracovním prostoru svého týmu.
Otevřete další kartu a přejděte na Web Slack API.
Klikněte na Vytvořte aplikaci knoflík. Na další stránce, která se zobrazí, vyberte možnost vytvoření aplikace Od nuly.
Pojmenujte aplikaci a vyberte pracovní prostor, ve kterém bude aplikace fungovat.
Klikněte na Vytvořit aplikaci knoflík. Tím budete přesměrováni na stránku, která obsahuje základní informace o vaší aplikaci.
V sekci funkcí přejděte na OAuth a oprávnění funkci a poté přejděte dolů na Rozsahy bot tokenů. Přidat chat: psát prostor pro vaši aplikaci. Tento rozsah umožní vaší aplikaci odesílat zprávy do pracovního prostoru.
Přejděte nahoru k Tokeny OAuth pro váš pracovní prostor a klikněte na Instalovat do pracovního prostoru knoflík.
Na další stránce, která se zobrazí, klikněte na Dovolit knoflík. Tím se aplikace nainstaluje do vašeho pracovního prostoru.
Vytvoření vlastního příkazu lomítko pomocí Slack API
Po nastavení aplikace Slack musíte vytvořit vlastní příkaz pro úkol, který chcete provést. Například příkaz lomítko, který uživateli vrátí vtip. Přejděte na Příkazy lomítka Vlastnosti. Klikněte na Vytvořit nový příkaz knoflík.
Vyplňte Příkaz, URL požadavku, a Stručný popis příkazu, který chcete vytvořit. Adresa URL požadavku je koncový bod, na který Slack odešle požadavek POST, když uživatel spustí příkaz. Použijte URL localhost jako zástupný symbol; tuto adresu URL později změníte.
Klikněte na Uložit. Když uložíte, Slack automaticky přidá rozsah příkazů pro vaši aplikaci. Tento rozsah umožňuje vaší aplikaci přidávat zkratky a příkazy lomítka, které mohou používat lidé ve vašem pracovním prostoru. Změna rozsahů bude vyžadovat přeinstalaci aplikace. Klikněte na přeinstalujte aplikaci knoflík.
Na stránce, která se zobrazí jako další, klikněte na možnost Povolit přeinstalaci aplikace ve vašem pracovním prostoru.
Konfigurace chování příkazu Slash
Spusťte libovolné IDE Pythonu. Vytvořte nové virtuální prostředí. Vytvořte nový soubor Python a nový soubor .env. Na terminálu spusťte následující příkaz k instalaci požadovaných knihoven.
pip install python-dotenv požaduje Flask slack-bolt
The python-dotenv knihovna vám umožní načíst proměnné prostředí do souboru .env. The žádosti knihovna vám umožňuje provádět požadavky HTTP a Baňka zpracovává příchozí požadavky HTTP a vrací odpovědi. Slack-bolt zpracovává příchozí požadavky Slack.
Otevřete soubor .env a vytvořte dvě proměnné prostředí. Vyjmenuj je BOT_TOKEN a SIGNING_SECRET respektive. Přejděte na web Slack API. Pod vaší aplikací Základní informace zkopírujte podpisový klíč a použijte jej k inicializaci proměnné BOT_TOKEN. Přejděte na funkci OAuth & Permissions a zkopírujte token OAuth uživatele robota. Použijte jej k inicializaci proměnné SIGNING_SECRET.
Token bota je jedinečný identifikátor, který ověřuje vaši aplikaci pomocí Slack's API při volání API. Tajemství podpisu ověřuje, že příchozí požadavky do vaší aplikace pocházejí ze Slacku.
Úplný zdrojový kód je k dispozici v a úložiště GitHub.
Importujte požadované knihovny a moduly.
import os
z pathlib import Cesta
z dotenv import load_dotenv
import žádosti
z baňka import Baňka, žádost, jsonify
z slack_bolt import Aplikace
z slack_bolt.adapter.flask import SlackRequestHandler
Vytvořte novou instanci aplikace Flask.
app = Flask (__name__)
Načtěte proměnné prostředí ze souboru .env pomocí load_dotenv() funkce.
env_path = cesta('.') / '.env'
load_dotenv (dotenv_path=env_path)
Vytvořte novou instanci aplikace Slack pomocí Aplikace třídy z knihovny slack_bolt.
slack_app = Aplikace(
token=os.environ['BOT_TOKEN'],
signing_secret=os.environ[„SIGNING_SECRET“]
)
Vytvořte funkci obslužné rutiny trasy, která zpracovává příchozí požadavky na /slack/command koncový bod. Když koncový bod obdrží a POŠTA požadavek, analyzuje data těla požadavku. Poté zkontroluje, zda je příkaz /joke. Pokud ano, volá se get_joke() a vrátí odpověď JSON Slacku s výsledkem příkazu.
@app.route("/slack/command", methods=["POST"])
defpříkaz():
# Analyzujte data těla požadavku
data = žádost.formulář# Volání příslušné funkce na základě příkazu lomítko
-li data["příkaz"] == "/žert":
zpráva = get_joke()
jiný:
zpráva = f"Neplatný příkaz: {data['příkaz']}"
# Vraťte odpověď Slacku
vrátit se jsonify({"text": zpráva})
Vytvořte funkci, která odešle požadavek GET na icanhazdadjoke API pro načtení náhodného vtipu ve formátu JSON. Poté vrátí vtip jako řetězec.
defget_joke():
url = " https://icanhazdadjoke.com/"
záhlaví = {"Akceptovat": "application/json"}
response = request.get (url, headers=headers, timeout=5)
vtip = response.json()["žert"]
vrátit se žert
Vytvořte novou instanci a SlackRequestHandler objekt, který bude zpracovávat příchozí požadavky ze Slacku.
handler = SlackRequestHandler (slack_app)
Zkontrolujte, zda se skript spouští přímo, a pokud ano, spusťte aplikaci Flask na portu 5000.
-li __jméno__ == "__hlavní__":
# Spusťte aplikaci Flask na portu 5000
app.run (port=5000, ladění=Skutečný)
Spuštěním programu spustíte server běžící na localhost.
Aby program mohl komunikovat se Slackem, potřebujete adresu URL, ke které má přístup přes internet. Stáhněte a spusťte ngrok. The Software ngrok vám umožňuje vytvořit zabezpečenou veřejnou adresu URL který tuneluje provoz na webový server běžící na vašem počítači.
Spusťte následující příkaz a získejte veřejnou adresu URL:
ngrok http 5000
Obrázek níže ukazuje veřejnou adresu URL na ngrok, zvýrazněnou bíle.
Zkopírujte URL a přejděte na web Slack API. Klikněte na Příkazy lomítka Vlastnosti. Upravte příkaz /joke a nahraďte zástupný symbol adresy URL požadavku svou veřejnou adresou URL. Přidejte /slack/events na konec adresy URL, aby ukazoval na váš koncový bod.
Přejděte do svého pracovního prostoru, zadejte a odešlete příkaz /joke. V odpovědi byste měli vidět vtip:
Seznamte se s dalšími funkcemi Slack
Slack má spoustu funkcí, které nabízí kromě příkazů Slash. Seznámení s těmito funkcemi vám umožní pochopit, jak fungují.
Poté můžete hledat způsoby, jak je přizpůsobit požadavkům vašeho pracovního prostoru. Zvýšíte tak produktivitu vašeho týmu.