
بالنسبة لأولئك الذين يديرون الخوادم و / أو مشاريع الويب ، فإن مسألة الوعي حول ما يحدث مع "الأجنحة" الخاصة بهم هي مشكلة حادة. هناك الكثير من القرارات في السوق حول التنبيهات حول حالات الفشل وحالة الاتصال والمعلمات الأخرى ، بما في ذلك عبر الرسائل القصيرة. نحن نتحدث عن MRTG و Twilio و F-Droid وخدمات Google وغيرها الكثير. المشكلة الوحيدة هي أن معظم هذه الحلول متخصصة بشكل ضيق للغاية ، ولا يمكن التأثير على وظائفها. ستقدم MRTG معلومات حول حركة المرور والاتصال ، وسوف ترسل Google رسائل نصية قصيرة. يمنح Twilio بعض الحرية فيما يتعلق بكتابة نصوص جافا سكريبت JavaScript لتناسب احتياجاتك ، لكن أنا آسف ، هذا مشروع تجاري. وهذا هو ، "هيا ، دفع الغنائم أو ابتعد".
لذلك ، في هذه المجموعة من الأدوات ، لدينا مصدر مفتوح للتجديد: Gotify هو مشروع خادم عميل بسيط لتلقي وإرسال إشعارات الأوامر والأوامر ، بما في ذلك من خلال تطبيق Android. ومن الجدير بالتأكيد أن نوضح المزيد حول هذا الموضوع ، أعتقد أنه سيكون مفيدًا لأولئك الذين كانوا يبحثون عن شيء مشابه وفي الوقت نفسه مجانًا ، ولكنهم بدأوا في النهاية مشروع الحيوانات الأليفة الخاص بهم. من الممكن أن يوفر لك هذا المنشور بضع مئات من ساعات وقتك.
ما Gotify العروض
لقد كان المشروع حاليًا ويتطور بسلام على GitHub لعدة سنوات ، وخلال هذا الوقت استحوذ على خادم وعميل ويب وتطبيق Android و API وبطبيعة الحال وثائق. قررت التحدث عن Gotrify لسببين: إنه مفتوح المصدر ويعمل ليس فقط على "الاستقبال" ، ولكن أيضًا على "العودة" ، كل الأنواع موجودة على GitHub ، بالإضافة إلى أنه تم تكوينه باستخدام البرامج النصية للباش. وبالطبع ، إنه مجاني.
تهدف معظم الحلول الحالية حصريًا إلى تلقي الإشعارات من الخادم / الجهاز المستهدف ، ولكن لا تهدف إلى التفاعل الكامل بين العميل والخادم. أي أنك قد تتلقى إخطارًا بأن الخادم قد تعطل أو أن الإنترنت قد اختفى. ليس من المناسب دائمًا أن تسأل نفسك عما يحدث على "الجانب الآخر" ويمكن القيام به في نفس التطبيق / النافذة. في أكثر الأحيان ، للحصول على هذا النوع من المعلومات ، عليك قطع VPN أو (لا سمح الله) بعض TeamViever ومشاهدته "بيديك". لقد ذكرت أعلاه أن Twilio يوفر بعض النطاق من خلال النصوص JS المكتوبة ذاتيًا ، لكنها مدفوعة الأجر.
في الواقع ، ينقسم مشروع Gotify بأكمله إلى ثلاثة أجزاء: الخادم والعميل والتطبيق. يعمل الخادم بوضوح - كيفية إرسال واستقبال الرسائل - العميل - فقط لتلقي والتطبيق - فقط للإرسال.

بالإضافة إلى ذلك ، يحتوي المشروع على عميل API (ووثائق) ، قالب API ، قالب إضافي ، موقع الويب الخاص به ، مكتبة تكوين Go التي تدعم متغيرات JSON و YAML و TOML والبيئة ، بالإضافة إلى بناء الخادم والعميل ، وفي الواقع تطبيق أندرويد. الشيء الوحيد الذي قد يزعج هو تطبيق Android. لا يوجد شيء في العالم لا حول له ولا قوة ، وغير مسؤول وغير أخلاقي من مراقبة البنية التحتية من خلال الهاتف المحمول. لكن التكنولوجيا تتقدم ونحن نعلم أننا عاجلاً أم آجلاً سننتقل إلى هذه القمامة. ليس هذا هو أنه كان الحد الأدنى الضروري للتواصل عن بعد مع الخادم ، ولكن عندما يبدأ مجتمع المصادر المفتوحة في قطع أدواته الخاصة ، يصعب إيقافه.
بشكل منفصل ، تجدر الإشارة إلى أنه للتواصل مع الخادم فإنك تحتاج فقط إلى المصادقة ورمز التطبيق الذي يتم إرجاعه بواسطة الخادم من خلال طلب REST. في المستقبل ، باستخدام هذا الرمز المميز ، يمكنك تلقي الرسائل من خلال أي عميل http ، على سبيل المثال ، من خلال
curl أو
HTTPie :
$ curl -X POST "https://push.example.de/message?token=<apptoken>" -F "title=my title" -F "message=my message" -F "priority=5" $ http -f POST "https://push.example.de/message?token=<apptoken>" title="my title" message="my message" priority="5"
وفقًا للدليل على الموقع الرسمي للمشروع ، يمكن إرسال خدمة الدفع إلى الخادم ذات الأولويات المختلفة إلى كل من Golang و Python:
جولانج package main import ( "net/http" "net/url" ) func main() { http.PostForm("http://localhost:8008/message?<apptoken>", url.Values{"message": {"My Message"}, "title": {"My Title"}}) }
بيثون import requests
أيضًا لنظامي التشغيل Linux و Mac ، يمكن أيضًا كتابة المكونات الإضافية الخاصة بك. فيما يلي الميزات المتاحة ، والتي يتم سردها على موقع المشروع:
- الإضافات الفردية لكل مستخدم.
- تسجيل معالجات http المخصصة ؛
- إرسال الرسائل كتطبيق ؛
- نظام التكوين القائم على YAML في WebUI ؛
- التخزين المستمر لكل المساعد المستخدم.
- عرض الإرشادات التي تم إنشاؤها ديناميكيًا للمستخدمين.
يعتمد نظام المكون الإضافي Gotify على نظام Go plugin القياسي ،
الموضح هنا . لماذا يمكن استخدامها في جوتيفي؟ يستشهد مطورو البرامج بتلقي مثال على تلقي webhooks من GitHub و Travis CI وغيرهم ، وخلاصات الاقتراع عبر RSS ومصادر Atom وتوسيع الوظائف القياسية لـ WebUI ، وبالطبع تسليم تنبيهات التنبيه حول الأعطال.
في هذه الصفحة ، يمكنك العثور على قالب للمكون الإضافي وشرح الرمز. لكي تعمل المكونات الإضافية بشكل صحيح ، يوصي المطورون باستخدام Docker ، ولكن بدونها ، من الممكن تمامًا تكوين Gotify للعمل ، على الرغم من أن إرسال واستقبال الرسائل بشكل صحيح في هذه الحالة غير مضمون.
لم أقدم هنا النص الكامل للوثائق الأساسية للمشروع - يمكنك قراءة كل شيء بنفسك. انطلاقًا من المراجعات ، تبين أن المشروع كان مدروسًا تمامًا ، على الأقل من ناحية أخرى ، لا يتم استخدام إشعار الرسائل القصيرة (وهو أمر غير مريح إذا كنت في الخارج أو في الطابق السفلي) ، في محاولة نشطة لتجاهل الوضع الآمن للطاقة الذي تم إحضاره في Android 6-7 . يعتبر برنامج Gotify فضوليًا حتى إذا كان مفتوحًا ، وهو مجاني ولا يوجد ما يمنع التفرع ، والتقاط ملف وإحضار هذه الأداة إلى حالة مناسبة لاحتياجات بعض الأشخاص / الفرق.
المراجع
- مستودع جيثب.
- الموقع الرسمي للمشروع.
- وثائق API.