Slack adalah alat yang nyaman dan populer yang dapat Anda tingkatkan dengan perintah Anda sendiri, yang disesuaikan dengan organisasi Anda.

Slack adalah alat yang memungkinkan tim untuk berkomunikasi dan berkolaborasi. Salah satu fitur utamanya adalah penggunaan perintah garis miring. Perintah-perintah ini memicu tindakan atau integrasi tertentu dalam platform.

Meskipun Slack memberi Anda beberapa perintah garis miring bawaan, Anda dapat membuat perintah khusus menggunakan API Slack. Anda kemudian dapat mengonfigurasi perintah khusus untuk melakukan tugas tertentu saat pengguna memicunya.

Mengapa Membuat Perintah Slash Khusus di Slack?

Perintah garis miring bawaan Slack mungkin tidak memenuhi kebutuhan spesifik tim atau organisasi Anda. Dengan membuat perintah garis miring khusus, Anda dapat menciptakan pengalaman yang lebih dipersonalisasi untuk tim Anda. Ini pada gilirannya meningkatkan keterlibatan tim.

Menyiapkan Aplikasi Slack

Untuk menindaklanjuti, Anda harus merasa nyaman dengan penggunaan dasar Slack

instagram viewer
. Masuk ke akun Slack Anda di browser dan buat ruang kerja baru. Anda akan menggunakan ruang kerja ini untuk menguji aplikasi Anda sebelum menggunakannya di ruang kerja tim Anda.

Buka tab lain dan arahkan ke Situs web API kendur.

Klik pada Buat aplikasi tombol. Di halaman berikutnya yang muncul, pilih opsi untuk membuat aplikasi Dari awal.

Beri nama aplikasi dan pilih ruang kerja tempat aplikasi akan beroperasi.

Klik Buat Aplikasi tombol. Ini akan mengarahkan Anda ke halaman yang berisi informasi dasar tentang aplikasi Anda.

Di bagian fitur, navigasikan ke OAuth & Izin fitur, lalu gulir ke bawah ke Lingkup Token Bot. Tambah sebuah obrolan: tulis ruang lingkup untuk aplikasi Anda. Cakupan ini akan memungkinkan aplikasi Anda mengirim pesan ke ruang kerja.

Gulir ke atas Token OAuth untuk Ruang Kerja Anda bagian, dan klik pada Instal ke Workspace tombol.

Pada halaman berikutnya yang muncul, klik pada Mengizinkan tombol. Ini akan menginstal aplikasi di ruang kerja Anda.

Membuat Perintah Slash Khusus Menggunakan Slack API

Setelah menyiapkan aplikasi Slack, Anda perlu membuat perintah khusus untuk tugas yang ingin Anda selesaikan. Misalnya, perintah tebasan yang mengembalikan lelucon kepada pengguna. Arahkan ke Perintah Tebasan fitur. Klik pada Buat Perintah Baru tombol.

Isi Memerintah, Minta URL, Dan Deskripsi Singkat dari perintah yang ingin Anda buat. URL Permintaan adalah titik akhir tempat Slack mengirimkan permintaan POST ketika pengguna memicu perintah. Gunakan URL localhost sebagai placeholder; Anda akan mengganti URL ini nanti.

Klik Menyimpan. Saat Anda menyimpan, Slack menambahkan cakupan perintah untuk aplikasi Anda secara otomatis. Cakupan ini memungkinkan aplikasi Anda menambahkan pintasan dan garis miring perintah yang dapat digunakan orang di ruang kerja Anda. Mengubah cakupan akan mengharuskan Anda menginstal ulang aplikasi. Klik pada instal ulang aplikasi Anda tombol.

Pada halaman yang muncul berikutnya, klik izinkan menginstal ulang aplikasi di ruang kerja Anda.

Mengonfigurasi Perilaku Perintah Slash

Luncurkan IDE Python apa pun. Buat lingkungan virtual baru. Buat file Python baru dan file .env baru. Di terminal, jalankan perintah berikut untuk menginstal pustaka yang diperlukan.

pip install python-dotenv meminta Flask slack-bolt

Itu python-dotenv perpustakaan akan memungkinkan Anda untuk memuat variabel lingkungan dalam file .env. Itu permintaan perpustakaan memungkinkan Anda membuat permintaan HTTP dan Labu menangani permintaan HTTP yang masuk dan mengembalikan respons. Baut kendur menangani permintaan Slack yang masuk.

Buka file .env dan buat dua variabel lingkungan. Beri nama mereka BOT_TOKEN Dan SIGNING_SECRET masing-masing. Arahkan ke situs web Slack API. Di bawah aplikasi Anda Informasi dasar salin rahasia penandatanganan dan gunakan untuk menginisialisasi variabel BOT_TOKEN. Arahkan ke fitur OAuth & Izin dan salin Token OAuth Pengguna Bot. Gunakan untuk menginisialisasi variabel SIGNING_SECRET.

Token bot adalah pengidentifikasi unik yang mengautentikasi aplikasi Anda dengan API Slack saat melakukan panggilan API. Rahasia penandatanganan memverifikasi bahwa permintaan masuk ke aplikasi Anda berasal dari Slack.

Kode sumber lengkap tersedia di a repositori GitHub.

Impor pustaka dan modul yang diperlukan.

impor os
dari pathlib impor Jalur
dari dotenv impor load_dotenv
impor permintaan
dari labu impor Labu, permintaan, jsonify
dari slack_bolt impor Aplikasi
dari slack_bolt.adapter.flask impor SlackRequestHandler

Buat instance baru dari aplikasi Flask.

aplikasi = Labu (__nama__)

Muat variabel lingkungan dari file .env menggunakan load_dotenv() fungsi.

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

Buat instance baru aplikasi Slack menggunakan Aplikasi kelas dari perpustakaan slack_bolt.

slack_app = Aplikasi(
token=os.lingkungan['BOT_TOKEN'],
sign_secret=os.environ['SIGNING_SECRET']
)

Buat fungsi penangan rute yang menangani permintaan masuk ke /slack/command titik akhir. Ketika titik akhir menerima a POS permintaan, ini mem-parsing data isi permintaan. Kemudian memeriksa apakah perintahnya /joke. Jika demikian, itu memanggil get_joke() berfungsi dan mengembalikan respons JSON ke Slack dengan hasil perintah.

@ aplikasi.route("/slack/command", methods=["POST"])
defmemerintah():
# Parsing permintaan data tubuh
data = permintaan.form

# Panggil fungsi yang sesuai berdasarkan perintah garis miring
jika data["memerintah"] == "/candaan":
pesan = get_joke()
kalau tidak:
pesan = f"Perintah tidak valid: {data['memerintah']}"

# Kembalikan respons ke Slack
kembali jsonify({"teks": pesan})

Buat fungsi yang mengirimkan permintaan GET ke icanhazdadjoke API untuk mengambil lelucon acak dalam format JSON. Itu kemudian mengembalikan lelucon sebagai string.

defget_joke():
url = " https://icanhazdadjoke.com/"
tajuk = {"Menerima": "aplikasi/json"}
response = request.get (url, headers=headers, timeout=5)
lelucon = respon.json()["candaan"]
kembali candaan

Buat instance baru dari a SlackRequestHandler objek yang akan menangani permintaan masuk dari Slack.

penangan = SlackRequestHandler (slack_app)

Periksa apakah skrip sedang dijalankan secara langsung dan, jika ya, jalankan aplikasi Flask pada port 5000.

jika __nama__ == "__utama__":
# Mulai aplikasi Flask pada port 5000
app.run (port=5000, men-debug=BENAR)

Jalankan program untuk memulai server yang berjalan di localhost.

Agar program dapat berkomunikasi dengan Slack, Anda memerlukan URL yang dapat diaksesnya melalui internet. Unduh dan jalankan ngrok. Itu perangkat lunak ngrok memungkinkan Anda membuat URL publik yang aman yang mengarahkan lalu lintas ke server web yang berjalan di komputer Anda.

Jalankan perintah berikut untuk mendapatkan URL publik:

ngrok http 5000

Gambar di bawah menunjukkan URL publik di ngrok, disorot dengan warna putih.

Salin URL dan arahkan ke situs web Slack API. Klik pada Perintah Tebasan fitur. Edit perintah /joke dan ganti placeholder URL permintaan dengan URL publik Anda. Tambahkan /slack/events di akhir URL untuk menunjuk ke titik akhir Anda.

Pergi ke ruang kerja Anda, lalu ketik dan kirim perintah /joke. Anda akan melihat lelucon sebagai tanggapan:

Biasakan Diri Anda Dengan Fitur Slack Lainnya

Slack memiliki banyak fitur untuk ditawarkan di luar perintah Slash. Membiasakan diri dengan fitur-fitur ini akan memungkinkan Anda memahami cara kerjanya.

Anda kemudian dapat mencari cara untuk menyesuaikannya dengan kebutuhan ruang kerja Anda. Ini akan meningkatkan produktivitas tim Anda.