এটি `send_relay_command` ফাংশনকে ডিফাইন করে যা MQTT এর মাধ্যমে রিলেতে নির্দেশ পাঠায়। এই টেলিমেট্রি ডিকশোনারি হিসেবে তৈরী করা হলেও পরে এটিকে JSON এ রূপান্তর করা হয়। `state` এ যে ভ্যালু পাঠানো হয় তা নির্ধারণ করে যে, রিলে অন নাকি অফ থাকবে।
এটি `send_relay_command` ফাংশনকে ডিফাইন করে যা MQTT এর মাধ্যমে রিলেতে নির্দেশ পাঠায়। এই টেলিমেট্রি ডিকশনারি হিসেবে তৈরী করা হলেও পরে এটিকে JSON এ রূপান্তর করা হয়। `state` এ যে ভ্যালু পাঠানো হয় তা নির্ধারণ করে যে, রিলে অন নাকি অফ থাকবে।
1. `send_relay_code` ফাংশনের পর, কোডে নিচের অংশ যুক্ত করি।
@ -241,7 +241,7 @@
mqtt_client.subscribe(client_telemetry_topic)
```
এটি প্রয়োজনীয় সময় ভিত্তিতে রিলে নিয়ন্ত্রণ করতে একটি ফাংশনকে সংজ্ঞায়িত করে। এটি টেলিমেট্রি থেকে আন-সাবস্ক্রাইব করে শুরু হয় যাতে মাটির আর্দ্রতা বার্তাগুলি প্রক্রিয়াজাত না হয় যখন সেচ দেয়া হচ্ছে। এরপরে এটি রিলে চালু করার জন্য একটি নির্দেশ পাঠায়। এরপরে এটি `water_time` এর জন্য অপেক্ষা করে এবং তারপর রিলে বন্ধ করার জন্য নির্দেশ দেয় । অবশেষে এটি মাটির আর্দ্রতার মাত্রা `wait_time` সময় স্থিতিশীল হওয়ার জন্য অপেক্ষা করে। এরপরে এটি টেলিমেট্রিতে পুনরায় সাবস্ক্রাইব করে।
এটি প্রয়োজনীয় সময় এর পরিমাণের ভিত্তিতে রিলে নিয়ন্ত্রণ করতে একটি ফাংশনকে সংজ্ঞায়িত করে। এটি টেলিমেট্রি থেকে আন-সাবস্ক্রাইব করে শুরু হয় যাতে মাটির আর্দ্রতা বার্তাগুলি প্রক্রিয়াজাত না হয় যখন সেচ দেয়া হচ্ছে। এরপরে এটি রিলে চালু করার জন্য একটি নির্দেশ পাঠায়। এরপরে এটি `water_time` এর জন্য অপেক্ষা করে এবং তারপর রিলে বন্ধ করার জন্য নির্দেশ দেয় । অবশেষে এটি মাটির আর্দ্রতার মাত্রা `wait_time` সময় স্থিতিশীল হওয়ার জন্য অপেক্ষা করে। এরপরে এটি টেলিমেট্রিতে পুনরায় সাবস্ক্রাইব করে।