การเริ่มต้นใช้งาน Python อย่างรวดเร็วสำหรับตัวแทนจำหน่าย

ทำตามขั้นตอนในคู่มือเริ่มใช้งานฉบับย่อนี้ จากนั้นคุณจะ แอปบรรทัดคำสั่ง Python ง่ายๆ ที่ส่งคำขอไปยังการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม การลงทะเบียน API ตัวแทนจำหน่าย

ข้อกำหนดเบื้องต้น

คุณต้องมีสิ่งต่อไปนี้เพื่อเรียกใช้การเริ่มต้นอย่างรวดเร็วนี้

  • บัญชี Google ซึ่งเป็นสมาชิกของตัวแทนจำหน่ายการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม ของคุณได้ หากยังไม่ได้เริ่มต้นใช้งาน ให้ทำตามขั้นตอนในส่วนเริ่มต้นใช้งานใน คู่มือพอร์ทัลผู้ค้าปลีก
  • Python 2.6 ขึ้นไป
  • การจัดการแพ็กเกจ pip ของ Google
  • เข้าถึงอินเทอร์เน็ตและเว็บเบราว์เซอร์

ขั้นตอนที่ 1: เปิด API การตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม

  1. ใช้วิซาร์ดนี้เพื่อสร้างหรือเลือกโปรเจ็กต์ใน Google Developers Console และเปิด API โดยอัตโนมัติ คลิกต่อไป แล้วคลิกไปที่ข้อมูลเข้าสู่ระบบ
  2. ตั้งค่าคุณจะเข้าถึงข้อมูลใดบ้างเป็นข้อมูลแอปพลิเคชัน
  3. คลิกถัดไป คุณควรได้รับแจ้งให้สร้างบริการ ของคุณได้
  4. ตั้งชื่อที่สื่อความหมายสำหรับชื่อบัญชีบริการ
  5. จดรหัสบัญชีบริการ (ดูคล้ายอีเมล) เนื่องจากคุณจะ ใช้ภายหลัง
  6. ตั้งค่าบทบาทเป็นบัญชีบริการ > ผู้ใช้บัญชีบริการ
  7. คลิกเสร็จสิ้นเพื่อสร้างบัญชีบริการให้เสร็จสิ้น
  8. คลิกอีเมลของบัญชีบริการที่คุณสร้างขึ้น
  9. คลิก **Keys**
  10. คลิก**เพิ่มคีย์** แล้วคลิก**สร้างคีย์ใหม่**
  11. เลือก **JSON** สำหรับ**ประเภทคีย์**
  12. คลิกสร้าง แล้วดาวน์โหลดคีย์ส่วนตัวลงในคอมพิวเตอร์
  13. คลิก **ปิด**
  14. ย้ายไฟล์ไปยังไดเรกทอรีทํางาน แล้วเปลี่ยนชื่อเป็น service_account_key.json
  1. เปิดพอร์ทัลการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม คุณอาจต้องลงชื่อเข้าใช้
  2. คลิก บริการ
  3. คลิก ลิงก์บัญชีบริการ
  4. ตั้งค่าอีเมลเป็นที่อยู่ของบัญชีบริการที่คุณสร้างขึ้น
  5. คลิกลิงก์บัญชีบริการเพื่อใช้บัญชีบริการกับการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม บัญชีการลงทะเบียน

ขั้นตอนที่ 3: ติดตั้งไลบรารีของไคลเอ็นต์ Google

เรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้งไลบรารีโดยใช้ PIP

pip install --upgrade google-api-python-client

ดูหน้าการติดตั้งของไลบรารีเพื่อดูตัวเลือกการติดตั้งต่างๆ

ขั้นตอนที่ 4: ตั้งค่าตัวอย่าง

สร้างไฟล์ชื่อ quickstart.py ในไดเรกทอรีการทำงาน คัดลอกใน โค้ดต่อไปนี้ และบันทึกไฟล์ แทรกพาร์ทเนอร์ผู้ค้าปลีกของคุณเอง ID เป็นค่าสำหรับ PARTNER_ID (บรรทัดแรกของแอปหลังพารามิเตอร์ นำเข้า)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""Zero-touch enrollment reseller quickstart.

This script forms the quickstart introduction to the zero-touch enrollemnt
reseller API. To learn more, visit https://developer.google.com/zero-touch
"""

from apiclient.discovery import build
from httplib2 import Http
from oauth2client.service_account import ServiceAccountCredentials

# TODO: replace this with your partner reseller ID.
PARTNER_ID = '11036885';

# A single auth scope is used for the zero-touch enrollment customer API.
SCOPES = ['https://www.googleapis.com/auth/androidworkprovisioning']
SERVICE_ACCOUNT_KEY_FILE = 'service_account_key.json'

def get_credential():
  """Creates a Credential object with the correct OAuth2 authorization.

  Creates a Credential object with the correct OAuth2 authorization
  for the service account that calls the reseller API. The service
  endpoint calls this method when setting up a new service instance.

  Returns:
    Credential, the user's credential.
  """
  credential = ServiceAccountCredentials.from_json_keyfile_name(
      SERVICE_ACCOUNT_KEY_FILE, scopes=SCOPES)
  return credential


def get_service():
  """Creates a service endpoint for the zero-touch enrollment reseller API.

  Builds and returns an authorized API client service for v1 of the API. Use
  the service endpoint to call the API methods.

  Returns:
    A service Resource object with methods for interacting with the service.
  """
  http_auth = get_credential().authorize(Http())
  service = build('androiddeviceprovisioning', 'v1', http=http_auth)
  return service


def main():
  """Runs the zero-touch enrollment quickstart app.
  """
  # Create a zero-touch enrollment API service endpoint.
  service = get_service()

  # Send an API request to list all our customers.
  response = service.partners().customers().list(partnerId=PARTNER_ID).execute()

  # Print out the details of each customer.
  if 'customers' in response:
    for customer in response['customers']:
      print 'Name:{0}  ID:{1}'.format(
          customer['companyName'], customer['companyId'])
  else:
    print 'No customers found'


if __name__ == '__main__':
  main()

รหัสพาร์ทเนอร์

โดยทั่วไปแล้ว การเรียก API จะต้องใช้รหัสพาร์ทเนอร์ตัวแทนจำหน่ายของคุณเป็นอาร์กิวเมนต์ หากต้องการค้นหา รหัสพาร์ทเนอร์จากพอร์ทัลการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิดพอร์ทัล คุณอาจต้องลงชื่อเข้าใช้
  2. คลิก บัญชีบริการ
  3. คัดลอกหมายเลขรหัสพาร์ทเนอร์จากบรรทัดรหัสตัวแทนจำหน่ายของคุณ

ขั้นตอนที่ 5: เรียกใช้ตัวอย่าง

ใช้ความช่วยเหลือของระบบปฏิบัติการเพื่อเรียกใช้สคริปต์ในไฟล์ ใน UNIX และ Mac ให้เรียกใช้คำสั่งด้านล่างนี้ในเทอร์มินัล

python quickstart.py

การพิมพ์คำตอบของ API

จัดรูปแบบ JSON เพื่อให้ตรวจสอบการตอบกลับได้ง่ายขึ้นเมื่อลองใช้ API ข้อมูลคำตอบ ข้อมูลโค้ดด้านล่างแสดงวิธีที่คุณอาจทำใน Python โดยใช้โมดูล JSON

from json import dumps

# ...

results = provisioning.partners().devices().claimAsync(partnerId=MY_PARTNER_ID,
 body={'claims':new_claims}).execute()
# Print formatted JSON response
print dumps(results, indent=4, sort_keys=True)

การแก้ปัญหา

บอกให้เราทราบว่าเกิดข้อผิดพลาดใดกับการเริ่มต้นอย่างรวดเร็ว และเราจะดำเนินการเพื่อ แก้ไข หากต้องการดูวิธีที่การตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่มใช้บัญชีบริการเพื่อให้สิทธิ์การเรียก API โปรดอ่าน การให้สิทธิ์

ดูข้อมูลเพิ่มเติม