# ನಿಮ್ಮ ನೈಟ್‌ಲೈಟ್ ಅನ್ನು ಇಂಟರ್ನೆಟ್‌ ಮೂಲಕ ನಿಯಂತ್ರಿಸಿ - ವಿಯೋ ಟರ್ಮಿನಲ್ ಈ ಪಾಠದ ಭಾಗದಲ್ಲಿ, ನೀವು MQTT ಬ್ರೋಕರ್‌ನಿಂದ ನಿಮ್ಮ ವಿಯೋ ಟರ್ಮಿನಲ್‌ಗೆ ಕಳುಹಿಸಿರುವ ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸುತ್ತೀರಿ. ## ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸಿ ಮುಂದಿನ ಹಂತವೆಂದರೆ MQTT ಬ್ರೋಕರ್‌ನಿಂದ ಕಳುಹಿಸಿರುವ ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸಿ, ಅವುಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸು. ### ಕಾರ್ಯ ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸಿ. 1. ನಿಮ್ಮ ನೈಟ್‌ಲೈಟ್ ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು VS ಕೋಡ್‌ನಲ್ಲಿ ತೆರೆಯಿರಿ. 1. `config.h` ಫೈಲ್‌ನ ಕೆಳಭಾಗಕ್ಕೆ ಕೆಳಗಿನ ಕೋಡ್ ಅನ್ನು ಸೇರಿಸಿ, ಆದೇಶಗಳಿಗೆ ವಿಷಯದ ಹೆಸರನ್ನು ನಿರ್ದಿಷ್ಟಗೊಳಿಸಲು: ```cpp const string SERVER_COMMAND_TOPIC = ID + "/commands"; ``` `SERVER_COMMAND_TOPIC` ಎನ್ನುವುದು ಉಪಕರಣವು ಆರೈಕೆ ಮಾಡಲು ಚಂದಾ ಹೊಂದಿಸುವ ವಿಷಯ. 1. MQTT ಕ್ಲೈಂಟ್ ಮರು ಸಂಪರ್ಕಗೊಂಡಾಗ ಆದೇಶ ವಿಷಯಕ್ಕೆ ಚಂದಾ ಹೊಂದಿಸುವಂತೆ `reconnectMQTTClient` ಕಾರ್ಯದ ಅಂತ್ಯದಲ್ಲಿ ಕೆಳಗಿನ ಸಾಲು ಸೇರಿಸಿ: ```cpp client.subscribe(SERVER_COMMAND_TOPIC.c_str()); ``` 1. `reconnectMQTTClient` ಕಾರ್ಯದ ಕೆಳಗೆ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ. ```cpp void clientCallback(char *topic, uint8_t *payload, unsigned int length) { char buff[length + 1]; for (int i = 0; i < length; i++) { buff[i] = (char)payload[i]; } buff[length] = '\0'; Serial.print("Message received:"); Serial.println(buff); DynamicJsonDocument doc(1024); deserializeJson(doc, buff); JsonObject obj = doc.as(); bool led_on = obj["led_on"]; if (led_on) digitalWrite(D0, HIGH); else digitalWrite(D0, LOW); } ``` ಈ ಕಾರ್ಯವು MQTT ಕ್ಲೈಂಟ್ ಸರ್ವರ್‌ನಿಂದ ಸಂದೇಶವನ್ನು ಸ್ವೀಕರಿಸಿದಾಗ ಕರೆಮಾಡುವ ಕಾಲ್ಬ್ಯಾಕ್ ಆಗಿದ್ದು. ಸಂದೇಶವು ಅಸಹಾಯಕ 8-ಬಿಟ್ ಪೂರ್ಣಾಂಕಗಳ ಆರೆ ಆಗಿ ಬರುತ್ತದೆ, ಅದನ್ನು ಪಾಠವಾಗಿ ಪರಿಗಣಿಸಲು ಅಕ್ಷರ ಆರೆಗೆ ಪರಿವರ್ತನೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಸಂದೇಶದಲ್ಲಿ JSON ದಾಖಲೆ ಹೊಂದಿದ್ದು, ArduinoJson ಗ್ರಂಥಾಲಯ ಬಳಸಿ ಡೀಕೋಡ್ ಮಾಡಲ್ಪಡುತ್ತದೆ. JSON ದಾಖಲೆ中的 `led_on` ಗುಣಲಕ್ಷಣವನ್ನು ಓದಿ, ಅದರಿಂದ LED ಆನ್ ಅಥವಾ ಆಫ್ ಆಗುತ್ತದೆ. 1. `createMQTTClient` ಕಾರ್ಯಕ್ಕೆ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ: ```cpp client.setCallback(clientCallback); ``` ಈ ಕೋಡ್‌ನ `clientCallback` ಅನ್ನು MQTT ಬ್ರೋಕರ್‌ನಿಂದ ಸಂದೇಶ ಬಂದಾಗ ಕರೆಮಾಡುವ ಕಾಲ್ಬ್ಯಾಕ್ ಆಗಿ ಹೊಂದಿಸುತ್ತದೆ. > 💁 `clientCallback` ಹ್ಯಾಂಡ್ಲರ್ ಎಲ್ಲಾ ಚಂದಾ ಹೊಂದಿಸಿದ ವಿಷಯಗಳಿಗೆ ಕರೆಮಾಡಲಾಗುತ್ತದೆ. ನಂತರ ನೀವು ಅನೇಕ ವಿಷಯಗಳನ್ನು ಕೇಳುವ ಕೋಡ್ ಬರೆಯುವಾಗ, ಸಂದೇಶ ಕಳುಹಿಸಿದ ವಿಷಯವನ್ನು `topic` ಪ್ಯಾರಾಮೀಟರ್‌ನಿಂದ ಪಡೆಯಬಹುದು. 1. ನಿಮ್ಮ ವಿಯೋ ಟರ್ಮಿನಲ್‌ಗೆ ಕೋಡ್ ಅಪ್‌ಲೋಡ್ ಮಾಡಿ, ಮತ್ತು ಸೀರಿಯಲ್ ಮಾನಿಟರ್ ಬಳಸಿ MQTT ಬ್ರೋಕರ್‌ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತಿರುವ ಬೆಳಕು ಮಟ್ಟಗಳನ್ನು ನೋಡಿ. 1. ನಿಮ್ಮ ಭೌತಿಕ ಅಥವಾ ಕಾಂಪ್ಯೂಟರ್ ಉಪಕರಣದ ಬೆಳಕು ಮಟ್ಟಗಳನ್ನು ಸರಿಹೊಂದಿಸಿ. ಸಂದೇಶಗಳು ಸ್ವೀಕರಿಸಲಾಗುತ್ತಿರುವುದು ಮತ್ತು ಆದೇಶಗಳು ಟರ್ಮಿನಲ್‌ನಲ್ಲಿ ಕಳುಹಿಸಲಾಗುತ್ತಿರುವುದು ಮತ್ತು ಬೆಳಕು ಮಟ್ಟದ ಆಧಾರದಲ್ಲಿ LED ಆನ್/ಆಫ್ ಆಗುತ್ತಿರುವುದನ್ನು ಕಾಣಬಹುದು. > 💁 ಈ ಕೋಡ್ ಅನ್ನು ನೀವು [code-commands/wio-terminal](../../../../../1-getting-started/lessons/4-connect-internet/code-commands/wio-terminal) ಫೋಲ್ಡರ್‌ನಲ್ಲಿ ಕಂಡುಹಿಡಿಯಬಹುದು. 😀 ನೀವು ಯಶಸ್ವಿಯಾಗಿ ನಿಮ್ಮ ಉಪಕರಣವನ್ನು MQTT ಬ್ರೋಕರ್‌ನಿಂದ ಆದೇಶಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸಲು ಕೋಡ್ ಮಾಡಿದ್ದೀರಿ. --- **ಅಸ್ವೀಕಾರಿಕೆ**: ಈದಾಖಲೆಯನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ದತೆಗೆ ಪ್ರಯತ್ನಿಸುವುದಾಗಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಿರಬಹದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆ ಅತ್ಯಂತ đáng ವೀಕ್ಷಣೀಯ ಮೂಲವಾಗಿದೆ. ಪ್ರಮುಖ ಮಾಹಿತಿ ಗಳಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಸಲಹೆ ನೀಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಸುವುದರಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪುಸಮಜಿಕೆಗಳು ಅಥವಾ ತಪ್ಪುಮಾನಗಳಿಂದ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.