معماری و هویت Gateway
هویتها
| مفهوم | Authority | توضیح |
|---|---|---|
gatewaySerial | AirNgin DeviceSerial | DeviceSerial گیتوی فیزیکی |
Child deviceSerial | AirNgin DeviceSerial | هویت مستقل Child |
MQTT ClientId | Server-issued | Credential کامل و opaque؛ Firmware آن را نمیسازد |
| Native address | Driver-specific | مثل slaveId، BLE address یا CAN node؛ هویت AirNgin نیست |
HTML sessionId | Server-issued temporary | فقط Session تعاملی HTML |
DeviceSerial استاندارد AirNgin دقیقاً ۱۴ کاراکتر است: چهار کاراکتر ProducerCode + ده رقم UniqueNumber.
AIRN + 1234567890 = AIRN1234567890
مرزهای اصلی Runtime
Cloud command
→ CommandRouter
→ GatewayConfigResolver
→ GatewayDriver
→ NativeBusExecutor
→ Child
Child observation
→ NativeBusExecutor
→ GatewayDriver
→ optional GatewayAnalyzer
→ LogicalObservationValidation
→ State / Telemetry / Event
Driver
ترجمه AirNgin Logical Command به Native Protocol و Parse پاسخ Native را انجام میدهد.
Analyzer
فقط در Uplink و در صورت نیاز، خروجی Native/Manufacturer-specific را به Logical State/Telemetry/Event تبدیل میکند.
NativeBusExecutor
مالک I/O امن و زمانبندیشده روی Bus است. MQTT Callback، HTML Callback یا Analyzer حق نوشتن مستقیم روی Bus را ندارند.
Association
Association یک رابطه Device-level است، نه Operation-level. یک Gateway میتواند چند Child فعال داشته باشد؛ هر Child حداکثر یک Gateway فعال دارد.
برای جزئیات Backend به Backend Association مراجعه کنید.