شما می‌توانید از الگوی مخزن پروژه سفارشی
 ما به عنوان نقطه شروع برای پروژه خود استفاده کنید. یک پروژه سفارشی راهی برای گسترش OpenRemote برای ارائه قابلیت‌های سفارشی بدون تغییر کد اصلی OpenRemote است، بنابراین کد سفارشی می‌تواند به طور جداگانه و احتمالاً در یک مخزن خصوصی، کنترل نسخه شود. با استفاده از آن می‌توانید ظاهر برنامه Manager را تغییر دهید، انواع دارایی‌های خود را ایجاد کنید، تنظیمات نقشه را تغییر دهید و قلمروها، کاربران و دارایی‌ها را در هنگام راه‌اندازی اولیه پروژه تنظیم کنید.

این قالب دارای ساختار پروژه پیشنهادی و فایل‌های readme در قسمت‌های مختلف است تا جزئیات مربوط به سفارشی‌سازی هر بخش را ارائه دهد. اگر نمی‌خواهید از قالب پروژه سفارشی استفاده کنید، می‌توانید خودتان آن را طبق این ویدیو تنظیم کنید .

در این راهنما، اولین باری که پروژه سفارشی خود را راه‌اندازی می‌کنید را بررسی خواهیم کرد و توضیح کوتاهی در مورد آنچه می‌توانید سفارشی‌سازی کنید، ارائه خواهیم داد.

برای اجرای پروژه سفارشی خود، این مراحل را دنبال کنید

  1. محیط خود را آماده کنید
  2. مخزن خود را از الگوی پروژه سفارشی کپی کنید . اگر کلید SSH در حساب GitHub خود
    دارید، این کار ساده‌ترین است.
  3. IDE خود را تنظیم کنید . توجه داشته باشید که پیکربندی‌های اجرای برنامه هنگام استفاده از این الگو از قبل آماده شده‌اند. از پیکربندی «استقرار سفارشی»
    استفاده کرده docker-compose -f profile\dev-testing.yml up --build -dو آن را اجرا کنید. شما باید دو کانتینر در داکر و مدیر را از طریق IDE خود اجرا کنید.
  4. برای ساخت مدل تایپ‌اسکریپت، وظیفه‌ی modelWatch gradle را اجرا کنید../gradlew modelWatch
  5. در مرحله بعد، رابط کاربری Manager را از /openremote/ui/app/managerدایرکتوری با ارائه می‌دهیم npm run serve "--" --env config=..\..\..\..\deployment\manager\app.

با انجام این کار، باید به مدیر در آدرس http://localhost:9000/manager/ نگاه کنید (با admin/secret وارد شوید)

سفارشی‌سازی‌ها

اکنون می‌توانید تنظیمات دلخواه خود را روی پیاده‌سازی سفارشی انجام دهید. هر بخش فایل readme مخصوص به خود را خواهد داشت تا شما را در مسیرتان راهنمایی کند. این موارد را می‌توان در صورت نیاز در پروژه خود تغییر داد/اضافه کرد:

پیکربندی برنامه مدیریت (/deployment/manager/app)

برنامه مدیریت می‌تواند متناسب با برند شما سفارشی‌سازی شود. برای مثال، می‌توانید رنگ‌ها و لوگوها را تغییر دهید (برچسب‌گذاری سفید)، انواع دارایی‌ها را از پنجره افزودن دارایی و صفحه قوانین حذف کنید، کاری کنید که نشانگرهای نقشه به تغییرات ویژگی‌ها واکنش نشان دهند و ویژگی‌ها را در پنل‌های جداگانه در صفحه دارایی‌ها تنظیم مجدد کنید. این تنظیمات همچنین مستقیماً در برنامه مدیریت، در قسمت «تنظیمات/ظاهر» در دسترس هستند. برای جزئیات بیشتر، به «پیکربندی رابط کاربری مدیر» مراجعه کنید .توجه داشته باشید

بیشتر تغییرات ایجاد شده در manager_config.json برای کاربر پیش‌فرض «admin» (معروف به «Superuser») قابل مشاهده نخواهد بود. دلیل این امر این است که این کاربر نباید توسط آنچه در manager_config تنظیم شده است محدود شود. لطفاً یک کاربر جدید ایجاد کنید تا تغییرات ایجاد شده با manager config را تأیید کنید.

نوع دارایی (/مدل)

نوع دارایی خودتان را که متناسب با محصولتان باشد، ایجاد کنید. در نوع دارایی، نام، آیکون و رنگ آن را تعریف می‌کنید و ویژگی‌های آن را با آیتم‌های پیکربندی (که در کد به آنها آیتم‌های متا گفته می‌شود) تنظیم می‌کنید. اگر به الهام نیاز دارید، می‌توانید به انواع دارایی پیش‌فرض OpenRemote نگاهی بیندازید .

عامل‌ها و پروتکل‌ها (/agent)

پروتکل‌ها نقطه اصلی توسعه OpenRemote هستند، آن‌ها پیام‌های دریافتی و دریافتی از سیستم‌های خارجی را به خواندن و نوشتن دارایی‌ها و مقادیر ویژگی مورد استفاده OpenRemote تبدیل می‌کنند. هنگام ایجاد یک دارایی عامل ، می‌توانید پیکربندی‌های پروتکل ایجاد کنید که نوع خاصی از ویژگی هستند. هر ویژگی عامل که یک پیکربندی پروتکل است، به طور خودکار نمونه خود را از پروتکلی که انتخاب کرده‌اید، دریافت می‌کند.

کد راه‌اندازی (/setup)

تعریف کنید که کدام دارایی‌ها و قوانین باید هنگام استقرار پروژه شما وجود داشته باشند. می‌توانید مقادیر ویژگی‌ها و موارد پیکربندی آنها را تنظیم کنید، قلمروها و کاربران را اضافه کنید و ساختاری از دارایی‌ها ایجاد کنید.
keycloaksetup برای آماده‌سازی قلمروها و کاربران استفاده می‌شود. برای الهام گرفتن، به تنظیمات keycloak در نسخه آزمایشی مراجعه کنید.
managersetup برای آماده‌سازی دارایی‌ها و ویژگی‌ها استفاده می‌شود. برای الهام گرفتن، به تنظیمات manager در نسخه آزمایشی مراجعه کنید.

نقشه (/استقرار/نقشه)

شما می‌توانید نقشه و سبک‌بندی آن را با اضافه کردن به دایرکتوری استقرار تنظیم کنید. درباره تنظیم نقشه خود بیشتر بخوانید: کار بر روی نقشه‌ها .
پس از تهیه فایل نقشه، می‌توانید mapsettings.json را دانلود و سفارشی کنید تا نقطه مرکزی، مرزها، سطح بزرگنمایی و سبک‌بندی را تنظیم کنید یا می‌توانید این موارد را مستقیماً در برنامه مدیریت، در قسمت «تنظیمات/ظاهر» تغییر دهید.
اگر می‌خواهید سبک‌بندی را به طور کامل سفارشی کنید، می‌توانید از Mapbox Studio برای ایجاد سبک خود و کپی کردن آن در mapsettings استفاده کنید.

برنامه‌ها (/ui/app)

اینجا می‌توانید برنامه‌های سفارشی خودتان را اضافه کنید. می‌توانید از برنامه‌ی Manager به عنوان الگو برای شروع استفاده کنید. برای اطلاعات بیشتر در مورد کار بر روی رابط کاربری و استفاده از کامپوننت‌ها، به این صفحه مراجعه کنید.

تنظیم متغیرهای محیطی و نگاشت‌های حجمی داکر برای سرویس‌ها

فایل Docker Compose زیر جزئیات تمام متغیرهای محیطی (مثلاً برای ایمیل یا اعلان‌های فوری) و نگاشت‌های رایج ولوم‌ها را که ممکن است بخواهید از آنها استفاده کنید، شرح می‌دهد: https://github.com/openremote/openremote/blob/master/profile/deploy.yml

دامنه سفارشی

اگر می‌خواهید پشته OpenRemote را روی یک دامنه سفارشی مستقر کنید، تنها کاری که باید انجام دهید این است که مطمئن شوید میزبان Docker که پشته در آن اجرا می‌شود، با استفاده از نام دامنه سفارشی روی پورت‌های زیر قابل دسترسی است:

  • 80HTTP (برای تولید SSL مورد نیاز است)
  • 443HTTPS
  • 8883ام کیو تی تی

این proxyسرویس از Let’s Encrypt برای تولید خودکار گواهی SSL برای دامنه استفاده می‌کند و همچنین به طور خودکار گواهی‌ها را تمدید می‌کند؛ اگر از قبل گواهی SSL برای دامنه دارید، می‌توانید آن را به صورت volume در proxyسرویس نگاشت کنید.