ماترموست وبورشيل - قوة هائلة ، أو أتمتة صغيرة في المنزل

سأحجز على الفور - أعمل في شركة غير مرتبطة مباشرة بتكنولوجيا المعلومات ، لذا فإن ميزانيتنا لتقنية المعلومات صغيرة. وفقًا لذلك ، لا تتوفر لنا العديد من البرامج والمرافق ذات الصلة ، لذلك علينا أن نفعل ما نستطيع. وعندما يكون لدى الشركة ، بالإضافة إلى قسم تكنولوجيا المعلومات ، عدة مئات من المستخدمين الذين يصعب عليهم تمييز الشاشة عن الماوس ، يصبح العمل مهمة منفصلة.

لذلك ، فإن ما كتبته سيكون على الأرجح مفيدًا للمسؤولين في الشركات الصغيرة .

لقد سمع الكثير (أو ليس كثيرًا) عن أداة عظيمة مثل Mattermost .
بالنسبة لأولئك الذين لم يسمعوا - هذه هي سلاك ، ولكن فقط استضافة ذاتية. داخل الشركة ، تعد الدردشة العامة هي الشيء الأكثر فائدة بشكل عام.

إنه أمر أساسي ، إذا كنت ترغب في ذلك ، من السهل جدًا تثبيت برنامج التتبُّع (على سبيل المثال ، أستخدم Hubot) ، حيث يمكنك التفاف جميع أنواع التنبيهات حول المهام من redmine أو المراقبة ، وحتى أتمتة بعض عمليات الأعمال التي يمكن تغليفها في برنامج نصي للإجابة - مكلفة .

الجميع مرتاحون مع هذه الدردشة ، ولكن هناك شيء واحد ولكن. في الواقع ليست واحدة ، ولكن عدم وجود قائمة منظمة عادية من المستخدمين يقتل فقط. يمكنك بالطبع استخدام Openfire + Miranda ، ولكن توفر عميل Mattermost للهواتف مع القدرة على دفع الإشعارات يفوق كل هذه العيوب. نظرًا لأن عدد المستخدمين ليس اثني عشر ، فإن عدد الأقسام ليس أيضًا قسمين ، فالسؤال الذي يطرح أحيانًا - من يعمل في مكتب الاستقبال في الفرع البعيد اليوم؟ أي منهم متصل بالإنترنت؟ كم هي جميلة وبأسعار معقولة أن تنقل للمستخدم العادي هذه المعلومات في مكان واحد هو سؤال آخر. إن رسم شجرة مورقة من خيارات الطلب والاستجابة لبرنامج الدردشة الآلي هو وسيلة ترفيه أخرى ، لذلك أقدم مقالة على ركبتي خاصة لمثل هذه الحالة.

خدمة لـ Mattermost ، مكتوبة لتشغيل البرامج النصية بوويرشيل المختلفة من الأوامر المائلة / المخصصة. في الواقع ، يمكنك استخدامه لاحتياجات مختلفة ، بالإشارة إليه عن طريق url ، لكني كتبته لرسم الأزرار في الدردشة. الجميع يحب الأزرار ، حتى القطط والعمات من المحاسبة. حسنًا ، يجب أن يكون أي مسؤول في Windows قادرًا على الكتابة في PowerShell ، مفيد جدًا!

يبدو العمل التقريبي كالتالي:



تم تصميم الخدمة للعمل على أنظمة Windows ، مع Powershell v3 +. لتشغيله ، تحتاج إلى حقوق تشغيل البرامج النصية PowerShell وفتح مأخذ التوصيل. لا يوجد مصادقة في البرنامج النصي ، لذلك لا أوصي بوصف أي شيء مدمر في التكوينات وفضح الغنائم العارية على الإنترنت. من ناحية أخرى ، يمكنك وصف طرق أكثر أصالة ، ولكنها ليست للجميع.

تتكون الخدمة من البرنامج النصي نفسه ، وملف التكوين ، الذي يشير إلى البرامج النصية التي يجب تشغيلها والبيانات التي يتم إرسالها إلى الإدخال ( موصوف في الوثائق ، الفقرة 8 ).

إدخالات التكوين

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

يعني أنه عند الوصول إلى url / script ، سيتم إطلاق البرنامج النصي Dummy-Script.ps1 ، الموجود في نفس الدليل مثل ButtonCommander ، مع نص المتغيرات الواردة ، team_domain ، user_name.

تتلقى الخدمة بيانات من سكربتات وترسلها إلى القناة التي جاء منها الطلب. إذا كانت البيانات في شكل JSON ، فلن يتم التحويل إلى رسالة بسيطة ، ويتم إرسال JSON الأصلي إلى Mattermost - هذه هي الطريقة التي يتم بها صنع الأزرار.

يمكن إيقاف البرنامج النصي أو إعادة قراءة ملف التكوين أيضًا عن طريق الوصول إلى عنوان URL خاص. ولكن في أمور أخرى ، يتم وصف الوصف والتثبيت مباشرة في المستودع ، لذلك لن أنسخ ولصق. تم تشغيل البرنامج النصي ، وتم وضعه بالفعل في إصدار العمل. لقد كان يعمل بدون إخفاقات لفترة طويلة.

رابط المستودع.

ملاحظة: إن أفتر ليس كاتبًا أو مبرمجًا ، ولكنه نجار مولود على نطاق واسع ، لذلك يكتب بأفضل ما يستطيع.
PPS: في كل مكان نتحدث عن إصدار الفريق ، والذي (يا ألم ، ألم!) ليس لديه إذن ldap. أنا لست في وضع يسمح لي باستبدال صفحة تسجيل الدخول بصفتي الخاصة (nginx + python) ، لكن هذه المركبة شنيعة للغاية لدرجة أن تحميلها يعد جريمة.

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


All Articles