डिवाइस का मेटाडेटा

रीसेलर के तौर पर, हर डिवाइस के साथ टेलीफ़ोन नंबर या परचेज़ ऑर्डर (पीओ) नंबर जैसा मेटाडेटा जोड़ा जा सकता है. मेटाडेटा को एपीआई को कॉल करके या 'पहले से तैयार डिवाइस' सुविधा वाले पोर्टल में CSV फ़ाइल अपलोड करके जोड़ा जा सकता है. टेबल 1 में दिखाया गया है कि मेटाडेटा को कौन जोड़ और देख सकता है:

टेबल 1. मेटाडेटा की अनुमतियां

टास्क रीसेलर ग्राहक
एपीआई को कॉल करके मेटाडेटा जोड़ें
'पहले से तैयार डिवाइस' सुविधा वाले पोर्टल पर CSV फ़ाइल अपलोड करके, मेटाडेटा जोड़ें
एपीआई कॉल के नतीजों में डिवाइस का मेटाडेटा देखें
'पहले से तैयार डिवाइस' सुविधा वाले पोर्टल में डिवाइस का मेटाडेटा देखें

मेटाडेटा असाइन करना

हर डिवाइस से मेटाडेटा जोड़ने के लिए, partners.devices.metadata तरीके को कॉल करें. नीचे दी गई टेबल 2 में दी गई कुंजियों का इस्तेमाल करके, अपने Android डिवाइस के लिए टेलीफ़ोन और ऑर्डर नंबर जोड़े जा सकते हैं:

टेबल 2. Android डिवाइसों के लिए मेटाडेटा कुंजियां

डेटा सुरक्षा कुंजी वैल्यू टाइप उदाहरण
टेलीफ़ोन नंबर phonenumber String +1 (800) 555-0100
ऑर्डर नंबर ordernumber String GOOG#123/ABC-123456

दोनों मेटाडेटा वैल्यू फ़्री-फ़ॉर्म स्ट्रिंग होती हैं. इसलिए, ऐसे फ़ॉर्मैट का इस्तेमाल किया जा सकता है जो आपके संगठन के लिए काम का हो.

ChromeOS डिवाइसों के लिए, यहां दी गई टेबल तीन में दी गई कुंजियों का इस्तेमाल किया जा सकता है:

टेबल 3. ChromeOS डिवाइसों के लिए मेटाडेटा कुंजियां

डेटा सुरक्षा कुंजी वैल्यू टाइप उदाहरण
ऑर्डर नंबर ordernumber String GOOG#123/ABC-123456

डिवाइस बनाते समय मेटाडेटा असाइन करने के लिए, claimAsync को कॉल करते समय मेटाडेटा शामिल करें. नीचे दिए गए उदाहरण में, मौजूदा डिवाइस TARGET_DEVICE_ID के लिए टेलीफ़ोन नंबर और ऑर्डर नंबर सेट करने का तरीका बताया गया है:

Java

// Allowed metadata dictionary keys.
private static String METADATA_KEY_PHONE_NUMBER = "phonenumber";
private static String METADATA_KEY_ORDER_NUMBER = "ordernumber";

// ...
// Create the metadata record with the values.
DeviceMetadata metadata = new DeviceMetadata();
Map<String,String> entries = new HashMap<String, String>();
entries.put(METADATA_KEY_ORDER_NUMBER, "GOOG123/ABC-#123456");
entries.put(METADATA_KEY_PHONE_NUMBER, "+1 (800) 555-0100");
metadata.setEntries(entries);

// Set the metadata values on the target device.
UpdateDeviceMetadataRequest body = new UpdateDeviceMetadataRequest();
body.setDeviceMetadata(metadata);

DeviceMetadata response = service
        .partners()
        .devices()
        .metadata(PARTNER_ID, targetDeviceId, body)
        .execute();

.NET

// Allowed metadata dictionary keys.
private static string MetadataKeyPhoneNumber = "phonenumber";
private static string MetadataKeyOrderNumber = "ordernumber";

// ...
// Create the metadata record with the values.
DeviceMetadata metadata = new DeviceMetadata
{
    Entries = new Dictionary<string, string> {
        {MetadataKeyOrderNumber, "GOOG123/ABC-#123456"},
        {MetadataKeyPhoneNumber, "+1 (800) 555-0100"}
    }
};

// Set the metadata values on the target device.
UpdateDeviceMetadataRequest body = new UpdateDeviceMetadataRequest
{
    DeviceMetadata = metadata
};
var request = service.Partners.Devices.Metadata(body, PartnerId, targetDeviceId);
var results = request.Execute();

Python

# Allowed metadata dictionary keys.
METADATA_KEY_ENTRIES = "entries";
METADATA_KEY_PHONE_NUMBER = "phonenumber";
METADATA_KEY_ORDER_NUMBER = "ordernumber";

# ...
# Create the record with values.
new_metadata = {METADATA_KEY_ENTRIES:{ \
    METADATA_KEY_PHONE_NUMBER:'+1 (800) 555-0100', \
    METADATA_KEY_ORDER_NUMBER:'GOOG123/ABC-#123456'}}

# Set the metadata values on the target device.
response = service.partners().devices().metadata(
    metadataOwnerId=PARTNER_ID,
    deviceId=target_device_id,
    body={'deviceMetadata':new_metadata}).execute()

आपके मेटाडेटा के तर्क, एक ही कुंजी के लिए मौजूदा मेटाडेटा वैल्यू को बदल देते हैं.

मेटाडेटा मिटाएं

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

Java

// Create the metadata record with the values.
DeviceMetadata metadata = new DeviceMetadata();
Map<String,String> entries = new HashMap<String, String>();
entries.put(METADATA_KEY_PHONE_NUMBER, "");
metadata.setEntries(entries);

// Call partners().devices().metadata() to remove the phone metadata from the device...

.NET

// Create the metadata record with empty values.
DeviceMetadata metadata = new DeviceMetadata
{
    Entries = new Dictionary<string, string> {
        {MetadataKeyPhoneNumber, ""}
    }
};

// Call Partners.Devices.Metadata to remove the phone metadata from the device...

Python

# Create the metadata record with empty values.
metadata_to_remove = {METADATA_KEY_ENTRIES: {METADATA_KEY_PHONE_NUMBER:''}}

# Call partners().devices().metadata() to remove the phone number
# metadata from the device...