मैटर वर्चुअल डिवाइस

Matter ; Home APIs

Matter वर्चुअल डिवाइस, Matter समाधानों को डेवलप करने और उनकी जांच करने के लिए काम के होते हैं. इन्हें Google Home app (GHA) का इस्तेमाल करके चालू किया जा सकता है. साथ ही, इन्हें GHA और Google Assistant का इस्तेमाल करके कंट्रोल किया जा सकता है. ये ठीक उसी तरह काम करते हैं जैसे फ़िज़िकल Matter डिवाइस.

ऐप डेवलपर और अन्य लोगों के लिए जिन्हें वर्चुअल Matter डिवाइस का परीक्षण या अनुकरण करने की आवश्यकता है, लेकिन उनके पास अपना भौतिक या वर्चुअल Matter डिवाइस बनाने के लिए संसाधन नहीं हैं, Google Matter Virtual Device (MVD) प्रदान करता है. MVD एक हल्का स्टैंडअलोन Linux या macOS डेस्कटॉप टूल है जो विभिन्न प्रकार के वर्चुअल Matter डिवाइस का अनुकरण करता है और वर्चुअल Matter डिवाइस की स्थिति को नियंत्रित करने और प्रदर्शित करने के लिए एक ग्राफ़िकल यूज़र इंटरफ़ेस प्रदान करता है.

किसी भौतिक Matter डिवाइस के विपरीत, MVD किसी Matter फ़ैब्रिक को जोड़ने के लिए ब्लूटूथ® लो एनर्जी (BLE) या थ्रेड® पर निर्भर नहीं करता है. इसके बजाय, यह कमीशनिंग के लिए, होस्ट किए गए Linux या macOS डिवाइस के मौजूदा वाई-फ़ाई नेटवर्क कनेक्शन का इस्तेमाल करता है.

अन्य टूल की तुलना में

MVD, Virtual Device Controller (VDC) से इस मामले में अलग है कि यह एक स्टैंडअलोन समाधान है. इसमें वर्चुअल डिवाइस को कंट्रोल करने के लिए यूज़र इंटरफ़ेस (यूआई) के साथ जोड़ा जाता है. इसके उलट, VDC का इस्तेमाल किसी दूसरे वर्चुअल Matter डिवाइस को कंट्रोल करने के लिए किया जाता है.

MVD में कई अलग-अलग पहले से बने वर्चुअल डिवाइस होते हैं और उन्हें चलाने और नियंत्रित करने के लिए एक एकीकृत UI भी शामिल होता है.

इस्तेमाल किए जा सकने वाले डिवाइस

MVD निम्नलिखित Matter डिवाइस प्रकारों का समर्थन करता है:

​​
तालिका: MVD के लिए समर्थित Matter डिवाइस प्रकार
Matter डिवाइस का टाइप ऐप्लिकेशन क्लस्टर होम पारिस्थितिकी तंत्र प्रकार
एयर प्यूरिफ़ायर 0x0202
0x0006
0x0071
एयर प्यूरीफायर
वायु गुणवत्ता सेंसर 0x005b
0x0402
0x0405
0x040c
0x040d
0x042a
0x042d
0x042e
सेंसर
बुनियादी वीडियो प्लेयर 0x0006
0x0506
0x0509
टेलीविज़न
कलर टेंपरेचर लाइट 0x0300
0x0008
0x0006
लाइट
कॉन्टैक्ट सेंसर 0x0045
सेंसर
रोशनी कम या ज़्यादा करने की सुविधा वाली लाइट 0x0008
0x0006
लाइट
रोशनी कम या ज़्यादा करने की सुविधा वाला प्लग-इन यूनिट 0x0006
0x0008
आउटलेट
डिशवॉशर 0x0006
0x0059
0x0056
0x0060
डिशवॉशर
दरवाज़े का लॉक 0x0101
लॉक करें
एक्सटेंडेड कलर लाइट 0x0300
0x0008
0x0006
लाइट
पंखा 0x0202
0x0006
प्रशंसक
फ़्लो सेंसर 0x0404
सेंसर
जेनेरिक स्विच 0x003b
स्विच
नमी का सेंसर 0x0405
सेंसर
कपड़े धोने की मशीन 0x0006
0x0051
0x0053
0x0056
0x0060
वॉशर
लाइट सेंसर 0x0400
सेंसर
होम में लोगों की मौजूदगी का पता लगाने वाला सेंसर 0x0406
सेंसर
लाइट चालू/बंद करें 0x0008
0x0006
लाइट
लाइट स्विच चालू/बंद करना 0x0006
बदलें
चालू/बंद करने के लिए प्लग-इन यूनिट 0x0008
0x0006
आउटलेट
प्रेशर सेंसर 0x0403
सेंसर
पंप 0x0006
0x0200
0x0402
0x0403
0x0404
Pump
रोबोट वैक्यूम क्लीनर 0x0054
0x0055
0x0061
वैक्यूम
रूम एयर कंडिशनर 0x0006
0x0201
0x0202
एयर कंडिशनर
धुएं और कार्बन मोनोऑक्साइड का अलार्म 0x005C
कार्बन मोनोऑक्साइड का डिटेक्टर
स्मोक डिटेक्टर
Temperature Sensor 0x0402
सेंसर
थर्मोस्टैट 0x0201
थर्मोस्टैट
खिड़की को ढकने वाला सामान 0x0102
ब्लाइंड्स

एमवीडी स्थापित करें

MVD Debian (13 Trixie या उससे ऊपर), Ubuntu (20.04 Noble Numbat या उससे ऊपर), या macOS चलाने वाली 64-बिट x86 प्रोसेसर मशीनों पर चलता है.

Linux

MVD Debian (.deb) पैकेज डाउनलोड करें

आर्मर्ड-ASCII सिग्नेचर (.asc) फ़ाइल डाउनलोड करें

फिर MVD डेबियन (.deb) पैकेज स्थापित करने के लिए dpkg चलाएँ:

sudo dpkg -i mvd_1.7.0_amd64.deb

macOS

MVD (macOS x86) dmg फ़ाइल डाउनलोड करें

MVD (ARM64 M1) dmg फ़ाइल डाउनलोड करें

फिर इंस्टॉलेशन विंडो खोलने के लिए dmg फ़ाइल पर डबल-क्लिक करें.

इंस्टॉल करने की प्रोसेस पूरी करने के लिए, mvd आइकॉन को Applications फ़ोल्डर में खींचें और छोड़ें:

macOS इंस्टॉल

पोर्ट के इस्तेमाल की जानकारी देखना

MVD में मौजूद कंट्रोलर मॉड्यूल, वर्चुअल डिवाइस को आरपीसी कॉल करने के लिए टीसीपी पोर्ट 33000 का इस्तेमाल करता है. इसलिए, अगर आपके कंप्यूटर पर कोई अन्य प्रोसेस पहले से ही इस पोर्ट का इस्तेमाल कर रही है, तो इसे बंद कर दें.

यह देखने के लिए कि क्या कोई प्रक्रिया पोर्ट 33000 का उपयोग कर रही है:

Linux

sudo fuser -v 33000/tcp

macOS

lsof -i:33000

आप एक ही कमांड से TCP पोर्ट 33000 का उपयोग करके किसी भी प्रक्रिया को समाप्त कर सकते हैं:

Linux

sudo fuser -k 33000/tcp

macOS

lsof -ti:33000 | xargs kill

एमवीडी चलाएं

Linux

Linux पर, अपने ऐप्लिकेशन फ़ोल्डर या टर्मिनल से MVD चलाएं:

mvd

macOS

macOS पर, MVD खोलने के लिए Launchpad का इस्तेमाल करें या टर्मिनल से MVD चलाएँ:

cd /Applications
open mvd.app

अपना डिवाइस कॉन्फ़िगर करें

लॉन्च करने पर मुख्य स्क्रीन दिखती है. इसकी मदद से, वर्चुअल डिवाइस को कॉन्फ़िगर किया जा सकता है:

  • डिवाइस टाइप: डिवाइस का टाइप चुनें. उदाहरण के लिए, लाइट, स्विच, सेंसर वगैरह.
  • डिवाइस का नाम: डिवाइस को ऐसा नाम दें जिसे आसानी से समझा जा सके.
  • डिस्क्रिमिनेटर: यह 12 बिट का एक नंबर होता है. इसका इस्तेमाल, कमीशन पाने वाले कई डिवाइसों के विज्ञापनों के बीच अंतर करने के लिए किया जाता है. (डिफ़ॉल्ट: 3840).
  • Matter पोर्ट: यह Matter को चालू करने और आईपी नेटवर्क के ज़रिए कम्यूनिकेट करने के लिए इस्तेमाल किया जाता है. Matter डिफ़ॉल्ट रूप से टीसीपी/यूडीपी पोर्ट 5540 का इस्तेमाल करता है. हालांकि, वर्चुअल डिवाइस को किसी दूसरे पोर्ट का इस्तेमाल करने के लिए कॉन्फ़िगर किया जा सकता है. इसके लिए, यह ज़रूरी है कि कोई दूसरी सेवा उस पोर्ट का इस्तेमाल न कर रही हो.
  • वेंडर आईडी: सिर्फ़ टेस्ट वेंडर आईडी 0xFFF1 का इस्तेमाल किया जा सकता है.
  • प्रॉडक्ट आईडी: सिर्फ़ 0x8000 से 0x801F तक के टेस्ट प्रॉडक्ट आईडी इस्तेमाल किए जा सकते हैं.

वर्चुअल डिवाइस कॉन्फ़िगरेशन स्क्रीन

अपना फ़ायरवॉल कॉन्फ़िगर करना

Linux

यदि आपके कंप्यूटर में फ़ायरवॉल चल रहा है, तो उसे बंद कर दें, या Matter पोर्ट पर आने वाले TCP/UDP कनेक्शन की अनुमति दें.

चालू netfilter फ़ायरवॉल के नियमों को देखने के लिए, यह कमांड चलाएं:

sudo iptables -L -n

अगर `ufw` का इस्तेमाल किया जा रहा है, तो इसे बंद करने के लिए यह कमांड इस्तेमाल करें:

sudo ufw disable

इसे फिर से चालू करने के लिए, यह तरीका अपनाएं:

sudo ufw enable

macOS

macOS पर फ़ायरवॉल को कॉन्फ़िगर करने या बंद करने के लिए:

  1.  Apple मेन्यू पर जाएं और System Settings को चुनें.
  2. साइडबार में मौजूद सूची में, नेटवर्क पर क्लिक करें.
  3. फ़ायरवॉल पर क्लिक करें.
  4. फ़ायरवॉल के लिए मौजूद स्विच को टॉगल करके बंद करें पर सेट करें.

अपने डिवाइस को चालू करें

डिवाइस कॉन्फ़िगर करने के बाद, डिवाइस बनाएं पर क्लिक करें. डिवाइस बनाने पर, कंट्रोलर स्क्रीन दिखती है. आपने जिस तरह का डिवाइस चुना है उसके आधार पर, आपको इनमें से एक या उससे ज़्यादा कंट्रोल दिख सकते हैं:

  • चालू/बंद करें: यह सुविधा ज़्यादातर डिवाइसों में उपलब्ध होती है.
  • स्तर: उदाहरण के लिए, किसी लाइट में चमक समायोजित करने के लिए एक स्तर स्लाइडर हो सकता है.
  • रंग: उदाहरण के लिए, रंगीन लाइट को कंट्रोल करने के लिए इस सुविधा का इस्तेमाल किया जा सकता है.
  • ऑक्यूपेंसी: ऑक्यूपेंसी सेंसर, इस कंट्रोल को उपलब्ध कराता है. इससे यह पता चलता है कि कमरा खाली है या उसमें कोई मौजूद है.

सभी वर्चुअल डिवाइसों में ये कंट्रोल होते हैं:

  • QRCode: कमीशनिंग के लिए उपयोग किया गया QR कोड दिखाता है.
  • रीबूट करें: इससे वर्चुअल डिवाइस रीस्टार्ट हो जाता है. डिवाइस कुछ समय के लिए नेटवर्क से डिस्कनेक्ट हो जाता है.
  • रीसेट करें: इससे मौजूदा डिवाइस फ़ैक्ट्री रीसेट हो जाता है. साथ ही, कमीशनिंग, मौजूदा कंट्रोल की स्थिति वगैरह जैसी सभी स्थितियां मिट जाती हैं
  • मिटाएं: इससे डिवाइस मिट जाता है और आपको वापस डिवाइस बनाएं स्क्रीन पर ले जाया जाता है.

वर्चुअल डिवाइस कंट्रोल
स्क्रीन

निर्माता-विशिष्ट लक्षण

मैन्युफ़ैक्चरर के हिसाब से तय की गई (एमएस) खासियतें, Android के लिए Home API के साथ काम करती हैं. साथ ही, ये Matter में मौजूद स्टैंडर्ड खासियतें के अलावा अन्य सुविधाएं भी देती हैं. एमएस की सुविधा वाले किसी डिवाइस की जांच करने के लिए, MVD आपको कस्टम क्लस्टर सेक्शन में मौजूद सुविधाओं के साथ इंटरैक्ट करने की सुविधा देता है. ऊपर दी गई इमेज देखें.

अपने डिवाइस को चालू करें

उपकरण बनते ही चालू हो जाता है.

डिवाइस को चालू करने के लिए कुछ पूर्वापेक्षाएँ हैं:

  • आपके पास Google Home Developer Console में कोई प्रोजेक्ट होना चाहिए. इस प्रोजेक्ट में, Matter इंटिग्रेशन होना चाहिए. साथ ही, इसमें वही VID/PID कॉम्बिनेशन होना चाहिए जिसका इस्तेमाल आपने वर्चुअल डिवाइस सेट अप करते समय किया था. ज़्यादा जानकारी के लिए, प्रोजेक्ट बनाने से जुड़ी गाइड देखें.

  • आपके पास मैटर को सपोर्ट करने वाला Google Nest Hub होना चाहिए

  • आपके पास Android 8.1 या इसके बाद के वर्शन पर चलने वाला Android फ़ोन होना चाहिए. साथ ही, उसमें GHA इंस्टॉल होना चाहिए.

  • एंड्रॉयड फोन को हब के समान वाई-फाई नेटवर्क से कनेक्ट होना चाहिए.

  • होस्ट मशीन को वाई-फाई नेटवर्क से कनेक्ट होना चाहिए.

GHA का इस्तेमाल करके डिवाइस को चालू करने के लिए, QRCode पर क्लिक करें, ताकि डिवाइस का क्यूआर कोड दिखे. इसके बाद, Matter डिवाइस को जोड़ें में दिए गए निर्देशों का पालन करें. इसमें बताया गया है कि GHA का इस्तेमाल करके, Matter डिवाइस को कैसे चालू करें. Google Home Sample App for Matter का इस्तेमाल करके भी डिवाइस को चालू किया जा सकता है.

Matter कमीशनिंग कैसे काम करती है, यह जानने के लिए हमारा Matter प्राइमर देखें.

डिवाइस को नियंत्रित करें

वर्चुअल डिवाइस को चालू करने के बाद, उसे Google Home ऐप्लिकेशन या Google Assistant की मदद से, बोलकर कंट्रोल किया जा सकता है. इनमें से कोई एक विकल्प चुना जा सकता है:

  • वर्चुअल डिवाइस पर स्थिति परिवर्तनों की निगरानी करते समय GHA या Assistant के माध्यम से डिवाइस को नियंत्रित करें, या
  • वर्चुअल डिवाइस पर स्थिति में होने वाले बदलावों को मॉनिटर करते समय,Sample App for Matter का इस्तेमाल करके डिवाइस को कंट्रोल करें या
  • GHA या Assistant में स्थिति परिवर्तनों की निगरानी करते हुए MVD के माध्यम से डिवाइस स्थिति को नियंत्रित करें.

डिवाइस के साथ परीक्षण करें

Assistant के साथ परीक्षण करने के लिए, हम VS कोड के लिए Google होम एक्सटेंशन या Android स्टूडियो के लिए Google होम प्लगइन जैसे उच्चारण सिम्युलेटर का उपयोग करने की सलाह देते हैं.

डिवाइस की जानकारी देखना

डिवाइस की जानकारी स्क्रीन पर, डिवाइस के बारे में पूरी जानकारी दिखती है:

  • नाम: डिवाइस को दिया गया दोस्ताना नाम.
  • डिवाइस प्रकार: चयनित डिवाइस प्रकार.
  • डिस्क्रिमिनेटर: वर्तमान डिवाइस डिस्क्रिमिनेटर.
  • विक्रेता आईडी: वर्तमान डिवाइस विक्रेता आईडी.
  • उत्पाद आईडी: वर्तमान डिवाइस उत्पाद आईडी.
  • RPC पोर्ट: वह RPC पोर्ट जिसके ज़रिए डिवाइस नियंत्रकों (GUI) से संचार करता है.
  • Matter पोर्ट: आईपी नेटवर्क के ज़रिए संचार करने के लिए मौजूदा डिवाइस द्वारा इस्तेमाल किया जाने वाला पोर्ट.
  • पास कोड: नेटवर्क के माध्यम से डिवाइस को चालू करने के लिए उपयोग किया जाने वाला पिन.
  • कॉन्फ़िगरेशन फ़ोल्डर: वह फ़ोल्डर जिसमें वर्चुअल डिवाइस कॉन्फ़िगरेशन संग्रहीत करता है.
  • कमीशन जानकारी: डिवाइस द्वारा शामिल किए गए फ़ैब्रिक और फ़ैब्रिक में डिवाइस की नोड आईडी दिखाता है.

डिवाइस के लॉग देखना

अगर आपने टर्मिनल से MVD लॉन्च किया है, तो लॉग आउटपुट stdout पर दिखता है. आप डिवाइस लॉग टैब पर भी डिवाइस लॉग देख सकते हैं.

डिवाइस बंद करें

डिवाइस को रोकने और नष्ट करने के लिए, हटाएँ पर क्लिक करें.

ऐप्लिकेशन बंद करना

नियंत्रण विंडो बंद करने से डिवाइस नष्ट हो जाता है और MVD ऐप्लिकेशन समाप्त हो जाता है. यदि आपने टर्मिनल से लॉन्च किया है, तो आप टर्मिनल में Ctrl-C टाइप करके भी एप्लिकेशन को समाप्त कर सकते हैं.

सहायता पाएं

MVD से जुड़ी सहायता पाने, किसी बग की रिपोर्ट करने या किसी नई सुविधा का अनुरोध करने के लिए, अपने Google सहायता संपर्क से संपर्क करें.

विंडो के ऊपरी-दाएँ कोने में स्थित सहायता बटन पर क्लिक करने से आप इस पृष्ठ पर पहुँच जाएँगे.

गड़बड़ी की शिकायत करें

यदि आपको लगता है कि आपको MVD में कोई दोष मिला है, तो आप विंडो के ऊपरी-दाएँ कोने में समस्या बटन पर क्लिक करके बग दर्ज कर सकते हैं.

सुझाव भेजें

आपको MVD के बारे में क्या पसंद आया या हम इस टूल को इस्तेमाल करने के आपके अनुभव को कैसे बेहतर बना सकते हैं, इस बारे में अपने विचार सबमिट करने के लिए, हमारा फ़ीडबैक फ़ॉर्म भरें.

फ़ॉर्म को विंडो के ऊपरी-दाएँ कोने में स्थित फ़ीडबैक बटन से या नीचे दिए गए बटन पर क्लिक करके लॉन्च किया जा सकता है.

हमें अपने सुझाव/राय भेजें या शिकायत करें

आप MVD का इस्तेमाल करते समय नीचे पॉप-अप होने वाले सर्वेक्षण के ज़रिए भी फ़ीडबैक दे सकते हैं.