প্রকল্প সম্পর্কে

python-miio হলো একটি কমিউনিটি-চালিত পাইথন লাইব্রেরি এবং এর সাথে থাকা কমান্ড-লাইন টুল miiocli, যা miIO এবং MIoT প্রোটোকল সমর্থন করে এমন Xiaomi স্মার্ট যন্ত্রপাতি নিয়ন্ত্রণের জন্য ব্যবহৃত হয়। এটি Xiaomi বা এর সমর্থিত ডিভাইসগুলির কোনো বিক্রেতার সাথে অনুমোদিত নয়। ইনস্টলেশন pip (python-miio) এর মাধ্যমে বা উন্নয়ন সংস্করণের জন্য GitHub রিপোজিটরি থেকে করা যায়। README-তে একটি চলমান রিফ্যাক্টরিং প্রচেষ্টার কথা উল্লেখ করা হয়েছে এবং 0.6.0 সংস্করণ প্রকাশ না হওয়া পর্যন্ত আধুনিক MIoT ডিভাইস নিয়ন্ত্রণের জন্য git সংস্করণ বা প্রি-রিলিজ ব্যবহারের পরামর্শ দেওয়া হয়েছে। শুরু করা: miiocli তাদের IP ঠিকানা এবং টোকেন দেওয়া থাকলে সমর্থিত ডিভাইস নিয়ন্ত্রণ করতে পারে। টোকেন Xiaomi ক্লাউড অ্যাকাউন্ট থেকে miiocli cloud কমান্ডের মাধ্যমে (micloud লাইব্রেরি ব্যবহার করে) বা অন্যান্য নথিভুক্ত পদ্ধতিতে পাওয়া যায়। একটি সাধারণ info কমান্ড মডেল, হার্ডওয়্যার এবং ফার্মওয়্যার সংস্করণ, সমর্থিত ইন্টিগ্রেশন ক্লাস এবং নিয়ন্ত্রণের জন্য সঠিক কমান্ড রিপোর্ট করে। আধুনিক MIoT ডিভাইসগুলি genericmiot ইন্টিগ্রেশন দ্বারা পরিচালিত হয়, যা সেন্সর, সেটিংস এবং অ্যাকশন আবিষ্কারের জন্য ডিভাইস মডেল স্পেসিফিকেশন ফাইল ডাউনলোড এবং ক্যাশ করে। সাধারণ কমান্ডগুলির মধ্যে রয়েছে status (রিড-রাইট সেটিংসের জন্য অবস্থা এবং গৃহীত মান দেখানো), set (নাম অনুসারে একটি সেটিং পরিবর্তন), actions (উপলব্ধ অ্যাকশন তালিকাভুক্ত) এবং call (একটি অ্যাকশন কার্যকর করা)। পুরানো miIO ডিভাইসগুলি roborockvacuum বা fan-এর মতো প্রতি-ডিভাইস মডিউলের মাধ্যমে সমর্থিত, প্রতিটি মডিউল তার নিজস্ব সাবকমান্ড প্রকাশ করে। মডেল সনাক্তকরণ স্বয়ংক্রিয়, তবে ক্লাউড সংযোগ অনুপলব্ধ হলে --model ফ্ল্যাগ দিয়ে ওভাররাইড করা যেতে পারে। সমস্যা সমাধানের জন্য লগ ভার্বোসিটি বাড়ানোর জন্য পুনরাবৃত্তিযোগ্য --debug/-d ফ্ল্যাগ, সমস্যা সমাধানের ডকুমেন্টেশন বিভাগ, GitHub ইস্যু এবং আলোচনা এবং একটি Matrix চ্যাট রুম অন্তর্ভুক্ত রয়েছে। API ব্যবহার: miio মডিউল সমস্ত কার্যকারিতা প্রকাশ করে। DeviceFactory.create(ip, token) মডেল সনাক্ত করতে একটি info কোয়েরি সম্পাদন করে এবং মিলে যাওয়া ডিভাইস ক্লাস তৈরি করে। ডিভাইস ক্লাসগুলি sensors(), settings() এবং actions() এর মাধ্যমে ইন্ট্রোস্পেক্ট করা যায়, যা উপলব্ধ বৈশিষ্ট্যগুলি বর্ণনা করে এমন ডেসক্রিপ্টর অবজেক্ট ফেরত দেয়; তবে সব ইন্টিগ্রেশন এখনও ডেসক্রিপ্টর সংজ্ঞায়িত করেনি। বাগ ফিক্স, বৈশিষ্ট্য এবং ডকুমেন্টেশনের অবদান স্বাগত, একটি সংক্ষিপ্ত অবদান নির্দেশিকা সহ। হার্ডওয়্যার ছাড়া ডেভেলপারদের জন্য, প্রকল্পটি কোড পরীক্ষার জন্য সহজ miIO এবং MIoT সিমুলেটর সরবরাহ করে। README-তে বিস্তৃত সমর্থিত ডিভাইসের তালিকা রয়েছে, যার মধ্যে রয়েছে Xiaomi রোবট ভ্যাকুয়াম (Mi Robot Vacuum V1, S4, S4 MAX, S5, S5 MAX, S6 Pure, M1S, S7 এবং বিভিন্ন Dreame ও Viomi মডেল), এয়ার পিউরিফায়ার, হিউমিডিফায়ার, এয়ার কন্ডিশনার, ক্যামেরা, গেটওয়ে, প্লাগ, পাওয়ার স্ট্রিপ, ল্যাম্প এবং বাল্ব, IR রিমোট কন্ট্রোলার, পেডেস্টাল ফ্যান, ওয়াটার পিউরিফায়ার, এয়ার কোয়ালিটি মনিটর, স্পিকার, Wi-Fi রিপিটার, রাইস কুকার, ফ্রেশ এয়ার সিস্টেম, Yeelight লাইট, হিটার, একটি কার্টেন কন্ট্রোলার, একটি ডিশওয়াশার, একটি কফি মেকার, একটি পোষা প্রাণীর জল ডিসপেনসার এবং আরও অনেক কিছু। সব MIoT ডিভাইস genericmiot-এর মাধ্যমে সমর্থিত বলে জানানো হয়েছে। Home Assistant এই লাইব্রেরিটি আনুষ্ঠানিকভাবে বেশ কয়েকটি প্ল্যাটফর্মের জন্য ব্যবহার করে (vacuum, light, fan, switch, remote, sensor, alarm control panel, device tracker), এবং বিভিন্ন কাস্টম Home Assistant কম্পোনেন্টও এর উপর ভিত্তি করে তৈরি। উল্লেখিত সম্পর্কিত প্রকল্পগুলির মধ্যে রয়েছে dustcloud, Valetudo, micloud, micloudfaker এবং Xiaomi Cloud Tokens Extractor।