Το Slack είναι ένα βολικό και δημοφιλές εργαλείο που μπορείτε να βελτιώσετε με τις δικές σας εντολές, προσαρμοσμένες στον οργανισμό σας.

Το Slack είναι ένα εργαλείο που επιτρέπει στις ομάδες να επικοινωνούν και να συνεργάζονται. Ένα από τα βασικά χαρακτηριστικά του είναι η χρήση εντολών κάθετου. Αυτές οι εντολές ενεργοποιούν συγκεκριμένες ενέργειες ή ενσωματώσεις εντός της πλατφόρμας.

Ενώ το Slack σάς παρέχει πολλές ενσωματωμένες εντολές κάθετου, μπορείτε να δημιουργήσετε προσαρμοσμένες εντολές χρησιμοποιώντας το API του Slack. Στη συνέχεια, μπορείτε να διαμορφώσετε την προσαρμοσμένη εντολή ώστε να εκτελεί μια συγκεκριμένη εργασία όταν την ενεργοποιεί ένας χρήστης.

Γιατί να δημιουργήσετε μια προσαρμοσμένη εντολή κάθετου στο Slack;

Οι ενσωματωμένες εντολές κάθετου του Slack ενδέχεται να μην καλύπτουν τις συγκεκριμένες ανάγκες της ομάδας ή του οργανισμού σας. Δημιουργώντας προσαρμοσμένες εντολές κάθετου, μπορείτε να δημιουργήσετε μια πιο εξατομικευμένη εμπειρία για την ομάδα σας. Αυτό με τη σειρά του αυξάνει τη δέσμευση της ομάδας.

instagram viewer

Ρύθμιση μιας εφαρμογής Slack

Για να συνεχίσετε, θα πρέπει να είστε άνετοι με το βασική χρήση του Slack. Συνδεθείτε στον λογαριασμό σας Slack στο πρόγραμμα περιήγησης και δημιουργήστε έναν νέο χώρο εργασίας. Θα χρησιμοποιήσετε αυτόν τον χώρο εργασίας για να δοκιμάσετε τις εφαρμογές σας προτού τις χρησιμοποιήσετε στον χώρο εργασίας της ομάδας σας.

Ανοίξτε μια άλλη καρτέλα και μεταβείτε στο Ιστότοπος Slack API.

Κάνε κλικ στο Δημιουργήστε μια εφαρμογή κουμπί. Στην επόμενη σελίδα που εμφανίζεται, επιλέξτε την επιλογή δημιουργίας εφαρμογής Από την αρχή.

Ονομάστε την εφαρμογή και επιλέξτε τον χώρο εργασίας στον οποίο θα λειτουργεί η εφαρμογή.

Κάντε κλικ στο Δημιουργία εφαρμογής κουμπί. Αυτό θα σας ανακατευθύνει σε μια σελίδα που περιέχει τις βασικές πληροφορίες για την εφαρμογή σας.

Στην ενότητα χαρακτηριστικά, μεταβείτε στο OAuth & Permissions χαρακτηριστικό και, στη συνέχεια, κάντε κύλιση προς τα κάτω στο Πεδίο διακριτικών Bot. Πρόσθεσε ένα συνομιλία: γράφω εύρος για την εφαρμογή σας. Αυτό το εύρος θα επιτρέψει στην εφαρμογή σας να στέλνει μηνύματα στον χώρο εργασίας.

Κάντε κύλιση προς τα πάνω στο Tokens OAuth για τον χώρο εργασίας σας ενότητα και κάντε κλικ στο Εγκατάσταση στο Workspace κουμπί.

Στην επόμενη σελίδα που εμφανίζεται, κάντε κλικ στο Επιτρέπω κουμπί. Αυτό θα εγκαταστήσει την εφαρμογή στον χώρο εργασίας σας.

Δημιουργία προσαρμοσμένης εντολής κάθετου χρησιμοποιώντας το Slack API

Αφού ρυθμίσετε την εφαρμογή Slack, πρέπει να δημιουργήσετε μια προσαρμοσμένη εντολή για την εργασία που θέλετε να ολοκληρώσετε. Για παράδειγμα, μια εντολή κάθετου που επιστρέφει ένα αστείο στον χρήστη. Πλοηγηθείτε στο Εντολές κάθετο χαρακτηριστικό. Κάνε κλικ στο Δημιουργία νέας εντολής κουμπί.

Συμπληρώστε το Εντολή, Αίτημα URL, και Σύντομη περιγραφή της εντολής που θέλετε να δημιουργήσετε. Το URL αιτήματος είναι το τελικό σημείο στο οποίο το Slack στέλνει ένα αίτημα POST όταν ένας χρήστης ενεργοποιεί την εντολή. Χρησιμοποιήστε μια διεύθυνση URL τοπικού κεντρικού υπολογιστή ως σύμβολο κράτησης θέσης. θα αλλάξετε αυτήν τη διεύθυνση URL αργότερα.

Κάντε κλικ στο Αποθηκεύσετε. Όταν κάνετε αποθήκευση, το Slack προσθέτει αυτόματα ένα πεδίο εντολών για την εφαρμογή σας. Αυτό το πεδίο εφαρμογής επιτρέπει στην εφαρμογή σας να προσθέτει συντομεύσεις και εντολές κάθετου που μπορούν να χρησιμοποιήσουν τα άτομα στο χώρο εργασίας σας. Η αλλαγή των εύρους θα απαιτήσει την επανεγκατάσταση της εφαρμογής. Κάνε κλικ στο επανεγκαταστήστε την εφαρμογή σας κουμπί.

Στη σελίδα που εμφανίζεται στη συνέχεια, κάντε κλικ στο να επιτρέπεται η επανεγκατάσταση της εφαρμογής στον χώρο εργασίας σας.

Διαμόρφωση της συμπεριφοράς του Slash Command

Εκκινήστε οποιοδήποτε Python IDE. Δημιουργήστε ένα νέο εικονικό περιβάλλον. Δημιουργήστε ένα νέο αρχείο Python και ένα νέο αρχείο .env. Στο τερματικό, εκτελέστε την ακόλουθη εντολή για να εγκαταστήσετε τις απαιτούμενες βιβλιοθήκες.

pip εγκατάσταση python-dotenv αιτήματα Flask slack-bolt

ο python-dotenv βιβλιοθήκη θα σας επιτρέψει να φορτώσετε τις μεταβλητές περιβάλλοντος στο αρχείο .env. ο αιτήσεων βιβλιοθήκη σάς επιτρέπει να κάνετε αιτήματα HTTP και Φλάσκα χειρίζεται εισερχόμενα αιτήματα HTTP και επιστρέφει απαντήσεις. Slack-bolt χειρίζεται εισερχόμενα αιτήματα Slack.

Ανοίξτε το αρχείο .env και δημιουργήστε δύο μεταβλητές περιβάλλοντος. Ονόμασέ τους BOT_TOKEN και SIGNING_SECRET αντίστοιχα. Μεταβείτε στον ιστότοπο του Slack API. Κάτω από την εφαρμογή σας Βασικές πληροφορίες αντιγράψτε το μυστικό υπογραφής και χρησιμοποιήστε το για να αρχικοποιήσετε τη μεταβλητή BOT_TOKEN. Μεταβείτε στη λειτουργία OAuth & Permissions και αντιγράψτε το Bot User OAuth Token. Χρησιμοποιήστε το για να αρχικοποιήσετε τη μεταβλητή SIGNING_SECRET.

Το διακριτικό bot είναι ένα μοναδικό αναγνωριστικό που πιστοποιεί την ταυτότητα της εφαρμογής σας με το API του Slack κατά την πραγματοποίηση κλήσεων API. Το μυστικό υπογραφής επαληθεύει ότι τα εισερχόμενα αιτήματα στην εφαρμογή σας προέρχονται από το Slack.

Ο πλήρης πηγαίος κώδικας είναι διαθέσιμος σε α Αποθετήριο GitHub.

Εισαγάγετε τις απαιτούμενες βιβλιοθήκες και ενότητες.

εισαγωγή os
από pathlib εισαγωγή Μονοπάτι
από dotenv εισαγωγή load_dotenv
εισαγωγή αιτήσεων
από φλάσκα εισαγωγή Flask, request, jsonify
από slack_bolt εισαγωγή App
από slack_bolt.adapter.flask εισαγωγή SlackRequestHandler

Δημιουργήστε μια νέα παρουσία μιας εφαρμογής Flask.

app = Flask (__name__)

Φορτώστε τις μεταβλητές περιβάλλοντος από το αρχείο .env χρησιμοποιώντας το load_dotenv() λειτουργία.

env_path = Διαδρομή('.') / ".env"
load_dotenv (dotenv_path=env_path)

Δημιουργήστε μια νέα παρουσία μιας εφαρμογής Slack χρησιμοποιώντας το App τάξη από τη βιβλιοθήκη slack_bolt.

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

Δημιουργήστε μια λειτουργία διαχείρισης διαδρομής που χειρίζεται εισερχόμενα αιτήματα προς το /slack/command τελικό σημείο. Όταν το τελικό σημείο λαμβάνει a ΘΕΣΗ αίτημα, αναλύει τα δεδομένα σώματος αιτήματος. Στη συνέχεια ελέγχει εάν η εντολή είναι /joke. Αν ναι, καλεί το get_joke() συνάρτηση και επιστρέφει μια απάντηση JSON στο Slack με το αποτέλεσμα της εντολής.

@app.route("/slack/command", metoda=["POST"])
defεντολή():
# Ανάλυση δεδομένων σώματος αιτήματος
δεδομένα = αίτημα.φόρμα

# Καλέστε την κατάλληλη συνάρτηση με βάση την εντολή κάθετο
αν δεδομένα["εντολή"] == "/αστείο":
μήνυμα = get_joke()
αλλού:
μήνυμα = f"Μη έγκυρη εντολή: {δεδομένα['εντολή']}"

# Επιστρέψτε την απάντηση στο Slack
ΕΠΙΣΤΡΟΦΗ jsonify({"κείμενο": μήνυμα})

Δημιουργήστε μια συνάρτηση που στέλνει ένα αίτημα GET στο icanhazdadjoke API για την ανάκτηση ενός τυχαίου αστείου σε μορφή JSON. Στη συνέχεια, επιστρέφει το αστείο ως χορδή.

defget_joke():
url = " https://icanhazdadjoke.com/"
κεφαλίδες = {"Αποδέχομαι": "application/json"}
answer = requests.get (url, headers=headers, timeout=5)
αστείο = απάντηση.json()["αστείο"]
ΕΠΙΣΤΡΟΦΗ αστείο

Δημιουργήστε μια νέα παρουσία του a SlackRequestHandler αντικείμενο που θα χειρίζεται εισερχόμενα αιτήματα από το Slack.

χειριστής = SlackRequestHandler (slack_app)

Ελέγξτε εάν η δέσμη ενεργειών εκτελείται απευθείας και, εάν εκτελείται, ξεκινήστε την εφαρμογή Flask στη θύρα 5000.

αν __όνομα__ == "__κύριος__":
# Εκκινήστε την εφαρμογή Flask στη θύρα 5000
app.run (port=5000, αποσφαλμάτωση=Αληθής)

Εκτελέστε το πρόγραμμα για να ξεκινήσει ο διακομιστής να λειτουργεί σε localhost.

Για να επικοινωνεί το πρόγραμμα με το Slack, χρειάζεστε μια διεύθυνση URL στην οποία μπορεί να έχει πρόσβαση μέσω του Διαδικτύου. Λήψη και εκτέλεση ngrok. ο Το λογισμικό ngrok σάς επιτρέπει να δημιουργήσετε μια ασφαλή δημόσια διεύθυνση URL που διοχετεύει την κυκλοφορία σε έναν διακομιστή web που εκτελείται στον υπολογιστή σας.

Εκτελέστε την ακόλουθη εντολή για να λάβετε τη δημόσια διεύθυνση URL:

ngrok http 5000

Η παρακάτω εικόνα δείχνει τη δημόσια διεύθυνση URL στο ngrok, τονισμένη με λευκό χρώμα.

Αντιγράψτε τη διεύθυνση URL και μεταβείτε στον ιστότοπο του Slack API. Κάνε κλικ στο Εντολές κάθετο χαρακτηριστικό. Επεξεργαστείτε την εντολή /joke και αντικαταστήστε το σύμβολο κράτησης θέσης URL αιτήματος με το δημόσιο URL σας. Προσθέστε /slack/events στο τέλος της διεύθυνσης URL για να οδηγείτε στο τελικό σημείο σας.

Μεταβείτε στον χώρο εργασίας σας και, στη συνέχεια, πληκτρολογήστε και στείλτε την εντολή /joke. Θα πρέπει να δείτε ένα αστείο ως απάντηση:

Εξοικειωθείτε με άλλα Slack χαρακτηριστικά

Το Slack έχει πολλές δυνατότητες να προσφέρει πέρα ​​από τις εντολές Slash. Η εξοικείωση με αυτά τα χαρακτηριστικά θα σας επιτρέψει να κατανοήσετε πώς λειτουργούν.

Στη συνέχεια, μπορείτε να αναζητήσετε τρόπους για να τα προσαρμόσετε στις απαιτήσεις του χώρου εργασίας σας. Αυτό θα αυξήσει την παραγωγικότητα της ομάδας σας.