عن المشروع
يوفر hestia تحكماً محلياً بدون سحابة لأجهزة Keemple المنزلية الذكية — وحدات تحكم الستائر/المظلات، والمفاتيح، وحدات التعتيم، والثرموستات، والمقابس الذكية، والمستشعرات المبنية على وحدات Hi-Flying Wi-Fi وWCH Ethernet لجسور الاتصال التسلسلي. تتصل هذه الأجهزة عادةً بسحابة المورد عبر بروتوكول ثنائي مخصص بإطار 0x7e وبنص واضح. يعيد hestia تنفيذ هذا البروتوكول محلياً بحيث تتواصل الأجهزة معه بدلاً من سحابة المورد، مما يلغي الاعتماد على السحابة أو شبكة توصيل المحتوى الخارجية أو عنوان IP عام.
يمكن تشغيله في وضعين: كوكيل شفاف يمرر حركة المرور إلى السحابة مع فك تشفير كل شيء، أو كخادم مستقل يستبدل سحابة المورد بالكامل. في الوضع المستقل يعمل بشكل منفصل تماماً عن الشبكة. يتم توجيه الأجهزة إلى hestia عبر تجاوزات DNS المحلية أو إعادة توجيه iptables PREROUTING على المنفذ 8925.
تم بناء مُرمّز البروتوكول باستخدام منهجية الغرفة النظيفة: استخرجت مجموعة واحدة مواصفة بروتوكول من المراقبة السلبية لحركة المرور على الشبكة المحلية للنص الواضح للبوابة، ونفذت مجموعة ثانية المُرمّز والخوادم والأدوات بناءً على وثيقة المواصفة تلك فقط. لم يتم تضمين أي برنامج ثابت أو تفكيك أو تحليل ثنائي.
تشمل القدرات:
- فك وتزوير البروتوكول بالكامل: مُرمّز الإطارات وTLV، وجميع أوامر المشغلات (الستائر، وحدات التعتيم، المفاتيح، الثرموستات، أزرار المشاهد/الوظائف)، وجميع تقارير المستشعرات والحالة (الأبواب، الحركة، الدخان/الفيضان، قياس طاقة المقابس الذكية)، وتسجيل الدخول/المصافحة، وقائمة الأجهزة.
- لوحة تحكم ويب مباشرة (TypeScript + Vite SPA عبر Server-Sent Events) مع عرض منزلي مجمّع حسب الغرف، والتحكم في الثرموستات/مكيف الهواء/الستائر/المشاهد، وحالة كل عقدة، وقياس طاقة المقابس الذكية، ومستويات البطارية، والتسمية المضمنة، ومحرر قواعد محلي موجّه.
- مصادقة متعددة المستخدمين مع وصول قائم على الأدوار (مسؤول، مشغل، مشاهد)، وسجل تدقيق/نشاط كامل، و45 لغة واجهة مستخدم بما في ذلك دعم RTL.
- محرك أتمتة يدعم المشغلات الزمنية والحدثية وcron والشمسية والحضور والحقول العامة مع إجراءات مشروطة ومُهيأة.
- مدخلات مستشعرات محلية عبر RTL-SDR: مغذي rtl_433 يبث مستشعرات الحرارة والرطوبة بتردد 433 ميجاهرتز محلياً دون بوابة أو إنترنت.
- تكاملات اختيارية: عميل Tuya v3.3 LAN لجهاز حرارة، ومستطلع درجة حرارة خارجية Open-Meteo، وتحكم بالأشعة تحت الحمراء عبر مرسل متصل تسلسلياً (Flipper Zero).
الواجهة الخلفية مبنية بلغة Python مع طبقة ويب aiohttp واستمرارية اختيارية بـ SQLite (SQLAlchemy + Alembic) لحالة الأجهزة وإعدادات كل مستخدم والحسابات. يبقى مُرمّز بروتوكول Keemple كوداً أصلياً بمكتبة قياسية خالصة؛ توفر المكتبات الخارجية (cryptography لـ AES-128، وpyserial لنقل USB-CDC) بدائيات عامة فقط. يذكر المشروع تغطية 100% للأسطر والفروع باستخدام unittest القياسية. مرخص تحت GNU AGPL v3.0.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.