From 67806c18f93e9a5aa8a476c578214c239a17c126 Mon Sep 17 00:00:00 2001 From: Aram Al-Sabti Date: Fri, 25 Feb 2022 14:23:30 +0100 Subject: [PATCH 1/3] Document env variable for setting max. message metadata --- source/installation-guide/installation-guide.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/installation-guide/installation-guide.rst b/source/installation-guide/installation-guide.rst index 3b3f5fb..a3ea3cc 100644 --- a/source/installation-guide/installation-guide.rst +++ b/source/installation-guide/installation-guide.rst @@ -229,6 +229,8 @@ OS2IoT-backend takes several environment variables as configuration, if these ar +-------------------------------+------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------+ | LOG_LEVEL | Minimum Log Level. Levels ordered from high to low are: 'log', 'error', 'warn', 'debug', 'verbose' | :code:`debug` | +-------------------------------+------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------+ +| METADATA_SAVED_COUNT | Maximum amount of message metadata to store from an IoT device | :code:`20` | ++-------------------------------+------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------+ Logs levels """"""""""""""" From e422e489487c5266a25d8474022d1470325b5a20 Mon Sep 17 00:00:00 2001 From: Aram Al-Sabti Date: Fri, 25 Feb 2022 14:28:45 +0100 Subject: [PATCH 2/3] Minor text change to metadata_save_count --- source/installation-guide/installation-guide.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/installation-guide/installation-guide.rst b/source/installation-guide/installation-guide.rst index a3ea3cc..19db91e 100644 --- a/source/installation-guide/installation-guide.rst +++ b/source/installation-guide/installation-guide.rst @@ -229,7 +229,7 @@ OS2IoT-backend takes several environment variables as configuration, if these ar +-------------------------------+------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------+ | LOG_LEVEL | Minimum Log Level. Levels ordered from high to low are: 'log', 'error', 'warn', 'debug', 'verbose' | :code:`debug` | +-------------------------------+------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------+ -| METADATA_SAVED_COUNT | Maximum amount of message metadata to store from an IoT device | :code:`20` | +| METADATA_SAVED_COUNT | Maximum number of message metadata to store from an IoT device | :code:`20` | +-------------------------------+------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------+ Logs levels From 9e15de3997c7855960ad7a942061a00a54d9a05c Mon Sep 17 00:00:00 2001 From: nlg Date: Mon, 21 Mar 2022 18:13:35 +0100 Subject: [PATCH 3/3] Added documentation on the relationship between ServiceProfiles and Chirpstack Applications --- .../external-interface-design.rst | 12 ++++++++++-- .../external-interface-design/media/image13.png | Bin 0 -> 52927 bytes 2 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 source/external-interface-design/media/image13.png diff --git a/source/external-interface-design/external-interface-design.rst b/source/external-interface-design/external-interface-design.rst index be5f984..c4b0329 100644 --- a/source/external-interface-design/external-interface-design.rst +++ b/source/external-interface-design/external-interface-design.rst @@ -132,8 +132,8 @@ and Chirpstack is out of scope of this project. The Chirpstack is comprised of the following 4 modules. -1. `Appplication - Server `__ +1. `Application + Server `__ 2. `Network Server `__ @@ -162,6 +162,13 @@ synchronized to Chirpstack. It is not supported to change data directly in Chirpstack. All manipulation of settings in the Chirpstack is thus done via the Chirpstack API. If locally running on port 8080 then Chirpstack Application Services Swagger UI is available at http://localhost:8080/api +There is no direct mapping between applications in OS2iot and applications in Chirpstack, even though they cover a similar concept. +Instead, a separate Chirpstack application is created for each separate ServiceProfile created through OS2iot. + +The new Chirpstack application is created the first time a device with a previously unused ServiceProfile is added to an OS2iot application. +This is illustrated in the flowchart below: +|image13| + Security ~~~~~~~~ @@ -472,3 +479,4 @@ See `the seperate page for KOMBIT adgangsstyring <../kombit-adgangsstyring/kombi .. |image5| image:: media/image9.png .. |image6| image:: media/image10.png .. |image7| image:: media/image12.png +.. |image13| image:: media/image13.png diff --git a/source/external-interface-design/media/image13.png b/source/external-interface-design/media/image13.png new file mode 100644 index 0000000000000000000000000000000000000000..58f7b94ed381d45a7c4e494a7352fb2485e966cf GIT binary patch literal 52927 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