ক্রোম ম্যানেজমেন্ট টেলিমেট্রি API-এর জন্য কোড নমুনা

API বৈশিষ্ট্যগুলির একটি ওভারভিউয়ের জন্য Chrome ম্যানেজমেন্ট টেলিমেট্রি API এ যান৷

নীচে দেখানো সমস্ত অনুরোধ নিম্নলিখিত ভেরিয়েবল ব্যবহার করে:

  • $TOKEN - OAuth 2 টোকেন
  • $CUSTOMER - গ্রাহকের ID বা আক্ষরিক my_customer

টেলিমেট্রি ডিভাইস ডেটা তালিকাভুক্ত করুন

একটি ক্রোম ডিভাইসের জন্য টেলিমেট্রি ডেটা তালিকাভুক্ত করতে /telemetry/devices এন্ডপয়েন্ট ব্যবহার করুন। readMask প্যারামিটারটি নির্দিষ্ট করতে ব্যবহৃত হয় কোন ডিভাইস ক্ষেত্রগুলি ফেরত দেওয়া হয়। আপনি pageSize এবং pageToken প্যারামিটার ব্যবহার করে ফলাফলের পেজিনেশন নিয়ন্ত্রণ করতে পারেন। ডিভাইস বা রিপোর্টের মানদণ্ডের ভিত্তিতে ফলাফলগুলিকে আরও সংকীর্ণ করতে একটি filter নির্দিষ্ট করুন৷

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuInfo,cpuStatusReport,memoryInfo,memoryStatusReport,osUpdateStatus&pageSize=2"

প্রতিক্রিয়া

{
  "devices": [
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId>",
      "serialNumber": "0A2B213CDEFG",
      "cpuStatusReport": [
        {
          "reportTime": "2021-04-25T13:23:55.880Z",
          "cpuUtilizationPct": 76
        },
        {
          "reportTime": "2021-04-25T18:25:55.880Z",
          "cpuTemperatureInfo": [
            {
              "temperatureCelsius": 38,
              "label": "Core"
            },
          ]
        }
      ],
      "memoryStatusReport": [
        {
          "reportTime": "2021-04-25T13:23:55.880Z",
          "systemRamFreeBytes": "14358468900"
        }
      ],
      "osUpdateStatus": [
        {
          "lastUpdateTime": "2021-04-25T11:18:51.383Z",
          "lastUpdateCheckTime": "1970-01-01T00:00:00Z",
          "lastRebootTime": "2021-04-25T11:18:51.383Z"
        }
      ]
    },
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId>",
      "customer": "customers/<customer>",
      "orgUnitId": "FEDCBA",
      "deviceId": "<deviceId>",
      "serialNumber": "1B3D817LKUH",
      "cpuStatusReport": [
        {
          "reportTime": "2021-05-25T13:23:55.880Z",
          "cpuUtilizationPct": 50
        },
      ],
      "memoryStatusReport": [
        {
          "reportTime": "2021-05-25T13:23:55.880Z",
          "systemRamFreeBytes": "14358468900"
        }
      ],
      "osUpdateStatus": [
        {
          "lastUpdateTime": "2021-05-25T11:18:51.383Z",
          "lastUpdateCheckTime": "1970-01-01T00:00:00Z",
          "lastRebootTime": "2021-05-25T11:18:51.383Z"
        }
      ]
    }
  ],
  "nextPageToken": "PAGE_TOKEN"
}

একটি একক সংস্থা ইউনিটের জন্য টেলিমেট্রি ডিভাইস ডেটা তালিকাভুক্ত করুন

একটি একক প্রতিষ্ঠান ইউনিটের জন্য টেলিমেট্রি ডেটা তালিকাভুক্ত করতে, filter প্যারামিটারে orgUnitId মান ব্যবহার করুন।

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuInfo,cpuStatusReport,memoryInfo,memoryStatusReport,osUpdateStatus&filter=orgUnitId=ABCDEFG"

প্রতিক্রিয়া

{
  "devices": [
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId>",
      "serialNumber": "0A2B213CDEFG",
      "cpuStatusReport": [
        {
          "reportTime": "2021-04-25T13:23:55.880Z",
          "cpuUtilizationPct": 76
        },
        {
          "reportTime": "2021-04-25T18:25:55.880Z",
          "cpuTemperatureInfo": [
            {
              "temperatureCelsius": 38,
              "label": "Core"
            },
          ]
        }
      ],
      "memoryStatusReport": [
        {
          "reportTime": "2021-04-25T13:23:55.880Z",
          "systemRamFreeBytes": "14358468900"
        }
      ],
      "osUpdateStatus": [
        {
          "lastUpdateTime": "2021-04-25T11:18:51.383Z",
          "lastUpdateCheckTime": "1970-01-01T00:00:00Z",
          "lastRebootTime": "2021-04-25T11:18:51.383Z"
        }
      ]
    }
  ]
}

একটি টাইমস্ট্যাম্প ফিল্টার ব্যবহার করে টেলিমেট্রি ডিভাইসের ডেটা তালিকাভুক্ত করুন

টাইমস্ট্যাম্প ফিল্টার সমস্ত ডিভাইস ফেরত দেয়, কিন্তু শুধুমাত্র সেই রিপোর্টগুলিকে অন্তর্ভুক্ত করে যা টাইমস্ট্যাম্প ফিল্টার এবং নির্দিষ্ট read_mask এর সাথে সামঞ্জস্যপূর্ণ।

এই ফিল্টারটি ব্যবহার করতে, filter প্যারামিটারে reports_timestamp মান নির্দিষ্ট করুন এবং মিলিসেকেন্ডে ইউনিক্স ইপোচ (অর্থাৎ 1679288169623 ) বা RFC 3339 "জুলু" ফর্ম্যাট করা সময় (নয়টি ভগ্নাংশ সংখ্যা পর্যন্ত "2023-02-15T11:18:51.383Z" পর্যন্ত) একটি টাইমস্ট্যাম্প মান অন্তর্ভুক্ত করুন। "2023-02-15T11:18:51.383Z" ) ফর্ম্যাট। API দ্বারা প্রত্যাবর্তিত টাইমস্ট্যাম্পগুলি UTC টাইমজোনে থাকে, তাই reports_timestamp ফিল্টার মানগুলিও UTC টাইমজোনে থাকা উচিত৷ সমস্ত স্ট্যান্ডার্ড নম্বর তুলনা অপারেটর ( <, >, <=, >=, = ) সমর্থিত।

সমস্ত রিপোর্ট তালিকা

যেহেতু কোনো reports_timestamp মান নির্দিষ্ট করা না থাকলে শুধুমাত্র সাম্প্রতিক প্রতিবেদনগুলি ফেরত দেওয়া হয়, তাই সমস্ত ডিভাইসের জন্য read_mask অন্তর্ভুক্ত সমস্ত ডিভাইস রিপোর্ট পুনরুদ্ধার করতে নিম্নলিখিত কলটি ব্যবহার করা যেতে পারে।

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,audioStatusReport,cpuStatusReport,heartbeatStatusReport,memoryStatusReport&filter=reports_timestamp>=0"

প্রতিক্রিয়া

{
  "devices": [
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId>",
      "serialNumber": "0A2B213CDEFG",
      "audioStatusReport": [
        {
          "reportTime": "2009-01-01T12:37:51.383Z",
          "inputMute": true,
          "inputDevice": "example input device 2009",
        },
        {
          "reportTime": "2010-02-01T12:37:51.383Z",
          "inputMute": false,
          "inputDevice": "example input device 2010",
        },
        {
          "reportTime": "2011-03-01T12:37:51.383Z",
          "inputMute": true,
          "inputDevice": "example input device 2011",
        },
        {
          "reportTime": "2024-01-01T12:37:51.383Z",
          "inputMute": false,
          "inputDevice": "example input device 2024",
        }
      ],
      "cpuStatusReport": [
        {
          "reportTime": "1960-10-15T01:18:51.383Z",
          "cpuUtilizationPct": 76
        },
        {
          "reportTime": "1997-10-31T11:18:51.383Z",
          "cpuTemperatureInfo": [
            {
              "temperatureCelsius": 38,
              "label": "Core"
            },
          ]
        }
      ]
    },
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId 1>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId 1>",
      "serialNumber": "HGFEDCBA",
      "heartbeatStatusReport": [
        {
          "reportTime": "2001-02-15T11:18:51.383Z",
          "state": "ONLINE"
        },
        {
          "reportTime": "2002-07-22T11:18:51.383Z",
          "state": "OFFLINE"
        },
        {
          "reportTime": "2012-01-04T11:18:51.383Z",
          "state": "UNKNOWN"
        },
        {
          "reportTime": "2024-02-29T11:18:51.383Z",
          "state": "ONLINE"
        }
      ],
      "memoryStatusReport": [
        {
          "reportTime": "2024-03-20T11:18:51.383Z",
          "systemRamFreeBytes": "112233445566778"
        }
      ]
    }
  ]
}

একটি নির্দিষ্ট টাইমস্ট্যাম্পের পরে প্রতিবেদনগুলি তালিকাভুক্ত করুন

একটি নির্দিষ্ট টাইমস্ট্যাম্পের পরে প্রতিবেদনগুলি জিজ্ঞাসা করার জন্য অনুরোধ করতে, নিম্নলিখিত উদাহরণে দেখানো হিসাবে reports_timestamp ব্যবহার করুন৷

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuStatusReport,memoryStatusReport,osUpdateStatus&filter=reports_timestamp>=\"2023-02-15T11:18:51.383Z\""

প্রতিক্রিয়া

{
  "devices": [
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId>",
      "serialNumber": "0A2B213CDEFG",
      "cpuStatusReport": [
        {
          "reportTime": "2023-02-15T11:18:51.383Z",
          "cpuUtilizationPct": 76
        },
        {
          "reportTime": "2023-03-19T11:18:51.383Z",
          "cpuTemperatureInfo": [
            {
              "temperatureCelsius": 38,
              "label": "Core"
            },
          ]
        }
      ],
      "memoryStatusReport": [
        {
          "reportTime": "2023-04-19T11:18:51.383Z",
          "systemRamFreeBytes": "14358468900"
        }
      ]
    },
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId 1>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId 1>",
      "serialNumber": "HGFEDCBA",
      "memoryStatusReport": [
        {
          "reportTime": "2024-02-15T11:18:51.383Z",
          "systemRamFreeBytes": "112233445566778"
        }
      ]
    }
  ]
}

একাধিক ফিল্টার ব্যবহার করে টেলিমেট্রি ডিভাইস ডেটা তালিকাভুক্ত করুন (সংযোগ ফিল্টারিং)

এপিআই দ্বারা প্রত্যাবর্তিত প্রতিক্রিয়া সংকুচিত করতে একাধিক ফিল্টার ব্যবহার করতে, filter প্যারামিটারে AND কীওয়ার্ড ব্যবহার করুন এবং একাধিক ফিল্টারিং মানদণ্ড অন্তর্ভুক্ত করুন।

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/devices?readMask=name,customer,orgUnitId,deviceId,serialNumber,cpuStatusReport,memoryStatusReport,osUpdateStatus&filter=reports_timestamp=\"2023-02-15T11:18:51.383Z\" AND serialNumber=HGFEDCBA"

প্রতিক্রিয়া

{
  "devices": [
    {
      "name": "customers/<customer>/telemetry/devices/<deviceId 1>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "deviceId": "<deviceId 1>",
      "serialNumber": "HGFEDCBA",
      "memoryStatusReport": [
        {
          "reportTime": "2023-02-15T11:18:51.383Z",
          "systemRamFreeBytes": "112233445566778"
        }
      ]
    }
  ]
}

টেলিমেট্রি ব্যবহারকারীর ডেটা তালিকাভুক্ত করুন

একটি ক্রোম ডিভাইসের জন্য টেলিমেট্রি ডেটা তালিকাভুক্ত করতে /telemetry/users এন্ডপয়েন্ট ব্যবহার করুন। readMask প্যারামিটারটি নির্দিষ্ট করতে ব্যবহৃত হয় কোন ডিভাইস ক্ষেত্রগুলি ফেরত দেওয়া হয়। আপনি pageSize এবং pageToken প্যারামিটার ব্যবহার করে ফলাফলের পেজিনেশন নিয়ন্ত্রণ করতে পারেন।

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/users?readMask=name,customer,orgUnitId,userId,userEmail,user_device.device_id,user_device.audio_status_report,user_device.peripherals_report&pageSize=2"

প্রতিক্রিয়া

{
  "telemetryUsers": [
    {
      "name": "customers/<customer>/telemetry/users/<userId>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "userEmail": "<userId>",
      "userEmail": "user@mytestdomain.com",
      "userDevice": [
        {
          "deviceId": "HIJKLMNOP",
          "audioStatusReport": [
            {
              "reportTime": "2021-04-25T13:23:55.880Z",
              "outputMute": true,
              "inputMute": true,
            }
          ],
          "peripheralsReport": [
            {
              "reportTime": "2021-04-25T18:25:55.880Z",
              "usbPeripheralReport": [
                {
                  "vendor": "Vendor",
                  "name": "Microphone",
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "customers/<customer>/telemetry/users/<userId>",
      "customer": "customers/<customer>",
      "orgUnitId": "QRSTUV",
      "userEmail": "<userId>",
      "userEmail": "user2@mytestdomain.com",
      "userDevice": [
        {
          "deviceId": "WXYZ",
          "audioStatusReport": [
            {
              "reportTime": "2021-04-25T13:23:55.880Z",
              "outputMute": true,
              "inputMute": true,
            }
          ],
          "peripheralsReport": [
            {
              "reportTime": "2021-04-25T18:25:55.880Z",
              "usbPeripheralReport": [
                {
                  "vendor": "Vendor",
                  "name": "Microphone",
                }
              ]
            }
          ]
        }
      ]
    }
  ],
  "nextPageToken": "PAGE_TOKEN"
}

একটি একক সংস্থা ইউনিটের জন্য টেলিমেট্রি ব্যবহারকারীর ডেটা তালিকাভুক্ত করুন

একটি একক প্রতিষ্ঠান ইউনিটের জন্য টেলিমেট্রি ডেটা তালিকাভুক্ত করতে, filter প্যারামিটারে orgUnitId মান ব্যবহার করুন।

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/users?readMask=name,customer,orgUnitId,userId,userEmail,user_device.device_id,user_device.audio_status_report,user_device.peripherals_report&pageSize=2&filter=orgUnitId=ABCDEFG"

প্রতিক্রিয়া

{
  "telemetryUsers": [
    {
      "name": "customers/<customer>/telemetry/users/<userId>",
      "customer": "customers/<customer>",
      "orgUnitId": "ABCEDFG",
      "userEmail": "<userId>",
      "userEmail": "user@mytestdomain.com",
      "userDevice": [
        {
          "deviceId": "HIJKLMNOP",
          "audioStatusReport": [
            {
              "reportTime": "2021-04-25T13:23:55.880Z",
              "outputMute": true,
              "inputMute": true,
            }
          ],
          "peripheralsReport": [
            {
              "reportTime": "2021-04-25T18:25:55.880Z",
              "usbPeripheralReport": [
                {
                  "vendor": "Vendor",
                  "name": "Microphone",
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}

টেলিমেট্রি ইভেন্ট ডেটা তালিকা করুন

একজন গ্রাহকের জন্য টেলিমেট্রি ইভেন্ট তালিকাভুক্ত করতে, /telemetry/events এন্ডপয়েন্ট ব্যবহার করুন। readMask প্যারামিটারটি কোন ক্ষেত্রগুলি ফেরত দেওয়া হয় তা নির্দিষ্ট করতে ব্যবহৃত হয়। অদূর ভবিষ্যতে, readMask প্যারামিটার ঐচ্ছিক হয়ে যাবে এবং কমপক্ষে 1টি ইভেন্ট টাইপ সহ filter প্যারাম প্রয়োজন হবে।

ডিফল্টরূপে, ইভেন্টের name , report_time , এবং event_type ক্ষেত্রগুলি প্রতিক্রিয়াতে অন্তর্ভুক্ত করা হয়। আপনি pageSize এবং pageToken প্যারামিটার ব্যবহার করে ফলাফলের পেজিনেশন নিয়ন্ত্রণ করতে পারেন। অতিরিক্তভাবে, আপনি নিম্নলিখিত পরামিতিগুলির সাথে ফলাফলগুলি ফিল্টার করতে পারেন:

  • device_id
  • ব্যবহারকারী আইডি
  • device_org_unit_id
  • user_org_unit_id
  • টাইমস্ট্যাম্প
    • ইনপুট মান হয় EPOCH মিলিসেকেন্ড হতে পারে, যেমন timestamp<1667423821001 বা RFC 3339, অর্থাৎ। timestamp<"2022-11-02T20:08:32.386Z"
  • ইভেন্টের ধরণ
    • audio_severe_underrun
    • নেটওয়ার্ক_সংযোগ_রাষ্ট্র_পরিবর্তন
    • usb_added
    • usb_removed
    • নেটওয়ার্ক_এইচটিপিএস_লেটেন্সি_চেঞ্জ

অনুরোধ

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/telemetry/events?readMask=device,usb_peripherals_event&filter=event_type=usb_added&pageSize=3"

প্রতিক্রিয়া

{
  "telemetryEvents": [
    {
      "name": "customers/<customer>/telemetry/events/<event id>",
      "device": {
        "deviceId": "<device id>",
        "orgUnitId": "<device’s org unit id>"
      },
      "reportTime": "2022-11-02T11:14:09.034Z",
      "eventType": "USB_ADDED",
      "usbPeripheralsEvent": {
        "usbPeripheralReport": [
          {
            "vendor": "Microdia",
            "name": "Integrated_Webcam_HD",
            "vid": <vid>,
            "pid": <pid>
          }
        ]
      }
    },
    {
      "name": "customers/<customer>/telemetry/events/<event id>",
      "device": {
        "deviceId": "<device id>",
        "orgUnitId": "<device’s org unit id>"
      },
      "reportTime": "2022-11-02T10:10:36.481Z",
      "eventType": "USB_ADDED",
      "usbPeripheralsEvent": {
        "usbPeripheralReport": [
          {
            "vendor": "Hewlett-Packard",
            "name": "x304m",
            "vid": <vid>,
            "pid": <pid>,
            "categories": [
              "Mass storage"
            ]
          }
        ]
      }
    },
    {
      "name": "customers/<customer>/telemetry/events/<event id>",
      "device": {
        "deviceId": "<device id>",
        "orgUnitId": "<device’s org unit id>"
      },
      "reportTime": "2022-11-02T09:58:48.249Z",
      "eventType": "USB_ADDED",
      "usbPeripheralsEvent": {
        "usbPeripheralReport": [
          {
            "vendor": "Realtek Semiconductor Corp.",
            "name": "USB 10/100/1000 LAN",
            "vid": <vid>,
            "pid": <pid>,
            "categories": [
              "Vendor Specific"
            ]
          }
        ]
      }
    }
  ],
  "nextPageToken": "<page token>"
}