המטא-נתונים של המכשיר

כמפיץ, תוכל לשייך מטא נתונים לכל מכשיר, כגון מספר טלפון או מספר הזמנת רכש. תוכלו לשייך מטא-נתונים על ידי קריאה ל-API או על ידי העלאת קובץ CSV בפורטל ללא מגע. בטבלה 1 מוצג מי יכול לשייך מטא-נתונים ולהציג אותם:

טבלה 1. הרשאות למטא-נתונים

משימה מפיצים לקוחות
שיוך מטא-נתונים באמצעות קריאה ל-API
שיוך מטא-נתונים על ידי העלאת קובץ CSV לפורטל ללא מגע
הצגת מטא-נתונים של מכשירים בתוצאות של קריאות ל-API
הצגת המטא-נתונים של המכשיר בפורטל ללא מגע

הקצאת מטא-נתונים

כדי לשייך מטא-נתונים לכל מכשיר, צריך לבצע קריאה ל-method partners.devices.metadata. אפשר להוסיף מספרי טלפון ומספרי הזמנות למכשירי Android באמצעות מפתחות מהטבלה 2 למטה:

טבלה 2. מפתחות מטא-נתונים למכשירי Android

נתונים מפתח סוג ערך דוגמה
מספר טלפון phonenumber מחרוזת +1 (800) 555-0100
מספר ההזמנה ordernumber מחרוזת GOOG#123/ABC-123456

שני ערכי המטא-נתונים הם מחרוזות בפורמט חופשי, כך שתוכלו להשתמש בפורמט שמתאים לארגון שלכם.

במכשירי ChromeOS, אפשר להשתמש במקשים שמופיעים בטבלה 3 למטה:

טבלה 3. מפתחות מטא-נתונים למכשירי Chrome OS

נתונים מפתח סוג ערך דוגמה
מספר ההזמנה ordernumber מחרוזת 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...