Hono использует адаптеры протокола для передачи данных между транспортным протоколом устройств и протоколом AMQP 1.0, который используется внутри Hono и который также используется для API-интерфейсов Hono, ориентированных на север (обращенных к приложениям).
Hono поставляется с несколькими стандартными адаптерами для HTTP, MQTT, AMQP 1.0, LoRaWAN и (экспериментально) SigFox и CoAP.
Если устройство использует собственный протокол, который нельзя сопоставить / адаптировать к конечным точкам, предоставляемымСтандартные адаптеры, то есть два возможных способа заставить устройства работать с Hono:
- Реализация адаптера протокола custom , который предоставляет конечную точку, которая реализует протокол устройства и интегрируется сAPI Хоно. Этот процесс описан в https://www.eclipse.org/hono/docs/dev-guide/custom_http_adapter/, как уже указывалось в комментариях.
- Реализация прокси протокола перед одним из существующих стандартных адаптеров. В вашем случае, прокси-сервер будет общаться с устройством по JT600 и подключаться к адаптеру AMQP 1.0, передавая данные оттуда и далее. Эта концепция описана в https://github.com/eclipse/hono/issues/1478.
Первый подход в основном подходит для реализации новых адаптеров, которые могут стать адаптерами стандартных для включения в комплект поставки Hono из коробки. например, адаптер для широко используемого стандартного протокола. Для правильной реализации требуется глубокое понимание API-интерфейсов Hono. Преимущество этого подхода заключается в том, что адаптер может стать частью кодовой базы Hono.
Второй подход лучше подходит для проприетарных протоколов, которые вы не хотите раскрывать или если вам нужно / вы хотите иметь больший контроль надсам код. Основным преимуществом этого подхода является то, что его легче реализовать, поскольку вам нужно только интегрировать его с конечными точками устройства адаптера AMQP 1.0 и не заботиться о том, как интегрировать его со всеми другими API-интерфейсами Hono. Тем не менее, обратите внимание, что при таком подходе вы не можете использовать API учетных данных Hono для хранения учетных данных, используемых для аутентификации устройств.