Slack je priročno in priljubljeno orodje, ki ga lahko izboljšate z lastnimi ukazi, prilagojenimi vaši organizaciji.

Slack je orodje, ki ekipam omogoča komunikacijo in sodelovanje. Ena njegovih ključnih lastnosti je uporaba ukazov s poševnico. Ti ukazi sprožijo določena dejanja ali integracije znotraj platforme.

Medtem ko vam Slack ponuja več vgrajenih ukazov za poševnico, lahko ustvarite ukaze po meri z API-jem Slack. Nato lahko konfigurirate ukaz po meri za izvedbo določene naloge, ko jo uporabnik sproži.

Zakaj ustvariti ukaz poševnice po meri v Slacku?

Slackovi vgrajeni ukazi s poševnico morda ne bodo zadostili posebnim potrebam vaše ekipe ali organizacije. Z ustvarjanjem ukazov s poševnico po meri lahko ustvarite bolj prilagojeno izkušnjo za svojo ekipo. To posledično poveča angažiranost ekipe.

Nastavitev aplikacije Slack

Če želite slediti, bi morali biti zadovoljni z osnovna uporaba Slacka. Prijavite se v svoj račun Slack v brskalniku in ustvarite nov delovni prostor. Ta delovni prostor boste uporabili za testiranje svojih aplikacij, preden jih uporabite v delovnem prostoru svoje ekipe.

instagram viewer

Odprite drug zavihek in se pomaknite do Spletno mesto Slack API.

Kliknite na Ustvarite aplikacijo gumb. Na naslednji strani, ki se prikaže, izberite možnost za ustvarjanje aplikacije Od začetka.

Poimenujte aplikacijo in izberite delovni prostor, v katerem bo aplikacija delovala.

Kliknite na Ustvari aplikacijo gumb. To vas bo preusmerilo na stran, ki vsebuje osnovne informacije o vaši aplikaciji.

V razdelku s funkcijami se pomaknite do OAuth in dovoljenja funkcijo, nato se pomaknite navzdol do Obseg žetona botov. Dodaj a klepet: piši obseg za vašo aplikacijo. Ta obseg bo vaši aplikaciji omogočil pošiljanje sporočil v delovni prostor.

Pomaknite se navzgor do Žetoni OAuth za vaš delovni prostor in kliknite na Namesti v Workspace gumb.

Na naslednji strani, ki se prikaže, kliknite na Dovoli gumb. S tem boste aplikacijo namestili v vaš delovni prostor.

Ustvarjanje ukaza za poševnico po meri z API-jem Slack

Ko nastavite aplikacijo Slack, morate ustvariti ukaz po meri za nalogo, ki jo želite opraviti. Na primer ukaz s poševnico, ki uporabniku vrne šalo. Pomaknite se do Ukazi za poševnico funkcija. Kliknite na Ustvari nov ukaz gumb.

Izpolnite Ukaz, URL zahteve, in Kratek opis ukaza, ki ga želite ustvariti. URL zahteve je končna točka, na katero Slack pošlje zahtevo POST, ko uporabnik sproži ukaz. Uporabite URL lokalnega gostitelja kot ogrado; ta URL boste zamenjali pozneje.

Kliknite na Shrani. Ko shranite, Slack samodejno doda obseg ukazov za vašo aplikacijo. Ta obseg vaši aplikaciji omogoča dodajanje bližnjic in ukazov s poševnico, ki jih lahko uporabljajo ljudje v vašem delovnem prostoru. Če spremenite obsege, boste morali znova namestiti aplikacijo. Kliknite na znova namestite svojo aplikacijo gumb.

Na naslednji strani, ki se prikaže, kliknite Dovoli ponovno namestitev aplikacije v vaš delovni prostor.

Konfiguriranje vedenja ukaza Slash

Zaženite kateri koli Python IDE. Ustvarite novo virtualno okolje. Ustvarite novo datoteko Python in novo datoteko .env. Na terminalu zaženite naslednji ukaz, da namestite zahtevane knjižnice.

pip namestite python-dotenv zahteve Flask slack-bolt

The python-dotenv knjižnica vam bo omogočila nalaganje spremenljivk okolja v datoteko .env. The zahteve knjižnica vam omogoča, da naredite zahteve HTTP in Bučka obravnava dohodne zahteve HTTP in povratne odgovore. Ohlapen vijak obravnava dohodne zahteve Slack.

Odprite datoteko .env in ustvarite dve spremenljivki okolja. Poimenujte jih BOT_TOKEN in SIGNING_SECRET oz. Pojdite na spletno mesto Slack API. Pod vašo aplikacijo Osnovni podatki kopirajte skrivnost podpisovanja in jo uporabite za inicializacijo spremenljivke BOT_TOKEN. Pomaknite se do funkcije OAuth & Permissions in kopirajte žeton OAuth uporabnika Bota. Uporabite ga za inicializacijo spremenljivke SIGNING_SECRET.

Žeton bota je edinstven identifikator, ki avtentikira vašo aplikacijo s Slackovim API-jem, ko opravlja klice API-ja. Skrivnost podpisovanja preverja, ali dohodne zahteve za vašo aplikacijo prihajajo iz Slacka.

Celotna izvorna koda je na voljo v a Repozitorij GitHub.

Uvozite zahtevane knjižnice in module.

uvoz os
od pathlib uvoz Pot
od dotenv uvoz load_dotenv
uvoz zahteve
od bučko uvoz Bučka, zahteva, jsonify
od slack_bolt uvoz aplikacija
od slack_bolt.adapter.flask uvoz SlackRequestHandler

Ustvarite nov primerek aplikacije Flask.

app = Flask (__ime__)

Naložite spremenljivke okolja iz datoteke .env z uporabo load_dotenv() funkcijo.

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

Ustvarite nov primerek aplikacije Slack z uporabo aplikacija razreda iz knjižnice slack_bolt.

slack_app = Aplikacija(
token=os.environ['BOT_TOKEN'],
signing_secret=os.environ['SIGNING_SECRET']
)

Ustvarite funkcijo upravljalnika poti, ki obravnava dohodne zahteve za /slack/command končna točka. Ko končna točka prejme a OBJAVI zahtevo, razčleni podatke telesa zahteve. Nato preveri, ali je ukaz /joke. Če je tako, pokliče get_joke() funkcijo in vrne odgovor JSON za Slack z rezultatom ukaza.

@app.route("/slack/command", metode=["POST"])
defukaz():
# Razčleni podatke telesa zahteve
podatki = zahtevek.obrazec

# Pokličite ustrezno funkcijo na podlagi ukaza za poševnico
če podatki ["ukaz"] == "/Šala":
sporočilo = get_joke()
drugače:
sporočilo = f"Neveljaven ukaz: {podatki['ukaz']}"

# Vrni odgovor Slacku
vrnitev jsonify({"besedilo": sporočilo})

Ustvarite funkcijo, ki pošlje zahtevo GET na icanhazdadjoke API za pridobivanje naključne šale v formatu JSON. Nato vrne šalo kot niz.

defget_joke():
url = " https://icanhazdadjoke.com/"
glave = {"Sprejmi": "aplikacija/json"}
odgovor = requests.get (url, headers=headers, timeout=5)
šala = odziv.json()["Šala"]
vrnitev Šala

Ustvari nov primerek a SlackRequestHandler objekt, ki bo obravnaval dohodne zahteve iz Slacka.

handler = SlackRequestHandler (slack_app)

Preverite, ali se skript izvaja neposredno, in če se, zaženite aplikacijo Flask na vratih 5000.

če __ime__ == "__glavni__":
# Zaženite aplikacijo Flask na vratih 5000
app.run (vrata=5000, debug=Prav)

Zaženite program, da zaženete strežnik, ki deluje na lokalnem gostitelju.

Da program komunicira s Slackom, potrebujete URL, do katerega lahko dostopa prek interneta. Prenesite in zaženite ngrok. The programska oprema ngrok omogoča ustvarjanje varnega javnega URL-ja ki vodi promet do spletnega strežnika, ki teče v vašem računalniku.

Zaženite naslednji ukaz, da dobite javni URL:

ngrok http 5000

Spodnja slika prikazuje javni URL na ngrok, označen z belo.

Kopirajte URL in se pomaknite do spletnega mesta Slack API. Kliknite na Ukazi za poševnico funkcija. Uredite ukaz /joke in nadomestite ogrado URL-ja zahteve s svojim javnim URL-jem. Dodajte /slack/events na konec URL-ja, da kaže na vašo končno točko.

Pojdite v svoj delovni prostor, nato vnesite in pošljite ukaz /joke. V odgovor bi morali videti šalo:

Seznanite se z drugimi funkcijami Slack

Slack ponuja veliko funkcij poleg ukazov Slash. Če se seznanite s temi funkcijami, boste razumeli, kako delujejo.

Nato lahko poiščete načine, kako jih prilagoditi zahtevam svojega delovnega prostora. To bo povečalo produktivnost vaše ekipe.