
ChirpStack هو خادم شبكة Lorawan (R) مفتوح المصدر والذي يمكن استخدامه لإعداد شبكات Lorawan. يوفر ChirpStack واجهة ويب لإدارة البوابات والأجهزة والمستأجرين بالإضافة إلى إعداد تكامل البيانات مع مقدمي الخدمات السحابية الرئيسية وقواعد البيانات والخدمات الشائعة الاستخدام لمعالجة بيانات الجهاز. يوفر ChirpStack واجهة برمجة تطبيقات GRPC التي يمكن استخدامها لدمج أو تمديد chirpstack.
يرجى الرجوع إلى موقع chirpstack للوثائق والثنائيات المسبقة مسبقًا.
يتطلب بناء chirpstack:
يتم استخدام NIX لإنشاء بيئة التطوير التي يتم استخدامها للتطوير المحلي ولإنشاء الثنائيات.
إذا لم يكن لديك تثبيت NIX ولم ترغب في تثبيته ، فيمكنك استخدام بيئة NIX المستندة إلى Docker. لبدء هذه البيئة تنفيذ الأمر التالي:
make docker-devshell ملاحظة: ستتمكن من تشغيل أوامر الاختبار وتشغيل cargo build ، ولكن لن يعمل المشتركة بين هذه البيئة (لأنها ستحاول بدء Docker داخل Docker).
يتم استخدام Docker بواسطة Cross-Rs للتجميع ، بالإضافة إلى بعض الأوامر make .
قم بتشغيل الأمر التالي لبدء قشرة التطوير:
nix-shellأو إذا لم يكن لديك تثبيت NIX ، فقم بتنفيذ الأمر التالي:
make docker-devshellلبناء واجهة المستخدم chirpstack ، قم بتنفيذ الأمر التالي:
make build-ui
يتطلب ChirpStack العديد من الخدمات مثل PostgreSQL ، Redis ، Mosquitto ، ... لتشغيلها قبل أن تتمكن من إجراء الاختبارات. تحتاج إلى بدء هذه الخدمات يدويًا إذا بدأت قذيفة التطوير باستخدام nix-shell :
docker compose up -dقم بتشغيل الأمر التالي لتشغيل اختبارات chirpstack:
# Test (with PostgresQL database backend)
make test
# Test with SQLite database backend
DATABASE=sqlite make testقبل تجميع الثنائيات ، تحتاج إلى تثبيت بعض أدوات التطوير الإضافية (للتجميع ، والتغليف ، ED). تنفيذ الأمر التالي:
make dev-dependencies قم بتشغيل الأمر التالي داخل مجلد الفرعي ./chirpstack :
# Build AMD64 debug build (optimized for build speed)
make debug-amd64
# Build AMD64 release build (optimized for performance and binary size)
make release-amd64
# Build all packages (all targets, .deb, .rpm and .tar.gz files)
make dist بشكل افتراضي ، ستقوم الأوامر المذكورة أعلاه ببناء chirpstack باستخدام قاعدة بيانات قاعدة بيانات postgresql. اضبط DATABASE=sqlite env. متغير لتجميع chirpstack مع الواجهة الخلفية لقاعدة بيانات SQLite.
لإنشاء ترحيل قاعدة بيانات جديدة ، تنفيذ:
make migration-generate NAME=test-migration
لتطبيق الترحيل ، تنفيذ:
make migration-run
لإعادة الترحيل ، تنفيذ:
make migration-revert
بشكل افتراضي ، سيتم تنفيذ الأوامر المذكورة أعلاه أوامر الترحيل باستخدام الواجهة الخلفية لقاعدة بيانات postgresql. لتنفيذ أوامر الترحيل لخلفية قاعدة بيانات SQLite ، قم بتعيين DATABASE=sqlite ENV. عامل.
يتم توزيع خادم شبكة ChirpStack ضمن ترخيص MIT. انظر أيضا الترخيص.