diff --git a/documentation/docs/ar/practical-sessions/accessing-your-student-vm.md b/documentation/docs/ar/practical-sessions/accessing-your-student-vm.md
index 18918a623..6bcb2fec5 100644
--- a/documentation/docs/ar/practical-sessions/accessing-your-student-vm.md
+++ b/documentation/docs/ar/practical-sessions/accessing-your-student-vm.md
@@ -10,7 +10,7 @@ title: الوصول إلى جهاز الطالب الافتراضي
- الوصول إلى جهاز الطالب الافتراضي الخاص بك عبر SSH وWinSCP
- التحقق من تثبيت البرامج المطلوبة للتمارين العملية
- - التحقق من أنك تمتلك مواد التمارين لهذا التدريب على جهاز الطالب الافتراضي المحلي الخاص بك
+ - التحقق من أن لديك الوصول إلى مواد التمارين لهذا التدريب على جهاز الطالب الافتراضي الخاص بك
## المقدمة
@@ -26,23 +26,23 @@ title: الوصول إلى جهاز الطالب الافتراضي
!!! note
- إذا كنت ترغب في إجراء هذا التدريب خارج جلسة تدريب محلية، يمكنك توفير جهاز افتراضي خاص بك باستخدام أي مزود سحابي، على سبيل المثال:
+ إذا كنت ترغب في إجراء هذا التدريب خارج جلسة تدريب محلية، يمكنك توفير جهاز افتراضي خاص بك باستخدام أي مزود خدمة سحابية، على سبيل المثال:
- GCP (Google Cloud Platform) VM instance `e2-medium`
- AWS (Amazon Web Services) ec2-instance `t3a.medium`
- Azure (Microsoft) Azure Virtual Machine `standard_b2s`
اختر Ubuntu Server 22.0.4 LTS كنظام تشغيل.
-
- بعد إنشاء الجهاز الافتراضي، تأكد من تثبيت python وdocker وdocker compose، كما هو موضح في [wis2box-software-dependencies](https://docs.wis2box.wis.wmo.int/en/latest/user/getting-started.html#software-dependencies).
-
+
+ بعد إنشاء الجهاز الافتراضي الخاص بك، تأكد من تثبيت python وdocker وdocker compose، كما هو موضح في [wis2box-software-dependencies](https://docs.wis2box.wis.wmo.int/en/latest/user/getting-started.html#software-dependencies).
+
يمكن تنزيل أرشيف الإصدار الخاص بـwis2box المستخدم في هذا التدريب كما يلي:
```bash
- wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.2.0/wis2box-setup-1.2.0.zip
- unzip wis2box-setup-1.2.0.zip
+ wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.3.0/wis2box-setup-1.3.0.zip
+ unzip wis2box-setup-1.3.0.zip
```
-
+
يمكنك دائمًا العثور على أحدث أرشيف 'wis2box-setup' على [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases).
يمكن تنزيل مواد التمارين المستخدمة في هذا التدريب كما يلي:
@@ -56,7 +56,7 @@ title: الوصول إلى جهاز الطالب الافتراضي
```bash
pip3 install minio
- pip3 install pywiscat==0.4.0
+ pip3 install pywiscat
```
إذا كنت تستخدم جهاز الطالب الافتراضي المقدم خلال جلسات التدريب المحلية لـWIS2، فسيتم تثبيت البرامج المطلوبة مسبقًا.
@@ -67,13 +67,13 @@ title: الوصول إلى جهاز الطالب الافتراضي
استخدم عميل SSH للاتصال بجهاز الطالب الافتراضي الخاص بك باستخدام المعلومات التالية:
-- **المضيف: (يتم تقديمه أثناء التدريب الشخصي)**
+- **المضيف: (يتم توفيره أثناء التدريب الشخصي)**
- **المنفذ: 22**
-- **اسم المستخدم: (يتم تقديمه أثناء التدريب الشخصي)**
-- **كلمة المرور: (يتم تقديمها أثناء التدريب الشخصي)**
+- **اسم المستخدم: (يتم توفيره أثناء التدريب الشخصي)**
+- **كلمة المرور: (يتم توفيرها أثناء التدريب الشخصي)**
!!! tip
- اتصل بمدرب إذا كنت غير متأكد من اسم المضيف/اسم المستخدم أو واجهت مشاكل في الاتصال.
+ تواصل مع المدرب إذا كنت غير متأكد من اسم المضيف/اسم المستخدم أو واجهت مشكلات في الاتصال.
بمجرد الاتصال، يرجى تغيير كلمة المرور الخاصة بك لضمان عدم تمكن الآخرين من الوصول إلى جهازك الافتراضي:
@@ -94,7 +94,7 @@ passwd: password updated successfully
```bash
python3 --version
```
-الناتج:
+النتيجة:
```console
Python 3.10.12
```
@@ -103,7 +103,7 @@ Python 3.10.12
```bash
docker --version
```
-الناتج:
+النتيجة:
```console
Docker version 24.0.6, build ed223bc
```
@@ -112,12 +112,12 @@ Docker version 24.0.6, build ed223bc
```bash
docker compose version
```
-الناتج:
+النتيجة:
```console
Docker Compose version v2.21.0
```
-لضمان أن المستخدم الخاص بك يمكنه تشغيل أوامر Docker، تم إضافة المستخدم الخاص بك إلى مجموعة `docker`.
+لضمان أن المستخدم الخاص بك يمكنه تشغيل أوامر Docker، تمت إضافته إلى مجموعة `docker`.
لاختبار أن المستخدم الخاص بك يمكنه تشغيل docker hello-world، قم بتشغيل الأمر التالي:
```bash
@@ -135,19 +135,19 @@ This message shows that your installation appears to be working correctly.
...
```
-## تفقد مواد التمارين
+## فحص مواد التمارين
-تفقد محتويات دليل المنزل الخاص بك؛ هذه هي المواد المستخدمة كجزء من التدريب والجلسات العملية.
+افحص محتويات دليل المنزل الخاص بك؛ هذه هي المواد المستخدمة كجزء من التدريب والجلسات العملية.
```bash
ls ~/
```
-الناتج:
+النتيجة:
```console
exercise-materials wis2box
```
-إذا كان لديك WinSCP مثبتًا على جهاز الكمبيوتر المحلي الخاص بك، يمكنك استخدامه للاتصال بجهاز الطالب الافتراضي الخاص بك وتفقد محتويات دليل المنزل الخاص بك وتنزيل أو تحميل الملفات بين جهازك الافتراضي وجهاز الكمبيوتر المحلي الخاص بك.
+إذا كان لديك WinSCP مثبتًا على جهاز الكمبيوتر المحلي الخاص بك، يمكنك استخدامه للاتصال بجهاز الطالب الافتراضي الخاص بك وفحص محتويات دليل المنزل الخاص بك وتنزيل أو تحميل الملفات بين جهازك الافتراضي وجهاز الكمبيوتر المحلي الخاص بك.
WinSCP ليس مطلوبًا للتدريب، ولكنه يمكن أن يكون مفيدًا إذا كنت ترغب في تحرير الملفات على جهازك الافتراضي باستخدام محرر نصوص على جهاز الكمبيوتر المحلي الخاص بك.
@@ -168,4 +168,4 @@ WinSCP ليس مطلوبًا للتدريب، ولكنه يمكن أن يكون
- الوصول إلى جهاز الطالب الافتراضي الخاص بك عبر SSH وWinSCP
- التحقق من تثبيت البرامج المطلوبة للتمارين العملية
- - التحقق من أنك تمتلك مواد التمارين لهذا التدريب على جهاز الطالب الافتراضي المحلي الخاص بك
\ No newline at end of file
+ - التحقق من أن لديك الوصول إلى مواد التمارين لهذا التدريب على جهاز الطالب الافتراضي الخاص بك
\ No newline at end of file
diff --git a/documentation/docs/ar/practical-sessions/adding-gts-headers-to-wis2-notifications.md b/documentation/docs/ar/practical-sessions/adding-gts-headers-to-wis2-notifications.md
index 584eae3b5..7778a4d7e 100644
--- a/documentation/docs/ar/practical-sessions/adding-gts-headers-to-wis2-notifications.md
+++ b/documentation/docs/ar/practical-sessions/adding-gts-headers-to-wis2-notifications.md
@@ -8,17 +8,18 @@ title: إضافة رؤوس GTS إلى إشعارات WIS2
بنهاية هذه الجلسة العملية، ستكون قادرًا على:
- - تكوين تعيين بين اسم الملف ورؤوس GTS
- - إدخال البيانات بأسماء ملفات تتطابق مع رؤوس GTS
+ - تكوين خريطة بين اسم الملف ورؤوس GTS
+ - إدخال بيانات باسم ملف يتطابق مع رؤوس GTS
- عرض رؤوس GTS في إشعارات WIS2
+ - استخدام نموذج FM-12 SYNOP لإضافة رؤوس GTS يدويًا إلى إشعار WIS2
-## مقدمة
+## المقدمة
-الأعضاء في المنظمة العالمية للأرصاد الجوية الراغبين في إيقاف نقل بياناتهم على GTS خلال مرحلة الانتقال إلى WIS2 سيحتاجون إلى إضافة رؤوس GTS إلى إشعاراتهم WIS2. تمكن هذه الرؤوس بوابة WIS2 إلى GTS من توجيه البيانات إلى شبكة GTS.
+أعضاء المنظمة العالمية للأرصاد الجوية (WMO) الذين يرغبون في إيقاف نقل بياناتهم عبر GTS خلال مرحلة الانتقال إلى WIS2 سيحتاجون إلى إضافة رؤوس GTS إلى إشعارات WIS2 الخاصة بهم. تتيح هذه الرؤوس لبوابة WIS2 إلى GTS إعادة توجيه البيانات إلى شبكة GTS.
-هذا يسمح للأعضاء الذين انتقلوا إلى استخدام عقدة WIS2 لنشر البيانات بتعطيل نظام MSS الخاص بهم وضمان توفر بياناتهم للأعضاء الذين لم ينتقلوا بعد إلى WIS2.
+يسمح هذا للأعضاء الذين انتقلوا إلى استخدام عقدة WIS2 لنشر البيانات بإيقاف نظام MSS الخاص بهم وضمان أن بياناتهم لا تزال متاحة للأعضاء الذين لم ينتقلوا بعد إلى WIS2.
-يجب إضافة خاصية GTS في رسالة إشعار WIS2 كخاصية إضافية إلى رسالة إشعار WIS2. خاصية GTS هي كائن JSON يحتوي على رؤوس GTS المطلوبة لتوجيه البيانات إلى شبكة GTS.
+يجب إضافة خاصية GTS في رسالة إشعار WIS2 كخاصية إضافية. خاصية GTS هي كائن JSON يحتوي على رؤوس GTS المطلوبة لإعادة توجيه البيانات إلى شبكة GTS.
```json
{
@@ -29,45 +30,55 @@ title: إضافة رؤوس GTS إلى إشعارات WIS2
}
```
-ضمن wis2box يمكنك إضافة هذا إلى إشعارات WIS2 تلقائيًا عن طريق توفير ملف إضافي يسمى `gts_headers_mapping.csv` يحتوي على المعلومات المطلوبة لتعيين رؤوس GTS إلى أسماء الملفات الواردة.
+داخل `wis2box`، يمكنك إضافة هذه الخاصية إلى إشعارات WIS2 تلقائيًا عن طريق توفير ملف إضافي باسم `gts_headers_mapping.csv` يحتوي على المعلومات المطلوبة لربط رؤوس GTS بأسماء الملفات الواردة.
-يجب وضع هذا الملف في الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env` الخاص بك ويجب أن يحتوي على الأعمدة التالية:
+يجب وضع هذا الملف في الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env` ويجب أن يحتوي على الأعمدة التالية:
-- `string_in_filepath`: سلسلة تكون جزءًا من اسم الملف الذي سيتم استخدامه لمطابقة رؤوس GTS
-- `TTAAii`: رأس TTAAii الذي سيتم إضافته إلى إشعار WIS2
-- `CCCC`: رأس CCCC الذي سيتم إضافته إلى إشعار WIS2
+- `string_in_filepath`: سلسلة نصية تكون جزءًا من اسم الملف الذي سيتم استخدامه لمطابقة رؤوس GTS
+- `TTAAii`: الرأس TTAAii الذي سيتم إضافته إلى إشعار WIS2
+- `CCCC`: الرأس CCCC الذي سيتم إضافته إلى إشعار WIS2
+
+اعتبارًا من الإصدار `wis2box-1.3.0`، لدى ناشري البيانات خياران (اختياريًا) لإضافة خصائص GTS إلى إشعاراتهم:
+
+1. بالنسبة للملفات التي يتم تحميلها إلى MinIO، قم بإعداد ملف الخريطة `gts_headers_mappings.csv` مع الخصائص المطلوبة.
+
+2. بالنسبة لإدخال البيانات باستخدام نموذج FM-12 SYNOP في `wis2box-webapp`، اختر "إضافة رؤوس GTS" وقم بإدخال المعلومات يدويًا.
## التحضير
-تأكد من أن لديك وصول SSH إلى VM الطالب الخاص بك وأن نسخة wis2box الخاصة بك قيد التشغيل.
+تأكد من أن لديك وصول SSH إلى جهاز الطالب الافتراضي الخاص بك وأن مثيل `wis2box` الخاص بك يعمل.
-تأكد من أنك متصل بوسيط MQTT الخاص بنسخة wis2box باستخدام MQTT Explorer. يمكنك استخدام بيانات الاعتماد العامة `everyone/everyone` للاتصال بالوسيط.
+تأكد من أنك متصل بوسيط MQTT الخاص بمثيل `wis2box` الخاص بك باستخدام `MQTT Explorer`. يمكنك استخدام بيانات الاعتماد العامة `everyone/everyone` للاتصال بالوسيط.
-تأكد من أن لديك متصفح ويب مفتوحًا مع لوحة تحكم Grafana لنسختك بالانتقال إلى `http://YOUR-HOST:3000`
+تأكد من أن لديك متصفح ويب مفتوح مع لوحة تحكم Grafana لمثيلك من خلال الانتقال إلى `http://YOUR-HOST:3000`.
-## إنشاء `gts_headers_mapping.csv`
+## التمرين 1: استخدام ملف خريطة للبيانات المحملة إلى MinIO
-لإضافة رؤوس GTS إلى إشعارات WIS2 الخاصة بك، مطلوب ملف CSV يعين رؤوس GTS إلى أسماء الملفات الواردة.
+سيعرض التمرين الأول كيفية إضافة رؤوس GTS للبيانات التي يتم تحميلها إلى MinIO باستخدام ملف خريطة باسم `gts_headers_mapping.csv`.
-يجب تسمية الملف (بالضبط) `gts_headers_mapping.csv` ويجب وضعه في الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env` الخاص بك.
+### إنشاء `gts_headers_mapping.csv`
-## توفير ملف `gts_headers_mapping.csv`
+لإضافة رؤوس GTS إلى إشعارات WIS2 الخاصة بك، يلزم وجود ملف CSV يربط رؤوس GTS بأسماء الملفات الواردة.
-انسخ الملف `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` إلى نسخة wis2box الخاصة بك وضعه في الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env` الخاص بك.
+يجب أن يكون اسم ملف CSV (بالضبط) `gts_headers_mapping.csv` ويجب وضعه في الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env`.
+
+انسخ الملف `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` إلى مثيل `wis2box` الخاص بك وضعه في الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env`.
```bash
cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data
```
-ثم أعد تشغيل حاوية wis2box-management لتطبيق التغييرات:
+### تطبيق الخرائط
+
+بعد إنشاء ملف `gts_headers_mapping.csv`، تحتاج إلى إعادة تشغيل حاوية `wis2box-management` لتطبيق التغييرات. يمكنك القيام بذلك عن طريق تشغيل الأمر التالي في جهاز الطالب الافتراضي الخاص بك:
```bash
docker restart wis2box-management
```
-## إدخال البيانات مع رؤوس GTS
+### إدخال البيانات مع رؤوس GTS
-انسخ الملف `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` إلى الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env` الخاص بك:
+انسخ الملف `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` إلى الدليل المحدد بواسطة `WIS2BOX_HOST_DATADIR` في ملف `wis2box.env`:
```bash
cp ~/exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt ~/wis2box-data
@@ -80,7 +91,7 @@ cd ~/wis2box
python3 wis2box-ctl.py login
```
-من سطر أوامر wis2box يمكننا إدخال ملف البيانات النموذجي `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` في مجموعة بيانات محددة كما يلي:
+من سطر أوامر `wis2box`، يمكننا إدخال ملف البيانات النموذجي `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` إلى مجموعة بيانات محددة كما يلي:
```bash
wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt --metadata-id urn:wmo:md:not-my-centre:core.surface-based-observations.synop
@@ -88,17 +99,55 @@ wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.tx
تأكد من استبدال خيار `metadata-id` بالمعرف الصحيح لمجموعة البيانات الخاصة بك.
-تحقق من لوحة تحكم Grafana لمعرفة ما إذا تم إدخال البيانات بشكل صحيح. إذا رأيت أي تحذيرات أو أخطاء، حاول إصلاحها وكرر تمرين الأمر `wis2box data ingest`.
+تحقق من لوحة تحكم Grafana لمعرفة ما إذا تم إدخال البيانات بشكل صحيح. إذا رأيت أي تحذيرات أو أخطاء، حاول إصلاحها وكرر التمرين باستخدام الأمر `wis2box data ingest`.
-## عرض رؤوس GTS في إشعار WIS2
+### عرض رؤوس GTS في إشعار WIS2
-انتقل إلى MQTT Explorer وتحقق من رسالة إشعار WIS2 للبيانات التي أدخلتها للتو.
+انتقل إلى `MQTT Explorer` وتحقق من رسالة إشعار WIS2 للبيانات التي قمت بإدخالها للتو.
يجب أن تحتوي رسالة إشعار WIS2 على رؤوس GTS التي قدمتها في ملف `gts_headers_mapping.csv`.
-## خاتمة
+## التمرين 2: استخدام نموذج FM-12 SYNOP
+
+عند استخدام نموذج FM-12 SYNOP في `wis2box-webapp`، يمكنك إضافة رؤوس GTS يدويًا إلى إشعارات WIS2 الخاصة بك عن طريق اختيار خيار "إضافة رؤوس GTS" وتقديم المعلومات المطلوبة.
+
+بالنسبة لهذا التمرين، يمكنك استخدام البيانات النموذجية أدناه أو تقديم بياناتك الخاصة:
+
+رسالة FM-12 SYNOP:
+
+```{copy}
+AAXX 03094
+64400 42460 71004 10285 20245 30113 40133 8493/
+ 333 59005 83813 81930 87363 94966 95836=
+```
+
+رؤوس GTS: TTAAii=`ISIH01` و CCCC=`FCBB`
+
+!!! note
+ يقوم المكون الإضافي `synop2bufr-plugin` في `wis2box` بتحويل رسائل FM-12 SYNOP إلى BUFR، لذا يجب أن يبدأ TTAAii بـ `IS`:
+
+ - I = بيانات الرصد (مشفرة ثنائيًا) – BUFR
+ - S = السطح/مستوى سطح البحر
+
+### إرسال نموذج FM-12 SYNOP يدويًا مع رؤوس GTS
+
+انتقل إلى نموذج FM-12 SYNOP في `wis2box-webapp` واملأ النموذج بالبيانات النموذجية أعلاه أو بياناتك الخاصة.
+
+تأكد من اختيار خيار "إضافة رؤوس GTS" وتقديم معلومات رؤوس GTS المطلوبة:
+
+
+
+قدم رمز المصادقة المطلوب وأرسل النموذج.
+
+من المحتمل أن ترى رسالة خطأ لأن هذه المحطة ليست في قائمة المحطات الخاصة بك. ستحتاج إلى إضافة المحطة "0-20000-0-64400" إلى قائمة المحطات الخاصة بك حتى يتم تحويل البيانات ونشرها بنجاح.
+
+### عرض رؤوس GTS في إشعار WIS2
+
+انتقل إلى `MQTT Explorer` وتحقق من رسالة إشعار WIS2 للبيانات التي قمت بإدخالها للتو لمعرفة ما إذا كانت رؤوس GTS مدرجة في الإشعار.
+
+## الخاتمة
!!! success "تهانينا!"
في هذه الجلسة العملية، تعلمت كيفية:
- إضافة رؤوس GTS إلى إشعارات WIS2 الخاصة بك
- - التحقق من توفر رؤوس GTS عبر تثبيت wis2box الخاص بك
\ No newline at end of file
+ - التحقق من أن رؤوس GTS متاحة عبر تثبيت `wis2box` الخاص بك
\ No newline at end of file
diff --git a/documentation/docs/ar/practical-sessions/connecting-to-wis2-over-mqtt.md b/documentation/docs/ar/practical-sessions/connecting-to-wis2-over-mqtt.md
index 302f8a626..dd5be7e10 100644
--- a/documentation/docs/ar/practical-sessions/connecting-to-wis2-over-mqtt.md
+++ b/documentation/docs/ar/practical-sessions/connecting-to-wis2-over-mqtt.md
@@ -14,9 +14,9 @@ title: الاتصال بـ WIS2 عبر MQTT
## المقدمة
-يستخدم WIS2 بروتوكول MQTT للإعلان عن توفر بيانات الطقس/المناخ/المياه. يقوم WIS2 Global Broker بالاشتراك في جميع WIS2 Nodes في الشبكة وإعادة نشر الرسائل التي يتلقاها. يقوم Global Cache بالاشتراك في Global Broker، وتنزيل البيانات الموجودة في الرسالة، ثم إعادة نشر الرسالة على موضوع `cache` مع عنوان URL جديد. ينشر Global Discovery Catalogue بيانات الاكتشاف الوصفية من Broker ويوفر واجهة برمجة تطبيقات للبحث.
+يستخدم WIS2 بروتوكول MQTT للإعلان عن توفر بيانات الطقس/المناخ/المياه. يقوم WIS2 Global Broker بالاشتراك في جميع WIS2 Nodes في الشبكة ويعيد نشر الرسائل التي يتلقاها. يقوم Global Cache بالاشتراك في Global Broker، وتنزيل البيانات الموجودة في الرسالة، ثم يعيد نشر الرسالة في موضوع `cache` مع عنوان URL جديد. ينشر Global Discovery Catalogue بيانات وصفية للاكتشاف من Broker ويوفر واجهة برمجة تطبيقات للبحث.
-هذا مثال على هيكل رسالة إشعار WIS2 لرسالة تم استلامها على الموضوع `origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`:
+فيما يلي مثال على هيكل رسالة إشعار WIS2 لرسالة تم استلامها على الموضوع `origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`:
```json
{
@@ -57,31 +57,31 @@ title: الاتصال بـ WIS2 عبر MQTT
"href":"https://oscar.wmo.int/surface/#/search/station/stationReportDetails/0-20000-0-76679"
}
],
- "generated_by":"wis2box 1.2.0"
+ "generated_by":"wis2box 1.3.0"
}
```
-في هذه الجلسة العملية، ستتعلم كيفية استخدام أداة MQTT Explorer لإعداد اتصال عميل MQTT بـ WIS2 Global Broker وعرض رسائل إشعارات WIS2.
+في هذه الجلسة العملية، ستتعلم كيفية استخدام أداة MQTT Explorer لإعداد اتصال عميل MQTT مع WIS2 Global Broker وعرض رسائل إشعارات WIS2.
-يعد MQTT Explorer أداة مفيدة لتصفح ومراجعة هيكل المواضيع لأي MQTT broker لمراجعة البيانات التي يتم نشرها.
+يُعد MQTT Explorer أداة مفيدة لتصفح ومراجعة هيكل المواضيع لأي MQTT broker لمراجعة البيانات المنشورة.
!!! note "حول MQTT"
- يوفر MQTT Explorer واجهة سهلة الاستخدام للاتصال بـ MQTT broker واستكشاف المواضيع وهيكل الرسائل المستخدمة في WIS2.
+ يوفر MQTT Explorer واجهة سهلة الاستخدام للاتصال بـ MQTT broker واستكشاف المواضيع وهيكل الرسائل المستخدمة بواسطة WIS2.
- في الممارسة العملية، يتم استخدام MQTT للتواصل بين الآلات، حيث يشترك تطبيق أو خدمة في المواضيع ويعالج الرسائل برمجيًا في الوقت الفعلي.
+ في الممارسة العملية، يُقصد باستخدام MQTT للتواصل بين الآلات، حيث يشترك تطبيق أو خدمة في المواضيع ويعالج الرسائل برمجيًا في الوقت الفعلي.
- للعمل مع MQTT برمجيًا (على سبيل المثال، باستخدام Python)، يمكنك استخدام مكتبات عملاء MQTT مثل [paho-mqtt](https://pypi.org/project/paho-mqtt) للاتصال بـ MQTT broker ومعالجة الرسائل الواردة. توجد العديد من برامج العملاء والخوادم لـ MQTT، حسب متطلباتك وبيئتك التقنية.
+ للعمل مع MQTT برمجيًا (على سبيل المثال، باستخدام Python)، يمكنك استخدام مكتبات عملاء MQTT مثل [paho-mqtt](https://pypi.org/project/paho-mqtt) للاتصال بـ MQTT broker ومعالجة الرسائل الواردة. توجد العديد من برامج عملاء وخوادم MQTT، حسب متطلباتك وبيئتك التقنية.
## استخدام MQTT Explorer للاتصال بـ Global Broker
-لعرض الرسائل التي ينشرها WIS2 Global Broker، يمكنك استخدام "MQTT Explorer" الذي يمكن تنزيله من [موقع MQTT Explorer](https://mqtt-explorer.com).
+لعرض الرسائل المنشورة بواسطة WIS2 Global Broker، يمكنك استخدام "MQTT Explorer" الذي يمكن تنزيله من [موقع MQTT Explorer](https://mqtt-explorer.com).
-افتح MQTT Explorer وأضف اتصالًا جديدًا بـ Global Broker المستضاف من قبل MeteoFrance باستخدام التفاصيل التالية:
+افتح MQTT Explorer وأضف اتصالًا جديدًا بـ Global Broker المستضاف بواسطة MeteoFrance باستخدام التفاصيل التالية:
-- host: globalbroker.meteo.fr
-- port: 8883
-- username: everyone
-- password: everyone
+- المضيف: globalbroker.meteo.fr
+- المنفذ: 8883
+- اسم المستخدم: everyone
+- كلمة المرور: everyone
@@ -95,19 +95,19 @@ title: الاتصال بـ WIS2 عبر MQTT
عند إعداد اشتراكات MQTT، يمكنك استخدام الرموز العامة التالية:
- **مستوى واحد (+)**: الرمز العام لمستوى واحد يستبدل مستوى واحدًا من الموضوع
- - **مستويات متعددة (#)**: الرمز العام لمستويات متعددة يستبدل مستويات متعددة من الموضوع
+ - **متعدد المستويات (#)**: الرمز العام متعدد المستويات يستبدل مستويات متعددة من الموضوع
- في هذه الحالة، `origin/a/wis2/#` سيشترك في جميع المواضيع تحت موضوع `origin/a/wis2`.
+ في هذه الحالة، سيشترك `origin/a/wis2/#` في جميع المواضيع تحت موضوع `origin/a/wis2`.
انقر على 'BACK'، ثم 'SAVE' لحفظ تفاصيل الاتصال والاشتراك. ثم انقر على 'CONNECT':
-يجب أن تبدأ الرسائل في الظهور في جلسة MQTT Explorer كما يلي:
+يجب أن تبدأ الرسائل في الظهور في جلسة MQTT Explorer الخاصة بك كما يلي:
أنت الآن جاهز لبدء استكشاف مواضيع WIS2 وهيكل الرسائل.
-## التمرين 1: مراجعة هيكل مواضيع WIS2
+## التمرين 1: مراجعة هيكل المواضيع في WIS2
استخدم MQTT لتصفح هيكل المواضيع تحت مواضيع `origin`.
@@ -119,25 +119,25 @@ title: الاتصال بـ WIS2 عبر MQTT
يمكنك النقر على نافذة الجانب الأيسر في MQTT Explorer لتوسيع هيكل المواضيع.
- يمكننا التمييز بين مركز WIS الذي نشر البيانات من خلال النظر إلى المستوى الرابع من هيكل المواضيع. على سبيل المثال، الموضوع التالي:
+ يمكننا التمييز بين مركز WIS الذي نشر البيانات من خلال النظر إلى المستوى الرابع من هيكل الموضوع. على سبيل المثال، الموضوع التالي:
`origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`
- يخبرنا أن البيانات تم نشرها من مركز WIS مع المعرف `br-inmet`، وهو المعرف الخاص بـ Instituto Nacional de Meteorologia - INMET، البرازيل.
+ يخبرنا أن البيانات تم نشرها بواسطة مركز WIS مع المعرف `br-inmet`، وهو المعرف الخاص بـ Instituto Nacional de Meteorologia - INMET، البرازيل.
!!! question
- كيف يمكننا التمييز بين الرسائل المنشورة من مراكز WIS التي تستضيف بوابة GTS-to-WIS2 والرسائل المنشورة من مراكز WIS التي تستضيف WIS2 Node؟
+ كيف يمكننا التمييز بين الرسائل المنشورة بواسطة مراكز WIS التي تستضيف بوابة GTS-to-WIS2 والرسائل المنشورة بواسطة مراكز WIS التي تستضيف WIS2 Node؟
??? success "انقر للكشف عن الإجابة"
- يمكننا التمييز بين الرسائل القادمة من بوابة GTS-to-WIS2 من خلال النظر إلى معرف المركز في هيكل المواضيع. على سبيل المثال، الموضوع التالي:
+ يمكننا التمييز بين الرسائل القادمة من بوابة GTS-to-WIS2 من خلال النظر إلى معرف المركز في هيكل الموضوع. على سبيل المثال، الموضوع التالي:
`origin/a/wis2/de-dwd-gts-to-wis2/data/core/I/S/A/I/01/sbbr`
- يخبرنا أن البيانات تم نشرها من بوابة GTS-to-WIS2 المستضافة من قبل Deutscher Wetterdienst (DWD)، ألمانيا. بوابة GTS-to-WIS2 هي نوع خاص من ناشري البيانات الذين ينشرون البيانات من نظام الاتصالات العالمي (GTS) إلى WIS2. يتكون هيكل المواضيع من رؤوس TTAAii CCCC لرسائل GTS.
+ يخبرنا أن البيانات تم نشرها بواسطة بوابة GTS-to-WIS2 المستضافة بواسطة Deutscher Wetterdienst (DWD)، ألمانيا. بوابة GTS-to-WIS2 هي نوع خاص من ناشري البيانات الذين ينشرون البيانات من نظام الاتصالات العالمي (GTS) إلى WIS2. يتكون هيكل الموضوع من رؤوس TTAAii CCCC لرسائل GTS.
-## التمرين 2: مراجعة هيكل رسائل WIS2
+## التمرين 2: مراجعة هيكل الرسائل في WIS2
افصل الاتصال بـ MQTT Explorer وقم بتحديث قسم 'Advanced' لتغيير الاشتراك إلى ما يلي:
@@ -149,9 +149,9 @@ title: الاتصال بـ WIS2 عبر MQTT
!!! note
يتم استخدام الرمز العام `+` للاشتراك في جميع مراكز WIS.
-أعد الاتصال بـ Global Broker وانتظر حتى تظهر الرسائل.
+أعد الاتصال بـ Global Broker وانتظر ظهور الرسائل.
-يمكنك عرض محتوى رسالة WIS2 في قسم "Value" على الجانب الأيمن. حاول توسيع هيكل المواضيع لرؤية المستويات المختلفة للرسالة حتى تصل إلى المستوى الأخير ومراجعة محتوى إحدى الرسائل.
+يمكنك عرض محتوى رسالة WIS2 في قسم "Value" على الجانب الأيمن. حاول توسيع هيكل الموضوع لرؤية المستويات المختلفة للرسالة حتى تصل إلى المستوى الأخير وراجع محتوى الرسالة لإحدى الرسائل.
!!! question
@@ -159,15 +159,15 @@ title: الاتصال بـ WIS2 عبر MQTT
??? success "انقر للكشف عن الإجابة"
- الطابع الزمني الذي تم فيه نشر البيانات موجود في قسم `properties` من الرسالة مع المفتاح `pubtime`.
+ الطابع الزمني الذي تم فيه نشر البيانات موجود في قسم `properties` من الرسالة مع مفتاح `pubtime`.
- الطابع الزمني الذي تم فيه جمع البيانات موجود في قسم `properties` من الرسالة مع المفتاح `datetime`.
+ الطابع الزمني الذي تم فيه جمع البيانات موجود في قسم `properties` من الرسالة مع مفتاح `datetime`.
!!! question
- كيف يمكننا تنزيل البيانات من عنوان URL الموجود في الرسالة؟
+ كيف يمكننا تنزيل البيانات من عنوان URL المقدم في الرسالة؟
??? success "انقر للكشف عن الإجابة"
@@ -179,7 +179,7 @@ title: الاتصال بـ WIS2 عبر MQTT
تأكد من أنك لا تزال متصلًا بـ Global Broker باستخدام اشتراكات المواضيع `origin/a/wis2/+/data/core/weather/surface-based-observations/synop` و `cache/a/wis2/+/data/core/weather/surface-based-observations/synop` كما هو موضح في التمرين 2.
-حاول تحديد رسالة لنفس معرف المركز تم نشرها على كل من مواضيع `origin` و `cache`.
+حاول تحديد رسالة لنفس معرف المركز المنشورة على كل من مواضيع `origin` و `cache`.
!!! question
@@ -189,11 +189,11 @@ title: الاتصال بـ WIS2 عبر MQTT
الرسائل المنشورة على مواضيع `origin` هي الرسائل الأصلية التي يعيد Global Broker نشرها من WIS2 Nodes في الشبكة.
- الرسائل المنشورة على مواضيع `cache` هي الرسائل التي تم تنزيل البيانات الخاصة بها من قبل Global Cache. إذا قمت بفحص محتوى الرسالة من الموضوع الذي يبدأ بـ `cache`، ستلاحظ أن الرابط 'canonical' تم تحديثه إلى عنوان URL جديد.
+ الرسائل المنشورة على مواضيع `cache` هي الرسائل التي تم تنزيل البيانات الخاصة بها بواسطة Global Cache. إذا قمت بفحص محتوى الرسالة من الموضوع الذي يبدأ بـ `cache`، ستلاحظ أن الرابط 'canonical' قد تم تحديثه إلى عنوان URL جديد.
هناك العديد من Global Caches في شبكة WIS2، لذلك ستتلقى رسالة واحدة من كل Global Cache قامت بتنزيل الرسالة.
- يقوم Global Cache فقط بتنزيل وإعادة نشر الرسائل التي تم نشرها على التسلسل الهرمي للمواضيع `../data/core/...`.
+ يقوم Global Cache فقط بتنزيل وإعادة نشر الرسائل التي تم نشرها على التسلسل الهرمي للموضوع `../data/core/...`.
## الخاتمة
diff --git a/documentation/docs/ar/practical-sessions/initializing-wis2box.md b/documentation/docs/ar/practical-sessions/initializing-wis2box.md
index 428f495a9..9b968638c 100644
--- a/documentation/docs/ar/practical-sessions/initializing-wis2box.md
+++ b/documentation/docs/ar/practical-sessions/initializing-wis2box.md
@@ -8,7 +8,7 @@ title: تهيئة wis2box
بنهاية هذه الجلسة العملية، ستكون قادرًا على:
- - تشغيل سكربت `wis2box-create-config.py` لإنشاء التهيئة الأولية
+ - تشغيل سكربت `wis2box-create-config.py` لإنشاء الإعدادات الأولية
- بدء تشغيل wis2box والتحقق من حالة مكوناته
- عرض محتويات **wis2box-api**
- الوصول إلى **wis2box-webapp**
@@ -16,7 +16,7 @@ title: تهيئة wis2box
!!! note
- تعتمد المواد التدريبية الحالية على الإصدار 1.2.0 من wis2box.
+ تعتمد المواد التدريبية الحالية على الإصدار wis2box-release 1.3.0.
راجع [accessing-your-student-vm](./accessing-your-student-vm.md) للحصول على تعليمات حول كيفية تنزيل وتثبيت حزمة برامج wis2box إذا كنت تقوم بإجراء هذا التدريب خارج جلسة تدريب محلية.
@@ -28,18 +28,18 @@ title: تهيئة wis2box
cd ~/wis2box
```
-## إنشاء التهيئة الأولية
+## إنشاء الإعدادات الأولية
-تتطلب التهيئة الأولية لـ wis2box ما يلي:
+تتطلب الإعدادات الأولية لـ wis2box ما يلي:
-- ملف بيئة `wis2box.env` يحتوي على معلمات التهيئة
+- ملف بيئة `wis2box.env` يحتوي على معلمات التكوين
- دليل على الجهاز المضيف لمشاركته بين الجهاز المضيف وحاويات wis2box، يتم تعريفه بواسطة متغير البيئة `WIS2BOX_HOST_DATADIR`
-يمكن استخدام سكربت `wis2box-create-config.py` لإنشاء التهيئة الأولية لـ wis2box.
+يمكن استخدام سكربت `wis2box-create-config.py` لإنشاء الإعدادات الأولية لـ wis2box.
-سيطلب منك مجموعة من الأسئلة للمساعدة في إعداد التهيئة.
+سيطلب منك مجموعة من الأسئلة للمساعدة في إعداد التكوين.
-ستتمكن من مراجعة وتحديث ملفات التهيئة بعد انتهاء السكربت.
+ستتمكن من مراجعة وتحديث ملفات التكوين بعد انتهاء السكربت.
قم بتشغيل السكربت كما يلي:
@@ -51,7 +51,7 @@ python3 wis2box-create-config.py
سيطلب منك السكربت إدخال الدليل الذي سيتم استخدامه لمتغير البيئة `WIS2BOX_HOST_DATADIR`.
-يرجى ملاحظة أنه يجب عليك تحديد المسار الكامل لهذا الدليل.
+لاحظ أنه يجب عليك تحديد المسار الكامل لهذا الدليل.
على سبيل المثال، إذا كان اسم المستخدم الخاص بك هو `username`، فإن المسار الكامل للدليل هو `/home/username/wis2box-data`:
@@ -68,7 +68,7 @@ The directory /home/username/wis2box-data has been created.
### عنوان URL الخاص بـ wis2box
-بعد ذلك، سيُطلب منك إدخال عنوان URL الخاص بـ wis2box. هذا هو العنوان الذي سيتم استخدامه للوصول إلى تطبيق الويب، API، وواجهة المستخدم الخاصة بـ wis2box.
+بعد ذلك، سيُطلب منك إدخال عنوان URL الخاص بـ wis2box. هذا هو عنوان URL الذي سيتم استخدامه للوصول إلى تطبيق الويب، وواجهة API، وواجهة المستخدم الخاصة بـ wis2box.
يرجى استخدام `http://` كعنوان URL.
@@ -86,7 +86,7 @@ Is this correct? (y/n/exit)
يمكنك استخدام خيار إنشاء كلمات مرور عشوائية عند المطالبة بـ `WIS2BOX_WEBAPP_PASSWORD`، `WIS2BOX_STORAGE_PASSWORD`، و `WIS2BOX_BROKER_PASSWORD` أو تحديد كلمات المرور الخاصة بك.
-لا تقلق بشأن تذكر هذه الكلمات، حيث سيتم تخزينها في ملف `wis2box.env` في دليل wis2box الخاص بك.
+لا تقلق بشأن تذكر هذه الكلمات، حيث سيتم تخزينها في ملف `wis2box.env` داخل دليل wis2box الخاص بك.
### مراجعة ملف `wis2box.env`
@@ -106,7 +106,7 @@ cat ~/wis2box/wis2box.env
القيمة الافتراضية لـ WIS2BOX_BASEMAP_URL هي `https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`.
- يشير هذا العنوان إلى خادم OpenStreetMap للبلاط. إذا كنت ترغب في استخدام مزود خرائط مختلف، يمكنك تغيير هذا العنوان للإشارة إلى خادم بلاط مختلف.
+ يشير هذا العنوان إلى خادم OpenStreetMap. إذا كنت ترغب في استخدام مزود خرائط مختلف، يمكنك تغيير هذا العنوان للإشارة إلى خادم خرائط آخر.
!!! question
@@ -124,7 +124,7 @@ cat ~/wis2box/wis2box.env
!!! note
- يحتوي ملف `wis2box.env` على متغيرات البيئة التي تحدد تهيئة wis2box الخاص بك. لمزيد من المعلومات، راجع [wis2box-documentation](https://docs.wis2box.wis.wmo.int/en/latest/reference/configuration.html).
+ يحتوي ملف `wis2box.env` على متغيرات البيئة التي تحدد إعدادات wis2box. لمزيد من المعلومات، راجع [wis2box-documentation](https://docs.wis2box.wis.wmo.int/en/latest/reference/configuration.html).
لا تقم بتحرير ملف `wis2box.env` إلا إذا كنت متأكدًا من التغييرات التي تقوم بها. قد تؤدي التغييرات غير الصحيحة إلى توقف wis2box عن العمل.
@@ -148,13 +148,13 @@ python3 wis2box-ctl.py start
```
No docker-compose.images-*.yml files found, creating one
-Current version=Undefined, latest version=1.2.0
+Current version=Undefined, latest version=1.3.0
Would you like to update ? (y/n/exit)
```
-اختر ``y`` وسيقوم السكربت بإنشاء الملف ``docker-compose.images-1.2.0.yml``، وتنزيل صور Docker المطلوبة وبدء الخدمات.
+اختر ``y`` وسيقوم السكربت بإنشاء الملف ``docker-compose.images-1.3.0.yml``، وتنزيل صور Docker المطلوبة وبدء الخدمات.
-قد يستغرق تنزيل الصور بعض الوقت بناءً على سرعة اتصالك بالإنترنت. هذه الخطوة مطلوبة فقط في المرة الأولى التي تبدأ فيها wis2box.
+قد يستغرق تنزيل الصور بعض الوقت حسب سرعة اتصالك بالإنترنت. هذه الخطوة مطلوبة فقط في المرة الأولى التي تبدأ فيها تشغيل wis2box.
تحقق من الحالة باستخدام الأمر التالي:
@@ -165,13 +165,13 @@ python3 wis2box-ctl.py status
كرر هذا الأمر حتى تكون جميع الخدمات قيد التشغيل.
!!! note "wis2box و Docker"
- يعمل wis2box كمجموعة من حاويات Docker التي يتم إدارتها بواسطة docker-compose.
+ يعمل wis2box كمجموعة من حاويات Docker التي تتم إدارتها بواسطة docker-compose.
- يتم تعريف الخدمات في ملفات `docker-compose*.yml` المختلفة التي يمكن العثور عليها في دليل `~/wis2box/`.
+ يتم تعريف الخدمات في ملفات `docker-compose*.yml` المختلفة الموجودة في دليل `~/wis2box/`.
يتم استخدام سكربت Python `wis2box-ctl.py` لتشغيل أوامر Docker Compose الأساسية التي تتحكم في خدمات wis2box.
- لا تحتاج إلى معرفة تفاصيل حاويات Docker لتشغيل حزمة برامج wis2box، ولكن يمكنك استعراض ملفات `docker-compose*.yml` لمعرفة كيفية تعريف الخدمات. إذا كنت مهتمًا بمعرفة المزيد عن Docker، يمكنك العثور على مزيد من المعلومات في [وثائق Docker](https://docs.docker.com/).
+ لا تحتاج إلى معرفة تفاصيل حاويات Docker لتشغيل حزمة برامج wis2box، ولكن يمكنك فحص ملفات `docker-compose*.yml` لمعرفة كيفية تعريف الخدمات. إذا كنت مهتمًا بمعرفة المزيد عن Docker، يمكنك العثور على مزيد من المعلومات في [وثائق Docker](https://docs.docker.com/).
لتسجيل الدخول إلى حاوية wis2box-management، استخدم الأمر التالي:
@@ -205,28 +205,26 @@ docker ps --format "table {{.Names}} \t{{.Status}} \t{{.Image}}"
يجب أن ترى الحاويات التالية قيد التشغيل:
```{bash}
-NAMES STATUS IMAGE
-elasticsearch docker.elastic.co/elasticsearch/elasticsearch:8.6.2 "/bin/tini -- /usr/l…" elasticsearch منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة (سليم) 9200/tcp, 9300/tcp
-elasticsearch-exporter quay.io/prometheuscommunity/elasticsearch-exporter:latest "/bin/elasticsearch_…" elasticsearch-exporter منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة 7979/tcp
-grafana grafana/grafana-oss:9.0.3 "/run.sh" grafana منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة 0.0.0.0:3000->3000/tcp
-loki grafana/loki:2.4.1 "/usr/bin/loki -conf…" loki منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة 3100/tcp
-mosquitto ghcr.io/world-meteorological-organization/wis2box-broker:1.2.0 "/docker-entrypoint.…" mosquitto منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة 0.0.0.0:1883->1883/tcp, 0.0.0.0:8884->8884/tcp
-mqtt_metrics_collector ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.2.0 "python3 -u mqtt_met…" mqtt_metrics_collector منذ حوالي دقيقة قيد التشغيل منذ 10 ثوانٍ 8000/tcp, 0.0.0.0:8001->8001/tcp
-nginx nginx:alpine "/docker-entrypoint.…" web-proxy منذ حوالي دقيقة قيد التشغيل منذ 9 ثوانٍ 0.0.0.0:80->80/tcp
-prometheus prom/prometheus:v2.37.0 "/bin/prometheus --c…" prometheus منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة 9090/tcp
-wis2box-api ghcr.io/world-meteorological-organization/wis2box-api:1.2.0 "/app/docker/es-entr…" wis2box-api منذ حوالي دقيقة قيد التشغيل منذ 36 ثانية (سليم)
-wis2box-auth ghcr.io/world-meteorological-organization/wis2box-auth:1.2.0 "/entrypoint.sh" wis2box-auth منذ حوالي دقيقة قيد التشغيل منذ 10 ثوانٍ
-wis2box-management ghcr.io/world-meteorological-organization/wis2box-management:1.2.0 "/home/wis2box/entry…" wis2box-management منذ حوالي دقيقة قيد التشغيل منذ 12 ثانية
-wis2box-minio minio/minio:RELEASE.2024-08-03T04-33-23Z-cpuv1 "/usr/bin/docker-ent…" minio منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة (سليم) 0.0.0.0:8022->8022/tcp, 0.0.0.0:9000-9001->9000-9001/tcp
-wis2box-ui ghcr.io/world-meteorological-organization/wis2box-ui:1.2.0 "/docker-entrypoint.…" wis2box-ui منذ حوالي دقيقة قيد التشغيل منذ 35 ثانية 0.0.0.0:9999->80/tcp
-wis2box-webapp ghcr.io/world-meteorological-organization/wis2box-webapp:1.2.0 "sh /wis2box-webapp/…" wis2box-webapp منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة (غير سليم) 4173/tcp
-wis2downloader ghcr.io/wmo-im/wis2downloader:v0.3.2 "/home/wis2downloade…" wis2downloader منذ حوالي دقيقة قيد التشغيل منذ حوالي دقيقة (سليم)
-
+NAMES STATUS IMAGE
+nginx Up 56 seconds nginx:1.30.1-alpine
+mqtt_metrics_collector Up 58 seconds ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.3.0
+wis2box-auth Up 59 seconds ghcr.io/world-meteorological-organization/wis2box-auth:1.3.0
+wis2box-ui Up About a minute ghcr.io/world-meteorological-organization/wis2box-ui:1.3.0
+wis2box-management Up About a minute ghcr.io/world-meteorological-organization/wis2box-management:1.3.0
+wis2box-minio Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-minio:latest
+wis2box-api Up About a minute (healthy) ghcr.io/world-meteorological-organization/wis2box-api:1.3.0
+elasticsearch Up 2 minutes (healthy) docker.elastic.co/elasticsearch/elasticsearch:8.6.2
+grafana Up 2 minutes grafana/grafana-oss:12.4.2
+loki Up 2 minutes grafana/loki:2.4.1
+elasticsearch-exporter Up 2 minutes quay.io/prometheuscommunity/elasticsearch-exporter:latest
+prometheus Up 2 minutes prom/prometheus:v2.37.0
+mosquitto Up 2 minutes ghcr.io/world-meteorological-organization/wis2box-broker:1.3.0
+wis2box-webapp Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-webapp:1.3.0
```
-تُعد هذه الحاويات جزءًا من حزمة برامج `wis2box` وتوفر الخدمات المختلفة المطلوبة لتشغيل `wis2box`.
+تُعد هذه الحاويات جزءًا من مجموعة برامج `wis2box` وتوفر الخدمات المختلفة المطلوبة لتشغيل `wis2box`.
-قم بتشغيل الأمر التالي لرؤية وحدات التخزين (volumes) الخاصة بـ Docker التي تعمل على جهازك المضيف:
+قم بتشغيل الأمر التالي لعرض وحدات التخزين الخاصة بـ Docker التي تعمل على جهازك:
```{.copy}
docker volume ls
@@ -243,9 +241,9 @@ docker volume ls
بالإضافة إلى بعض وحدات التخزين المجهولة التي تُستخدم بواسطة الحاويات المختلفة.
-تُستخدم وحدات التخزين التي تبدأ بـ `wis2box_project_` لتخزين البيانات الدائمة للخدمات المختلفة في حزمة برامج `wis2box`.
+تُستخدم وحدات التخزين التي تبدأ بـ `wis2box_project_` لتخزين البيانات الدائمة للخدمات المختلفة في مجموعة برامج `wis2box`.
-## واجهة برمجة تطبيقات wis2box
+## واجهة برمجة التطبيقات (API) الخاصة بـ wis2box
تحتوي `wis2box` على واجهة برمجة تطبيقات (API) توفر الوصول إلى البيانات والعمليات للتصور التفاعلي وتحويل البيانات والنشر.
@@ -253,7 +251,7 @@ docker volume ls
-هذه هي الصفحة الرئيسية لواجهة برمجة تطبيقات `wis2box` (تعمل عبر الحاوية **wis2box-api**).
+هذه هي الصفحة الرئيسية لواجهة برمجة التطبيقات الخاصة بـ `wis2box` (تعمل عبر الحاوية **wis2box-api**).
!!! question
@@ -269,7 +267,7 @@ docker volume ls
- المحطات
- إشعارات البيانات
- - بيانات وصفية للاكتشاف
+ - بيانات الاكتشاف الوصفية
!!! question
@@ -280,13 +278,13 @@ docker volume ls
اضغط على "إشعارات البيانات"، ثم اضغط على `Browse through the items of "Data Notifications"`.
- ستلاحظ أن الصفحة تقول "No items" حيث لم يتم نشر أي إشعارات بيانات حتى الآن.
+ ستلاحظ أن الصفحة تقول "No items" حيث لم يتم نشر أي إشعارات بيانات بعد.
-## تطبيق wis2box-webapp
+## تطبيق الويب الخاص بـ wis2box
افتح متصفح الويب وانتقل إلى الصفحة `http://YOUR-HOST/wis2box-webapp`.
-ستظهر نافذة منبثقة تطلب اسم المستخدم وكلمة المرور الخاصة بك. استخدم اسم المستخدم الافتراضي `wis2box-user` وكلمة المرور `WIS2BOX_WEBAPP_PASSWORD` المحددة في ملف `wis2box.env` واضغط على "تسجيل الدخول":
+ستظهر نافذة منبثقة تطلب اسم المستخدم وكلمة المرور الخاصة بك. استخدم اسم المستخدم الافتراضي `wis2box-user` وكلمة المرور `WIS2BOX_WEBAPP_PASSWORD` المحددة في ملف `wis2box.env` واضغط على "Sign in":
!!! note
@@ -296,11 +294,11 @@ docker volume ls
cat ~/wis2box/wis2box.env | grep WIS2BOX_WEBAPP_PASSWORD
```
-بمجرد تسجيل الدخول، حرّك مؤشر الفأرة إلى القائمة الموجودة على اليسار لرؤية الخيارات المتاحة في تطبيق `wis2box`:
+بمجرد تسجيل الدخول، حرك مؤشر الماوس إلى القائمة الموجودة على اليسار لرؤية الخيارات المتاحة في تطبيق الويب الخاص بـ `wis2box`:
-هذا هو تطبيق `wis2box` الذي يتيح لك التفاعل مع `wis2box` الخاص بك:
+هذا هو تطبيق الويب الخاص بـ `wis2box` الذي يتيح لك التفاعل مع `wis2box` الخاص بك:
- إنشاء وإدارة مجموعات البيانات
- تحديث/مراجعة بيانات المحطات الوصفية
@@ -309,7 +307,7 @@ docker volume ls
سنستخدم هذا التطبيق في جلسة لاحقة.
-## wis2box-broker
+## الوسيط الخاص بـ wis2box
افتح تطبيق `MQTT Explorer` على جهاز الكمبيوتر الخاص بك وقم بإعداد اتصال جديد للاتصال بالوسيط الخاص بك (يعمل عبر الحاوية **wis2box-broker**).
@@ -326,17 +324,17 @@ docker volume ls
!!! note
- الموضوع `#` هو اشتراك عام يقوم بالاشتراك في جميع المواضيع المنشورة على الوسيط.
+ الموضوع `#` هو اشتراك عام يشترك في جميع المواضيع المنشورة على الوسيط.
الرسائل المنشورة تحت الموضوع `$SYS` هي رسائل نظام يتم نشرها بواسطة خدمة mosquitto نفسها.
-استخدم تفاصيل الاتصال التالية، مع التأكد من استبدال قيمة `` باسم المضيف الخاص بك وقيمة `` بالقيمة الموجودة في ملف `wis2box.env`:
+استخدم تفاصيل الاتصال التالية، مع التأكد من استبدال قيمة `` باسم المضيف الخاص بك وقيمة `` بالقيمة الموجودة في ملف `wis2box.env` الخاص بك:
-- **البروتوكول: mqtt://**
-- **المضيف: ``**
-- **المنفذ: 1883**
-- **اسم المستخدم: wis2box**
-- **كلمة المرور: ``**
+- **Protocol: mqtt://**
+- **Host: ``**
+- **Port: 1883**
+- **Username: wis2box**
+- **Password: ``**
!!! note
@@ -352,20 +350,22 @@ docker volume ls
ثم اضغط على "CONNECT" للاتصال بـ **wis2box-broker**.
-
+
-بمجرد الاتصال، تحقق من أن إحصائيات `mosquitto` الداخلية يتم نشرها بواسطة الوسيط الخاص بك تحت الموضوع `$SYS`:
+بمجرد الاتصال، ستشاهد إحصائيات mosquitto الداخلية التي يتم نشرها بواسطة الوسيط الخاص بك تحت الموضوع `$SYS`:
-احتفظ بـ MQTT Explorer مفتوحًا، حيث سنستخدمه لمراقبة الرسائل المنشورة على الوسيط.
+يمكن تحقيق نفس الاتصال باستخدام MQTT عبر WebSockets على المنفذ 80، باستخدام تفاصيل الاتصال التالية:
+
+
## الخاتمة
!!! success "تهانينا!"
في هذه الجلسة العملية، تعلمت كيفية:
- - تشغيل سكربت `wis2box-create-config.py` لإنشاء التكوين الأولي
- - بدء تشغيل wis2box والتحقق من حالة مكوناته
- - الوصول إلى `wis2box-webapp` و `wis2box-API` في المتصفح
- - الاتصال بوسيط MQTT على جهاز الطالب الافتراضي الخاص بك باستخدام MQTT Explorer
\ No newline at end of file
+ - تشغيل سكربت `wis2box-create-config.py` لإنشاء الإعداد الأولي
+ - تشغيل `wis2box` والتحقق من حالة مكوناته
+ - الوصول إلى `wis2box-webapp` و `wis2box-API` عبر المتصفح
+ - الاتصال بوسيط MQTT على جهاز الطالب الخاص بك باستخدام `MQTT Explorer`
\ No newline at end of file
diff --git a/documentation/docs/assets/img/fm-12-synop-form-gts-headers.png b/documentation/docs/assets/img/fm-12-synop-form-gts-headers.png
new file mode 100644
index 000000000..350d37456
Binary files /dev/null and b/documentation/docs/assets/img/fm-12-synop-form-gts-headers.png differ
diff --git a/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-everyone-everyone.png b/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-everyone-everyone.png
index 874b56726..2dd79ec9a 100644
Binary files a/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-everyone-everyone.png and b/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-everyone-everyone.png differ
diff --git a/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-port1883.png b/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-port1883.png
new file mode 100644
index 000000000..695686772
Binary files /dev/null and b/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-port1883.png differ
diff --git a/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-websockets.png b/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-websockets.png
new file mode 100644
index 000000000..23598401c
Binary files /dev/null and b/documentation/docs/assets/img/mqtt-explorer-wis2box-broker-websockets.png differ
diff --git a/documentation/docs/en/practical-sessions/accessing-your-student-vm.md b/documentation/docs/en/practical-sessions/accessing-your-student-vm.md
index b4d9baf54..47e030f3d 100644
--- a/documentation/docs/en/practical-sessions/accessing-your-student-vm.md
+++ b/documentation/docs/en/practical-sessions/accessing-your-student-vm.md
@@ -39,8 +39,8 @@ Your student VM has the following software pre-installed:
The release archive for wis2box used in this training can be downloaded as follows:
```bash
- wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.2.0/wis2box-setup-1.2.0.zip
- unzip wis2box-setup-1.2.0.zip
+ wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.3.0/wis2box-setup-1.3.0.zip
+ unzip wis2box-setup-1.3.0.zip
```
You can always find the latest 'wis2box-setup' archive at [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases).
@@ -56,7 +56,7 @@ Your student VM has the following software pre-installed:
```bash
pip3 install minio
- pip3 install pywiscat==0.4.0
+ pip3 install pywiscat
```
If you are using the student VM provided during local WIS2 training sessions, the required software will already be installed.
diff --git a/documentation/docs/en/practical-sessions/adding-gts-headers-to-wis2-notifications.md b/documentation/docs/en/practical-sessions/adding-gts-headers-to-wis2-notifications.md
index cf07eca7e..9406ad861 100644
--- a/documentation/docs/en/practical-sessions/adding-gts-headers-to-wis2-notifications.md
+++ b/documentation/docs/en/practical-sessions/adding-gts-headers-to-wis2-notifications.md
@@ -11,6 +11,7 @@ title: Adding GTS headers to WIS2 notifications
- configure a mapping between filename and GTS headers
- ingest data with a filename that matches the GTS headers
- view the GTS headers in the WIS2 notifications
+ - used the FM-12 SYNOP form to manually add GTS headers to a WIS2 notification
## Introduction
@@ -37,6 +38,12 @@ This file should be placed in the directory defined by `WIS2BOX_HOST_DATADIR` in
- `TTAAii`: the TTAAii header to be added to the WIS2 notification
- `CCCC`: the CCCC header to be added to the WIS2 notification
+ As of wis2box-1.3.0, data publishers have two options to (optionally) add GTS properties to their notifications:
+
+1. For files uploaded into MinIO, prepare mapping-file `gts_headers_mappings.csv` with required properties.
+
+2. For data input using FM-12 SYNOP form in wis2box-webapp, select `Add GTS headers` and provide manually input
+
## Preparation
Ensure you have SSH access to your student VM and that your wis2box instance is up and running.
@@ -45,28 +52,31 @@ Make sure that you are connected to the MQTT broker of your wis2box instance usi
Make sure you have a web browser open with the Grafana dashboard for your instance by going to `http://YOUR-HOST:3000`
-## creating `gts_headers_mapping.csv`
+## Exercise 1: Using a mapping file for data uploaded into MinIO
+
+The first exercise will demonstrate how to add GTS headers for data that is uploaded into MinIO, using a mapping file named `gts_headers_mapping.csv`.
+
+### creating `gts_headers_mapping.csv`
To add GTS headers to your WIS2 notifications, a CSV file is required that maps GTS headers to incoming filenames.
The CSV file should be named (exactly) `gts_headers_mapping.csv` and should be placed in the directory defined by `WIS2BOX_HOST_DATADIR` in your `wis2box.env`.
-## Providing a `gts_headers_mapping.csv` file
-
Copy the file `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` to your wis2box instance and place it in the directory defined by `WIS2BOX_HOST_DATADIR` in your `wis2box.env`.
-
```bash
cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data
```
-Then restart the wis2box-management container to apply the changes:
+### Applying the mappings
+
+After creating the `gts_headers_mapping.csv` file, you need to restart the wis2box-management container to apply the changes. You can do this by running the following command in your student VM:
```bash
docker restart wis2box-management
```
-## Ingesting data with GTS headers
+### Ingesting data with GTS headers
Copy the file `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` to the directory defined by `WIS2BOX_HOST_DATADIR` in your `wis2box.env`:
@@ -91,12 +101,50 @@ Make sure to replace the `metadata-id` option with the correct identifier for yo
Check the Grafana dashboard to see if the data was ingested correctly. If you see any WARNINGS or ERRORS, try to fix them and repeat the exercise the `wis2box data ingest` command.
-## Viewing the GTS headers in the WIS2 Notification
+### Viewing the GTS headers in the WIS2 Notification
Go to the MQTT Explorer and check for the WIS2 Notification Message for the data you just ingested.
The WIS2 Notification Message should contain the GTS headers you provided in the `gts_headers_mapping.csv` file.
+## Exercise 2: Using the FM-12 SYNOP form
+
+When using the FM-12 SYNOP form in the wis2box-webapp, you can manually add GTS headers to your WIS2 notifications by selecting the "Add GTS headers" option and providing the required information.
+
+For this exercise, you can use the example data below or provide your own:
+
+FM-12 SYNOP message:
+
+```{copy}
+AAXX 03094
+64400 42460 71004 10285 20245 30113 40133 8493/
+ 333 59005 83813 81930 87363 94966 95836=
+```
+
+GTS headers: TTAAii=`ISIH01` and CCCC=`FCBB`
+
+!!! note
+ The synop2bufr-plugin in wis2box converts FM-12 SYNOP messages into BUFR, so the TTAAii should start with `IS`:
+
+ - I = Observational data (Binary coded) – BUFR
+ - S = Surface/sea level
+
+### Manually submit the FM-12 SYNOP form with GTS headers
+
+Go to the FM-12 SYNOP form in the wis2box-webapp and fill in the form with the example data above or user your own.
+
+Make sure to select the "Add GTS headers" option and provide the required GTS header information:
+
+
+
+Provide the required authentication token and submit the form.
+
+You will likely see an error message because this station is not in your station-list. You will need to add the station "0-20000-0-64400" to your station list in order for the data to be converted and published successfully.
+
+### Viewing the GTS headers in the WIS2 Notification
+
+Go to the MQTT Explorer and check the WIS2 Notification Message for the data you just ingested to see if the GTS headers are included in the notification.
+
## Conclusion
!!! success "Congratulations!"
diff --git a/documentation/docs/en/practical-sessions/connecting-to-wis2-over-mqtt.md b/documentation/docs/en/practical-sessions/connecting-to-wis2-over-mqtt.md
index 2fe99b835..c12c2d2d0 100644
--- a/documentation/docs/en/practical-sessions/connecting-to-wis2-over-mqtt.md
+++ b/documentation/docs/en/practical-sessions/connecting-to-wis2-over-mqtt.md
@@ -57,7 +57,7 @@ This is an example of the WIS2 notification message structure for a message rece
"href":"https://oscar.wmo.int/surface/#/search/station/stationReportDetails/0-20000-0-76679"
}
],
- "generated_by":"wis2box 1.2.0"
+ "generated_by":"wis2box 1.3.0"
}
```
diff --git a/documentation/docs/en/practical-sessions/initializing-wis2box.md b/documentation/docs/en/practical-sessions/initializing-wis2box.md
index 267324ecf..313c80e03 100644
--- a/documentation/docs/en/practical-sessions/initializing-wis2box.md
+++ b/documentation/docs/en/practical-sessions/initializing-wis2box.md
@@ -16,7 +16,7 @@ title: Initializing wis2box
!!! note
- The current training materials are based on wis2box-release 1.2.0.
+ The current training materials are based on wis2box-release 1.3.0.
See [accessing-your-student-vm](./accessing-your-student-vm.md) for instructions on how to download and install the wis2box software stack if you are running this training outside of a local training session.
@@ -148,11 +148,11 @@ When running this command for the first time, you will see the following output:
```
No docker-compose.images-*.yml files found, creating one
-Current version=Undefined, latest version=1.2.0
+Current version=Undefined, latest version=1.3.0
Would you like to update ? (y/n/exit)
```
-Select ``y`` and the the script will create the file ``docker-compose.images-1.2.0.yml``, download the required Docker images and start the services.
+Select ``y`` and the the script will create the file ``docker-compose.images-1.3.0.yml``, download the required Docker images and start the services.
Downloading the images may take some time depending on your internet connection speed. This step is only required the first time you start wis2box.
@@ -205,23 +205,21 @@ docker ps --format "table {{.Names}} \t{{.Status}} \t{{.Image}}"
You should see the following containers running:
```{bash}
-NAMES STATUS IMAGE
-elasticsearch docker.elastic.co/elasticsearch/elasticsearch:8.6.2 "/bin/tini -- /usr/l…" elasticsearch About a minute ago Up About a minute (healthy) 9200/tcp, 9300/tcp
-elasticsearch-exporter quay.io/prometheuscommunity/elasticsearch-exporter:latest "/bin/elasticsearch_…" elasticsearch-exporter About a minute ago Up About a minute 7979/tcp
-grafana grafana/grafana-oss:9.0.3 "/run.sh" grafana About a minute ago Up About a minute 0.0.0.0:3000->3000/tcp
-loki grafana/loki:2.4.1 "/usr/bin/loki -conf…" loki About a minute ago Up About a minute 3100/tcp
-mosquitto ghcr.io/world-meteorological-organization/wis2box-broker:1.2.0 "/docker-entrypoint.…" mosquitto About a minute ago Up About a minute 0.0.0.0:1883->1883/tcp, 0.0.0.0:8884->8884/tcp
-mqtt_metrics_collector ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.2.0 "python3 -u mqtt_met…" mqtt_metrics_collector About a minute ago Up 10 seconds 8000/tcp, 0.0.0.0:8001->8001/tcp
-nginx nginx:alpine "/docker-entrypoint.…" web-proxy About a minute ago Up 9 seconds 0.0.0.0:80->80/tcp
-prometheus prom/prometheus:v2.37.0 "/bin/prometheus --c…" prometheus About a minute ago Up About a minute 9090/tcp
-wis2box-api ghcr.io/world-meteorological-organization/wis2box-api:1.2.0 "/app/docker/es-entr…" wis2box-api About a minute ago Up 36 seconds (healthy)
-wis2box-auth ghcr.io/world-meteorological-organization/wis2box-auth:1.2.0 "/entrypoint.sh" wis2box-auth About a minute ago Up 10 seconds
-wis2box-management ghcr.io/world-meteorological-organization/wis2box-management:1.2.0 "/home/wis2box/entry…" wis2box-management About a minute ago Up 12 seconds
-wis2box-minio minio/minio:RELEASE.2024-08-03T04-33-23Z-cpuv1 "/usr/bin/docker-ent…" minio About a minute ago Up About a minute (healthy) 0.0.0.0:8022->8022/tcp, 0.0.0.0:9000-9001->9000-9001/tcp
-wis2box-ui ghcr.io/world-meteorological-organization/wis2box-ui:1.2.0 "/docker-entrypoint.…" wis2box-ui About a minute ago Up 35 seconds 0.0.0.0:9999->80/tcp
-wis2box-webapp ghcr.io/world-meteorological-organization/wis2box-webapp:1.2.0 "sh /wis2box-webapp/…" wis2box-webapp About a minute ago Up About a minute (unhealthy) 4173/tcp
-wis2downloader ghcr.io/wmo-im/wis2downloader:v0.3.2 "/home/wis2downloade…" wis2downloader About a minute ago Up About a minute (healthy)
-
+NAMES STATUS IMAGE
+nginx Up 56 seconds nginx:1.30.1-alpine
+mqtt_metrics_collector Up 58 seconds ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.3.0
+wis2box-auth Up 59 seconds ghcr.io/world-meteorological-organization/wis2box-auth:1.3.0
+wis2box-ui Up About a minute ghcr.io/world-meteorological-organization/wis2box-ui:1.3.0
+wis2box-management Up About a minute ghcr.io/world-meteorological-organization/wis2box-management:1.3.0
+wis2box-minio Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-minio:latest
+wis2box-api Up About a minute (healthy) ghcr.io/world-meteorological-organization/wis2box-api:1.3.0
+elasticsearch Up 2 minutes (healthy) docker.elastic.co/elasticsearch/elasticsearch:8.6.2
+grafana Up 2 minutes grafana/grafana-oss:12.4.2
+loki Up 2 minutes grafana/loki:2.4.1
+elasticsearch-exporter Up 2 minutes quay.io/prometheuscommunity/elasticsearch-exporter:latest
+prometheus Up 2 minutes prom/prometheus:v2.37.0
+mosquitto Up 2 minutes ghcr.io/world-meteorological-organization/wis2box-broker:1.3.0
+wis2box-webapp Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-webapp:1.3.0
```
These containers are part of the wis2box software stack and provide the various services required to run the wis2box.
@@ -352,13 +350,15 @@ Make sure to click "SAVE" to store your connection details.
Then click "CONNECT" to connect to your **wis2box-broker**.
-
+
-Once you are connected, verify that your the internal mosquitto statistics being published by your broker under the `$SYS` topic:
+Once you are connected, you will see the internal mosquitto statistics being published by your broker under the `$SYS` topic:
-Keep the MQTT Explorer open, as we will use it to monitor the messages published on the broker.
+The same connection can also be achieved using MQTT over WebSockets on port 80, using the following connection details:
+
+
## Conclusion
diff --git a/documentation/docs/es/practical-sessions/accessing-your-student-vm.md b/documentation/docs/es/practical-sessions/accessing-your-student-vm.md
index b8803a61d..dc5469e07 100644
--- a/documentation/docs/es/practical-sessions/accessing-your-student-vm.md
+++ b/documentation/docs/es/practical-sessions/accessing-your-student-vm.md
@@ -39,13 +39,13 @@ Tu VM de estudiante tiene el siguiente software preinstalado:
El archivo de lanzamiento de wis2box utilizado en este entrenamiento puede descargarse de la siguiente manera:
```bash
- wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.2.0/wis2box-setup-1.2.0.zip
- unzip wis2box-setup-1.2.0.zip
+ wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.3.0/wis2box-setup-1.3.0.zip
+ unzip wis2box-setup-1.3.0.zip
```
Siempre puedes encontrar el archivo más reciente de 'wis2box-setup' en [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases).
- El material de ejercicios utilizado en este entrenamiento puede descargarse de la siguiente manera:
+ Los materiales de los ejercicios utilizados en este entrenamiento pueden descargarse de la siguiente manera:
```bash
wget https://training.wis2box.wis.wmo.int/exercise-materials.zip
@@ -56,14 +56,14 @@ Tu VM de estudiante tiene el siguiente software preinstalado:
```bash
pip3 install minio
- pip3 install pywiscat==0.4.0
+ pip3 install pywiscat
```
Si estás utilizando la VM de estudiante proporcionada durante las sesiones locales de entrenamiento de WIS2, el software requerido ya estará instalado.
## Conéctate a tu VM de estudiante en la red de entrenamiento local
-Conecta tu PC a la red Wi-Fi local transmitida en la sala durante el entrenamiento de WIS2, según las instrucciones proporcionadas por el instructor.
+Conecta tu PC a la red Wi-Fi local transmitida en la sala durante el entrenamiento de WIS2 según las instrucciones proporcionadas por el instructor.
Utiliza un cliente SSH para conectarte a tu VM de estudiante utilizando lo siguiente:
@@ -73,7 +73,7 @@ Utiliza un cliente SSH para conectarte a tu VM de estudiante utilizando lo sigui
- **Password: (proporcionado durante el entrenamiento presencial)**
!!! tip
- Contacta a un instructor si no estás seguro del nombre del host/usuario o si tienes problemas para conectarte.
+ Contacta a un instructor si no estás seguro del nombre del host/usuario o tienes problemas para conectarte.
Una vez conectado, por favor cambia tu contraseña para asegurarte de que otros no puedan acceder a tu VM:
@@ -119,7 +119,7 @@ Docker Compose version v2.21.0
Para asegurarte de que tu usuario puede ejecutar comandos de Docker, tu usuario ha sido añadido al grupo `docker`.
-Para probar que tu usuario puede ejecutar el comando hello-world de Docker, ejecuta el siguiente comando:
+Para probar que tu usuario puede ejecutar docker hello-world, ejecuta el siguiente comando:
```bash
docker run hello-world
```
@@ -147,11 +147,11 @@ devuelve:
exercise-materials wis2box
```
-Si tienes WinSCP instalado en tu PC local, puedes usarlo para conectarte a tu VM de estudiante e inspeccionar el contenido de tu directorio home, así como descargar o subir archivos entre tu VM y tu PC local.
+Si tienes WinSCP instalado en tu PC local, puedes usarlo para conectarte a tu VM de estudiante e inspeccionar el contenido de tu directorio home y descargar o subir archivos entre tu VM y tu PC local.
WinSCP no es necesario para el entrenamiento, pero puede ser útil si deseas editar archivos en tu VM utilizando un editor de texto en tu PC local.
-Aquí te mostramos cómo puedes conectarte a tu VM de estudiante utilizando WinSCP:
+Aquí está cómo puedes conectarte a tu VM de estudiante utilizando WinSCP:
Abre WinSCP y haz clic en "New Site". Puedes crear una nueva conexión SCP a tu VM de la siguiente manera:
diff --git a/documentation/docs/es/practical-sessions/adding-gts-headers-to-wis2-notifications.md b/documentation/docs/es/practical-sessions/adding-gts-headers-to-wis2-notifications.md
index 3843cf1c6..139297cd6 100644
--- a/documentation/docs/es/practical-sessions/adding-gts-headers-to-wis2-notifications.md
+++ b/documentation/docs/es/practical-sessions/adding-gts-headers-to-wis2-notifications.md
@@ -6,19 +6,20 @@ title: Añadiendo encabezados GTS a las notificaciones WIS2
!!! abstract "Resultados de aprendizaje"
- Al final de esta sesión práctica, podrás:
+ Al final de esta sesión práctica, serás capaz de:
- - configurar un mapeo entre el nombre del archivo y los encabezados GTS
+ - configurar un mapeo entre nombres de archivo y encabezados GTS
- ingerir datos con un nombre de archivo que coincida con los encabezados GTS
- - ver los encabezados GTS en las notificaciones WIS2
+ - visualizar los encabezados GTS en las notificaciones WIS2
+ - usar el formulario FM-12 SYNOP para añadir manualmente encabezados GTS a una notificación WIS2
## Introducción
-Los miembros de la OMM que deseen detener su transmisión de datos en GTS durante la fase de transición a WIS2 necesitarán añadir encabezados GTS a sus notificaciones WIS2. Estos encabezados permiten que la puerta de enlace de WIS2 a GTS reenvíe los datos a la red GTS.
+Los Miembros de la OMM que deseen detener la transmisión de sus datos en GTS durante la fase de transición a WIS2 necesitarán añadir encabezados GTS a sus notificaciones WIS2. Estos encabezados permiten que el gateway de WIS2 a GTS reenvíe los datos a la red GTS.
-Esto permite a los miembros que han migrado a usar un nodo WIS2 para la publicación de datos desactivar su sistema MSS y asegurar que sus datos sigan estando disponibles para los miembros que aún no han migrado a WIS2.
+Esto permite a los Miembros que han migrado a usar un nodo WIS2 para la publicación de datos deshabilitar su sistema MSS y garantizar que sus datos sigan estando disponibles para los Miembros que aún no han migrado a WIS2.
-La propiedad GTS en el Mensaje de Notificación WIS2 necesita ser añadida como una propiedad adicional al Mensaje de Notificación WIS2. La propiedad GTS es un objeto JSON que contiene los encabezados GTS que son necesarios para que los datos sean reenviados a la red GTS.
+La propiedad GTS en el Mensaje de Notificación WIS2 debe añadirse como una propiedad adicional al Mensaje de Notificación WIS2. La propiedad GTS es un objeto JSON que contiene los encabezados GTS necesarios para que los datos sean reenviados a la red GTS.
```json
{
@@ -29,45 +30,55 @@ La propiedad GTS en el Mensaje de Notificación WIS2 necesita ser añadida como
}
```
-Dentro de wis2box puedes añadir esto a las Notificaciones WIS2 automáticamente proporcionando un archivo adicional llamado `gts_headers_mapping.csv` que contiene la información requerida para mapear los encabezados GTS a los nombres de archivos entrantes.
+Dentro de wis2box, puedes añadir esto a las Notificaciones WIS2 automáticamente proporcionando un archivo adicional llamado `gts_headers_mapping.csv` que contiene la información requerida para mapear los encabezados GTS a los nombres de archivo entrantes.
-Este archivo debe ser colocado en el directorio definido por `WIS2BOX_HOST_DATADIR` en tu `wis2box.env` y debe tener las siguientes columnas:
+Este archivo debe colocarse en el directorio definido por `WIS2BOX_HOST_DATADIR` en tu archivo `wis2box.env` y debe tener las siguientes columnas:
-- `string_in_filepath`: una cadena que es parte del nombre del archivo que se utilizará para coincidir con los encabezados GTS
+- `string_in_filepath`: una cadena que forma parte del nombre del archivo que se utilizará para coincidir con los encabezados GTS
- `TTAAii`: el encabezado TTAAii que se añadirá a la notificación WIS2
- `CCCC`: el encabezado CCCC que se añadirá a la notificación WIS2
+A partir de wis2box-1.3.0, los publicadores de datos tienen dos opciones para (opcionalmente) añadir propiedades GTS a sus notificaciones:
+
+1. Para archivos subidos a MinIO, preparar el archivo de mapeo `gts_headers_mappings.csv` con las propiedades requeridas.
+
+2. Para entrada de datos usando el formulario FM-12 SYNOP en wis2box-webapp, seleccionar `Add GTS headers` y proporcionar la información manualmente.
+
## Preparación
Asegúrate de tener acceso SSH a tu VM de estudiante y que tu instancia de wis2box esté funcionando.
Asegúrate de estar conectado al broker MQTT de tu instancia de wis2box usando MQTT Explorer. Puedes usar las credenciales públicas `everyone/everyone` para conectarte al broker.
-Asegúrate de tener un navegador web abierto con el tablero de Grafana para tu instancia yendo a `http://YOUR-HOST:3000`
+Asegúrate de tener un navegador web abierto con el tablero de Grafana para tu instancia accediendo a `http://YOUR-HOST:3000`.
-## creando `gts_headers_mapping.csv`
+## Ejercicio 1: Usar un archivo de mapeo para datos subidos a MinIO
-Para añadir encabezados GTS a tus notificaciones WIS2, se requiere un archivo CSV que mapee los encabezados GTS a los nombres de archivos entrantes.
+El primer ejercicio demostrará cómo añadir encabezados GTS para datos que se suben a MinIO, usando un archivo de mapeo llamado `gts_headers_mapping.csv`.
-El archivo CSV debe ser nombrado (exactamente) `gts_headers_mapping.csv` y debe ser colocado en el directorio definido por `WIS2BOX_HOST_DATADIR` en tu `wis2box.env`.
+### Crear `gts_headers_mapping.csv`
-## Proporcionando un archivo `gts_headers_mapping.csv`
-
-Copia el archivo `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` a tu instancia de wis2box y colócalo en el directorio definido por `WIS2BOX_HOST_DATADIR` en tu `wis2box.env`.
+Para añadir encabezados GTS a tus notificaciones WIS2, se requiere un archivo CSV que mapee los encabezados GTS a los nombres de archivo entrantes.
+
+El archivo CSV debe llamarse (exactamente) `gts_headers_mapping.csv` y debe colocarse en el directorio definido por `WIS2BOX_HOST_DATADIR` en tu archivo `wis2box.env`.
+
+Copia el archivo `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` a tu instancia de wis2box y colócalo en el directorio definido por `WIS2BOX_HOST_DATADIR` en tu archivo `wis2box.env`.
```bash
cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data
```
-Luego reinicia el contenedor de wis2box-management para aplicar los cambios:
+### Aplicar los mapeos
+
+Después de crear el archivo `gts_headers_mapping.csv`, necesitas reiniciar el contenedor wis2box-management para aplicar los cambios. Puedes hacerlo ejecutando el siguiente comando en tu VM de estudiante:
```bash
docker restart wis2box-management
```
-## Ingeriendo datos con encabezados GTS
+### Ingerir datos con encabezados GTS
-Copia el archivo `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` al directorio definido por `WIS2BOX_HOST_DATADIR` en tu `wis2box.env`:
+Copia el archivo `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` al directorio definido por `WIS2BOX_HOST_DATADIR` en tu archivo `wis2box.env`:
```bash
cp ~/exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt ~/wis2box-data
@@ -80,7 +91,7 @@ cd ~/wis2box
python3 wis2box-ctl.py login
```
-Desde la línea de comandos de wis2box podemos ingerir el archivo de datos de muestra `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` en un conjunto de datos específico de la siguiente manera:
+Desde la línea de comandos de wis2box, podemos ingerir el archivo de datos de ejemplo `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` en un conjunto de datos específico de la siguiente manera:
```bash
wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt --metadata-id urn:wmo:md:not-my-centre:core.surface-based-observations.synop
@@ -88,17 +99,55 @@ wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.tx
Asegúrate de reemplazar la opción `metadata-id` con el identificador correcto para tu conjunto de datos.
-Revisa el tablero de Grafana para ver si los datos fueron ingeridos correctamente. Si ves alguna ADVERTENCIA o ERROR, intenta solucionarlo y repite el comando `wis2box data ingest`.
+Revisa el tablero de Grafana para verificar si los datos fueron ingeridos correctamente. Si ves algún WARNING o ERROR, intenta solucionarlos y repite el ejercicio con el comando `wis2box data ingest`.
-## Viendo los encabezados GTS en la Notificación WIS2
+### Visualizar los encabezados GTS en la Notificación WIS2
-Ve al MQTT Explorer y verifica el Mensaje de Notificación WIS2 para los datos que acabas de ingerir.
+Ve a MQTT Explorer y verifica el Mensaje de Notificación WIS2 para los datos que acabas de ingerir.
El Mensaje de Notificación WIS2 debería contener los encabezados GTS que proporcionaste en el archivo `gts_headers_mapping.csv`.
+## Ejercicio 2: Usar el formulario FM-12 SYNOP
+
+Cuando uses el formulario FM-12 SYNOP en wis2box-webapp, puedes añadir manualmente encabezados GTS a tus notificaciones WIS2 seleccionando la opción "Add GTS headers" y proporcionando la información requerida.
+
+Para este ejercicio, puedes usar los datos de ejemplo a continuación o proporcionar los tuyos propios:
+
+Mensaje FM-12 SYNOP:
+
+```{copy}
+AAXX 03094
+64400 42460 71004 10285 20245 30113 40133 8493/
+ 333 59005 83813 81930 87363 94966 95836=
+```
+
+Encabezados GTS: TTAAii=`ISIH01` y CCCC=`FCBB`
+
+!!! note
+ El plugin synop2bufr en wis2box convierte mensajes FM-12 SYNOP en BUFR, por lo que el TTAAii debería comenzar con `IS`:
+
+ - I = Datos observacionales (codificados en binario) – BUFR
+ - S = Superficie/nivel del mar
+
+### Enviar manualmente el formulario FM-12 SYNOP con encabezados GTS
+
+Ve al formulario FM-12 SYNOP en wis2box-webapp y completa el formulario con los datos de ejemplo anteriores o usa los tuyos propios.
+
+Asegúrate de seleccionar la opción "Add GTS headers" y proporcionar la información requerida de los encabezados GTS:
+
+
+
+Proporciona el token de autenticación requerido y envía el formulario.
+
+Es probable que veas un mensaje de error porque esta estación no está en tu lista de estaciones. Necesitarás añadir la estación "0-20000-0-64400" a tu lista de estaciones para que los datos se conviertan y publiquen correctamente.
+
+### Visualizar los encabezados GTS en la Notificación WIS2
+
+Ve a MQTT Explorer y verifica el Mensaje de Notificación WIS2 para los datos que acabas de ingerir para ver si los encabezados GTS están incluidos en la notificación.
+
## Conclusión
!!! success "¡Felicidades!"
En esta sesión práctica, aprendiste cómo:
- añadir encabezados GTS a tus notificaciones WIS2
- - verificar que los encabezados GTS estén disponibles a través de tu instalación de wis2box
\ No newline at end of file
+ - verificar que los encabezados GTS están disponibles a través de tu instalación de wis2box
\ No newline at end of file
diff --git a/documentation/docs/es/practical-sessions/connecting-to-wis2-over-mqtt.md b/documentation/docs/es/practical-sessions/connecting-to-wis2-over-mqtt.md
index 67f588833..a724bb484 100644
--- a/documentation/docs/es/practical-sessions/connecting-to-wis2-over-mqtt.md
+++ b/documentation/docs/es/practical-sessions/connecting-to-wis2-over-mqtt.md
@@ -57,20 +57,20 @@ Este es un ejemplo de la estructura de un mensaje de notificación de WIS2 para
"href":"https://oscar.wmo.int/surface/#/search/station/stationReportDetails/0-20000-0-76679"
}
],
- "generated_by":"wis2box 1.2.0"
+ "generated_by":"wis2box 1.3.0"
}
```
-En esta sesión práctica, aprenderás cómo usar la herramienta MQTT Explorer para configurar una conexión de cliente MQTT a un WIS2 Global Broker y poder visualizar mensajes de notificación de WIS2.
+En esta sesión práctica aprenderás a usar la herramienta MQTT Explorer para configurar una conexión de cliente MQTT a un WIS2 Global Broker y ser capaz de mostrar mensajes de notificación de WIS2.
-MQTT Explorer es una herramienta útil para explorar y revisar la estructura de los temas de un broker MQTT y revisar los datos que se están publicando.
+MQTT Explorer es una herramienta útil para explorar y revisar la estructura de temas de un broker MQTT y analizar los datos publicados.
!!! note "Sobre MQTT"
MQTT Explorer proporciona una interfaz fácil de usar para conectarse a un broker MQTT y explorar los temas y la estructura de mensajes utilizados por WIS2.
- En la práctica, MQTT está diseñado para la comunicación máquina a máquina, donde una aplicación o servicio se suscribe a temas y procesa mensajes programáticamente en tiempo real.
+ En la práctica, MQTT está diseñado para ser utilizado en comunicación máquina a máquina, donde una aplicación o servicio se suscribe a temas y procesa mensajes de manera programática en tiempo real.
- Para trabajar con MQTT programáticamente (por ejemplo, en Python), puedes usar bibliotecas de cliente MQTT como [paho-mqtt](https://pypi.org/project/paho-mqtt) para conectarte a un broker MQTT y procesar mensajes entrantes. Existen numerosos software de cliente y servidor MQTT, dependiendo de tus requisitos y entorno técnico.
+ Para trabajar con MQTT de manera programática (por ejemplo, en Python), puedes usar bibliotecas de cliente MQTT como [paho-mqtt](https://pypi.org/project/paho-mqtt) para conectarte a un broker MQTT y procesar mensajes entrantes. Existen numerosos software de cliente y servidor MQTT, dependiendo de tus requisitos y entorno técnico.
## Usar MQTT Explorer para conectarse al Global Broker
@@ -92,7 +92,7 @@ Haz clic en el botón 'ADVANCED', elimina los temas preconfigurados y agrega los
!!! note
- Al configurar suscripciones MQTT, puedes usar los siguientes comodines:
+ Al configurar suscripciones MQTT puedes usar los siguientes comodines:
- **Nivel único (+)**: un comodín de nivel único reemplaza un nivel de tema
- **Nivel múltiple (#)**: un comodín de nivel múltiple reemplaza múltiples niveles de tema
@@ -107,7 +107,7 @@ Los mensajes deberían comenzar a aparecer en tu sesión de MQTT Explorer como s
Ahora estás listo para comenzar a explorar los temas y la estructura de mensajes de WIS2.
-## Ejercicio 1: Revisar la estructura de los temas de WIS2
+## Ejercicio 1: Revisar la estructura de temas de WIS2
Usa MQTT para explorar la estructura de temas bajo los temas `origin`.
@@ -123,11 +123,11 @@ Usa MQTT para explorar la estructura de temas bajo los temas `origin`.
`origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`
- nos indica que los datos fueron publicados por un centro WIS con el centre-id `br-inmet`, que es el centre-id del Instituto Nacional de Meteorologia - INMET, Brasil.
+ nos indica que los datos fueron publicados por un centro WIS con el centre-id `br-inmet`, que es el centre-id para el Instituto Nacional de Meteorologia - INMET, Brasil.
!!! question
- ¿Cómo podemos distinguir entre mensajes publicados por centros WIS que alojan un gateway GTS-to-WIS2 y mensajes publicados por centros WIS que alojan un nodo WIS2?
+ ¿Cómo podemos distinguir entre los mensajes publicados por centros WIS que alojan un gateway GTS-to-WIS2 y los mensajes publicados por centros WIS que alojan un nodo WIS2?
??? success "Haz clic para revelar la respuesta"
@@ -135,11 +135,11 @@ Usa MQTT para explorar la estructura de temas bajo los temas `origin`.
`origin/a/wis2/de-dwd-gts-to-wis2/data/core/I/S/A/I/01/sbbr`
- nos indica que los datos fueron publicados por el gateway GTS-to-WIS2 alojado por Deutscher Wetterdienst (DWD), Alemania. El gateway GTS-to-WIS2 es un tipo especial de publicador de datos que publica datos del Global Telecommunication System (GTS) a WIS2. La estructura de temas está compuesta por los encabezados TTAAii CCCC de los mensajes GTS.
+ nos indica que los datos fueron publicados por el gateway GTS-to-WIS2 alojado por Deutscher Wetterdienst (DWD), Alemania. El gateway GTS-to-WIS2 es un tipo especial de publicador de datos que publica datos del Global Telecommunication System (GTS) a WIS2. La estructura de temas está compuesta por los encabezados TTAAii CCCC para los mensajes GTS.
-## Ejercicio 2: Revisar la estructura de los mensajes de WIS2
+## Ejercicio 2: Revisar la estructura de mensajes de WIS2
-Desconéctate de MQTT Explorer y actualiza la sección 'Advanced' para cambiar la suscripción a lo siguiente:
+Desconéctate de MQTT Explorer y actualiza las secciones 'Advanced' para cambiar la suscripción a lo siguiente:
* `origin/a/wis2/+/data/core/weather/surface-based-observations/synop`
* `cache/a/wis2/+/data/core/weather/surface-based-observations/synop`
@@ -149,9 +149,9 @@ Desconéctate de MQTT Explorer y actualiza la sección 'Advanced' para cambiar l
!!! note
El comodín `+` se utiliza para suscribirse a todos los centros WIS.
-Reconéctate al Global Broker y espera a que aparezcan los mensajes.
+Reconéctate al Global Broker y espera a que aparezcan mensajes.
-Puedes visualizar el contenido del mensaje de WIS2 en la sección "Value" en el lado derecho. Intenta expandir la estructura de temas para ver los diferentes niveles del mensaje hasta llegar al último nivel y revisar el contenido de uno de los mensajes.
+Puedes ver el contenido del mensaje de WIS2 en la sección "Value" en el lado derecho. Intenta expandir la estructura de temas para ver los diferentes niveles del mensaje hasta llegar al último nivel y revisar el contenido de uno de los mensajes.
!!! question
@@ -179,7 +179,7 @@ Puedes visualizar el contenido del mensaje de WIS2 en la sección "Value" en el
Asegúrate de que sigues conectado al Global Broker utilizando las suscripciones de temas `origin/a/wis2/+/data/core/weather/surface-based-observations/synop` y `cache/a/wis2/+/data/core/weather/surface-based-observations/synop` como se describe en el Ejercicio 2.
-Intenta identificar un mensaje para el mismo centre-id publicado tanto en los temas `origin` como en los temas `cache`.
+Intenta identificar un mensaje para el mismo centre-id publicado en ambos temas `origin` y `cache`.
!!! question
@@ -189,11 +189,11 @@ Intenta identificar un mensaje para el mismo centre-id publicado tanto en los te
Los mensajes publicados en los temas `origin` son los mensajes originales que el Global Broker republica desde los WIS2 Nodes en la red.
- Los mensajes publicados en los temas `cache` son los mensajes para los cuales los datos han sido descargados por el Global Cache. Si revisas el contenido del mensaje del tema que comienza con `cache`, verás que el enlace 'canonical' ha sido actualizado a una nueva URL.
+ Los mensajes publicados en los temas `cache` son los mensajes cuyos datos han sido descargados por el Global Cache. Si revisas el contenido del mensaje del tema que comienza con `cache`, verás que el enlace 'canonical' ha sido actualizado a una nueva URL.
Existen múltiples Global Caches en la red WIS2, por lo que recibirás un mensaje de cada Global Cache que haya descargado el mensaje.
- El Global Cache solo descargará y republicará mensajes que fueron publicados en la jerarquía de temas `../data/core/...`.
+ El Global Cache solo descargará y republicará mensajes que hayan sido publicados en la jerarquía de temas `../data/core/...`.
## Conclusión
@@ -201,8 +201,8 @@ Intenta identificar un mensaje para el mismo centre-id publicado tanto en los te
En esta sesión práctica, aprendiste:
- cómo suscribirte a los servicios del WIS2 Global Broker utilizando MQTT Explorer
- - la estructura de los temas de WIS2
- - la estructura de los mensajes de notificación de WIS2
+ - la estructura de temas de WIS2
+ - la estructura de mensajes de notificación de WIS2
- la diferencia entre datos core y recomendados
- la estructura de temas utilizada por el gateway GTS-to-WIS2
- la diferencia entre los mensajes del Global Broker publicados en los temas `origin` y `cache`
\ No newline at end of file
diff --git a/documentation/docs/es/practical-sessions/initializing-wis2box.md b/documentation/docs/es/practical-sessions/initializing-wis2box.md
index ad676781d..0272c1f01 100644
--- a/documentation/docs/es/practical-sessions/initializing-wis2box.md
+++ b/documentation/docs/es/practical-sessions/initializing-wis2box.md
@@ -16,9 +16,9 @@ title: Inicializando wis2box
!!! note
- Los materiales de entrenamiento actuales están basados en wis2box-release 1.2.0.
+ Los materiales de capacitación actuales están basados en wis2box-release 1.3.0.
- Consulta [accessing-your-student-vm](./accessing-your-student-vm.md) para obtener instrucciones sobre cómo descargar e instalar el conjunto de software de wis2box si estás realizando este entrenamiento fuera de una sesión de entrenamiento local.
+ Consulta [accessing-your-student-vm](./accessing-your-student-vm.md) para obtener instrucciones sobre cómo descargar e instalar el conjunto de software de wis2box si estás realizando esta capacitación fuera de una sesión de entrenamiento local.
## Preparación
@@ -39,7 +39,7 @@ El script `wis2box-create-config.py` puede ser utilizado para crear la configura
Te hará una serie de preguntas para ayudar a configurar tu configuración.
-Podrás revisar y actualizar los archivos de configuración una vez que el script haya finalizado.
+Podrás revisar y actualizar los archivos de configuración después de que el script haya finalizado.
Ejecuta el script de la siguiente manera:
@@ -84,9 +84,9 @@ Is this correct? (y/n/exit)
### Contraseñas de WEBAPP, STORAGE y BROKER
-Puedes usar la opción de generación aleatoria de contraseñas cuando se te solicite para `WIS2BOX_WEBAPP_PASSWORD`, `WIS2BOX_STORAGE_PASSWORD`, `WIS2BOX_BROKER_PASSWORD` y definir las tuyas propias.
+Puedes usar la opción de generación aleatoria de contraseñas cuando se te solicite para `WIS2BOX_WEBAPP_PASSWORD`, `WIS2BOX_STORAGE_PASSWORD`, `WIS2BOX_BROKER_PASSWORD` o definir las tuyas propias.
-No te preocupes por recordar estas contraseñas, se almacenarán en el archivo `wis2box.env` en tu directorio wis2box.
+No te preocupes por recordar estas contraseñas, estarán almacenadas en el archivo `wis2box.env` en tu directorio wis2box.
### Revisar `wis2box.env`
@@ -96,7 +96,7 @@ Una vez que el script haya finalizado, verifica el contenido del archivo `wis2bo
cat ~/wis2box/wis2box.env
```
-O verifica el contenido del archivo a través de WinSCP.
+O verifica el contenido del archivo mediante WinSCP.
!!! question
@@ -106,7 +106,7 @@ O verifica el contenido del archivo a través de WinSCP.
El valor predeterminado para WIS2BOX_BASEMAP_URL es `https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`.
- Esta URL se refiere al servidor de mosaicos de OpenStreetMap. Si deseas usar un proveedor de mapas diferente, puedes cambiar esta URL para apuntar a un servidor de mosaicos diferente.
+ Esta URL se refiere al servidor de tiles de OpenStreetMap. Si deseas usar un proveedor de mapas diferente, puedes cambiar esta URL para que apunte a otro servidor de tiles.
!!! question
@@ -114,7 +114,7 @@ O verifica el contenido del archivo a través de WinSCP.
??? success "Haz clic para revelar la respuesta"
- El valor predeterminado para WIS2BOX_STORAGE_DATA_RETENTION_DAYS es de 30 días. Puedes cambiar este valor a un número diferente de días si lo deseas.
+ El valor predeterminado para WIS2BOX_STORAGE_DATA_RETENTION_DAYS es 30 días. Puedes cambiar este valor a otro número de días si lo deseas.
El contenedor wis2box-management ejecuta un cronjob diariamente para eliminar datos más antiguos que el número de días definido por WIS2BOX_STORAGE_DATA_RETENTION_DAYS del bucket `wis2box-public` y del backend de la API:
@@ -148,13 +148,13 @@ Cuando ejecutes este comando por primera vez, verás la siguiente salida:
```
No docker-compose.images-*.yml files found, creating one
-Current version=Undefined, latest version=1.2.0
+Current version=Undefined, latest version=1.3.0
Would you like to update ? (y/n/exit)
```
-Selecciona ``y`` y el script creará el archivo ``docker-compose.images-1.2.0.yml``, descargará las imágenes de Docker necesarias e iniciará los servicios.
+Selecciona ``y`` y el script creará el archivo ``docker-compose.images-1.3.0.yml``, descargará las imágenes de Docker necesarias y comenzará los servicios.
-Descargar las imágenes puede tomar tiempo dependiendo de la velocidad de tu conexión a internet. Este paso solo es necesario la primera vez que inicies wis2box.
+La descarga de las imágenes puede tomar tiempo dependiendo de la velocidad de tu conexión a internet. Este paso solo es necesario la primera vez que inicies wis2box.
Inspecciona el estado con el siguiente comando:
@@ -190,7 +190,7 @@ Dentro del contenedor wis2box-management puedes ejecutar varios comandos para ge
- `wis2box auth add-token --path processes/wis2box` : para crear un token de autorización para el endpoint *processes/wis2box*
- `wis2box data clean --days=` : para limpiar datos más antiguos que un cierto número de días del bucket *wis2box-public*
-Para salir del contenedor y regresar a tu máquina anfitriona, utiliza el siguiente comando:
+Para salir del contenedor y volver a tu máquina anfitriona, utiliza el siguiente comando:
```{.copy}
exit
@@ -205,23 +205,21 @@ docker ps --format "table {{.Names}} \t{{.Status}} \t{{.Image}}"
Deberías ver los siguientes contenedores en ejecución:
```{bash}
-NAMES STATUS IMAGE
-elasticsearch docker.elastic.co/elasticsearch/elasticsearch:8.6.2 "/bin/tini -- /usr/l…" elasticsearch Hace un minuto Activo Hace un minuto (saludable) 9200/tcp, 9300/tcp
-elasticsearch-exporter quay.io/prometheuscommunity/elasticsearch-exporter:latest "/bin/elasticsearch_…" elasticsearch-exporter Hace un minuto Activo Hace un minuto 7979/tcp
-grafana grafana/grafana-oss:9.0.3 "/run.sh" grafana Hace un minuto Activo Hace un minuto 0.0.0.0:3000->3000/tcp
-loki grafana/loki:2.4.1 "/usr/bin/loki -conf…" loki Hace un minuto Activo Hace un minuto 3100/tcp
-mosquitto ghcr.io/world-meteorological-organization/wis2box-broker:1.2.0 "/docker-entrypoint.…" mosquitto Hace un minuto Activo Hace un minuto 0.0.0.0:1883->1883/tcp, 0.0.0.0:8884->8884/tcp
-mqtt_metrics_collector ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.2.0 "python3 -u mqtt_met…" mqtt_metrics_collector Hace un minuto Activo 10 segundos 8000/tcp, 0.0.0.0:8001->8001/tcp
-nginx nginx:alpine "/docker-entrypoint.…" web-proxy Hace un minuto Activo 9 segundos 0.0.0.0:80->80/tcp
-prometheus prom/prometheus:v2.37.0 "/bin/prometheus --c…" prometheus Hace un minuto Activo Hace un minuto 9090/tcp
-wis2box-api ghcr.io/world-meteorological-organization/wis2box-api:1.2.0 "/app/docker/es-entr…" wis2box-api Hace un minuto Activo 36 segundos (saludable)
-wis2box-auth ghcr.io/world-meteorological-organization/wis2box-auth:1.2.0 "/entrypoint.sh" wis2box-auth Hace un minuto Activo 10 segundos
-wis2box-management ghcr.io/world-meteorological-organization/wis2box-management:1.2.0 "/home/wis2box/entry…" wis2box-management Hace un minuto Activo 12 segundos
-wis2box-minio minio/minio:RELEASE.2024-08-03T04-33-23Z-cpuv1 "/usr/bin/docker-ent…" minio Hace un minuto Activo Hace un minuto (saludable) 0.0.0.0:8022->8022/tcp, 0.0.0.0:9000-9001->9000-9001/tcp
-wis2box-ui ghcr.io/world-meteorological-organization/wis2box-ui:1.2.0 "/docker-entrypoint.…" wis2box-ui Hace un minuto Activo 35 segundos 0.0.0.0:9999->80/tcp
-wis2box-webapp ghcr.io/world-meteorological-organization/wis2box-webapp:1.2.0 "sh /wis2box-webapp/…" wis2box-webapp Hace un minuto Activo Hace un minuto (no saludable) 4173/tcp
-wis2downloader ghcr.io/wmo-im/wis2downloader:v0.3.2 "/home/wis2downloade…" wis2downloader Hace un minuto Activo Hace un minuto (saludable)
-
+NAMES STATUS IMAGE
+nginx Up 56 seconds nginx:1.30.1-alpine
+mqtt_metrics_collector Up 58 seconds ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.3.0
+wis2box-auth Up 59 seconds ghcr.io/world-meteorological-organization/wis2box-auth:1.3.0
+wis2box-ui Up About a minute ghcr.io/world-meteorological-organization/wis2box-ui:1.3.0
+wis2box-management Up About a minute ghcr.io/world-meteorological-organization/wis2box-management:1.3.0
+wis2box-minio Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-minio:latest
+wis2box-api Up About a minute (healthy) ghcr.io/world-meteorological-organization/wis2box-api:1.3.0
+elasticsearch Up 2 minutes (healthy) docker.elastic.co/elasticsearch/elasticsearch:8.6.2
+grafana Up 2 minutes grafana/grafana-oss:12.4.2
+loki Up 2 minutes grafana/loki:2.4.1
+elasticsearch-exporter Up 2 minutes quay.io/prometheuscommunity/elasticsearch-exporter:latest
+prometheus Up 2 minutes prom/prometheus:v2.37.0
+mosquitto Up 2 minutes ghcr.io/world-meteorological-organization/wis2box-broker:1.3.0
+wis2box-webapp Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-webapp:1.3.0
```
Estos contenedores son parte del conjunto de software de wis2box y proporcionan los diversos servicios necesarios para ejecutar wis2box.
@@ -247,7 +245,7 @@ Los volúmenes que comienzan con `wis2box_project_` se utilizan para almacenar d
## wis2box API
-El wis2box contiene una API (Interfaz de Programación de Aplicaciones) que proporciona acceso a datos y procesos para la visualización interactiva, transformación de datos y publicación.
+El wis2box contiene una API (Interfaz de Programación de Aplicaciones) que proporciona acceso a datos y procesos para visualización interactiva, transformación de datos y publicación.
Abra una nueva pestaña y navegue a la página `http://YOUR-HOST/oapi`.
@@ -304,7 +302,7 @@ Esta es la aplicación web de wis2box que le permite interactuar con su wis2box:
- crear y gestionar conjuntos de datos
- actualizar/revisar los metadatos de sus estaciones
-- cargar observaciones manuales utilizando el formulario FM-12 synop
+- cargar observaciones manuales utilizando el formulario FM-12 synop
- monitorear las notificaciones publicadas en su wis2box-broker
Usaremos esta aplicación web en una sesión posterior.
@@ -330,13 +328,13 @@ Puede hacer clic en el botón 'ADVANCED' y verificar que tiene suscripciones a l
Los mensajes publicados bajo el tema `$SYS` son mensajes del sistema publicados por el servicio mosquitto.
-Use los siguientes detalles de conexión, asegurándose de reemplazar el valor de `` con su nombre de host y `` con el valor de su archivo `wis2box.env`:
+Utilice los siguientes detalles de conexión, asegurándose de reemplazar el valor de `` con su nombre de host y `` con el valor de su archivo `wis2box.env`:
-- **Protocolo: mqtt://**
+- **Protocol: mqtt://**
- **Host: ``**
-- **Puerto: 1883**
-- **Usuario: wis2box**
-- **Contraseña: ``**
+- **Port: 1883**
+- **Username: wis2box**
+- **Password: ``**
!!! note
@@ -346,27 +344,28 @@ Use los siguientes detalles de conexión, asegurándose de reemplazar el valor d
cat ~/wis2box/wis2box.env | grep WIS2BOX_BROKER_PASSWORD
```
- Tenga en cuenta que esta es su contraseña **interna** del broker, el Global Broker usará credenciales diferentes (de solo lectura) para suscribirse a su broker. Nunca comparta esta contraseña con nadie.
+ Tenga en cuenta que esta es su contraseña **interna** del broker. El Global Broker utilizará credenciales diferentes (de solo lectura) para suscribirse a su broker. Nunca comparta esta contraseña con nadie.
-Asegúrese de hacer clic en "SAVE" para guardar los detalles de su conexión.
+Asegúrese de hacer clic en "SAVE" para almacenar los detalles de su conexión.
Luego haga clic en "CONNECT" para conectarse a su **wis2box-broker**.
-
-```
+
-Una vez conectado, verifica que las estadísticas internas de mosquitto se estén publicando en tu broker bajo el tema `$SYS`:
+Una vez conectado, verá las estadísticas internas de mosquitto que se publican en su broker bajo el tema `$SYS`:
-Mantén abierto MQTT Explorer, ya que lo utilizaremos para monitorear los mensajes publicados en el broker.
+La misma conexión también se puede lograr utilizando MQTT sobre WebSockets en el puerto 80, utilizando los siguientes detalles de conexión:
+
+
## Conclusión
!!! success "¡Felicidades!"
- En esta sesión práctica, aprendiste a:
+ En esta sesión práctica, aprendió cómo:
- ejecutar el script `wis2box-create-config.py` para crear la configuración inicial
- iniciar wis2box y verificar el estado de sus componentes
- acceder a wis2box-webapp y wis2box-API en un navegador
- - conectarte al broker MQTT en tu VM de estudiante utilizando MQTT Explorer
\ No newline at end of file
+ - conectarse al broker MQTT en su VM de estudiante utilizando MQTT Explorer
\ No newline at end of file
diff --git a/documentation/docs/fr/practical-sessions/accessing-your-student-vm.md b/documentation/docs/fr/practical-sessions/accessing-your-student-vm.md
index d7a00bf03..4ad0dac3f 100644
--- a/documentation/docs/fr/practical-sessions/accessing-your-student-vm.md
+++ b/documentation/docs/fr/practical-sessions/accessing-your-student-vm.md
@@ -28,22 +28,22 @@ Votre VM étudiant dispose des logiciels suivants préinstallés :
Si vous souhaitez suivre cette formation en dehors d'une session de formation locale, vous pouvez fournir votre propre instance en utilisant n'importe quel fournisseur de cloud, par exemple :
- - GCP (Google Cloud Platform) VM instance `e2-medium`
- - AWS (Amazon Web Services) ec2-instance `t3a.medium`
- - Azure (Microsoft) Azure Virtual Machine `standard_b2s`
+ - GCP (Google Cloud Platform) instance VM `e2-medium`
+ - AWS (Amazon Web Services) instance ec2 `t3a.medium`
+ - Azure (Microsoft) machine virtuelle Azure `standard_b2s`
Sélectionnez Ubuntu Server 22.0.4 LTS comme système d'exploitation.
- Après avoir créé votre VM, assurez-vous d'avoir installé Python, Docker et Docker Compose, comme décrit dans [wis2box-software-dependencies](https://docs.wis2box.wis.wmo.int/en/latest/user/getting-started.html#software-dependencies).
+ Après avoir créé votre VM, assurez-vous d'avoir installé Python, Docker et Docker Compose, comme décrit sur [wis2box-software-dependencies](https://docs.wis2box.wis.wmo.int/en/latest/user/getting-started.html#software-dependencies).
L'archive de la version de wis2box utilisée dans cette formation peut être téléchargée comme suit :
```bash
- wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.2.0/wis2box-setup-1.2.0.zip
- unzip wis2box-setup-1.2.0.zip
+ wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.3.0/wis2box-setup-1.3.0.zip
+ unzip wis2box-setup-1.3.0.zip
```
- Vous pouvez toujours trouver la dernière archive 'wis2box-setup' à [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases).
+ Vous pouvez toujours trouver la dernière archive 'wis2box-setup' sur [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases).
Les supports d'exercice utilisés dans cette formation peuvent être téléchargés comme suit :
@@ -56,10 +56,10 @@ Votre VM étudiant dispose des logiciels suivants préinstallés :
```bash
pip3 install minio
- pip3 install pywiscat==0.4.0
+ pip3 install pywiscat
```
- Si vous utilisez la VM étudiant fournie lors des sessions de formation locales WIS2, les logiciels requis seront déjà installés.
+ Si vous utilisez la VM étudiant fournie lors des sessions de formation WIS2 locales, les logiciels requis seront déjà installés.
## Se connecter à votre VM étudiant sur le réseau de formation local
@@ -117,9 +117,9 @@ résultat :
Docker Compose version v2.21.0
```
-Pour garantir que votre utilisateur peut exécuter des commandes Docker, il a été ajouté au groupe `docker`.
+Pour garantir que votre utilisateur peut exécuter des commandes Docker, il a été ajouté au groupe `docker`.
-Pour tester que votre utilisateur peut exécuter docker hello-world, exécutez la commande suivante :
+Pour tester que votre utilisateur peut exécuter le conteneur hello-world, exécutez la commande suivante :
```bash
docker run hello-world
```
@@ -147,7 +147,7 @@ résultat :
exercise-materials wis2box
```
-Si vous avez installé WinSCP sur votre PC local, vous pouvez l'utiliser pour vous connecter à votre VM étudiant, inspecter le contenu de votre répertoire personnel et télécharger ou envoyer des fichiers entre votre VM et votre PC local.
+Si vous avez installé WinSCP sur votre PC local, vous pouvez l'utiliser pour vous connecter à votre VM étudiant, inspecter le contenu de votre répertoire personnel et télécharger ou téléverser des fichiers entre votre VM et votre PC local.
WinSCP n'est pas requis pour la formation, mais il peut être utile si vous souhaitez éditer des fichiers sur votre VM en utilisant un éditeur de texte sur votre PC local.
@@ -159,7 +159,7 @@ Ouvrez WinSCP et cliquez sur "New Site". Vous pouvez créer une nouvelle connexi
Cliquez sur 'Save' puis sur 'Login' pour vous connecter à votre VM.
-Vous devriez maintenant pouvoir voir le contenu du répertoire personnel sur votre VM étudiant et accéder à vos fichiers.
+Vous devriez maintenant être en mesure de voir le contenu du répertoire personnel sur votre VM étudiant et d'accéder à vos fichiers.
## Conclusion
diff --git a/documentation/docs/fr/practical-sessions/adding-gts-headers-to-wis2-notifications.md b/documentation/docs/fr/practical-sessions/adding-gts-headers-to-wis2-notifications.md
index 5f3d5ed77..9c65e64d1 100644
--- a/documentation/docs/fr/practical-sessions/adding-gts-headers-to-wis2-notifications.md
+++ b/documentation/docs/fr/practical-sessions/adding-gts-headers-to-wis2-notifications.md
@@ -1,24 +1,25 @@
---
-title: Ajout d'en-têtes GTS aux notifications WIS2
+title: Ajout des en-têtes GTS aux notifications WIS2
---
-# Ajout d'en-têtes GTS aux notifications WIS2
+# Ajout des en-têtes GTS aux notifications WIS2
-!!! abstract "Résultats d'apprentissage"
+!!! abstract "Objectifs d'apprentissage"
À la fin de cette session pratique, vous serez capable de :
- - configurer une correspondance entre le nom de fichier et les en-têtes GTS
- - ingérer des données avec un nom de fichier qui correspond aux en-têtes GTS
+ - configurer un mappage entre le nom de fichier et les en-têtes GTS
+ - ingérer des données avec un nom de fichier correspondant aux en-têtes GTS
- visualiser les en-têtes GTS dans les notifications WIS2
+ - utiliser le formulaire FM-12 SYNOP pour ajouter manuellement des en-têtes GTS à une notification WIS2
## Introduction
-Les membres de l'OMM souhaitant arrêter leur transmission de données sur le GTS pendant la phase de transition vers WIS2 devront ajouter des en-têtes GTS à leurs notifications WIS2. Ces en-têtes permettent au passerelle WIS2 vers GTS de transférer les données vers le réseau GTS.
+Les Membres de l'OMM souhaitant arrêter la transmission de leurs données sur le GTS pendant la phase de transition vers WIS2 devront ajouter des en-têtes GTS à leurs notifications WIS2. Ces en-têtes permettent à la passerelle WIS2 vers GTS de transmettre les données au réseau GTS.
-Cela permet aux membres ayant migré vers l'utilisation d'un nœud WIS2 pour la publication de données de désactiver leur système MSS et de s'assurer que leurs données sont toujours disponibles pour les membres n'ayant pas encore migré vers WIS2.
+Cela permet aux Membres ayant migré vers l'utilisation d'un nœud WIS2 pour la publication des données de désactiver leur système MSS tout en garantissant que leurs données restent disponibles pour les Membres qui n'ont pas encore migré vers WIS2.
-La propriété GTS dans le Message de Notification WIS2 doit être ajoutée comme une propriété supplémentaire au Message de Notification WIS2. La propriété GTS est un objet JSON qui contient les en-têtes GTS nécessaires pour que les données soient transférées vers le réseau GTS.
+La propriété GTS dans le Message de Notification WIS2 doit être ajoutée comme une propriété supplémentaire au Message de Notification WIS2. La propriété GTS est un objet JSON contenant les en-têtes GTS nécessaires pour que les données soient transmises au réseau GTS.
```json
{
@@ -29,45 +30,55 @@ La propriété GTS dans le Message de Notification WIS2 doit être ajoutée comm
}
```
-Au sein de wis2box, vous pouvez ajouter cela automatiquement aux Notifications WIS2 en fournissant un fichier supplémentaire nommé `gts_headers_mapping.csv` qui contient les informations nécessaires pour mapper les en-têtes GTS aux noms de fichiers entrants.
+Dans wis2box, vous pouvez ajouter cela automatiquement aux Notifications WIS2 en fournissant un fichier supplémentaire nommé `gts_headers_mapping.csv` contenant les informations nécessaires pour mapper les en-têtes GTS aux noms de fichiers entrants.
-Ce fichier doit être placé dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre `wis2box.env` et doit avoir les colonnes suivantes :
+Ce fichier doit être placé dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre fichier `wis2box.env` et doit contenir les colonnes suivantes :
-- `string_in_filepath` : une chaîne qui fait partie du nom de fichier qui sera utilisée pour correspondre aux en-têtes GTS
+- `string_in_filepath` : une chaîne faisant partie du nom de fichier qui sera utilisée pour correspondre aux en-têtes GTS
- `TTAAii` : l'en-tête TTAAii à ajouter à la notification WIS2
- `CCCC` : l'en-tête CCCC à ajouter à la notification WIS2
+Depuis wis2box-1.3.0, les éditeurs de données ont deux options pour (éventuellement) ajouter des propriétés GTS à leurs notifications :
+
+1. Pour les fichiers téléchargés dans MinIO, préparer un fichier de mappage `gts_headers_mappings.csv` avec les propriétés requises.
+
+2. Pour les données saisies via le formulaire FM-12 SYNOP dans wis2box-webapp, sélectionner `Add GTS headers` et fournir les informations manuellement.
+
## Préparation
-Assurez-vous d'avoir un accès SSH à votre VM étudiante et que votre instance wis2box est opérationnelle.
+Assurez-vous d'avoir un accès SSH à votre VM étudiant et que votre instance wis2box est opérationnelle.
-Assurez-vous que vous êtes connecté au broker MQTT de votre instance wis2box en utilisant MQTT Explorer. Vous pouvez utiliser les identifiants publics `everyone/everyone` pour vous connecter au broker.
+Vérifiez que vous êtes connecté au broker MQTT de votre instance wis2box en utilisant MQTT Explorer. Vous pouvez utiliser les identifiants publics `everyone/everyone` pour vous connecter au broker.
-Assurez-vous d'avoir un navigateur web ouvert avec le tableau de bord Grafana pour votre instance en allant à `http://YOUR-HOST:3000`
+Assurez-vous d'avoir un navigateur web ouvert avec le tableau de bord Grafana de votre instance en accédant à `http://YOUR-HOST:3000`.
-## Création de `gts_headers_mapping.csv`
+## Exercice 1 : Utilisation d'un fichier de mappage pour les données téléchargées dans MinIO
-Pour ajouter des en-têtes GTS à vos notifications WIS2, un fichier CSV est requis qui mappe les en-têtes GTS aux noms de fichiers entrants.
+Le premier exercice montre comment ajouter des en-têtes GTS pour les données téléchargées dans MinIO, en utilisant un fichier de mappage nommé `gts_headers_mapping.csv`.
-Le fichier CSV doit être nommé (exactement) `gts_headers_mapping.csv` et doit être placé dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre `wis2box.env`.
+### Création de `gts_headers_mapping.csv`
-## Fourniture d'un fichier `gts_headers_mapping.csv`
-
-Copiez le fichier `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` sur votre instance wis2box et placez-le dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre `wis2box.env`.
+Pour ajouter des en-têtes GTS à vos notifications WIS2, un fichier CSV est requis pour mapper les en-têtes GTS aux noms de fichiers entrants.
+
+Le fichier CSV doit être nommé (exactement) `gts_headers_mapping.csv` et placé dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre fichier `wis2box.env`.
+
+Copiez le fichier `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` dans votre instance wis2box et placez-le dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre fichier `wis2box.env`.
```bash
cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data
```
-Ensuite, redémarrez le conteneur wis2box-management pour appliquer les modifications :
+### Application des mappages
+
+Après avoir créé le fichier `gts_headers_mapping.csv`, vous devez redémarrer le conteneur wis2box-management pour appliquer les modifications. Vous pouvez le faire en exécutant la commande suivante dans votre VM étudiant :
```bash
docker restart wis2box-management
```
-## Ingestion de données avec en-têtes GTS
+### Ingestion des données avec des en-têtes GTS
-Copiez le fichier `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre `wis2box.env` :
+Copiez le fichier `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` dans le répertoire défini par `WIS2BOX_HOST_DATADIR` dans votre fichier `wis2box.env` :
```bash
cp ~/exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt ~/wis2box-data
@@ -80,7 +91,7 @@ cd ~/wis2box
python3 wis2box-ctl.py login
```
-Depuis la ligne de commande wis2box, nous pouvons ingérer le fichier de données d'exemple `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` dans un ensemble de données spécifique comme suit :
+Depuis la ligne de commande wis2box, vous pouvez ingérer le fichier de données exemple `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` dans un ensemble de données spécifique comme suit :
```bash
wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt --metadata-id urn:wmo:md:not-my-centre:core.surface-based-observations.synop
@@ -88,17 +99,55 @@ wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.tx
Assurez-vous de remplacer l'option `metadata-id` par l'identifiant correct pour votre ensemble de données.
-Vérifiez le tableau de bord Grafana pour voir si les données ont été correctement ingérées. Si vous voyez des AVERTISSEMENTS ou des ERREURS, essayez de les résoudre et répétez la commande `wis2box data ingest`.
+Vérifiez le tableau de bord Grafana pour voir si les données ont été correctement ingérées. Si vous voyez des AVERTISSEMENTS ou des ERREURS, essayez de les corriger et répétez l'exercice avec la commande `wis2box data ingest`.
+
+### Visualisation des en-têtes GTS dans la Notification WIS2
+
+Accédez à MQTT Explorer et vérifiez le Message de Notification WIS2 pour les données que vous venez d'ingérer.
+
+Le Message de Notification WIS2 doit contenir les en-têtes GTS que vous avez fournis dans le fichier `gts_headers_mapping.csv`.
+
+## Exercice 2 : Utilisation du formulaire FM-12 SYNOP
+
+Lors de l'utilisation du formulaire FM-12 SYNOP dans wis2box-webapp, vous pouvez ajouter manuellement des en-têtes GTS à vos notifications WIS2 en sélectionnant l'option "Add GTS headers" et en fournissant les informations requises.
+
+Pour cet exercice, vous pouvez utiliser les données d'exemple ci-dessous ou fournir les vôtres :
+
+Message FM-12 SYNOP :
+
+```{copy}
+AAXX 03094
+64400 42460 71004 10285 20245 30113 40133 8493/
+ 333 59005 83813 81930 87363 94966 95836=
+```
+
+En-têtes GTS : TTAAii=`ISIH01` et CCCC=`FCBB`
+
+!!! note
+ Le plugin synop2bufr dans wis2box convertit les messages FM-12 SYNOP en BUFR, donc le TTAAii doit commencer par `IS` :
+
+ - I = Données d'observation (codées en binaire) – BUFR
+ - S = Surface/niveau de la mer
+
+### Soumettre manuellement le formulaire FM-12 SYNOP avec des en-têtes GTS
+
+Accédez au formulaire FM-12 SYNOP dans wis2box-webapp et remplissez le formulaire avec les données d'exemple ci-dessus ou vos propres données.
+
+Assurez-vous de sélectionner l'option "Add GTS headers" et de fournir les informations requises pour les en-têtes GTS :
+
+
+
+Fournissez le jeton d'authentification requis et soumettez le formulaire.
-## Visualisation des en-têtes GTS dans la Notification WIS2
+Vous verrez probablement un message d'erreur car cette station n'est pas dans votre liste de stations. Vous devrez ajouter la station "0-20000-0-64400" à votre liste de stations pour que les données soient converties et publiées avec succès.
-Allez à MQTT Explorer et vérifiez le Message de Notification WIS2 pour les données que vous venez d'ingérer.
+### Visualisation des en-têtes GTS dans la Notification WIS2
-Le Message de Notification WIS2 devrait contenir les en-têtes GTS que vous avez fournis dans le fichier `gts_headers_mapping.csv`.
+Accédez à MQTT Explorer et vérifiez le Message de Notification WIS2 pour les données que vous venez d'ingérer afin de voir si les en-têtes GTS sont inclus dans la notification.
## Conclusion
!!! success "Félicitations !"
- Dans cette session pratique, vous avez appris à :
+ Au cours de cette session pratique, vous avez appris à :
- ajouter des en-têtes GTS à vos notifications WIS2
- vérifier que les en-têtes GTS sont disponibles via votre installation wis2box
\ No newline at end of file
diff --git a/documentation/docs/fr/practical-sessions/connecting-to-wis2-over-mqtt.md b/documentation/docs/fr/practical-sessions/connecting-to-wis2-over-mqtt.md
index f67fd609f..37693a4e5 100644
--- a/documentation/docs/fr/practical-sessions/connecting-to-wis2-over-mqtt.md
+++ b/documentation/docs/fr/practical-sessions/connecting-to-wis2-over-mqtt.md
@@ -14,7 +14,7 @@ title: Connexion à WIS2 via MQTT
## Introduction
-WIS2 utilise le protocole MQTT pour annoncer la disponibilité des données météorologiques, climatiques et hydrologiques. Le Global Broker de WIS2 s'abonne à tous les WIS2 Nodes du réseau et republie les messages qu'il reçoit. Le Global Cache s'abonne au Global Broker, télécharge les données contenues dans le message, puis republie le message sur le topic `cache` avec une nouvelle URL. Le Global Discovery Catalogue publie les métadonnées de découverte provenant du Broker et fournit une API de recherche.
+WIS2 utilise le protocole MQTT pour annoncer la disponibilité des données météorologiques/climatiques/hydrologiques. Le Global Broker de WIS2 s'abonne à tous les WIS2 Nodes du réseau et republie les messages qu'il reçoit. Le Global Cache s'abonne au Global Broker, télécharge les données contenues dans le message, puis republie le message sur le topic `cache` avec une nouvelle URL. Le Global Discovery Catalogue publie les métadonnées de découverte provenant du Broker et fournit une API de recherche.
Voici un exemple de structure de message de notification WIS2 pour un message reçu sur le topic `origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop` :
@@ -57,7 +57,7 @@ Voici un exemple de structure de message de notification WIS2 pour un message re
"href":"https://oscar.wmo.int/surface/#/search/station/stationReportDetails/0-20000-0-76679"
}
],
- "generated_by":"wis2box 1.2.0"
+ "generated_by":"wis2box 1.3.0"
}
```
@@ -68,13 +68,13 @@ MQTT Explorer est un outil utile pour parcourir et examiner la structure des top
!!! note "À propos de MQTT"
MQTT Explorer fournit une interface conviviale pour se connecter à un broker MQTT et explorer les topics et la structure des messages utilisés par WIS2.
- En pratique, MQTT est conçu pour la communication machine-à-machine, où une application ou un service s'abonne à des topics et traite les messages de manière programmatique en temps réel.
+ En pratique, MQTT est conçu pour une communication machine-à-machine, où une application ou un service s'abonne à des topics et traite les messages de manière programmatique en temps réel.
- Pour travailler avec MQTT de manière programmatique (par exemple, en Python), vous pouvez utiliser des bibliothèques client MQTT telles que [paho-mqtt](https://pypi.org/project/paho-mqtt) pour vous connecter à un broker MQTT et traiter les messages entrants. Il existe de nombreux logiciels client et serveur MQTT, en fonction de vos besoins et de votre environnement technique.
+ Pour travailler avec MQTT de manière programmatique (par exemple, en Python), vous pouvez utiliser des bibliothèques client MQTT telles que [paho-mqtt](https://pypi.org/project/paho-mqtt) pour vous connecter à un broker MQTT et traiter les messages entrants. Il existe de nombreux logiciels client et serveur MQTT, selon vos besoins et votre environnement technique.
## Utilisation de MQTT Explorer pour se connecter au Global Broker
-Pour afficher les messages publiés par un Global Broker WIS2, vous pouvez utiliser "MQTT Explorer", qui peut être téléchargé depuis le [site web de MQTT Explorer](https://mqtt-explorer.com).
+Pour visualiser les messages publiés par un Global Broker WIS2, vous pouvez utiliser "MQTT Explorer", téléchargeable depuis le [site web de MQTT Explorer](https://mqtt-explorer.com).
Ouvrez MQTT Explorer et ajoutez une nouvelle connexion au Global Broker hébergé par MeteoFrance en utilisant les détails suivants :
@@ -94,12 +94,12 @@ Cliquez sur le bouton 'ADVANCED', supprimez les topics préconfigurés et ajoute
!!! note
Lors de la configuration des abonnements MQTT, vous pouvez utiliser les jokers suivants :
- - **Single-level (+)** : un joker à un seul niveau remplace un seul niveau de topic
- - **Multi-level (#)** : un joker à plusieurs niveaux remplace plusieurs niveaux de topics
+ - **Niveau unique (+)** : un joker de niveau unique remplace un niveau de topic
+ - **Multi-niveaux (#)** : un joker multi-niveaux remplace plusieurs niveaux de topics
Dans ce cas, `origin/a/wis2/#` s'abonnera à tous les topics sous le topic `origin/a/wis2`.
-Cliquez sur 'BACK', puis 'SAVE' pour enregistrer vos détails de connexion et d'abonnement. Ensuite, cliquez sur 'CONNECT' :
+Cliquez sur 'BACK', puis 'SAVE' pour enregistrer les détails de votre connexion et abonnement. Ensuite, cliquez sur 'CONNECT' :
Les messages devraient commencer à apparaître dans votre session MQTT Explorer comme suit :
@@ -123,23 +123,23 @@ Utilisez MQTT pour parcourir la structure des topics sous les topics `origin`.
`origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`
- nous indique que les données ont été publiées par un centre WIS avec l'identifiant `br-inmet`, qui correspond à l'Instituto Nacional de Meteorologia - INMET, Brésil.
+ nous indique que les données ont été publiées par un centre WIS avec l'identifiant `br-inmet`, qui correspond à l'identifiant du centre pour l'Instituto Nacional de Meteorologia - INMET, Brésil.
!!! question
- Comment pouvons-nous distinguer les messages publiés par les centres WIS hébergeant une passerelle GTS-to-WIS2 de ceux publiés par les centres WIS hébergeant un WIS2 Node ?
+ Comment pouvons-nous distinguer les messages publiés par les centres WIS hébergeant une passerelle GTS-vers-WIS2 et ceux publiés par les centres WIS hébergeant un WIS2 Node ?
??? success "Cliquez pour révéler la réponse"
- Nous pouvons distinguer les messages provenant d'une passerelle GTS-to-WIS2 en regardant l'identifiant du centre dans la structure des topics. Par exemple, le topic suivant :
+ Nous pouvons distinguer les messages provenant d'une passerelle GTS-vers-WIS2 en regardant l'identifiant du centre dans la structure des topics. Par exemple, le topic suivant :
`origin/a/wis2/de-dwd-gts-to-wis2/data/core/I/S/A/I/01/sbbr`
- nous indique que les données ont été publiées par la passerelle GTS-to-WIS2 hébergée par Deutscher Wetterdienst (DWD), Allemagne. La passerelle GTS-to-WIS2 est un type spécial de producteur de données qui publie des données du Global Telecommunication System (GTS) vers WIS2. La structure des topics est composée des en-têtes TTAAii CCCC pour les messages GTS.
+ nous indique que les données ont été publiées par la passerelle GTS-vers-WIS2 hébergée par Deutscher Wetterdienst (DWD), Allemagne. La passerelle GTS-vers-WIS2 est un type spécial de producteur de données qui publie des données du Global Telecommunication System (GTS) vers WIS2. La structure des topics est composée des en-têtes TTAAii CCCC des messages GTS.
## Exercice 2 : Examiner la structure des messages WIS2
-Déconnectez-vous de MQTT Explorer et mettez à jour les sections 'Advanced' pour modifier l'abonnement avec les topics suivants :
+Déconnectez-vous de MQTT Explorer et mettez à jour les sections 'Advanced' pour changer l'abonnement aux topics suivants :
* `origin/a/wis2/+/data/core/weather/surface-based-observations/synop`
* `cache/a/wis2/+/data/core/weather/surface-based-observations/synop`
@@ -149,25 +149,25 @@ Déconnectez-vous de MQTT Explorer et mettez à jour les sections 'Advanced' pou
!!! note
Le joker `+` est utilisé pour s'abonner à tous les centres WIS.
-Reconnectez-vous au Global Broker et attendez que les messages apparaissent.
+Reconnectez-vous au Global Broker et attendez que les messages apparaissent.
-Vous pouvez consulter le contenu du message WIS2 dans la section "Value" sur le côté droit. Essayez de développer la structure des topics pour voir les différents niveaux du message jusqu'à atteindre le dernier niveau et examinez le contenu d'un des messages.
+Vous pouvez consulter le contenu du message WIS2 dans la section "Value" située à droite. Essayez de développer la structure des topics pour voir les différents niveaux du message jusqu'à atteindre le dernier niveau et examinez le contenu d'un des messages.
!!! question
- Comment pouvons-nous identifier l'horodatage de publication des données ? Et comment pouvons-nous identifier l'horodatage de collecte des données ?
+ Comment pouvons-nous identifier l'horodatage auquel les données ont été publiées ? Et comment pouvons-nous identifier l'horodatage auquel les données ont été collectées ?
??? success "Cliquez pour révéler la réponse"
- L'horodatage de publication des données est contenu dans la section `properties` du message avec une clé `pubtime`.
+ L'horodatage auquel les données ont été publiées est contenu dans la section `properties` du message avec une clé `pubtime`.
- L'horodatage de collecte des données est contenu dans la section `properties` du message avec une clé `datetime`.
+ L'horodatage auquel les données ont été collectées est contenu dans la section `properties` du message avec une clé `datetime`.
!!! question
- Comment pouvons-nous télécharger les données depuis l'URL fournie dans le message ?
+ Comment pouvons-nous télécharger les données à partir de l'URL fournie dans le message ?
??? success "Cliquez pour révéler la réponse"
@@ -187,13 +187,13 @@ Essayez d'identifier un message pour le même identifiant de centre publié à l
??? success "Cliquez pour révéler la réponse"
- Les messages publiés sur les topics `origin` sont les messages originaux que le Global Broker republie depuis les WIS2 Nodes du réseau.
+ Les messages publiés sur les topics `origin` sont les messages originaux que le Global Broker republie à partir des WIS2 Nodes du réseau.
- Les messages publiés sur les topics `cache` sont les messages pour lesquels les données ont été téléchargées par le Global Cache. Si vous vérifiez le contenu du message provenant d'un topic commençant par `cache`, vous verrez que le lien 'canonical' a été mis à jour avec une nouvelle URL.
+ Les messages publiés sur les topics `cache` sont les messages pour lesquels les données ont été téléchargées par le Global Cache. Si vous consultez le contenu du message provenant du topic commençant par `cache`, vous verrez que le lien 'canonical' a été mis à jour avec une nouvelle URL.
- Il existe plusieurs Global Caches dans le réseau WIS2, vous recevrez donc un message de chaque Global Cache ayant téléchargé le message.
+ Il existe plusieurs Global Caches dans le réseau WIS2, donc vous recevrez un message de chaque Global Cache ayant téléchargé le message.
- Le Global Cache ne télécharge et ne republie que les messages publiés dans la hiérarchie de topics `../data/core/...`.
+ Le Global Cache ne télécharge et ne republie que les messages publiés sur la hiérarchie de topics `../data/core/...`.
## Conclusion
@@ -204,5 +204,5 @@ Essayez d'identifier un message pour le même identifiant de centre publié à l
- la structure des topics WIS2
- la structure des messages de notification WIS2
- la différence entre les données core et recommandées
- - la structure des topics utilisée par la passerelle GTS-to-WIS2
+ - la structure des topics utilisée par la passerelle GTS-vers-WIS2
- la différence entre les messages du Global Broker publiés sur les topics `origin` et `cache`
\ No newline at end of file
diff --git a/documentation/docs/fr/practical-sessions/initializing-wis2box.md b/documentation/docs/fr/practical-sessions/initializing-wis2box.md
index 8173e57b7..5e0958202 100644
--- a/documentation/docs/fr/practical-sessions/initializing-wis2box.md
+++ b/documentation/docs/fr/practical-sessions/initializing-wis2box.md
@@ -1,8 +1,8 @@
---
-title: Initialisation de wis2box
+title: Initialiser wis2box
---
-# Initialisation de wis2box
+# Initialiser wis2box
!!! abstract "Objectifs d'apprentissage"
@@ -12,13 +12,13 @@ title: Initialisation de wis2box
- démarrer wis2box et vérifier l'état de ses composants
- consulter le contenu de **wis2box-api**
- accéder à **wis2box-webapp**
- - se connecter au **wis2box-broker** local à l'aide de MQTT Explorer
+ - vous connecter au **wis2box-broker** local en utilisant MQTT Explorer
!!! note
- Les supports de formation actuels sont basés sur wis2box-release 1.2.0.
+ Les supports de formation actuels sont basés sur la version wis2box-release 1.3.0.
- Consultez [accessing-your-student-vm](./accessing-your-student-vm.md) pour des instructions sur la façon de télécharger et d'installer la pile logicielle wis2box si vous suivez cette formation en dehors d'une session de formation locale.
+ Consultez [accessing-your-student-vm](./accessing-your-student-vm.md) pour des instructions sur la manière de télécharger et d'installer la pile logicielle wis2box si vous suivez cette formation en dehors d'une session de formation locale.
## Préparation
@@ -39,7 +39,7 @@ Le script `wis2box-create-config.py` peut être utilisé pour créer la configur
Il vous posera une série de questions pour vous aider à configurer votre environnement.
-Vous pourrez examiner et mettre à jour les fichiers de configuration une fois le script terminé.
+Vous pourrez examiner et mettre à jour les fichiers de configuration une fois que le script sera terminé.
Exécutez le script comme suit :
@@ -49,11 +49,11 @@ python3 wis2box-create-config.py
### Répertoire wis2box-host-data
-Le script vous demandera d'entrer le répertoire à utiliser pour la variable d'environnement `WIS2BOX_HOST_DATADIR`.
+Le script vous demandera de saisir le répertoire à utiliser pour la variable d'environnement `WIS2BOX_HOST_DATADIR`.
Notez que vous devez définir le chemin complet vers ce répertoire.
-Par exemple, si votre nom d'utilisateur est `username`, le chemin complet du répertoire est `/home/username/wis2box-data` :
+Par exemple, si votre nom d'utilisateur est `username`, le chemin complet vers le répertoire est `/home/username/wis2box-data` :
```{.copy}
username@student-vm-username:~/wis2box$ python3 wis2box-create-config.py
@@ -68,7 +68,7 @@ The directory /home/username/wis2box-data has been created.
### URL de wis2box
-Ensuite, il vous sera demandé d'entrer l'URL de votre wis2box. C'est l'URL qui sera utilisée pour accéder à l'application web, à l'API et à l'interface utilisateur de wis2box.
+Ensuite, vous serez invité à saisir l'URL de votre wis2box. Cette URL sera utilisée pour accéder à l'application web, à l'API et à l'interface utilisateur de wis2box.
Veuillez utiliser `http://` comme URL.
@@ -84,11 +84,11 @@ Is this correct? (y/n/exit)
### Mots de passe WEBAPP, STORAGE et BROKER
-Vous pouvez utiliser l'option de génération aléatoire de mots de passe lorsqu'il vous est demandé de définir `WIS2BOX_WEBAPP_PASSWORD`, `WIS2BOX_STORAGE_PASSWORD`, `WIS2BOX_BROKER_PASSWORD` ou définir vos propres mots de passe.
+Vous pouvez utiliser l'option de génération aléatoire de mots de passe lorsque vous êtes invité à définir `WIS2BOX_WEBAPP_PASSWORD`, `WIS2BOX_STORAGE_PASSWORD`, `WIS2BOX_BROKER_PASSWORD`, ou définir vos propres mots de passe.
Ne vous inquiétez pas de mémoriser ces mots de passe, ils seront stockés dans le fichier `wis2box.env` dans votre répertoire wis2box.
-### Vérification du fichier `wis2box.env`
+### Vérification de `wis2box.env`
Une fois le script terminé, vérifiez le contenu du fichier `wis2box.env` dans votre répertoire actuel :
@@ -104,7 +104,7 @@ Ou vérifiez le contenu du fichier via WinSCP.
??? success "Cliquez pour révéler la réponse"
- La valeur par défaut pour WIS2BOX_BASEMAP_URL est `https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`.
+ La valeur par défaut de WIS2BOX_BASEMAP_URL est `https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`.
Cette URL fait référence au serveur de tuiles OpenStreetMap. Si vous souhaitez utiliser un autre fournisseur de cartes, vous pouvez modifier cette URL pour pointer vers un autre serveur de tuiles.
@@ -114,7 +114,7 @@ Ou vérifiez le contenu du fichier via WinSCP.
??? success "Cliquez pour révéler la réponse"
- La valeur par défaut pour WIS2BOX_STORAGE_DATA_RETENTION_DAYS est de 30 jours. Vous pouvez modifier cette valeur pour un autre nombre de jours si vous le souhaitez.
+ La valeur par défaut de WIS2BOX_STORAGE_DATA_RETENTION_DAYS est de 30 jours. Vous pouvez modifier cette valeur pour un autre nombre de jours si vous le souhaitez.
Le conteneur wis2box-management exécute une tâche cron quotidiennement pour supprimer les données plus anciennes que le nombre de jours défini par WIS2BOX_STORAGE_DATA_RETENTION_DAYS du bucket `wis2box-public` et du backend API :
@@ -128,7 +128,7 @@ Ou vérifiez le contenu du fichier via WinSCP.
Ne modifiez pas le fichier `wis2box.env` sauf si vous êtes sûr des modifications que vous apportez. Des modifications incorrectes peuvent empêcher votre wis2box de fonctionner.
- Ne partagez pas le contenu de votre fichier `wis2box.env` avec qui que ce soit, car il contient des informations sensibles comme des mots de passe.
+ Ne partagez pas le contenu de votre fichier `wis2box.env` avec quiconque, car il contient des informations sensibles telles que des mots de passe.
## Démarrer wis2box
@@ -144,17 +144,17 @@ Démarrez wis2box avec la commande suivante :
python3 wis2box-ctl.py start
```
-Lors de la première exécution de cette commande, vous verrez la sortie suivante :
+Lors de l'exécution de cette commande pour la première fois, vous verrez la sortie suivante :
```
No docker-compose.images-*.yml files found, creating one
-Current version=Undefined, latest version=1.2.0
+Current version=Undefined, latest version=1.3.0
Would you like to update ? (y/n/exit)
```
-Sélectionnez ``y`` et le script créera le fichier ``docker-compose.images-1.2.0.yml``, téléchargera les images Docker nécessaires et démarrera les services.
+Sélectionnez ``y`` et le script créera le fichier ``docker-compose.images-1.3.0.yml``, téléchargera les images Docker nécessaires et démarrera les services.
-Le téléchargement des images peut prendre du temps en fonction de la vitesse de votre connexion Internet. Cette étape n'est requise que lors du premier démarrage de wis2box.
+Le téléchargement des images peut prendre du temps en fonction de la vitesse de votre connexion Internet. Cette étape est uniquement requise lors du premier démarrage de wis2box.
Inspectez l'état avec la commande suivante :
@@ -171,7 +171,7 @@ Répétez cette commande jusqu'à ce que tous les services soient opérationnels
Le script Python `wis2box-ctl.py` est utilisé pour exécuter les commandes Docker Compose sous-jacentes qui contrôlent les services wis2box.
- Vous n'avez pas besoin de connaître les détails des conteneurs Docker pour exécuter la pile logicielle wis2box, mais vous pouvez inspecter les fichiers `docker-compose*.yml` pour voir comment les services sont définis. Si vous souhaitez en savoir plus sur Docker, vous pouvez trouver plus d'informations dans la [documentation Docker](https://docs.docker.com/).
+ Vous n'avez pas besoin de connaître les détails des conteneurs Docker pour exécuter la pile logicielle wis2box, mais vous pouvez inspecter les fichiers `docker-compose*.yml` pour voir comment les services sont définis. Si vous souhaitez en savoir plus sur Docker, vous pouvez consulter la [documentation Docker](https://docs.docker.com/).
Pour vous connecter au conteneur wis2box-management, utilisez la commande suivante :
@@ -179,7 +179,7 @@ Pour vous connecter au conteneur wis2box-management, utilisez la commande suivan
python3 wis2box-ctl.py login
```
-Notez qu'après vous être connecté, votre invite changera, indiquant que vous êtes maintenant à l'intérieur du conteneur wis2box-management :
+Notez qu'après vous être connecté, votre invite de commande changera, indiquant que vous êtes maintenant à l'intérieur du conteneur wis2box-management :
```{bash}
root@025381da3c40:/home/wis2box#
@@ -187,7 +187,7 @@ root@025381da3c40:/home/wis2box#
À l'intérieur du conteneur wis2box-management, vous pouvez exécuter diverses commandes pour gérer votre wis2box, telles que :
-- `wis2box auth add-token --path processes/wis2box` : pour créer un jeton d'autorisation pour l'endpoint *processes/wis2box*
+- `wis2box auth add-token --path processes/wis2box` : pour créer un jeton d'autorisation pour le point de terminaison *processes/wis2box*
- `wis2box data clean --days=` : pour nettoyer les données plus anciennes qu'un certain nombre de jours du bucket *wis2box-public*
Pour quitter le conteneur et revenir à votre machine hôte, utilisez la commande suivante :
@@ -205,28 +205,26 @@ docker ps --format "table {{.Names}} \t{{.Status}} \t{{.Image}}"
Vous devriez voir les conteneurs suivants en cours d'exécution :
```{bash}
-NAMES STATUS IMAGE
-elasticsearch docker.elastic.co/elasticsearch/elasticsearch:8.6.2 "/bin/tini -- /usr/l…" elasticsearch Il y a environ une minute Actif depuis environ une minute (healthy) 9200/tcp, 9300/tcp
-elasticsearch-exporter quay.io/prometheuscommunity/elasticsearch-exporter:latest "/bin/elasticsearch_…" elasticsearch-exporter Il y a environ une minute Actif depuis environ une minute 7979/tcp
-grafana grafana/grafana-oss:9.0.3 "/run.sh" grafana Il y a environ une minute Actif depuis environ une minute 0.0.0.0:3000->3000/tcp
-loki grafana/loki:2.4.1 "/usr/bin/loki -conf…" loki Il y a environ une minute Actif depuis environ une minute 3100/tcp
-mosquitto ghcr.io/world-meteorological-organization/wis2box-broker:1.2.0 "/docker-entrypoint.…" mosquitto Il y a environ une minute Actif depuis environ une minute 0.0.0.0:1883->1883/tcp, 0.0.0.0:8884->8884/tcp
-mqtt_metrics_collector ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.2.0 "python3 -u mqtt_met…" mqtt_metrics_collector Il y a environ une minute Actif depuis 10 secondes 8000/tcp, 0.0.0.0:8001->8001/tcp
-nginx nginx:alpine "/docker-entrypoint.…" web-proxy Il y a environ une minute Actif depuis 9 secondes 0.0.0.0:80->80/tcp
-prometheus prom/prometheus:v2.37.0 "/bin/prometheus --c…" prometheus Il y a environ une minute Actif depuis environ une minute 9090/tcp
-wis2box-api ghcr.io/world-meteorological-organization/wis2box-api:1.2.0 "/app/docker/es-entr…" wis2box-api Il y a environ une minute Actif depuis 36 secondes (healthy)
-wis2box-auth ghcr.io/world-meteorological-organization/wis2box-auth:1.2.0 "/entrypoint.sh" wis2box-auth Il y a environ une minute Actif depuis 10 secondes
-wis2box-management ghcr.io/world-meteorological-organization/wis2box-management:1.2.0 "/home/wis2box/entry…" wis2box-management Il y a environ une minute Actif depuis 12 secondes
-wis2box-minio minio/minio:RELEASE.2024-08-03T04-33-23Z-cpuv1 "/usr/bin/docker-ent…" minio Il y a environ une minute Actif depuis environ une minute (healthy) 0.0.0.0:8022->8022/tcp, 0.0.0.0:9000-9001->9000-9001/tcp
-wis2box-ui ghcr.io/world-meteorological-organization/wis2box-ui:1.2.0 "/docker-entrypoint.…" wis2box-ui Il y a environ une minute Actif depuis 35 secondes 0.0.0.0:9999->80/tcp
-wis2box-webapp ghcr.io/world-meteorological-organization/wis2box-webapp:1.2.0 "sh /wis2box-webapp/…" wis2box-webapp Il y a environ une minute Actif depuis environ une minute (unhealthy) 4173/tcp
-wis2downloader ghcr.io/wmo-im/wis2downloader:v0.3.2 "/home/wis2downloade…" wis2downloader Il y a environ une minute Actif depuis environ une minute (healthy)
-
+NAMES STATUS IMAGE
+nginx Up 56 seconds nginx:1.30.1-alpine
+mqtt_metrics_collector Up 58 seconds ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.3.0
+wis2box-auth Up 59 seconds ghcr.io/world-meteorological-organization/wis2box-auth:1.3.0
+wis2box-ui Up About a minute ghcr.io/world-meteorological-organization/wis2box-ui:1.3.0
+wis2box-management Up About a minute ghcr.io/world-meteorological-organization/wis2box-management:1.3.0
+wis2box-minio Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-minio:latest
+wis2box-api Up About a minute (healthy) ghcr.io/world-meteorological-organization/wis2box-api:1.3.0
+elasticsearch Up 2 minutes (healthy) docker.elastic.co/elasticsearch/elasticsearch:8.6.2
+grafana Up 2 minutes grafana/grafana-oss:12.4.2
+loki Up 2 minutes grafana/loki:2.4.1
+elasticsearch-exporter Up 2 minutes quay.io/prometheuscommunity/elasticsearch-exporter:latest
+prometheus Up 2 minutes prom/prometheus:v2.37.0
+mosquitto Up 2 minutes ghcr.io/world-meteorological-organization/wis2box-broker:1.3.0
+wis2box-webapp Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-webapp:1.3.0
```
-Ces conteneurs font partie de la pile logicielle wis2box et fournissent les différents services nécessaires pour exécuter le wis2box.
+Ces conteneurs font partie de la pile logicielle wis2box et fournissent les différents services nécessaires au fonctionnement de wis2box.
-Exécutez la commande suivante pour voir les volumes Docker actifs sur votre machine hôte :
+Exécutez la commande suivante pour voir les volumes Docker en cours d'exécution sur votre machine hôte :
```{.copy}
docker volume ls
@@ -247,7 +245,7 @@ Les volumes commençant par `wis2box_project_` sont utilisés pour stocker des d
## wis2box API
-Le wis2box contient une API (Interface de Programmation d'Applications) qui fournit un accès aux données et des processus pour la visualisation interactive, la transformation des données et leur publication.
+Le wis2box contient une API (Interface de Programmation d'Application) qui fournit un accès aux données et des processus pour la visualisation interactive, la transformation des données et leur publication.
Ouvrez un nouvel onglet et accédez à la page `http://YOUR-HOST/oapi`.
@@ -280,7 +278,7 @@ Ceci est la page d'accueil de l'API wis2box (exécutée via le conteneur **wis2b
Cliquez sur "Data notifications", puis cliquez sur `Browse through the items of "Data Notifications"`.
- Vous noterez que la page indique "No items" car aucune notification de données n'a encore été publiée.
+ Vous remarquerez que la page indique "No items" car aucune notification de données n'a encore été publiée.
## wis2box webapp
@@ -296,22 +294,22 @@ Vous verrez une fenêtre contextuelle demandant votre nom d'utilisateur et votre
cat ~/wis2box/wis2box.env | grep WIS2BOX_WEBAPP_PASSWORD
```
-Une fois connecté, déplacez votre souris sur le menu à gauche pour voir les options disponibles dans l'application web wis2box :
+Une fois connecté, déplacez votre souris vers le menu à gauche pour voir les options disponibles dans l'application web wis2box :
Ceci est l'application web wis2box qui vous permet d'interagir avec votre wis2box :
- créer et gérer des ensembles de données
-- mettre à jour/vérifier les métadonnées de vos stations
-- télécharger des observations manuelles en utilisant le formulaire synop FM-12
+- mettre à jour/revoir les métadonnées de vos stations
+- télécharger des observations manuelles en utilisant le formulaire FM-12 synop
- surveiller les notifications publiées sur votre wis2box-broker
Nous utiliserons cette application web dans une session ultérieure.
## wis2box-broker
-Ouvrez le MQTT Explorer sur votre ordinateur et préparez une nouvelle connexion pour vous connecter à votre broker (exécuté via le conteneur **wis2box-broker**).
+Ouvrez MQTT Explorer sur votre ordinateur et préparez une nouvelle connexion pour vous connecter à votre broker (exécuté via le conteneur **wis2box-broker**).
Cliquez sur `+` pour ajouter une nouvelle connexion :
@@ -348,23 +346,24 @@ Utilisez les détails de connexion suivants, en veillant à remplacer la valeur
Notez que ceci est votre mot de passe **interne** pour le broker. Le Global Broker utilisera des identifiants différents (en lecture seule) pour s'abonner à votre broker. Ne partagez jamais ce mot de passe avec qui que ce soit.
-Assurez-vous de cliquer sur "SAVE" pour enregistrer vos détails de connexion.
+Assurez-vous de cliquer sur "SAVE" pour enregistrer les détails de votre connexion.
-Ensuite, cliquez sur "CONNECT" pour vous connecter à votre **wis2box-broker**.
+Puis cliquez sur "CONNECT" pour vous connecter à votre **wis2box-broker**.
-
-```
+
-Une fois connecté, vérifiez que les statistiques internes de mosquitto sont publiées par votre broker sous le sujet `$SYS` :
+Une fois connecté, vous verrez les statistiques internes de mosquitto publiées par votre broker sous le sujet `$SYS` :
-Gardez MQTT Explorer ouvert, car nous l'utiliserons pour surveiller les messages publiés sur le broker.
+La même connexion peut également être réalisée en utilisant MQTT via WebSockets sur le port 80, avec les détails de connexion suivants :
+
+
## Conclusion
!!! success "Félicitations !"
- Au cours de cette session pratique, vous avez appris à :
+ Dans cette session pratique, vous avez appris à :
- exécuter le script `wis2box-create-config.py` pour créer la configuration initiale
- démarrer wis2box et vérifier l'état de ses composants
diff --git a/documentation/docs/ru/practical-sessions/accessing-your-student-vm.md b/documentation/docs/ru/practical-sessions/accessing-your-student-vm.md
index cab2abac9..4c65e28a0 100644
--- a/documentation/docs/ru/practical-sessions/accessing-your-student-vm.md
+++ b/documentation/docs/ru/practical-sessions/accessing-your-student-vm.md
@@ -1,22 +1,22 @@
---
-title: Доступ к вашей учебной виртуальной машине
+title: Доступ к вашей учебной виртуальной машине (VM)
---
-# Доступ к вашей учебной виртуальной машине
+# Доступ к вашей учебной виртуальной машине (VM)
!!! abstract "Результаты обучения"
- К концу этой практической сессии вы сможете:
+ По окончании данного практического занятия вы сможете:
- - получить доступ к вашей учебной виртуальной машине через SSH и WinSCP
- - проверить, что необходимое программное обеспечение для выполнения практических упражнений установлено
- - убедиться, что у вас есть доступ к материалам для упражнений на вашей локальной учебной виртуальной машине
+ - подключаться к своей учебной виртуальной машине через SSH и WinSCP
+ - проверять наличие установленного необходимого программного обеспечения для выполнения практических упражнений
+ - проверять доступ к материалам упражнений для данного обучения на вашей локальной учебной виртуальной машине
## Введение
-В рамках локальных семинаров по обучению WIS2 вы можете получить доступ к вашей персональной учебной виртуальной машине в локальной учебной сети под названием "WIS2-training".
+В рамках локальных семинаров по обучению WIS2 вы можете получить доступ к своей персональной учебной виртуальной машине в локальной учебной сети под названием "WIS2-training".
-На вашей учебной виртуальной машине предустановлено следующее программное обеспечение:
+На вашей учебной виртуальной машине предварительно установлено следующее программное обеспечение:
- Ubuntu 22.04 LTS [ubuntu-22.04.5-live-server-amd64.iso](https://releases.ubuntu.com/jammy/ubuntu-22.04.5-live-server-amd64.iso)
- Python 3.10.12
@@ -26,7 +26,7 @@ title: Доступ к вашей учебной виртуальной маши
!!! note
- Если вы хотите пройти это обучение вне локальной сессии, вы можете создать собственный экземпляр, используя любого облачного провайдера, например:
+ Если вы хотите пройти это обучение вне локальной учебной сессии, вы можете использовать собственный экземпляр, предоставленный любым облачным провайдером, например:
- GCP (Google Cloud Platform) VM instance `e2-medium`
- AWS (Amazon Web Services) ec2-instance `t3a.medium`
@@ -39,13 +39,13 @@ title: Доступ к вашей учебной виртуальной маши
Архив релиза wis2box, используемый в этом обучении, можно скачать следующим образом:
```bash
- wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.2.0/wis2box-setup-1.2.0.zip
- unzip wis2box-setup-1.2.0.zip
+ wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.3.0/wis2box-setup-1.3.0.zip
+ unzip wis2box-setup-1.3.0.zip
```
Вы всегда можете найти последний архив 'wis2box-setup' по адресу [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases).
- Материалы для упражнений, используемые в этом обучении, можно скачать следующим образом:
+ Материалы упражнений, используемые в этом обучении, можно скачать следующим образом:
```bash
wget https://training.wis2box.wis.wmo.int/exercise-materials.zip
@@ -56,24 +56,24 @@ title: Доступ к вашей учебной виртуальной маши
```bash
pip3 install minio
- pip3 install pywiscat==0.4.0
+ pip3 install pywiscat
```
- Если вы используете учебную виртуальную машину, предоставленную во время локальных сессий обучения WIS2, необходимое программное обеспечение уже будет установлено.
+ Если вы используете учебную виртуальную машину, предоставленную во время локальных учебных сессий WIS2, необходимое программное обеспечение уже будет установлено.
## Подключение к вашей учебной виртуальной машине в локальной учебной сети
-Подключите ваш ПК к локальной Wi-Fi сети, транслируемой в помещении во время обучения WIS2, согласно инструкциям, предоставленным тренером.
+Подключите ваш ПК к локальной Wi-Fi сети, раздаваемой в помещении во время обучения WIS2, согласно инструкциям, предоставленным тренером.
Используйте SSH-клиент для подключения к вашей учебной виртуальной машине, используя следующие данные:
-- **Хост: (предоставляется во время очного обучения)**
-- **Порт: 22**
-- **Имя пользователя: (предоставляется во время очного обучения)**
-- **Пароль: (предоставляется во время очного обучения)**
+- **Host: (предоставляется во время очного обучения)**
+- **Port: 22**
+- **Username: (предоставляется во время очного обучения)**
+- **Password: (предоставляется во время очного обучения)**
!!! tip
- Обратитесь к тренеру, если вы не уверены в имени хоста/пользователя или у вас возникли проблемы с подключением.
+ Обратитесь к тренеру, если вы не уверены в имени хоста/имени пользователя или у вас возникли проблемы с подключением.
После подключения измените ваш пароль, чтобы другие не могли получить доступ к вашей виртуальной машине:
@@ -88,7 +88,7 @@ passwd: password updated successfully
## Проверка версий программного обеспечения
-Для работы с wis2box на учебной виртуальной машине должны быть предустановлены Python, Docker и Docker Compose.
+Для работы с wis2box на учебной виртуальной машине должны быть предварительно установлены Python, Docker и Docker Compose.
Проверьте версию Python:
```bash
@@ -117,14 +117,14 @@ docker compose version
Docker Compose version v2.21.0
```
-Чтобы ваш пользователь мог выполнять команды Docker, он был добавлен в группу `docker`.
+Чтобы ваш пользователь мог выполнять команды Docker, он был добавлен в группу `docker`.
-Для проверки, что ваш пользователь может запускать Docker, выполните следующую команду:
+Для проверки возможности выполнения команд Docker выполните следующую команду:
```bash
docker run hello-world
```
-Эта команда загрузит образ hello-world и запустит контейнер, который выведет сообщение.
+Эта команда должна загрузить образ hello-world и запустить контейнер, который выведет сообщение.
Убедитесь, что в выводе отображается следующее:
@@ -135,9 +135,9 @@ This message shows that your installation appears to be working correctly.
...
```
-## Ознакомление с материалами для упражнений
+## Проверка материалов упражнений
-Ознакомьтесь с содержимым вашего домашнего каталога; это материалы, используемые в рамках обучения и практических занятий.
+Проверьте содержимое вашего домашнего каталога; это материалы, используемые в рамках обучения и практических занятий.
```bash
ls ~/
@@ -147,9 +147,9 @@ ls ~/
exercise-materials wis2box
```
-Если на вашем локальном ПК установлен WinSCP, вы можете использовать его для подключения к вашей учебной виртуальной машине, чтобы просмотреть содержимое вашего домашнего каталога, а также загружать или выгружать файлы между вашей виртуальной машиной и локальным ПК.
+Если на вашем локальном ПК установлен WinSCP, вы можете использовать его для подключения к вашей учебной виртуальной машине, проверки содержимого домашнего каталога, а также загрузки или выгрузки файлов между вашей виртуальной машиной и локальным ПК.
-WinSCP не обязателен для обучения, но может быть полезен, если вы хотите редактировать файлы на вашей виртуальной машине с помощью текстового редактора на вашем локальном ПК.
+WinSCP не является обязательным для обучения, но может быть полезным, если вы хотите редактировать файлы на виртуальной машине с помощью текстового редактора на вашем локальном ПК.
Вот как можно подключиться к вашей учебной виртуальной машине с помощью WinSCP:
@@ -164,8 +164,8 @@ WinSCP не обязателен для обучения, но может быт
## Заключение
!!! success "Поздравляем!"
- В ходе этой практической сессии вы научились:
+ В рамках данного практического занятия вы научились:
- - получать доступ к вашей учебной виртуальной машине через SSH и WinSCP
- - проверять, что необходимое программное обеспечение для выполнения практических упражнений установлено
- - проверять, что у вас есть доступ к материалам для упражнений на вашей локальной учебной виртуальной машине
\ No newline at end of file
+ - подключаться к вашей учебной виртуальной машине через SSH и WinSCP
+ - проверять наличие установленного необходимого программного обеспечения для выполнения практических упражнений
+ - проверять доступ к материалам упражнений для данного обучения на вашей локальной учебной виртуальной машине
\ No newline at end of file
diff --git a/documentation/docs/ru/practical-sessions/adding-gts-headers-to-wis2-notifications.md b/documentation/docs/ru/practical-sessions/adding-gts-headers-to-wis2-notifications.md
index 07536d6b2..1e17bb0a9 100644
--- a/documentation/docs/ru/practical-sessions/adding-gts-headers-to-wis2-notifications.md
+++ b/documentation/docs/ru/practical-sessions/adding-gts-headers-to-wis2-notifications.md
@@ -1,24 +1,25 @@
---
-title: Добавление заголовков GTS в уведомления WIS2
+title: Добавление заголовков GTS к уведомлениям WIS2
---
-# Добавление заголовков GTS в уведомления WIS2
+# Добавление заголовков GTS к уведомлениям WIS2
-!!! abstract "Учебные результаты"
+!!! abstract "Результаты обучения"
- К концу этой практической сессии вы сможете:
+ К концу практического занятия вы сможете:
- - настроить соответствие между именем файла и заголовками GTS
- - загрузить данные с именем файла, соответствующим заголовкам GTS
- - просмотреть заголовки GTS в уведомлениях WIS2
+ - настроить сопоставление между именем файла и заголовками GTS
+ - загружать данные с именем файла, соответствующим заголовкам GTS
+ - просматривать заголовки GTS в уведомлениях WIS2
+ - использовать форму FM-12 SYNOP для ручного добавления заголовков GTS к уведомлению WIS2
## Введение
-Члены ВМО, желающие прекратить передачу данных по GTS в переходный период к WIS2, должны добавить заголовки GTS в свои уведомления WIS2. Эти заголовки позволяют шлюзу WIS2 к GTS пересылать данные в сеть GTS.
+Члены ВМО, желающие прекратить передачу своих данных через GTS в переходный период к WIS2, должны добавить заголовки GTS к своим уведомлениям WIS2. Эти заголовки позволяют шлюзу WIS2 к GTS перенаправлять данные в сеть GTS.
-Это позволяет членам, перешедшим на использование узла WIS2 для публикации данных, отключить свою систему MSS и гарантировать, что их данные все еще доступны членам, которые еще не перешли на WIS2.
+Это позволяет членам, которые перешли на использование узла WIS2 для публикации данных, отключить свою систему MSS и гарантировать, что их данные остаются доступными для членов, которые еще не перешли на WIS2.
-Свойство GTS в сообщении уведомления WIS2 должно быть добавлено как дополнительное свойство к сообщению уведомления WIS2. Свойство GTS представляет собой объект JSON, который содержит необходимые заголовки GTS для пересылки данных в сеть GTS.
+Свойство GTS в уведомлении WIS2 должно быть добавлено как дополнительное свойство к сообщению уведомления WIS2. Свойство GTS — это объект JSON, содержащий заголовки GTS, необходимые для передачи данных в сеть GTS.
```json
{
@@ -29,45 +30,55 @@ title: Добавление заголовков GTS в уведомления W
}
```
-В рамках wis2box вы можете автоматически добавить это в уведомления WIS2, предоставив дополнительный файл с именем `gts_headers_mapping.csv`, который содержит необходимую информацию для сопоставления заголовков GTS с входящими именами файлов.
+В рамках wis2box вы можете автоматически добавлять это к уведомлениям WIS2, предоставив дополнительный файл с именем `gts_headers_mapping.csv`, который содержит необходимую информацию для сопоставления заголовков GTS с входящими именами файлов.
-Этот файл должен быть размещен в каталоге, определенном `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`, и должен иметь следующие столбцы:
+Этот файл должен быть размещен в каталоге, определенном переменной `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`, и должен содержать следующие столбцы:
-- `string_in_filepath`: строка, которая является частью имени файла, которая будет использоваться для сопоставления с заголовками GTS
-- `TTAAii`: заголовок TTAAii, который должен быть добавлен в уведомление WIS2
-- `CCCC`: заголовок CCCC, который должен быть добавлен в уведомление WIS2
+- `string_in_filepath`: строка, которая является частью имени файла и будет использоваться для сопоставления заголовков GTS
+- `TTAAii`: заголовок TTAAii, который будет добавлен к уведомлению WIS2
+- `CCCC`: заголовок CCCC, который будет добавлен к уведомлению WIS2
+
+Начиная с версии wis2box-1.3.0, издатели данных имеют два варианта (опционально) добавления свойств GTS к своим уведомлениям:
+
+1. Для файлов, загружаемых в MinIO, подготовьте файл сопоставления `gts_headers_mappings.csv` с необходимыми свойствами.
+
+2. Для ввода данных с использованием формы FM-12 SYNOP в wis2box-webapp выберите опцию `Add GTS headers` и введите данные вручную.
## Подготовка
-Убедитесь, что у вас есть доступ по SSH к вашей учебной виртуальной машине и что ваш экземпляр wis2box работает.
+Убедитесь, что у вас есть доступ по SSH к вашей виртуальной машине студента и что ваш экземпляр wis2box запущен и работает.
-Убедитесь, что вы подключены к брокеру MQTT вашего экземпляра wis2box с использованием MQTT Explorer. Вы можете использовать общедоступные учетные данные `everyone/everyone` для подключения к брокеру.
+Убедитесь, что вы подключены к MQTT брокеру вашего экземпляра wis2box с использованием MQTT Explorer. Вы можете использовать публичные учетные данные `everyone/everyone` для подключения к брокеру.
-Убедитесь, что у вас открыт веб-браузер с дашбордом Grafana для вашего экземпляра, перейдя по адресу `http://YOUR-HOST:3000`
+Убедитесь, что у вас открыт веб-браузер с панелью управления Grafana для вашего экземпляра, перейдя по адресу `http://YOUR-HOST:3000`.
-## создание `gts_headers_mapping.csv`
+## Упражнение 1: Использование файла сопоставления для данных, загружаемых в MinIO
-Для добавления заголовков GTS в уведомления WIS2 требуется CSV-файл, который сопоставляет заголовки GTS с входящими именами файлов.
+Первое упражнение продемонстрирует, как добавлять заголовки GTS для данных, загружаемых в MinIO, с использованием файла сопоставления с именем `gts_headers_mapping.csv`.
-CSV-файл должен быть назван (точно) `gts_headers_mapping.csv` и должен быть размещен в каталоге, определенном `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`.
+### создание `gts_headers_mapping.csv`
-## Предоставление файла `gts_headers_mapping.csv`
-
-Скопируйте файл `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` в ваш экземпляр wis2box и разместите его в каталоге, определенном `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`.
+Для добавления заголовков GTS к уведомлениям WIS2 требуется CSV-файл, который сопоставляет заголовки GTS с входящими именами файлов.
+
+CSV-файл должен быть назван (точно) `gts_headers_mapping.csv` и размещен в каталоге, определенном переменной `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`.
+
+Скопируйте файл `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` в ваш экземпляр wis2box и поместите его в каталог, определенный переменной `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`.
```bash
cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data
```
-Затем перезапустите контейнер wis2box-management, чтобы применить изменения:
+### Применение сопоставлений
+
+После создания файла `gts_headers_mapping.csv` необходимо перезапустить контейнер wis2box-management, чтобы применить изменения. Вы можете сделать это, выполнив следующую команду в вашей виртуальной машине студента:
```bash
docker restart wis2box-management
```
-## Загрузка данных с заголовками GTS
+### Загрузка данных с заголовками GTS
-Скопируйте файл `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` в каталог, определенный `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`:
+Скопируйте файл `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` в каталог, определенный переменной `WIS2BOX_HOST_DATADIR` в вашем `wis2box.env`:
```bash
cp ~/exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt ~/wis2box-data
@@ -80,25 +91,63 @@ cd ~/wis2box
python3 wis2box-ctl.py login
```
-Из командной строки wis2box мы можем загрузить образец файла данных `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` в определенный набор данных следующим образом:
+Из командной строки wis2box мы можем загрузить пример файла данных `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` в определенный набор данных следующим образом:
```bash
wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt --metadata-id urn:wmo:md:not-my-centre:core.surface-based-observations.synop
```
-Убедитесь, что вы заменили параметр `metadata-id` на правильный идентификатор для вашего набора данных.
+Обязательно замените параметр `metadata-id` на правильный идентификатор для вашего набора данных.
-Проверьте дашборд Grafana, чтобы увидеть, были ли данные загружены правильно. Если вы видите какие-либо ПРЕДУПРЕЖДЕНИЯ или ОШИБКИ, попробуйте их исправить и повторите команду `wis2box data ingest`.
+Проверьте панель управления Grafana, чтобы убедиться, что данные были загружены корректно. Если вы видите какие-либо ПРЕДУПРЕЖДЕНИЯ или ОШИБКИ, попробуйте их исправить и повторите команду `wis2box data ingest`.
-## Просмотр заголовков GTS в уведомлении WIS2
+### Просмотр заголовков GTS в уведомлении WIS2
Перейдите в MQTT Explorer и проверьте сообщение уведомления WIS2 для данных, которые вы только что загрузили.
Сообщение уведомления WIS2 должно содержать заголовки GTS, которые вы указали в файле `gts_headers_mapping.csv`.
+## Упражнение 2: Использование формы FM-12 SYNOP
+
+При использовании формы FM-12 SYNOP в wis2box-webapp вы можете вручную добавлять заголовки GTS к своим уведомлениям WIS2, выбрав опцию "Add GTS headers" и предоставив необходимую информацию.
+
+Для этого упражнения вы можете использовать приведенные ниже примерные данные или предоставить свои собственные:
+
+Сообщение FM-12 SYNOP:
+
+```{copy}
+AAXX 03094
+64400 42460 71004 10285 20245 30113 40133 8493/
+ 333 59005 83813 81930 87363 94966 95836=
+```
+
+Заголовки GTS: TTAAii=`ISIH01` и CCCC=`FCBB`
+
+!!! note
+ Плагин synop2bufr в wis2box преобразует сообщения FM-12 SYNOP в BUFR, поэтому TTAAii должен начинаться с `IS`:
+
+ - I = Наблюдательные данные (в бинарном коде) – BUFR
+ - S = Поверхностные/на уровне моря
+
+### Ручная отправка формы FM-12 SYNOP с заголовками GTS
+
+Перейдите к форме FM-12 SYNOP в wis2box-webapp и заполните форму с приведенными выше примерными данными или используйте свои собственные.
+
+Обязательно выберите опцию "Add GTS headers" и предоставьте необходимую информацию о заголовках GTS:
+
+
+
+Предоставьте необходимый токен аутентификации и отправьте форму.
+
+Вероятно, вы увидите сообщение об ошибке, так как эта станция отсутствует в вашем списке станций. Вам нужно будет добавить станцию "0-20000-0-64400" в ваш список станций, чтобы данные были успешно преобразованы и опубликованы.
+
+### Просмотр заголовков GTS в уведомлении WIS2
+
+Перейдите в MQTT Explorer и проверьте сообщение уведомления WIS2 для данных, которые вы только что загрузили, чтобы убедиться, что заголовки GTS включены в уведомление.
+
## Заключение
!!! success "Поздравляем!"
- В ходе этой практической сессии вы научились:
- - добавлять заголовки GTS в уведомления WIS2
+ В этом практическом занятии вы научились:
+ - добавлять заголовки GTS к уведомлениям WIS2
- проверять, что заголовки GTS доступны через вашу установку wis2box
\ No newline at end of file
diff --git a/documentation/docs/ru/practical-sessions/connecting-to-wis2-over-mqtt.md b/documentation/docs/ru/practical-sessions/connecting-to-wis2-over-mqtt.md
index 05cb7416d..bbf6efc69 100644
--- a/documentation/docs/ru/practical-sessions/connecting-to-wis2-over-mqtt.md
+++ b/documentation/docs/ru/practical-sessions/connecting-to-wis2-over-mqtt.md
@@ -6,11 +6,11 @@ title: Подключение к WIS2 через MQTT
!!! abstract "Результаты обучения"
- К концу этого практического занятия вы сможете:
+ К концу практического занятия вы сможете:
- - подключаться к WIS2 Global Broker с использованием MQTT Explorer
- - изучать структуру тем WIS2
- - анализировать структуру уведомлений WIS2
+ - подключиться к WIS2 Global Broker с помощью MQTT Explorer
+ - изучить структуру тем WIS2
+ - изучить структуру уведомлений WIS2
## Введение
@@ -57,24 +57,24 @@ WIS2 использует протокол MQTT для уведомления о
"href":"https://oscar.wmo.int/surface/#/search/station/stationReportDetails/0-20000-0-76679"
}
],
- "generated_by":"wis2box 1.2.0"
+ "generated_by":"wis2box 1.3.0"
}
```
-В этом практическом занятии вы научитесь использовать инструмент MQTT Explorer для настройки подключения клиента MQTT к WIS2 Global Broker и отображения уведомлений WIS2.
+В этом практическом занятии вы научитесь использовать инструмент MQTT Explorer для настройки клиентского подключения MQTT к WIS2 Global Broker и сможете отображать уведомления WIS2.
-MQTT Explorer — это полезный инструмент для просмотра и анализа структуры тем для заданного брокера MQTT, а также для анализа публикуемых данных.
+MQTT Explorer — полезный инструмент для просмотра и анализа структуры тем для заданного брокера MQTT, а также для анализа публикуемых данных.
!!! note "О MQTT"
MQTT Explorer предоставляет удобный интерфейс для подключения к брокеру MQTT и изучения тем и структуры сообщений, используемых в WIS2.
На практике MQTT предназначен для машинного взаимодействия, где приложение или сервис подписывается на темы и обрабатывает сообщения программно в реальном времени.
- Для работы с MQTT программно (например, на Python) вы можете использовать библиотеки клиента MQTT, такие как [paho-mqtt](https://pypi.org/project/paho-mqtt), чтобы подключаться к брокеру MQTT и обрабатывать входящие сообщения. Существует множество программных решений для клиентов и серверов MQTT, в зависимости от ваших требований и технической среды.
+ Для работы с MQTT программно (например, на Python) можно использовать клиентские библиотеки MQTT, такие как [paho-mqtt](https://pypi.org/project/paho-mqtt), чтобы подключиться к брокеру MQTT и обрабатывать входящие сообщения. Существует множество клиентских и серверных программ MQTT, в зависимости от ваших требований и технической среды.
## Использование MQTT Explorer для подключения к Global Broker
-Чтобы просматривать сообщения, публикуемые WIS2 Global Broker, вы можете использовать "MQTT Explorer", который можно скачать с [веб-сайта MQTT Explorer](https://mqtt-explorer.com).
+Чтобы просмотреть сообщения, публикуемые WIS2 Global Broker, вы можете использовать "MQTT Explorer", который можно скачать с [веб-сайта MQTT Explorer](https://mqtt-explorer.com).
Откройте MQTT Explorer и добавьте новое подключение к Global Broker, размещенному MeteoFrance, используя следующие данные:
@@ -92,22 +92,22 @@ MQTT Explorer — это полезный инструмент для просм
!!! note
- При настройке подписок MQTT вы можете использовать следующие подстановочные знаки:
+ При настройке подписок MQTT можно использовать следующие подстановочные знаки:
- - **Одноуровневый (+)**: подстановочный знак для одного уровня темы
- - **Многоуровневый (#)**: подстановочный знак для нескольких уровней темы
+ - **Одноуровневый (+)**: одноуровневый подстановочный знак заменяет один уровень темы
+ - **Многоуровневый (#)**: многоуровневый подстановочный знак заменяет несколько уровней темы
- В данном случае `origin/a/wis2/#` подпишется на все темы под `origin/a/wis2`.
+ В данном случае `origin/a/wis2/#` будет подписываться на все темы под `origin/a/wis2`.
Нажмите 'BACK', затем 'SAVE', чтобы сохранить данные подключения и подписки. Затем нажмите 'CONNECT':
-Сообщения должны начать появляться в вашей сессии MQTT Explorer следующим образом:
+Сообщения должны начать появляться в вашем сеансе MQTT Explorer следующим образом:
-Теперь вы готовы начать изучение тем и структуры сообщений WIS2.
+Теперь вы готовы начать изучение тем WIS2 и структуры сообщений.
-## Упражнение 1: Анализ структуры тем WIS2
+## Упражнение 1: Изучение структуры тем WIS2
Используйте MQTT для просмотра структуры тем под темами `origin`.
@@ -119,25 +119,25 @@ MQTT Explorer — это полезный инструмент для просм
Вы можете нажать на окно слева в MQTT Explorer, чтобы развернуть структуру тем.
- Мы можем определить WIS-центр, который опубликовал данные, посмотрев на четвертый уровень структуры тем. Например, следующая тема:
+ Мы можем определить WIS-центр, который опубликовал данные, посмотрев на четвертый уровень структуры темы. Например, следующая тема:
`origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`
- говорит нам, что данные были опубликованы WIS-центром с идентификатором `br-inmet`, который соответствует Instituto Nacional de Meteorologia - INMET, Бразилия.
+ говорит нам, что данные были опубликованы WIS-центром с идентификатором центра `br-inmet`, который соответствует Instituto Nacional de Meteorologia - INMET, Бразилия.
!!! question
- Как можно отличить сообщения, опубликованные WIS-центрами, которые размещают шлюз GTS-to-WIS2, от сообщений, опубликованных WIS-центрами, которые размещают WIS2 Node?
+ Как можно отличить сообщения, опубликованные WIS-центрами, которые размещают шлюз GTS-to-WIS2, от сообщений, опубликованных WIS-центрами, которые размещают узел WIS2?
??? success "Нажмите, чтобы увидеть ответ"
- Мы можем отличить сообщения, поступающие от шлюза GTS-to-WIS2, посмотрев на идентификатор центра в структуре тем. Например, следующая тема:
+ Мы можем отличить сообщения, поступающие от шлюза GTS-to-WIS2, посмотрев на идентификатор центра в структуре темы. Например, следующая тема:
`origin/a/wis2/de-dwd-gts-to-wis2/data/core/I/S/A/I/01/sbbr`
- говорит нам, что данные были опубликованы шлюзом GTS-to-WIS2, размещенным Deutscher Wetterdienst (DWD), Германия. Шлюз GTS-to-WIS2 — это специальный тип издателя данных, который публикует данные из Global Telecommunication System (GTS) в WIS2. Структура темы состоит из заголовков TTAAii CCCC для сообщений GTS.
+ говорит нам, что данные были опубликованы шлюзом GTS-to-WIS2, размещенным Deutscher Wetterdienst (DWD), Германия. Шлюз GTS-to-WIS2 — это особый тип издателя данных, который публикует данные из Global Telecommunication System (GTS) в WIS2. Структура темы состоит из заголовков TTAAii CCCC для сообщений GTS.
-## Упражнение 2: Анализ структуры сообщений WIS2
+## Упражнение 2: Изучение структуры сообщений WIS2
Отключитесь от MQTT Explorer и обновите раздел 'Advanced', чтобы изменить подписку на следующие темы:
@@ -151,7 +151,7 @@ MQTT Explorer — это полезный инструмент для просм
Подключитесь снова к Global Broker и дождитесь появления сообщений.
-Вы можете просмотреть содержимое сообщения WIS2 в разделе "Value" справа. Попробуйте развернуть структуру тем, чтобы увидеть различные уровни сообщения, пока не дойдете до последнего уровня, и изучите содержимое одного из сообщений.
+Вы можете просмотреть содержимое сообщения WIS2 в разделе "Value" справа. Попробуйте развернуть структуру темы, чтобы увидеть различные уровни сообщения, пока не достигнете последнего уровня, и изучите содержимое одного из сообщений.
!!! question
@@ -167,19 +167,19 @@ MQTT Explorer — это полезный инструмент для просм
!!! question
- Как можно скачать данные по URL, указанному в сообщении?
+ Как можно загрузить данные из URL, указанного в сообщении?
??? success "Нажмите, чтобы увидеть ответ"
URL содержится в разделе `links` с `rel="canonical"` и определяется ключом `href`.
- Вы можете скопировать URL и вставить его в веб-браузер, чтобы скачать данные.
+ Вы можете скопировать URL и вставить его в веб-браузер, чтобы загрузить данные.
-## Упражнение 3: Анализ различий между темами 'origin' и 'cache'
+## Упражнение 3: Изучение различий между темами 'origin' и 'cache'
Убедитесь, что вы все еще подключены к Global Broker, используя подписки на темы `origin/a/wis2/+/data/core/weather/surface-based-observations/synop` и `cache/a/wis2/+/data/core/weather/surface-based-observations/synop`, как описано в Упражнении 2.
-Попробуйте найти сообщение для одного и того же идентификатора центра, опубликованное как в темах `origin`, так и в темах `cache`.
+Попробуйте найти сообщение для одного и того же идентификатора центра, опубликованное как в теме `origin`, так и в теме `cache`.
!!! question
@@ -189,20 +189,20 @@ MQTT Explorer — это полезный инструмент для просм
Сообщения, опубликованные в темах `origin`, — это оригинальные сообщения, которые Global Broker перепубликовывает из WIS2 Nodes в сети.
- Сообщения, опубликованные в темах `cache`, — это сообщения для данных, которые были загружены Global Cache. Если вы проверите содержимое сообщения из темы, начинающейся с `cache`, вы увидите, что ссылка 'canonical' была обновлена на новый URL.
+ Сообщения, опубликованные в темах `cache`, — это сообщения, для которых данные были загружены Global Cache. Если вы проверите содержимое сообщения из темы, начинающейся с `cache`, вы увидите, что ссылка 'canonical' была обновлена на новый URL.
В сети WIS2 существует несколько Global Cache, поэтому вы получите одно сообщение от каждого Global Cache, который загрузил сообщение.
- Global Cache загружает и перепубликовывает только сообщения, которые были опубликованы в иерархии тем `../data/core/...`.
+ Global Cache будет загружать и перепубликовывать только сообщения, которые были опубликованы в иерархии тем `../data/core/...`.
## Заключение
!!! success "Поздравляем!"
В этом практическом занятии вы узнали:
- - как подписываться на сервисы WIS2 Global Broker с использованием MQTT Explorer
+ - как подписываться на сервисы WIS2 Global Broker с помощью MQTT Explorer
- структуру тем WIS2
- структуру уведомлений WIS2
- - различия между основными и рекомендованными данными
+ - различия между основными и рекомендуемыми данными
- структуру тем, используемую шлюзом GTS-to-WIS2
- различия между сообщениями Global Broker, опубликованными в темах `origin` и `cache`
\ No newline at end of file
diff --git a/documentation/docs/ru/practical-sessions/initializing-wis2box.md b/documentation/docs/ru/practical-sessions/initializing-wis2box.md
index f828a56bb..46cdeed7d 100644
--- a/documentation/docs/ru/practical-sessions/initializing-wis2box.md
+++ b/documentation/docs/ru/practical-sessions/initializing-wis2box.md
@@ -6,23 +6,23 @@ title: Инициализация wis2box
!!! abstract "Результаты обучения"
- К концу этой практической сессии вы сможете:
+ К концу этого практического занятия вы сможете:
- запустить скрипт `wis2box-create-config.py` для создания начальной конфигурации
- запустить wis2box и проверить статус его компонентов
- просмотреть содержимое **wis2box-api**
- получить доступ к **wis2box-webapp**
- - подключиться к локальному **wis2box-broker** с использованием MQTT Explorer
+ - подключиться к локальному **wis2box-broker** с помощью MQTT Explorer
!!! note
- Текущие учебные материалы основаны на версии wis2box-release 1.2.0.
+ Текущие учебные материалы основаны на версии wis2box-release 1.3.0.
- См. [accessing-your-student-vm](./accessing-your-student-vm.md) для инструкций по загрузке и установке программного стека wis2box, если вы проходите это обучение вне локальной учебной сессии.
+ См. [accessing-your-student-vm](./accessing-your-student-vm.md) для инструкций по загрузке и установке программного стека wis2box, если вы проходите обучение вне локальной учебной сессии.
## Подготовка
-Войдите в свою выделенную виртуальную машину (VM) с использованием имени пользователя и пароля и убедитесь, что вы находитесь в директории `wis2box`:
+Войдите в вашу виртуальную машину (VM) с вашим именем пользователя и паролем и убедитесь, что вы находитесь в директории `wis2box`:
```bash
cd ~/wis2box
@@ -35,9 +35,9 @@ cd ~/wis2box
- файл окружения `wis2box.env`, содержащий параметры конфигурации
- директория на хост-машине для совместного использования между хост-машиной и контейнерами wis2box, определяемая переменной окружения `WIS2BOX_HOST_DATADIR`
-Скрипт `wis2box-create-config.py` может быть использован для создания начальной конфигурации вашего wis2box.
+Скрипт `wis2box-create-config.py` может быть использован для создания начальной конфигурации вашего wis2box.
-Он задаст вам ряд вопросов для настройки конфигурации.
+Он задаст вам ряд вопросов, чтобы помочь настроить конфигурацию.
После завершения работы скрипта вы сможете просмотреть и обновить файлы конфигурации.
@@ -66,11 +66,11 @@ y
The directory /home/username/wis2box-data has been created.
```
-### URL для wis2box
+### URL wis2box
-Далее вам будет предложено ввести URL для вашего wis2box. Это URL, который будет использоваться для доступа к веб-приложению, API и пользовательскому интерфейсу wis2box.
+Далее вам будет предложено указать URL для вашего wis2box. Этот URL будет использоваться для доступа к веб-приложению, API и пользовательскому интерфейсу wis2box.
-Используйте `http://` в качестве URL.
+Пожалуйста, используйте `http://` в качестве URL.
```{.copy}
Please enter the URL of the wis2box:
@@ -82,13 +82,13 @@ The URL of the wis2box will be set to:
Is this correct? (y/n/exit)
```
-### Пароли для WEBAPP, STORAGE и BROKER
+### Пароли WEBAPP, STORAGE и BROKER
-Вы можете использовать опцию генерации случайных паролей, когда вас попросят указать `WIS2BOX_WEBAPP_PASSWORD`, `WIS2BOX_STORAGE_PASSWORD`, `WIS2BOX_BROKER_PASSWORD`, или задать свои собственные.
+Вы можете использовать опцию случайной генерации паролей, когда будет предложено указать `WIS2BOX_WEBAPP_PASSWORD`, `WIS2BOX_STORAGE_PASSWORD`, `WIS2BOX_BROKER_PASSWORD`, или задать свои собственные.
Не беспокойтесь о запоминании этих паролей, они будут сохранены в файле `wis2box.env` в вашей директории wis2box.
-### Проверка файла `wis2box.env`
+### Просмотр `wis2box.env`
После завершения работы скрипта проверьте содержимое файла `wis2box.env` в вашей текущей директории:
@@ -106,7 +106,7 @@ cat ~/wis2box/wis2box.env
Значение по умолчанию для WIS2BOX_BASEMAP_URL — `https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`.
- Этот URL ссылается на сервер тайлов OpenStreetMap. Если вы хотите использовать другого поставщика карт, вы можете изменить этот URL, чтобы он указывал на другой сервер тайлов.
+ Этот URL относится к серверу тайлов OpenStreetMap. Если вы хотите использовать другого поставщика карт, вы можете изменить этот URL, чтобы указать другой сервер тайлов.
!!! question
@@ -116,7 +116,7 @@ cat ~/wis2box/wis2box.env
Значение по умолчанию для WIS2BOX_STORAGE_DATA_RETENTION_DAYS — 30 дней. Вы можете изменить это значение на другое количество дней, если хотите.
- Контейнер wis2box-management выполняет ежедневную задачу cron для удаления данных, старше указанного количества дней, из корзины `wis2box-public` и API-бэкенда:
+ Контейнер wis2box-management выполняет ежедневное задание cron для удаления данных, старше указанного количества дней, из корзины `wis2box-public` и бэкенда API:
```{.copy}
0 0 * * * su wis2box -c "wis2box data clean --days=$WIS2BOX_STORAGE_DATA_RETENTION_DAYS"
@@ -126,7 +126,7 @@ cat ~/wis2box/wis2box.env
Файл `wis2box.env` содержит переменные окружения, определяющие конфигурацию вашего wis2box. Для получения дополнительной информации обратитесь к [wis2box-documentation](https://docs.wis2box.wis.wmo.int/en/latest/reference/configuration.html).
- Не редактируйте файл `wis2box.env`, если вы не уверены в вносимых изменениях. Неправильные изменения могут привести к прекращению работы вашего wis2box.
+ Не редактируйте файл `wis2box.env`, если вы не уверены в изменениях, которые вносите. Неправильные изменения могут привести к тому, что ваш wis2box перестанет работать.
Не делитесь содержимым вашего файла `wis2box.env` с кем-либо, так как он содержит конфиденциальную информацию, такую как пароли.
@@ -148,11 +148,11 @@ python3 wis2box-ctl.py start
```
No docker-compose.images-*.yml files found, creating one
-Current version=Undefined, latest version=1.2.0
+Current version=Undefined, latest version=1.3.0
Would you like to update ? (y/n/exit)
```
-Выберите ``y``, и скрипт создаст файл ``docker-compose.images-1.2.0.yml``, загрузит необходимые образы Docker и запустит сервисы.
+Выберите ``y``, и скрипт создаст файл ``docker-compose.images-1.3.0.yml``, загрузит необходимые образы Docker и запустит сервисы.
Загрузка образов может занять некоторое время в зависимости от скорости вашего интернет-соединения. Этот шаг требуется только при первом запуске wis2box.
@@ -169,9 +169,9 @@ python3 wis2box-ctl.py status
Сервисы определены в различных файлах `docker-compose*.yml`, которые можно найти в директории `~/wis2box/`.
- Python-скрипт `wis2box-ctl.py` используется для выполнения базовых команд Docker Compose, управляющих сервисами wis2box.
+ Python-скрипт `wis2box-ctl.py` используется для выполнения базовых команд Docker Compose, которые управляют сервисами wis2box.
- Вам не нужно знать детали контейнеров Docker для работы с программным стеком wis2box, но вы можете изучить файлы `docker-compose*.yml`, чтобы увидеть, как определены сервисы. Если вы хотите узнать больше о Docker, вы можете найти дополнительную информацию в [документации Docker](https://docs.docker.com/).
+ Вам не нужно знать детали контейнеров Docker для запуска программного стека wis2box, но вы можете изучить файлы `docker-compose*.yml`, чтобы увидеть, как определены сервисы. Если вы хотите узнать больше о Docker, вы можете найти дополнительную информацию в [документации Docker](https://docs.docker.com/).
Чтобы войти в контейнер wis2box-management, используйте следующую команду:
@@ -179,7 +179,7 @@ python3 wis2box-ctl.py status
python3 wis2box-ctl.py login
```
-Обратите внимание, что после входа ваш приглашение изменится, указывая, что вы находитесь внутри контейнера wis2box-management:
+Обратите внимание, что после входа ваш приглашение изменится, указывая на то, что вы теперь находитесь внутри контейнера wis2box-management:
```{bash}
root@025381da3c40:/home/wis2box#
@@ -188,7 +188,7 @@ root@025381da3c40:/home/wis2box#
Внутри контейнера wis2box-management вы можете выполнять различные команды для управления вашим wis2box, такие как:
- `wis2box auth add-token --path processes/wis2box` : для создания токена авторизации для конечной точки *processes/wis2box*
-- `wis2box data clean --days=` : для очистки данных, старше определенного количества дней, из корзины *wis2box-public*
+- `wis2box data clean --days=` : для очистки данных старше определенного количества дней из корзины *wis2box-public*
Чтобы выйти из контейнера и вернуться на хост-машину, используйте следующую команду:
@@ -196,37 +196,35 @@ root@025381da3c40:/home/wis2box#
exit
```
-Выполните следующую команду, чтобы увидеть контейнеры Docker, работающие на вашей хост-машине:
+Запустите следующую команду, чтобы увидеть контейнеры Docker, работающие на вашей хост-машине:
```{.copy}
docker ps --format "table {{.Names}} \t{{.Status}} \t{{.Image}}"
```
-Вы должны увидеть следующие работающие контейнеры:
+Вы должны увидеть следующие контейнеры, работающие:
```{bash}
-NAMES STATUS IMAGE
-elasticsearch docker.elastic.co/elasticsearch/elasticsearch:8.6.2 "/bin/tini -- /usr/l…" elasticsearch About a minute ago Up About a minute (healthy) 9200/tcp, 9300/tcp
-elasticsearch-exporter quay.io/prometheuscommunity/elasticsearch-exporter:latest "/bin/elasticsearch_…" elasticsearch-exporter About a minute ago Up About a minute 7979/tcp
-grafana grafana/grafana-oss:9.0.3 "/run.sh" grafana About a minute ago Up About a minute 0.0.0.0:3000->3000/tcp
-loki grafana/loki:2.4.1 "/usr/bin/loki -conf…" loki About a minute ago Up About a minute 3100/tcp
-mosquitto ghcr.io/world-meteorological-organization/wis2box-broker:1.2.0 "/docker-entrypoint.…" mosquitto About a minute ago Up About a minute 0.0.0.0:1883->1883/tcp, 0.0.0.0:8884->8884/tcp
-mqtt_metrics_collector ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.2.0 "python3 -u mqtt_met…" mqtt_metrics_collector About a minute ago Up 10 seconds 8000/tcp, 0.0.0.0:8001->8001/tcp
-nginx nginx:alpine "/docker-entrypoint.…" web-proxy About a minute ago Up 9 seconds 0.0.0.0:80->80/tcp
-prometheus prom/prometheus:v2.37.0 "/bin/prometheus --c…" prometheus About a minute ago Up About a minute 9090/tcp
-wis2box-api ghcr.io/world-meteorological-organization/wis2box-api:1.2.0 "/app/docker/es-entr…" wis2box-api About a minute ago Up 36 seconds (healthy)
-wis2box-auth ghcr.io/world-meteorological-organization/wis2box-auth:1.2.0 "/entrypoint.sh" wis2box-auth About a minute ago Up 10 seconds
-wis2box-management ghcr.io/world-meteorological-organization/wis2box-management:1.2.0 "/home/wis2box/entry…" wis2box-management About a minute ago Up 12 seconds
-wis2box-minio minio/minio:RELEASE.2024-08-03T04-33-23Z-cpuv1 "/usr/bin/docker-ent…" minio About a minute ago Up About a minute (healthy) 0.0.0.0:8022->8022/tcp, 0.0.0.0:9000-9001->9000-9001/tcp
-wis2box-ui ghcr.io/world-meteorological-organization/wis2box-ui:1.2.0 "/docker-entrypoint.…" wis2box-ui About a minute ago Up 35 seconds 0.0.0.0:9999->80/tcp
-wis2box-webapp ghcr.io/world-meteorological-organization/wis2box-webapp:1.2.0 "sh /wis2box-webapp/…" wis2box-webapp About a minute ago Up About a minute (unhealthy) 4173/tcp
-wis2downloader ghcr.io/wmo-im/wis2downloader:v0.3.2 "/home/wis2downloade…" wis2downloader About a minute ago Up About a minute (healthy)
-
+NAMES STATUS IMAGE
+nginx Up 56 seconds nginx:1.30.1-alpine
+mqtt_metrics_collector Up 58 seconds ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.3.0
+wis2box-auth Up 59 seconds ghcr.io/world-meteorological-organization/wis2box-auth:1.3.0
+wis2box-ui Up About a minute ghcr.io/world-meteorological-organization/wis2box-ui:1.3.0
+wis2box-management Up About a minute ghcr.io/world-meteorological-organization/wis2box-management:1.3.0
+wis2box-minio Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-minio:latest
+wis2box-api Up About a minute (healthy) ghcr.io/world-meteorological-organization/wis2box-api:1.3.0
+elasticsearch Up 2 minutes (healthy) docker.elastic.co/elasticsearch/elasticsearch:8.6.2
+grafana Up 2 minutes grafana/grafana-oss:12.4.2
+loki Up 2 minutes grafana/loki:2.4.1
+elasticsearch-exporter Up 2 minutes quay.io/prometheuscommunity/elasticsearch-exporter:latest
+prometheus Up 2 minutes prom/prometheus:v2.37.0
+mosquitto Up 2 minutes ghcr.io/world-meteorological-organization/wis2box-broker:1.3.0
+wis2box-webapp Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-webapp:1.3.0
```
Эти контейнеры являются частью программного стека wis2box и предоставляют различные сервисы, необходимые для работы wis2box.
-Выполните следующую команду, чтобы увидеть тома Docker, запущенные на вашем хосте:
+Выполните следующую команду, чтобы увидеть тома Docker, работающие на вашем хосте:
```{.copy}
docker volume ls
@@ -247,7 +245,7 @@ docker volume ls
## wis2box API
-wis2box включает API (интерфейс прикладного программирования), который предоставляет доступ к данным и процессы для интерактивной визуализации, преобразования данных и их публикации.
+wis2box содержит API (интерфейс прикладного программирования), который предоставляет доступ к данным и процессы для интерактивной визуализации, преобразования данных и их публикации.
Откройте новую вкладку и перейдите на страницу `http://YOUR-HOST/oapi`.
@@ -278,9 +276,9 @@ wis2box включает API (интерфейс прикладного прог
??? success "Нажмите, чтобы увидеть ответ"
- Нажмите на "Data notifications", затем нажмите на `Browse through the items of "Data Notifications"`.
+ Нажмите на "Data notifications", затем нажмите `Browse through the items of "Data Notifications"`.
- Вы увидите, что на странице указано "No items", так как уведомления о данных еще не были опубликованы.
+ Вы увидите, что на странице написано "No items", так как уведомления о данных еще не были опубликованы.
## wis2box webapp
@@ -296,18 +294,18 @@ wis2box включает API (интерфейс прикладного прог
cat ~/wis2box/wis2box.env | grep WIS2BOX_WEBAPP_PASSWORD
```
-После входа в систему переместите курсор мыши на меню слева, чтобы увидеть доступные опции в веб-приложении wis2box:
+После входа в систему наведите курсор на меню слева, чтобы увидеть доступные опции веб-приложения wis2box:
-Это веб-приложение wis2box, которое позволяет вам взаимодействовать с вашей установкой wis2box:
+Это веб-приложение wis2box, которое позволяет вам взаимодействовать с вашим wis2box:
- создавать и управлять наборами данных
- обновлять/просматривать метаданные станций
- загружать ручные наблюдения с использованием формы FM-12 synop
-- отслеживать уведомления, опубликованные в вашем wis2box-broker
+- отслеживать уведомления, опубликованные на вашем wis2box-broker
-Мы будем использовать это веб-приложение в следующей сессии.
+Мы будем использовать это веб-приложение в следующем занятии.
## wis2box-broker
@@ -326,17 +324,17 @@ wis2box включает API (интерфейс прикладного прог
!!! note
- Тема `#` является универсальной подпиской, которая подписывается на все темы, опубликованные в брокере.
+ Тема `#` — это подписка с подстановочным знаком, которая подписывается на все темы, опубликованные на брокере.
- Сообщения, опубликованные в теме `$SYS`, являются системными сообщениями, публикуемыми самим сервисом mosquitto.
+ Сообщения, опубликованные в теме `$SYS`, — это системные сообщения, публикуемые самим сервисом mosquitto.
-Используйте следующие данные для подключения, убедившись, что вы заменили значение `` на имя вашего хоста, а `` на значение из вашего файла `wis2box.env`:
+Используйте следующие данные для подключения, убедившись, что вы заменили значение `` на имя вашего хоста, а `` — на значение из вашего файла `wis2box.env`:
-- **Протокол: mqtt://**
-- **Хост: ``**
-- **Порт: 1883**
-- **Имя пользователя: wis2box**
-- **Пароль: ``**
+- **Protocol: mqtt://**
+- **Host: ``**
+- **Port: 1883**
+- **Username: wis2box**
+- **Password: ``**
!!! note
@@ -352,20 +350,22 @@ wis2box включает API (интерфейс прикладного прог
Затем нажмите "CONNECT", чтобы подключиться к вашему **wis2box-broker**.
-
+
-После подключения проверьте, что внутренние статистические данные mosquitto публикуются вашим брокером в теме `$SYS`:
+После подключения вы увидите внутреннюю статистику mosquitto, публикуемую вашим брокером в теме `$SYS`:
-Оставьте MQTT Explorer открытым, так как мы будем использовать его для мониторинга сообщений, публикуемых на брокере.
+То же самое подключение также может быть выполнено с использованием MQTT через WebSockets на порту 80, используя следующие данные подключения:
+
+
## Заключение
!!! success "Поздравляем!"
- В ходе этой практической сессии вы узнали, как:
+ В этом практическом занятии вы узнали, как:
- запустить скрипт `wis2box-create-config.py` для создания начальной конфигурации
- запустить wis2box и проверить статус его компонентов
- - получить доступ к wis2box-webapp и wis2box-API в браузере
- - подключиться к MQTT брокеру на вашей учебной виртуальной машине с использованием MQTT Explorer
\ No newline at end of file
+ - получить доступ к wis2box-webapp и wis2box-API через браузер
+ - подключиться к MQTT-брокеру на вашей виртуальной машине с помощью MQTT Explorer
\ No newline at end of file
diff --git a/documentation/docs/zh/practical-sessions/accessing-your-student-vm.md b/documentation/docs/zh/practical-sessions/accessing-your-student-vm.md
index 62da676e9..95cda34cc 100644
--- a/documentation/docs/zh/practical-sessions/accessing-your-student-vm.md
+++ b/documentation/docs/zh/practical-sessions/accessing-your-student-vm.md
@@ -9,12 +9,12 @@ title: 访问你的学生虚拟机
在本次实践课程结束时,你将能够:
- 通过 SSH 和 WinSCP 访问你的学生虚拟机
- - 验证实践所需的软件是否已安装
- - 验证你是否可以在本地学生虚拟机上访问本次培训的练习材料
+ - 验证实践练习所需的软件是否已安装
+ - 验证你是否能够在本地学生虚拟机上访问本次培训的练习材料
## 简介
-作为本地运行的 WIS2 培训工作坊的一部分,你可以通过名为 "WIS2-training" 的本地培训网络访问你的个人学生虚拟机。
+在本地运行的 WIS2 培训工作坊中,你可以通过名为 "WIS2-training" 的本地培训网络访问你的个人学生虚拟机。
你的学生虚拟机已预安装以下软件:
@@ -22,30 +22,30 @@ title: 访问你的学生虚拟机
- Python 3.10.12
- Docker 24.0.6
- Docker Compose 2.21.0
-- 文本编辑器:vim、nano
+- 文本编辑器:vim, nano
!!! note
如果你希望在本地培训课程之外运行本次培训,可以使用任何云服务提供商提供的实例,例如:
- GCP (Google Cloud Platform) VM 实例 `e2-medium`
- - AWS (Amazon Web Services) ec2 实例 `t3a.medium`
+ - AWS (Amazon Web Services) ec2 实例 `t3a.medium`
- Azure (Microsoft) Azure 虚拟机 `standard_b2s`
选择 Ubuntu Server 22.0.4 LTS 作为操作系统。
- 创建虚拟机后,请确保已安装 python、docker 和 docker compose,如 [wis2box-software-dependencies](https://docs.wis2box.wis.wmo.int/en/latest/user/getting-started.html#software-dependencies) 中所述。
+ 创建虚拟机后,请确保已安装 python、docker 和 docker compose,具体安装步骤请参考 [wis2box-software-dependencies](https://docs.wis2box.wis.wmo.int/en/latest/user/getting-started.html#software-dependencies)。
- 本次培训使用的 wis2box 发行版可以通过以下方式下载:
+ 本次培训使用的 wis2box 发布归档文件可通过以下方式下载:
```bash
- wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.2.0/wis2box-setup-1.2.0.zip
- unzip wis2box-setup-1.2.0.zip
+ wget https://github.com/World-Meteorological-Organization/wis2box-release/releases/download/1.3.0/wis2box-setup-1.3.0.zip
+ unzip wis2box-setup-1.3.0.zip
```
你可以随时在 [https://github.com/World-Meteorological-Organization/wis2box/releases](https://github.com/World-Meteorological-Organization/wis2box-release/releases) 找到最新的 'wis2box-setup' 归档文件。
- 本次培训使用的练习材料可以通过以下方式下载:
+ 本次培训使用的练习材料可通过以下方式下载:
```bash
wget https://training.wis2box.wis.wmo.int/exercise-materials.zip
@@ -56,26 +56,26 @@ title: 访问你的学生虚拟机
```bash
pip3 install minio
- pip3 install pywiscat==0.4.0
+ pip3 install pywiscat
```
如果你使用的是本地 WIS2 培训课程中提供的学生虚拟机,所需的软件已经预先安装。
## 在本地培训网络上连接到你的学生虚拟机
-根据培训师提供的说明,将你的电脑连接到培训期间房间内广播的本地 Wi-Fi。
+按照培训师提供的说明,将你的电脑连接到培训期间房间内广播的本地 Wi-Fi。
使用 SSH 客户端连接到你的学生虚拟机,连接信息如下:
-- **主机名:(由现场培训提供)**
-- **端口:22**
-- **用户名:(由现场培训提供)**
-- **密码:(由现场培训提供)**
+- **主机名:(培训期间提供)**
+- **端口: 22**
+- **用户名:(培训期间提供)**
+- **密码:(培训期间提供)**
!!! tip
- 如果你不确定主机名或用户名,或者连接有问题,请联系培训师。
+ 如果你不确定主机名或用户名,或者连接时遇到问题,请联系培训师。
-连接后,请更改密码以确保其他人无法访问你的虚拟机:
+连接后,请更改你的密码以确保其他人无法访问你的虚拟机:
```bash
limper@student-vm:~$ passwd
@@ -88,7 +88,7 @@ passwd: password updated successfully
## 验证软件版本
-为了运行 wis2box,学生虚拟机应预安装 Python、Docker 和 Docker Compose。
+为了能够运行 wis2box,学生虚拟机应预安装 Python、Docker 和 Docker Compose。
检查 Python 版本:
```bash
@@ -117,16 +117,16 @@ docker compose version
Docker Compose version v2.21.0
```
-为了确保你的用户可以运行 Docker 命令,用户已被添加到 `docker` 组。
+为了确保你的用户能够运行 Docker 命令,用户已被添加到 `docker` 组。
-测试用户是否可以运行 Docker hello-world,执行以下命令:
+测试用户是否能够运行 docker hello-world,执行以下命令:
```bash
docker run hello-world
```
-此命令会拉取 hello-world 镜像并运行一个容器,打印一条消息。
+此命令将拉取 hello-world 镜像并运行一个容器,打印一条消息。
-检查输出中是否包含以下内容:
+检查输出中是否显示以下内容:
```console
...
@@ -137,7 +137,7 @@ This message shows that your installation appears to be working correctly.
## 检查练习材料
-检查你的主目录内容;这些是培训和实践课程中使用的材料。
+检查你的主目录内容,这些是培训和实践课程中使用的材料。
```bash
ls ~/
@@ -147,25 +147,25 @@ ls ~/
exercise-materials wis2box
```
-如果你的本地电脑安装了 WinSCP,可以使用它连接到学生虚拟机,检查主目录内容,并在虚拟机和本地电脑之间上传或下载文件。
+如果你的本地电脑安装了 WinSCP,可以使用它连接到你的学生虚拟机,检查主目录内容,并在虚拟机和本地电脑之间上传或下载文件。
-虽然 WinSCP 不是培训的必需工具,但如果你希望使用本地电脑上的文本编辑器编辑虚拟机上的文件,它会非常有用。
+WinSCP 不是培训的必需工具,但如果你希望使用本地电脑上的文本编辑器编辑虚拟机上的文件,它会非常有用。
-以下是如何使用 WinSCP 连接到学生虚拟机:
+以下是使用 WinSCP 连接到学生虚拟机的方法:
-打开 WinSCP 并点击 "New Site"。你可以创建一个新的 SCP 连接,设置如下:
+打开 WinSCP,点击 "New Site"。你可以创建一个新的 SCP 连接,具体设置如下:
点击 'Save' 然后点击 'Login' 连接到你的虚拟机。
-现在你应该可以看到学生虚拟机主目录的内容,并访问你的文件。
+现在你应该能够看到学生虚拟机主目录的内容并访问你的文件。
-## 总结
+## 结论
!!! success "恭喜!"
在本次实践课程中,你学会了:
- 通过 SSH 和 WinSCP 访问你的学生虚拟机
- - 验证实践所需的软件是否已安装
- - 验证你是否可以在本地学生虚拟机上访问本次培训的练习材料
\ No newline at end of file
+ - 验证实践练习所需的软件是否已安装
+ - 验证你是否能够在本地学生虚拟机上访问本次培训的练习材料
\ No newline at end of file
diff --git a/documentation/docs/zh/practical-sessions/adding-gts-headers-to-wis2-notifications.md b/documentation/docs/zh/practical-sessions/adding-gts-headers-to-wis2-notifications.md
index 47599809b..480995b8b 100644
--- a/documentation/docs/zh/practical-sessions/adding-gts-headers-to-wis2-notifications.md
+++ b/documentation/docs/zh/practical-sessions/adding-gts-headers-to-wis2-notifications.md
@@ -1,24 +1,25 @@
---
-title: 为 WIS2 通知添加 GTS 头信息
+title: 将 GTS 标头添加到 WIS2 通知
---
-# 为 WIS2 通知添加 GTS 头信息
+# 将 GTS 标头添加到 WIS2 通知
!!! abstract "学习目标"
- 完成本实践课程后,您将能够:
+ 在本次实践课程结束时,您将能够:
- - 配置文件名和 GTS 头信息之间的映射
- - 使用与 GTS 头信息匹配的文件名摄入数据
- - 在 WIS2 通知中查看 GTS 头信息
+ - 配置文件名与 GTS 标头之间的映射
+ - 通过匹配 GTS 标头的文件名来摄取数据
+ - 在 WIS2 通知中查看 GTS 标头
+ - 使用 FM-12 SYNOP 表单手动将 GTS 标头添加到 WIS2 通知中
-## 简介
+## 介绍
-在向 WIS2 过渡阶段,希望停止 GTS 数据传输的 WMO 成员需要在其 WIS2 通知中添加 GTS 头信息。这些头信息使 WIS2 到 GTS 网关能够将数据转发到 GTS 网络。
+在向 WIS2 过渡阶段,计划停止通过 GTS 传输数据的 WMO 成员需要将 GTS 标头添加到其 WIS2 通知中。这些标头使 WIS2 到 GTS 网关能够将数据转发到 GTS 网络。
-这使得已迁移到使用 WIS2 节点进行数据发布的成员可以禁用其 MSS 系统,同时确保其数据仍然可供尚未迁移到 WIS2 的成员使用。
+这使得已经迁移到使用 WIS2 节点发布数据的成员能够停用其 MSS 系统,同时确保其数据仍可供尚未迁移到 WIS2 的成员使用。
-GTS 属性需要作为附加属性添加到 WIS2 通知消息中。GTS 属性是一个 JSON 对象,其中包含将数据转发到 GTS 网络所需的 GTS 头信息。
+需要将 GTS 属性作为附加属性添加到 WIS2 通知消息中。GTS 属性是一个 JSON 对象,其中包含将数据转发到 GTS 网络所需的 GTS 标头。
```json
{
@@ -29,45 +30,55 @@ GTS 属性需要作为附加属性添加到 WIS2 通知消息中。GTS 属性是
}
```
-在 wis2box 中,您可以通过提供一个名为 `gts_headers_mapping.csv` 的附加文件来自动将其添加到 WIS2 通知中,该文件包含将 GTS 头信息映射到传入文件名所需的信息。
+在 wis2box 中,您可以通过提供一个名为 `gts_headers_mapping.csv` 的附加文件来自动将此内容添加到 WIS2 通知中,该文件包含将 GTS 标头映射到传入文件名所需的信息。
-该文件应放置在 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中,并应包含以下列:
+此文件应放置在您的 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中,并应包含以下列:
-- `string_in_filepath`:文件名中用于匹配 GTS 头信息的字符串部分
-- `TTAAii`:要添加到 WIS2 通知的 TTAAii 头信息
-- `CCCC`:要添加到 WIS2 通知的 CCCC 头信息
+- `string_in_filepath`:文件名中的字符串,用于匹配 GTS 标头
+- `TTAAii`:要添加到 WIS2 通知中的 TTAAii 标头
+- `CCCC`:要添加到 WIS2 通知中的 CCCC 标头
+
+从 wis2box-1.3.0 开始,数据发布者有两种选择(可选)将 GTS 属性添加到其通知中:
+
+1. 对于上传到 MinIO 的文件,准备映射文件 `gts_headers_mappings.csv` 并包含所需属性。
+
+2. 对于在 wis2box-webapp 中使用 FM-12 SYNOP 表单输入的数据,选择 `Add GTS headers` 并手动输入所需信息。
## 准备工作
-确保您可以通过 SSH 访问您的学员虚拟机,并且您的 wis2box 实例正在运行。
+确保您可以通过 SSH 访问您的学生虚拟机,并且您的 wis2box 实例已启动并运行。
-确保您使用 MQTT Explorer 连接到 wis2box 实例的 MQTT 代理。您可以使用公共凭据 `everyone/everyone` 连接到代理。
+确保您已使用 MQTT Explorer 连接到您的 wis2box 实例的 MQTT broker。您可以使用公共凭证 `everyone/everyone` 连接到 broker。
-确保您已打开网络浏览器,通过访问 `http://YOUR-HOST:3000` 查看实例的 Grafana 仪表板。
+确保您已打开一个网页浏览器,并通过访问 `http://YOUR-HOST:3000` 查看您的实例的 Grafana 仪表板。
-## 创建 `gts_headers_mapping.csv`
+## 练习 1:为上传到 MinIO 的数据使用映射文件
-要向 WIS2 通知添加 GTS 头信息,需要一个将 GTS 头信息映射到传入文件名的 CSV 文件。
+第一个练习将演示如何使用名为 `gts_headers_mapping.csv` 的映射文件为上传到 MinIO 的数据添加 GTS 标头。
-该 CSV 文件应准确命名为 `gts_headers_mapping.csv`,并应放置在 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中。
+### 创建 `gts_headers_mapping.csv`
-## 提供 `gts_headers_mapping.csv` 文件
-
-将文件 `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` 复制到您的 wis2box 实例,并将其放置在 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中。
+要将 GTS 标头添加到您的 WIS2 通知中,需要一个 CSV 文件将 GTS 标头映射到传入文件名。
+
+CSV 文件的名称必须为(完全一致)`gts_headers_mapping.csv`,并且应放置在您的 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中。
+
+将文件 `exercise-materials/gts-headers-exercises/gts_headers_mapping.csv` 复制到您的 wis2box 实例,并放置在您的 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中。
```bash
cp ~/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv ~/wis2box-data
```
-然后重启 wis2box-management 容器以应用更改:
+### 应用映射
+
+创建 `gts_headers_mapping.csv` 文件后,您需要重新启动 wis2box-management 容器以应用更改。您可以通过在学生虚拟机中运行以下命令来完成此操作:
```bash
docker restart wis2box-management
```
-## 摄入带有 GTS 头信息的数据
+### 使用 GTS 标头摄取数据
-将文件 `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` 复制到 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录:
+将文件 `exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` 复制到您的 `wis2box.env` 中由 `WIS2BOX_HOST_DATADIR` 定义的目录中:
```bash
cp ~/exercise-materials/gts-headers-exercises/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt ~/wis2box-data
@@ -80,25 +91,63 @@ cd ~/wis2box
python3 wis2box-ctl.py login
```
-从 wis2box 命令行,我们可以按如下方式将示例数据文件 `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` 摄入到特定数据集:
+在 wis2box 命令行中,我们可以将示例数据文件 `A_SMRO01YRBK171200_C_EDZW_20240717120502.txt` 摄取到特定数据集,如下所示:
```bash
wis2box data ingest -p /data/wis2box/A_SMRO01YRBK171200_C_EDZW_20240717120502.txt --metadata-id urn:wmo:md:not-my-centre:core.surface-based-observations.synop
```
-确保使用正确的数据集标识符替换 `metadata-id` 选项。
+确保将 `metadata-id` 选项替换为您的数据集的正确标识符。
+
+检查 Grafana 仪表板以查看数据是否正确摄取。如果看到任何警告或错误,请尝试修复并重复执行 `wis2box data ingest` 命令。
+
+### 在 WIS2 通知中查看 GTS 标头
+
+打开 MQTT Explorer,检查您刚刚摄取的数据的 WIS2 通知消息。
+
+WIS2 通知消息应包含您在 `gts_headers_mapping.csv` 文件中提供的 GTS 标头。
+
+## 练习 2:使用 FM-12 SYNOP 表单
+
+在 wis2box-webapp 中使用 FM-12 SYNOP 表单时,您可以通过选择 "Add GTS headers" 选项并提供所需信息,手动将 GTS 标头添加到您的 WIS2 通知中。
+
+对于此练习,您可以使用以下示例数据或提供您自己的数据:
+
+FM-12 SYNOP 消息:
+
+```{copy}
+AAXX 03094
+64400 42460 71004 10285 20245 30113 40133 8493/
+ 333 59005 83813 81930 87363 94966 95836=
+```
+
+GTS 标头:TTAAii=`ISIH01` 和 CCCC=`FCBB`
+
+!!! note
+ wis2box 中的 synop2bufr-plugin 会将 FM-12 SYNOP 消息转换为 BUFR,因此 TTAAii 应以 `IS` 开头:
+
+ - I = 观测数据(以二进制编码)– BUFR
+ - S = 地面/海平面
+
+### 手动提交带有 GTS 标头的 FM-12 SYNOP 表单
+
+进入 wis2box-webapp 中的 FM-12 SYNOP 表单,并使用上述示例数据或您自己的数据填写表单。
+
+确保选择 "Add GTS headers" 选项并提供所需的 GTS 标头信息:
+
+
-检查 Grafana 仪表板,查看数据是否正确摄入。如果看到任何警告或错误,请尝试修复它们并重复执行 `wis2box data ingest` 命令。
+提供所需的身份验证令牌并提交表单。
-## 在 WIS2 通知中查看 GTS 头信息
+您可能会看到一条错误消息,因为该站点未在您的站点列表中。您需要将站点 "0-20000-0-64400" 添加到您的站点列表中,以便数据能够成功转换并发布。
-转到 MQTT Explorer 并检查您刚刚摄入的数据的 WIS2 通知消息。
+### 在 WIS2 通知中查看 GTS 标头
-WIS2 通知消息应包含您在 `gts_headers_mapping.csv` 文件中提供的 GTS 头信息。
+打开 MQTT Explorer,检查您刚刚摄取的数据的 WIS2 通知消息,以查看通知中是否包含 GTS 标头。
## 结论
!!! success "恭喜!"
- 在本实践课程中,您学会了如何:
- - 向 WIS2 通知添加 GTS 头信息
- - 验证 GTS 头信息是否通过您的 wis2box 安装可用
\ No newline at end of file
+ 在本次实践课程中,您学习了:
+ - 如何将 GTS 标头添加到您的 WIS2 通知中
+ - 验证 GTS 标头是否通过您的 wis2box 安装成功提供
\ No newline at end of file
diff --git a/documentation/docs/zh/practical-sessions/connecting-to-wis2-over-mqtt.md b/documentation/docs/zh/practical-sessions/connecting-to-wis2-over-mqtt.md
index 7205dfe4e..dbf65651b 100644
--- a/documentation/docs/zh/practical-sessions/connecting-to-wis2-over-mqtt.md
+++ b/documentation/docs/zh/practical-sessions/connecting-to-wis2-over-mqtt.md
@@ -9,14 +9,14 @@ title: 使用 MQTT 连接到 WIS2
在本次实践课程结束时,您将能够:
- 使用 MQTT Explorer 连接到 WIS2 Global Broker
- - 查看 WIS2 的主题结构
+ - 查看 WIS2 主题结构
- 查看 WIS2 通知消息结构
## 简介
-WIS2 使用 MQTT 协议来宣传天气/气候/水文数据的可用性。WIS2 Global Broker 订阅网络中所有 WIS2 Node,并重新发布它接收到的消息。Global Cache 订阅 Global Broker,下载消息中的数据,然后在 `cache` 主题上重新发布消息,并附上新的 URL。Global Discovery Catalogue 从 Broker 发布发现元数据,并提供搜索 API。
+WIS2 使用 MQTT 协议来宣传天气/气候/水文数据的可用性。WIS2 Global Broker 订阅网络中的所有 WIS2 Nodes,并重新发布其接收到的消息。Global Cache 订阅 Global Broker,下载消息中的数据,然后在 `cache` 主题上重新发布消息,并附上新的 URL。Global Discovery Catalogue 从 Broker 发布发现元数据,并提供搜索 API。
-以下是一个 WIS2 通知消息结构的示例,该消息接收自主题 `origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`:
+以下是从主题 `origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop` 接收到的 WIS2 通知消息结构示例:
```json
{
@@ -57,26 +57,26 @@ WIS2 使用 MQTT 协议来宣传天气/气候/水文数据的可用性。WIS2 Gl
"href":"https://oscar.wmo.int/surface/#/search/station/stationReportDetails/0-20000-0-76679"
}
],
- "generated_by":"wis2box 1.2.0"
+ "generated_by":"wis2box 1.3.0"
}
```
在本次实践课程中,您将学习如何使用 MQTT Explorer 工具设置 MQTT 客户端连接到 WIS2 Global Broker,并能够显示 WIS2 通知消息。
-MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用工具,用于查看正在发布的数据。
+MQTT Explorer 是一个有用的工具,可以浏览和查看给定 MQTT Broker 的主题结构,以审查正在发布的数据。
!!! note "关于 MQTT"
MQTT Explorer 提供了一个用户友好的界面,用于连接到 MQTT Broker 并探索 WIS2 使用的主题和消息结构。
- 实际上,MQTT 旨在用于机器对机器的通信,其中应用程序或服务订阅主题并以编程方式实时处理消息。
+ 实际上,MQTT 旨在用于机器与机器之间的通信,其中应用程序或服务订阅主题并实时以编程方式处理消息。
- 如果需要以编程方式使用 MQTT(例如在 Python 中),您可以使用 MQTT 客户端库,例如 [paho-mqtt](https://pypi.org/project/paho-mqtt),连接到 MQTT Broker 并处理传入的消息。根据您的需求和技术环境,有许多 MQTT 客户端和服务器软件可供选择。
+ 要以编程方式使用 MQTT(例如在 Python 中),您可以使用 MQTT 客户端库,例如 [paho-mqtt](https://pypi.org/project/paho-mqtt),连接到 MQTT Broker 并处理接收到的消息。根据您的需求和技术环境,存在许多 MQTT 客户端和服务器软件。
## 使用 MQTT Explorer 连接到 Global Broker
-要查看 WIS2 Global Broker 发布的消息,您可以使用 "MQTT Explorer",可以从 [MQTT Explorer 网站](https://mqtt-explorer.com) 下载。
+要查看 WIS2 Global Broker 发布的消息,可以使用 "MQTT Explorer",可从 [MQTT Explorer 网站](https://mqtt-explorer.com) 下载。
-打开 MQTT Explorer,并使用以下详细信息添加一个新的连接到由 MeteoFrance 托管的 Global Broker:
+打开 MQTT Explorer 并添加一个新的连接到由 MeteoFrance 托管的 Global Broker,使用以下详细信息:
- host: globalbroker.meteo.fr
- port: 8883
@@ -92,20 +92,20 @@ MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用
!!! note
- 设置 MQTT 订阅时,您可以使用以下通配符:
+ 设置 MQTT 订阅时可以使用以下通配符:
- **单层通配符 (+)**:单层通配符替代一个主题层级
- **多层通配符 (#)**:多层通配符替代多个主题层级
在此情况下,`origin/a/wis2/#` 将订阅 `origin/a/wis2` 主题下的所有主题。
-点击 'BACK',然后点击 'SAVE' 保存您的连接和订阅详细信息。接着点击 'CONNECT':
+点击 'BACK',然后点击 'SAVE' 保存您的连接和订阅详细信息。然后点击 'CONNECT':
消息应开始出现在您的 MQTT Explorer 会话中,如下所示:
-现在,您已准备好开始探索 WIS2 的主题和消息结构。
+您现在可以开始探索 WIS2 的主题和消息结构。
## 练习 1:查看 WIS2 主题结构
@@ -117,13 +117,13 @@ MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用
??? success "点击查看答案"
- 您可以点击 MQTT Explorer 左侧窗口,展开主题结构。
+ 您可以点击 MQTT Explorer 左侧窗口以展开主题结构。
我们可以通过查看主题结构的第四层来区分发布数据的 WIS 中心。例如,以下主题:
`origin/a/wis2/br-inmet/data/core/weather/surface-based-observations/synop`
- 告诉我们数据是由 WIS 中心 `br-inmet` 发布的,这是巴西 Instituto Nacional de Meteorologia - INMET 的中心 ID。
+ 告诉我们数据是由中心 ID 为 `br-inmet` 的 WIS 中心发布的,该中心 ID 对应巴西国家气象研究所(Instituto Nacional de Meteorologia - INMET)。
!!! question
@@ -135,11 +135,11 @@ MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用
`origin/a/wis2/de-dwd-gts-to-wis2/data/core/I/S/A/I/01/sbbr`
- 告诉我们数据是由德国 Deutscher Wetterdienst (DWD) 托管的 GTS-to-WIS2 网关发布的。GTS-to-WIS2 网关是一种特殊类型的数据发布者,它将来自全球电信系统 (GTS) 的数据发布到 WIS2。主题结构由 GTS 消息的 TTAAii CCCC 头组成。
+ 告诉我们数据是由德国气象局(Deutscher Wetterdienst,DWD)托管的 GTS-to-WIS2 网关发布的。GTS-to-WIS2 网关是一种特殊类型的数据发布者,它将全球电信系统(GTS)中的数据发布到 WIS2。主题结构由 GTS 消息的 TTAAii CCCC 头组成。
## 练习 2:查看 WIS2 消息结构
-断开 MQTT Explorer 的连接,并更新 'Advanced' 部分,将订阅更改为以下内容:
+断开 MQTT Explorer 的连接,并更新 'Advanced' 部分以更改订阅为以下内容:
* `origin/a/wis2/+/data/core/weather/surface-based-observations/synop`
* `cache/a/wis2/+/data/core/weather/surface-based-observations/synop`
@@ -151,7 +151,7 @@ MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用
重新连接到 Global Broker 并等待消息出现。
-您可以在右侧的 "Value" 部分查看 WIS2 消息的内容。尝试展开主题结构,查看消息的不同层级,直到到达最后一层,并查看其中一条消息的内容。
+您可以在右侧的 "Value" 部分查看 WIS2 消息的内容。尝试展开主题结构以查看消息的不同层级,直到到达最后一层,并查看其中一条消息的内容。
!!! question
@@ -173,25 +173,25 @@ MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用
URL 包含在 `links` 部分,`rel="canonical"`,由 `href` 键定义。
- 您可以复制该 URL 并将其粘贴到浏览器中下载数据。
+ 您可以复制 URL 并将其粘贴到网页浏览器中下载数据。
## 练习 3:查看 'origin' 和 'cache' 主题的区别
-确保您仍然使用 `origin/a/wis2/+/data/core/weather/surface-based-observations/synop` 和 `cache/a/wis2/+/data/core/weather/surface-based-observations/synop` 主题订阅连接到 Global Broker,如练习 2 中所述。
+确保您仍然使用 `origin/a/wis2/+/data/core/weather/surface-based-observations/synop` 和 `cache/a/wis2/+/data/core/weather/surface-based-observations/synop` 订阅主题连接到 Global Broker,如练习 2 中所述。
-尝试识别在 `origin` 和 `cache` 主题上由相同中心 ID 发布的消息。
+尝试识别在 `origin` 和 `cache` 主题上发布的具有相同中心 ID 的消息。
!!! question
- 发布在 `origin` 和 `cache` 主题上的消息有什么区别?
+ 在 `origin` 和 `cache` 主题上发布的消息有什么区别?
??? success "点击查看答案"
- 发布在 `origin` 主题上的消息是 Global Broker 从网络中的 WIS2 Node 重新发布的原始消息。
+ 在 `origin` 主题上发布的消息是 Global Broker 从网络中的 WIS2 Nodes 重新发布的原始消息。
- 发布在 `cache` 主题上的消息是 Global Cache 下载数据后重新发布的消息。如果您检查以 `cache` 开头的主题中的消息内容,您会发现 'canonical' 链接已更新为一个新的 URL。
+ 在 `cache` 主题上发布的消息是 Global Cache 下载数据后重新发布的消息。如果您检查从以 `cache` 开头的主题发布的消息内容,您会发现 'canonical' 链接已更新为新的 URL。
- WIS2 网络中有多个 Global Cache,因此您将收到每个下载该消息的 Global Cache 发布的一条消息。
+ WIS2 网络中有多个 Global Cache,因此您将收到每个下载了消息的 Global Cache 发布的一条消息。
Global Cache 仅下载并重新发布发布在 `../data/core/...` 主题层级上的消息。
@@ -201,8 +201,8 @@ MQTT Explorer 是一个浏览和查看特定 MQTT Broker 主题结构的有用
在本次实践课程中,您学习了:
- 如何使用 MQTT Explorer 订阅 WIS2 Global Broker 服务
- - WIS2 的主题结构
- - WIS2 的通知消息结构
+ - WIS2 主题结构
+ - WIS2 通知消息结构
- 核心数据和推荐数据的区别
- GTS-to-WIS2 网关使用的主题结构
- - 发布在 `origin` 和 `cache` 主题上的 Global Broker 消息的区别
\ No newline at end of file
+ - 在 `origin` 和 `cache` 主题上发布的 Global Broker 消息的区别
\ No newline at end of file
diff --git a/documentation/docs/zh/practical-sessions/initializing-wis2box.md b/documentation/docs/zh/practical-sessions/initializing-wis2box.md
index f5d9f46f5..0d6c06ec0 100644
--- a/documentation/docs/zh/practical-sessions/initializing-wis2box.md
+++ b/documentation/docs/zh/practical-sessions/initializing-wis2box.md
@@ -6,23 +6,23 @@ title: 初始化 wis2box
!!! abstract "学习目标"
- 在本次实践课程结束时,您将能够:
+ 完成本次实践课程后,您将能够:
- 运行 `wis2box-create-config.py` 脚本以创建初始配置
- - 启动 wis2box 并检查其组件的状态
+ - 启动 wis2box 并检查其组件状态
- 查看 **wis2box-api** 的内容
- 访问 **wis2box-webapp**
- 使用 MQTT Explorer 连接到本地 **wis2box-broker**
!!! note
- 当前的培训材料基于 wis2box-release 1.2.0。
+ 当前培训材料基于 wis2box-release 1.3.0。
- 如果您在本地培训课程之外运行本次培训,请参阅 [accessing-your-student-vm](./accessing-your-student-vm.md) 以获取有关如何下载和安装 wis2box 软件栈的说明。
+ 如果您在本地培训课程之外运行此培训,请参阅 [accessing-your-student-vm](./accessing-your-student-vm.md) 了解如何下载和安装 wis2box 软件栈的说明。
## 准备工作
-使用您的用户名和密码登录到指定的虚拟机(VM),并确保您位于 `wis2box` 目录中:
+使用您的用户名和密码登录指定的虚拟机,并确保您处于 `wis2box` 目录中:
```bash
cd ~/wis2box
@@ -30,18 +30,18 @@ cd ~/wis2box
## 创建初始配置
-创建 wis2box 的初始配置需要以下内容:
+创建 wis2box 的初始配置需要:
- 一个包含配置参数的环境文件 `wis2box.env`
-- 主机与 wis2box 容器之间共享的目录,该目录由环境变量 `WIS2BOX_HOST_DATADIR` 定义
+- 主机上的一个目录,用于在主机和 wis2box 容器之间共享,由环境变量 `WIS2BOX_HOST_DATADIR` 定义
-可以使用 `wis2box-create-config.py` 脚本来创建 wis2box 的初始配置。
+可以使用 `wis2box-create-config.py` 脚本来创建您的 wis2box 的初始配置。
-脚本会向您提出一系列问题以帮助设置配置。
+脚本会向您提出一系列问题,以帮助设置配置。
脚本完成后,您可以查看并更新配置文件。
-按以下方式运行脚本:
+运行以下命令启动脚本:
```bash
python3 wis2box-create-config.py
@@ -51,7 +51,7 @@ python3 wis2box-create-config.py
脚本会要求您输入用于 `WIS2BOX_HOST_DATADIR` 环境变量的目录。
-请注意,您需要定义此目录的完整路径。
+请注意,您需要定义该目录的完整路径。
例如,如果您的用户名是 `username`,目录的完整路径为 `/home/username/wis2box-data`:
@@ -68,7 +68,7 @@ The directory /home/username/wis2box-data has been created.
### wis2box URL
-接下来,您将被要求输入 wis2box 的 URL。此 URL 将用于访问 wis2box 的 Web 应用程序、API 和用户界面。
+接下来,您需要输入 wis2box 的 URL。此 URL 将用于访问 wis2box 的 Web 应用程序、API 和用户界面。
请使用 `http://` 作为 URL。
@@ -86,11 +86,11 @@ Is this correct? (y/n/exit)
当提示输入 `WIS2BOX_WEBAPP_PASSWORD`、`WIS2BOX_STORAGE_PASSWORD` 和 `WIS2BOX_BROKER_PASSWORD` 时,您可以选择随机生成密码或自行定义。
-无需担心记住这些密码,它们将存储在 `wis2box.env` 文件中,位于您的 wis2box 目录中。
+无需担心记住这些密码,它们会存储在 `wis2box.env` 文件中,位于您的 wis2box 目录中。
### 检查 `wis2box.env`
-脚本完成后,检查当前目录中 `wis2box.env` 文件的内容:
+脚本完成后,请检查当前目录中的 `wis2box.env` 文件内容:
```bash
cat ~/wis2box/wis2box.env
@@ -106,7 +106,7 @@ cat ~/wis2box/wis2box.env
WIS2BOX_BASEMAP_URL 的默认值是 `https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`。
- 此 URL 指向 OpenStreetMap 瓦片服务器。如果您想使用其他地图提供商,可以将此 URL 更改为指向其他瓦片服务器。
+ 此 URL 指向 OpenStreetMap 瓦片服务器。如果您希望使用其他地图提供商,可以将此 URL 更改为指向其他瓦片服务器。
!!! question
@@ -116,7 +116,7 @@ cat ~/wis2box/wis2box.env
WIS2BOX_STORAGE_DATA_RETENTION_DAYS 的默认值是 30 天。如果需要,您可以将此值更改为其他天数。
- wis2box-management 容器会每天运行一个 cronjob,从 `wis2box-public` 存储桶和 API 后端中删除超过 WIS2BOX_STORAGE_DATA_RETENTION_DAYS 定义天数的数据:
+ wis2box-management 容器每天运行一个 cronjob,删除 `wis2box-public` 存储桶和 API 后端中超过 WIS2BOX_STORAGE_DATA_RETENTION_DAYS 定义天数的数据:
```{.copy}
0 0 * * * su wis2box -c "wis2box data clean --days=$WIS2BOX_STORAGE_DATA_RETENTION_DAYS"
@@ -126,9 +126,9 @@ cat ~/wis2box/wis2box.env
`wis2box.env` 文件包含定义 wis2box 配置的环境变量。有关更多信息,请参阅 [wis2box-documentation](https://docs.wis2box.wis.wmo.int/en/latest/reference/configuration.html)。
- 除非您确定所做更改,否则不要编辑 `wis2box.env` 文件。不正确的更改可能导致 wis2box 无法正常工作。
+ 除非您确定所做的更改,否则不要编辑 `wis2box.env` 文件。不正确的更改可能导致您的 wis2box 无法正常工作。
- 请勿与任何人分享 `wis2box.env` 文件的内容,因为其中包含密码等敏感信息。
+ 请勿与任何人共享您的 `wis2box.env` 文件内容,因为其中包含敏感信息,例如密码。
## 启动 wis2box
@@ -144,17 +144,17 @@ cd ~/wis2box
python3 wis2box-ctl.py start
```
-首次运行此命令时,您将看到以下输出:
+首次运行此命令时,您会看到以下输出:
```
No docker-compose.images-*.yml files found, creating one
-Current version=Undefined, latest version=1.2.0
+Current version=Undefined, latest version=1.3.0
Would you like to update ? (y/n/exit)
```
-选择 ``y``,脚本将创建文件 ``docker-compose.images-1.2.0.yml``,下载所需的 Docker 镜像并启动服务。
+选择 ``y``,脚本将创建文件 ``docker-compose.images-1.3.0.yml``,下载所需的 Docker 镜像并启动服务。
-根据您的网络连接速度,下载镜像可能需要一些时间。此步骤仅在首次启动 wis2box 时需要。
+根据您的网络连接速度,下载镜像可能需要一些时间。此步骤仅在首次启动 wis2box 时需要完成。
使用以下命令检查状态:
@@ -169,9 +169,9 @@ python3 wis2box-ctl.py status
服务定义在 `~/wis2box/` 目录中的各种 `docker-compose*.yml` 文件中。
- Python 脚本 `wis2box-ctl.py` 用于运行底层的 Docker Compose 命令以控制 wis2box 服务。
+ Python 脚本 `wis2box-ctl.py` 用于运行底层的 Docker Compose 命令,以控制 wis2box 服务。
- 您无需了解 Docker 容器的详细信息即可运行 wis2box 软件栈,但您可以检查 `docker-compose*.yml` 文件以查看服务的定义。如果您有兴趣了解更多关于 Docker 的信息,可以参考 [Docker 文档](https://docs.docker.com/)。
+ 您无需了解 Docker 容器的详细信息即可运行 wis2box 软件栈,但可以查看 `docker-compose*.yml` 文件以了解服务的定义。如果您有兴趣了解更多关于 Docker 的信息,可以参考 [Docker 文档](https://docs.docker.com/)。
要登录到 wis2box-management 容器,请使用以下命令:
@@ -179,16 +179,16 @@ python3 wis2box-ctl.py status
python3 wis2box-ctl.py login
```
-注意,登录后,您的提示符将发生变化,表明您现在位于 wis2box-management 容器内:
+注意,登录后您的提示符会发生变化,表明您现在处于 wis2box-management 容器中:
```{bash}
root@025381da3c40:/home/wis2box#
```
-在 wis2box-management 容器内,您可以运行各种命令来管理您的 wis2box,例如:
+在 wis2box-management 容器中,您可以运行各种命令来管理您的 wis2box,例如:
- `wis2box auth add-token --path processes/wis2box`:为 *processes/wis2box* 端点创建授权令牌
-- `wis2box data clean --days=`:从 *wis2box-public* 存储桶中清理超过指定天数的数据
+- `wis2box data clean --days=`:清理 *wis2box-public* 存储桶中超过指定天数的数据
要退出容器并返回主机,请使用以下命令:
@@ -196,37 +196,35 @@ root@025381da3c40:/home/wis2box#
exit
```
-运行以下命令以查看主机上运行的 Docker 容器:
+运行以下命令查看主机上运行的 Docker 容器:
```{.copy}
docker ps --format "table {{.Names}} \t{{.Status}} \t{{.Image}}"
```
-您应该会看到以下容器正在运行:
+您应该看到以下容器正在运行:
```{bash}
-NAMES STATUS IMAGE
-elasticsearch docker.elastic.co/elasticsearch/elasticsearch:8.6.2 "/bin/tini -- /usr/l…" elasticsearch 大约一分钟前 运行中大约一分钟 (健康) 9200/tcp, 9300/tcp
-elasticsearch-exporter quay.io/prometheuscommunity/elasticsearch-exporter:latest "/bin/elasticsearch_…" elasticsearch-exporter 大约一分钟前 运行中大约一分钟 7979/tcp
-grafana grafana/grafana-oss:9.0.3 "/run.sh" grafana 大约一分钟前 运行中大约一分钟 0.0.0.0:3000->3000/tcp
-loki grafana/loki:2.4.1 "/usr/bin/loki -conf…" loki 大约一分钟前 运行中大约一分钟 3100/tcp
-mosquitto ghcr.io/world-meteorological-organization/wis2box-broker:1.2.0 "/docker-entrypoint.…" mosquitto 大约一分钟前 运行中大约一分钟 0.0.0.0:1883->1883/tcp, 0.0.0.0:8884->8884/tcp
-mqtt_metrics_collector ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.2.0 "python3 -u mqtt_met…" mqtt_metrics_collector 大约一分钟前 运行中10秒 8000/tcp, 0.0.0.0:8001->8001/tcp
-nginx nginx:alpine "/docker-entrypoint.…" web-proxy 大约一分钟前 运行中9秒 0.0.0.0:80->80/tcp
-prometheus prom/prometheus:v2.37.0 "/bin/prometheus --c…" prometheus 大约一分钟前 运行中大约一分钟 9090/tcp
-wis2box-api ghcr.io/world-meteorological-organization/wis2box-api:1.2.0 "/app/docker/es-entr…" wis2box-api 大约一分钟前 运行中36秒 (健康)
-wis2box-auth ghcr.io/world-meteorological-organization/wis2box-auth:1.2.0 "/entrypoint.sh" wis2box-auth 大约一分钟前 运行中10秒
-wis2box-management ghcr.io/world-meteorological-organization/wis2box-management:1.2.0 "/home/wis2box/entry…" wis2box-management 大约一分钟前 运行中12秒
-wis2box-minio minio/minio:RELEASE.2024-08-03T04-33-23Z-cpuv1 "/usr/bin/docker-ent…" minio 大约一分钟前 运行中大约一分钟 (健康) 0.0.0.0:8022->8022/tcp, 0.0.0.0:9000-9001->9000-9001/tcp
-wis2box-ui ghcr.io/world-meteorological-organization/wis2box-ui:1.2.0 "/docker-entrypoint.…" wis2box-ui 大约一分钟前 运行中35秒 0.0.0.0:9999->80/tcp
-wis2box-webapp ghcr.io/world-meteorological-organization/wis2box-webapp:1.2.0 "sh /wis2box-webapp/…" wis2box-webapp 大约一分钟前 运行中大约一分钟 (不健康) 4173/tcp
-wis2downloader ghcr.io/wmo-im/wis2downloader:v0.3.2 "/home/wis2downloade…" wis2downloader 大约一分钟前 运行中大约一分钟 (健康)
-
+NAMES STATUS IMAGE
+nginx Up 56 seconds nginx:1.30.1-alpine
+mqtt_metrics_collector Up 58 seconds ghcr.io/world-meteorological-organization/wis2box-mqtt-metrics-collector:1.3.0
+wis2box-auth Up 59 seconds ghcr.io/world-meteorological-organization/wis2box-auth:1.3.0
+wis2box-ui Up About a minute ghcr.io/world-meteorological-organization/wis2box-ui:1.3.0
+wis2box-management Up About a minute ghcr.io/world-meteorological-organization/wis2box-management:1.3.0
+wis2box-minio Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-minio:latest
+wis2box-api Up About a minute (healthy) ghcr.io/world-meteorological-organization/wis2box-api:1.3.0
+elasticsearch Up 2 minutes (healthy) docker.elastic.co/elasticsearch/elasticsearch:8.6.2
+grafana Up 2 minutes grafana/grafana-oss:12.4.2
+loki Up 2 minutes grafana/loki:2.4.1
+elasticsearch-exporter Up 2 minutes quay.io/prometheuscommunity/elasticsearch-exporter:latest
+prometheus Up 2 minutes prom/prometheus:v2.37.0
+mosquitto Up 2 minutes ghcr.io/world-meteorological-organization/wis2box-broker:1.3.0
+wis2box-webapp Up 2 minutes (healthy) ghcr.io/world-meteorological-organization/wis2box-webapp:1.3.0
```
这些容器是 wis2box 软件栈的一部分,提供运行 wis2box 所需的各种服务。
-运行以下命令查看主机上运行的 Docker 卷:
+运行以下命令以查看主机机器上运行的 Docker 卷:
```{.copy}
docker volume ls
@@ -241,19 +239,19 @@ docker volume ls
- wis2box_project_loki-data
- wis2box_project_mosquitto-config
-以及一些由不同容器使用的匿名卷。
+以及一些由各种容器使用的匿名卷。
-以 `wis2box_project_` 开头的卷用于存储 wis2box 软件栈中各种服务的持久化数据。
+以 `wis2box_project_` 开头的卷用于存储 wis2box 软件栈中各种服务的持久数据。
## wis2box API
-wis2box 包含一个 API(应用程序编程接口),提供数据访问和处理功能,用于交互式可视化、数据转换和发布。
+wis2box 包含一个 API(应用程序编程接口),提供数据访问和交互式可视化、数据转换及发布的处理功能。
-打开一个新标签页,导航到页面 `http://YOUR-HOST/oapi`。
+打开一个新标签页并导航到页面 `http://YOUR-HOST/oapi`。
-这是 wis2box API 的登录页面(通过 **wis2box-api** 容器运行)。
+这是 wis2box API 的主页(通过 **wis2box-api** 容器运行)。
!!! question
@@ -265,12 +263,11 @@ wis2box 包含一个 API(应用程序编程接口),提供数据访问和
- 当前可用的集合包括:
-
- - Stations
- - Data notifications
- - Discovery metadata
+ 当前可用的集合如下:
+ - 站点
+ - 数据通知
+ - 发现元数据
!!! question
@@ -279,14 +276,14 @@ wis2box 包含一个 API(应用程序编程接口),提供数据访问和
??? success "点击查看答案"
点击 "Data notifications",然后点击 `Browse through the items of "Data Notifications"`。
-
+
您会注意到页面显示 "No items",因为尚未发布任何数据通知。
## wis2box webapp
-打开一个浏览器,访问页面 `http://YOUR-HOST/wis2box-webapp`。
+打开一个网页浏览器并访问页面 `http://YOUR-HOST/wis2box-webapp`。
-您将看到一个弹出窗口,要求输入用户名和密码。使用默认用户名 `wis2box-user` 和在 `wis2box.env` 文件中定义的 `WIS2BOX_WEBAPP_PASSWORD`,然后点击 "Sign in":
+您会看到一个弹窗要求输入用户名和密码。使用默认用户名 `wis2box-user` 和在 `wis2box.env` 文件中定义的 `WIS2BOX_WEBAPP_PASSWORD`,然后点击 "Sign in":
!!! note
@@ -296,14 +293,14 @@ wis2box 包含一个 API(应用程序编程接口),提供数据访问和
cat ~/wis2box/wis2box.env | grep WIS2BOX_WEBAPP_PASSWORD
```
-登录后,将鼠标移动到左侧菜单以查看 wis2box Web 应用程序中可用的选项:
+登录后,将鼠标移到左侧菜单以查看 wis2box Web 应用程序中的可用选项:
-这是 wis2box Web 应用程序,您可以通过它与您的 wis2box 交互:
+这是 wis2box Web 应用程序,您可以通过它与您的 wis2box 进行交互:
- 创建和管理数据集
-- 更新/查看您的站点元数据
+- 更新/审查您的站点元数据
- 使用 FM-12 synop 表单上传手动观测数据
- 监控在您的 wis2box-broker 上发布的通知
@@ -317,7 +314,7 @@ wis2box 包含一个 API(应用程序编程接口),提供数据访问和
-您可以点击 'ADVANCED' 按钮,并验证您已订阅以下主题:
+您可以点击 'ADVANCED' 按钮并验证您已订阅以下主题:
- `#`
- `$SYS/#`
@@ -326,17 +323,17 @@ wis2box 包含一个 API(应用程序编程接口),提供数据访问和
!!! note
- `#` 主题是一个通配符订阅,将订阅 broker 上发布的所有主题。
+ `#` 主题是一个通配符订阅,它会订阅 broker 上发布的所有主题。
发布在 `$SYS` 主题下的消息是由 mosquitto 服务本身发布的系统消息。
-使用以下连接详细信息,确保将 `` 的值替换为您的主机名,将 `` 的值替换为您的 `wis2box.env` 文件中的值:
+使用以下连接详情,确保将 `` 替换为您的主机名,将 `` 替换为您 `wis2box.env` 文件中的值:
-- **Protocol: mqtt://**
-- **Host: ``**
-- **Port: 1883**
-- **Username: wis2box**
-- **Password: ``**
+- **协议: mqtt://**
+- **主机: ``**
+- **端口: 1883**
+- **用户名: wis2box**
+- **密码: ``**
!!! note
@@ -348,24 +345,27 @@ wis2box 包含一个 API(应用程序编程接口),提供数据访问和
请注意,这是您的 **内部** broker 密码,Global Broker 将使用不同的(只读)凭据订阅您的 broker。切勿与任何人共享此密码。
-确保点击 "SAVE" 保存您的连接详细信息。
+确保点击 "SAVE" 保存您的连接详情。
然后点击 "CONNECT" 连接到您的 **wis2box-broker**。
-
+
-一旦连接成功,验证您的代理是否在 `$SYS` 主题下发布了内部 mosquitto 统计信息:
+连接后,您将看到您的 broker 在 `$SYS` 主题下发布的内部 mosquitto 统计信息:
-保持 MQTT Explorer 打开状态,因为我们将使用它来监控代理上发布的消息。
+同样的连接也可以通过 WebSockets 使用 MQTT 在端口 80 上实现,连接详情如下:
+
+
## 结论
!!! success "恭喜!"
- 在本次实践课程中,您学会了:
+ 在本次实践课程中,您学习了如何:
- 运行 `wis2box-create-config.py` 脚本以创建初始配置
- - 启动 wis2box 并检查其组件的状态
+ - 启动 wis2box 并检查其组件状态
- 在浏览器中访问 wis2box-webapp 和 wis2box-API
- - 使用 MQTT Explorer 连接到学生虚拟机上的 MQTT 代理
\ No newline at end of file
+ - 使用 MQTT Explorer 连接到学生虚拟机上的 MQTT broker
+```
\ No newline at end of file
diff --git a/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv b/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv
index dcc34e4b2..cdcdb3fe1 100644
--- a/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv
+++ b/exercise-materials/gts-headers-exercises/gts_headers_mapping.csv
@@ -1,3 +1,3 @@
string_in_filepath,ttaaii,cccc
-SMRO01YRBK,ISMRO01,YRBK
-SMRO02YRBK,ISMRO02,YRBK
\ No newline at end of file
+SMRO01YRBK,ISMD01,YRBK
+SMRO02YRBK,ISMD02,YRBK
\ No newline at end of file