Mattermost dan Powershell - kekuatan besar, atau otomatisasi kecil di rumah

Saya akan segera melakukan reservasi - Saya bekerja untuk perusahaan yang tidak terhubung langsung dengan TI, sehingga anggaran kami untuk TI kecil. Karenanya, banyak program dan fasilitas terkait tidak tersedia untuk kami, jadi kami harus melakukan apa yang kami bisa. Dan ketika, di samping departemen TI, perusahaan memiliki beberapa ratus pengguna yang sulit membedakan monitor dari mouse, pekerjaan menjadi pencarian yang terpisah.

Oleh karena itu, apa yang saya tulis akan lebih bermanfaat bagi administrator di perusahaan kecil .

Banyak (atau tidak banyak) telah mendengar alat hebat seperti Mattermost .
Bagi mereka yang belum mendengar - ini adalah Slack, tetapi hanya host-sendiri. Di dalam perusahaan, obrolan umum umumnya adalah hal yang paling berguna.

Ini dasar, jika Anda mau, sangat mudah untuk mengikat bot (misalnya, saya menggunakan Hubot), di mana Anda dapat membungkus semua jenis peringatan tentang tugas dari redmine atau pemantauan, dan bahkan mengotomatisasi beberapa proses bisnis yang dapat dibungkus dengan skrip tanya-jawab mahal .

Semua orang merasa nyaman dengan obrolan ini, tetapi ada satu hal kecuali. Sebenarnya bukan satu, tetapi kurangnya daftar pengguna terstruktur yang normal hanya membunuh. Anda dapat, tentu saja, menggunakan Openfire + Miranda, tetapi ketersediaan klien Mattermost untuk ponsel dengan kemampuan untuk mendorong notifikasi melebihi semua kerugian ini. Karena jumlah pengguna tidak selusin, jumlah departemen juga bukan dua, pertanyaan kadang-kadang muncul - siapa yang bekerja di resepsi di cabang terpencil hari ini? Yang mana dari mereka yang online? Bagaimana indah dan terjangkau untuk menyampaikan kepada pengguna rata-rata informasi ini di satu tempat adalah pertanyaan lain. Untuk menggambar pohon permintaan dan respons opsi bercabang untuk chatbot adalah hal lain, jadi saya menyajikan artikel tentang lutut saya terutama untuk kasus seperti itu.

Layanan untuk Mattermost, ditulis untuk menjalankan berbagai skrip PowerShell dari perintah slash / custom. Bahkan, Anda dapat menggunakannya untuk kebutuhan yang berbeda, merujuknya dengan url, tetapi saya menulisnya untuk menggambar tombol di obrolan. Semua orang suka kancing, bahkan kucing dan bibi dari akuntansi. Nah, semua admin Windows harus dapat menulis di PowerShell, sangat berguna!

Sebuah karya perkiraan terlihat seperti ini:



Layanan ini dirancang untuk bekerja pada sistem Windows, dengan Powershell v3 +. Untuk menjalankannya, Anda memerlukan hak untuk menjalankan skrip PowerShell dan membuka soket. Tidak ada otentikasi dalam skrip, oleh karena itu saya tidak merekomendasikan meresepkan sesuatu yang merusak di konfigurasi dan mengekspos booty telanjang di Internet. Di sisi lain, Anda dapat meresepkan cara yang lebih otentik, tetapi tidak untuk semua orang.

Layanan itu sendiri terdiri dari skrip itu sendiri, dan file konfigurasi, yang menunjukkan skrip yang perlu dijalankan dan data ditransmisikan ke input ( dijelaskan dalam dokumentasi, paragraf 8 ).

Entri konfigurasi

[script] Script=.\Dummy-Script.ps1 IncomingVariables=text,team_domain,user_name 

berarti bahwa ketika mengakses url / skrip, skrip Dummy-Script.ps1 akan diluncurkan, terletak di direktori yang sama dengan ButtonCommander, dengan teks variabel yang masuk, team_domain, user_name.

Layanan menerima data dari skrip dan mengirimkannya ke saluran dari mana permintaan itu berasal. Jika data datang dalam bentuk JSON, maka konversi ke pesan sederhana tidak terjadi, dan JSON asli dikirim ke Mattermost - ini adalah bagaimana tombol dibuat.

Script dapat dihentikan atau membaca kembali file konfigurasi, juga, dengan mengakses url khusus. Tetapi dalam hal lain, deskripsi dan instalasi dijelaskan secara langsung di repositori, jadi saya tidak akan menyalin-menempel. Script dijalankan, dan sudah ditata dalam versi kerja. Ini telah bekerja tanpa kegagalan untuk waktu yang cukup lama.

Tautan ke repositori.

PS: Afftar bukan seorang penulis dan bukan seorang programmer, tetapi seorang dokter kandungan-profil yang luas, jadi dia menulis sebaik mungkin.
PPS: Di mana-mana kita berbicara tentang Edisi Tim, yang (oh sakit, sakit!) Tidak memiliki otorisasi ldap. Saya keluar dari posisi mengganti halaman login dengan saya sendiri (nginx + python,) tetapi kerajinan itu begitu mengerikan bahwa itu adalah kejahatan untuk mengunggahnya.

Source: https://habr.com/ru/post/id419415/


All Articles