A Slack egy kényelmes és népszerű eszköz, amelyet saját szervezetére szabott parancsaival bővíthet.

A Slack egy olyan eszköz, amely lehetővé teszi a csapatok számára a kommunikációt és az együttműködést. Az egyik legfontosabb jellemzője a perjel parancsok használata. Ezek a parancsok konkrét műveleteket vagy integrációkat indítanak el a platformon belül.

Míg a Slack számos beépített perjel parancsot biztosít, egyéni parancsokat hozhat létre a Slack API használatával. Ezután beállíthatja az egyéni parancsot, hogy végrehajtson egy bizonyos feladatot, amikor a felhasználó elindítja azt.

Miért hozzon létre egyéni perjel parancsot a Slackben?

Előfordulhat, hogy a Slack beépített perjel parancsai nem elégítik ki a csapat vagy a szervezet speciális igényeit. Egyéni perjel parancsok létrehozásával személyre szabottabb élményt teremthet csapata számára. Ez viszont növeli a csapat elkötelezettségét.

Slack alkalmazás beállítása

A követéshez kényelmesnek kell lennie a a Slack alapvető használata. Jelentkezzen be Slack-fiókjába a böngészőben, és hozzon létre egy új munkaterületet. Ezt a munkaterületet az alkalmazások tesztelésére fogja használni, mielőtt azokat a csapata munkaterületén használná.

instagram viewer

Nyisson meg egy másik lapot, és navigáljon a Slack API webhely.

Kattintson a Hozzon létre egy alkalmazást gomb. A megjelenő következő oldalon válassza ki az alkalmazás létrehozásának lehetőségét A semmiből.

Nevezze el az alkalmazást, és válassza ki azt a munkaterületet, amelyen az alkalmazás működni fog.

Kattints a Alkalmazás létrehozása gomb. Ez átirányítja egy oldalra, amely az alkalmazással kapcsolatos alapvető információkat tartalmazza.

A funkciók részben navigáljon a OAuth és engedélyek funkciót, majd görgessen le a lehetőséghez Bot Token Scopes. Add hozzá a chat: írj alkalmazásának hatóköre. Ez a hatókör lehetővé teszi az alkalmazás számára, hogy üzeneteket küldjön a munkaterületre.

Görgessen felfelé a OAuth-tokenek a munkaterülethez szakaszt, és kattintson a Telepítés a munkaterületre gomb.

A következő megjelenő oldalon kattintson a gombra Lehetővé teszi gomb. Ezzel telepíti az alkalmazást a munkaterületére.

Egyéni perjel parancs létrehozása a Slack API használatával

A Slack alkalmazás beállítása után létre kell hoznia egy egyéni parancsot az elvégzendő feladathoz. Például egy perjel parancs, amely viccet ad vissza a felhasználónak. Navigáljon a Slash parancsok funkció. Kattintson a Új parancs létrehozása gomb.

Töltse ki a Parancs, URL kérése, és Rövid leírás a létrehozni kívánt parancshoz. A Request URL az a végpont, amelyre a Slack POST kérést küld, amikor a felhasználó elindítja a parancsot. Helyőrzőként használjon localhost URL-t; ezt az URL-t később módosítja.

Kattintson Megment. Mentéskor a Slack automatikusan hozzáad egy parancshatókört az alkalmazáshoz. Ez a hatókör lehetővé teszi az alkalmazás számára, hogy parancsikonokat és perjel parancsokat adjon hozzá, amelyeket a munkaterületen lévő emberek használhatnak. A hatókör módosításához újra kell telepítenie az alkalmazást. Kattintson a telepítse újra az alkalmazást gomb.

A következő oldalon kattintson az alkalmazás újratelepítésének engedélyezése a munkaterületre lehetőségre.

A Slash parancs viselkedésének konfigurálása

Indítson el bármilyen Python IDE-t. Hozzon létre egy új virtuális környezetet. Hozzon létre egy új Python-fájlt és egy új .env-fájlt. A terminálon futtassa a következő parancsot a szükséges könyvtárak telepítéséhez.

pip install python-dotenv kéri Flask slack-bolt

A python-dotenv könyvtár lehetővé teszi a környezeti változók betöltését az .env fájlba. A kéréseket könyvtár lehetővé teszi HTTP kérések és Lombik kezeli a bejövő HTTP kéréseket és a válaszokat. Laza csavar kezeli a bejövő Slack kéréseket.

Nyissa meg az .env fájlt, és hozzon létre két környezeti változót. Nevezd meg őket BOT_TOKEN és SIGNING_SECRET illetőleg. Keresse meg a Slack API webhelyet. Az alkalmazásod alatt Alapinformációk másolja ki az aláírási titkot, és használja a BOT_TOKEN változó inicializálására. Keresse meg az OAuth és engedélyek funkciót, és másolja ki a Bot User OAuth tokent. Használja a SIGNING_SECRET változó inicializálására.

A bot-token egy egyedi azonosító, amely API-hívások során hitelesíti az alkalmazást a Slack API-jával. Az aláírási titok ellenőrzi, hogy az alkalmazásához bejövő kérések a Slacktől érkeznek.

A teljes forráskód elérhető a GitHub adattár.

Importálja a szükséges könyvtárakat és modulokat.

import os
tól től pathlib import Pálya
tól től dotenv import load_dotenv
import kéréseket
tól től lombik import Lombik, kérés, jsonify
tól től slack_bolt import App
tól től slack_bolt.adapter.flask import SlackRequestHandler

Hozzon létre egy Flask alkalmazás új példányát.

app = Lombik (__name__)

Töltse be a környezeti változókat az .env fájlból a load_dotenv() funkció.

env_path = Elérési út('.') / ".env"
load_dotenv (dotenv_path=env_path)

Hozzon létre egy Slack alkalmazás új példányát a App osztály a slack_bolt könyvtárból.

slack_app = App(
token=os.environ["BOT_TOKEN"],
signing_secret=os.environ["SIGNING_SECRET"]
)

Hozzon létre egy útvonalkezelő függvényt, amely kezeli a bejövő kéréseket /slack/command végpont. Amikor a végpont megkapja a POST kérést, elemzi a kérelem törzsadatait. Ezután ellenőrzi, hogy a parancs megfelel-e /joke. Ha igen, akkor a get_joke() függvényt, és JSON-választ ad vissza a Slacknek a parancs eredményével.

@app.route("/slack/command", method=["POST"])
defparancs():
# A kérés törzsadatainak elemzése
adatok = kérés.űrlap

# Hívja meg a megfelelő függvényt a perjel parancs alapján
ha adat["parancs"] == "/tréfa":
üzenet = get_joke()
más:
üzenet = f"Érvénytelen parancs: {adat['parancs']}"

# Válasz visszaküldése a Slack-nek
Visszatérés jsonify({"szöveg": üzenet})

Hozzon létre egy függvényt, amely GET kérést küld a icanhazdadjoke API egy véletlenszerű vicc lekéréséhez JSON formátumban. Ezután egy karakterláncként adja vissza a viccet.

defget_joke():
url = " https://icanhazdadjoke.com/"
fejlécek = {"Elfogad": "alkalmazás/json"}
válasz = requests.get (url, headers=headers, timeout=5)
vicc = válasz.json()["tréfa"]
Visszatérés tréfa

Hozzon létre egy új példányt a SlackRequestHandler objektum, amely kezeli a Slacktől érkező kéréseket.

kezelő = SlackRequestHandler (slack_app)

Ellenőrizze, hogy a szkript közvetlenül fut-e, és ha igen, indítsa el a Flask alkalmazást az 5000-es porton.

ha __név__ == "__fő__":
# Indítsa el a Flask alkalmazást az 5000-es porton
app.run (port=5000, debug=Igaz)

Futtassa a programot a localhost-on futó kiszolgáló elindításához.

Ahhoz, hogy a program kommunikálhasson a Slackkal, szüksége van egy URL-re, amelyet az interneten keresztül tud elérni. Töltse le és futtassa ngrok. A Az ngrok szoftver lehetővé teszi egy biztonságos nyilvános URL létrehozását amely a forgalmat a számítógépén futó webszerverhez vezeti.

Futtassa a következő parancsot a nyilvános URL lekéréséhez:

ngrok http 5000

Az alábbi képen fehérrel kiemelve látható az ngrok nyilvános URL-je.

Másolja ki az URL-t, és lépjen a Slack API webhelyére. Kattintson a Slash parancsok funkció. Szerkessze a /joke parancsot, és cserélje ki a kérelem URL helyőrzőjét a nyilvános URL-címére. Adja hozzá a /slack/events elemet az URL végéhez, hogy a végpontra mutasson.

Menjen a munkaterületre, majd írja be és küldje el a /joke parancsot. Látnod kell egy viccet válaszul:

Ismerkedjen meg a Slack egyéb funkcióival

A Slack a Slash parancsokon túl számos szolgáltatást kínál. Ha megismeri ezeket a funkciókat, akkor megértheti, hogyan működnek.

Ezután megkeresheti azokat a módokat, amelyekkel testreszabhatja őket a munkaterület követelményeihez. Ez növeli a csapat termelékenységét.