مراحل این راهنمای شروع سریع را دنبال کنید و در حدود ۱۰ دقیقه برنامه خط فرمان Python سادهای خواهید داشت که درخواستهایی به میانای برنامهسازی کاربردی فروشنده ثبتنام تمام خودکار ارسال میکند.
پیشنیازها
برای اجرای این شروع سریع، به موارد زیر نیاز دارید:
- حساب Google که عضو حساب فروشنده ثبتنام تمام خودکار شما باشد. اگر هنوز آمادهسازی نشدهاید، مراحل شروع به کار را در راهنمای درگاه فروشنده دنبال کنید.
- Python نسخه ۲.۶ یا بالاتر.
- ابزار مدیریت بسته pip.
- دسترسی به اینترنت و مرورگر وب.
مرحله ۱: روشن کردن API ثبتنام تمام خودکار
- از این جادوگر برای ایجاد یا انتخاب پروژه در Google Developers Console و روشن کردن خودکار API استفاده کنید. روی ادامه، سپس رفتن به اطلاعات کاربری کلیک کنید.
- به چه دادههایی دسترسی خواهید داشت؟ را روی دادههای برنامه تنظیم کنید.
- روی بعدی کلیک کنید. باید از شما خواسته شود حساب سرویس ایجاد کنید.
- نامی توصیفی برای نام حساب سرویس وارد کنید.
- شناسه حساب سرویس را یادداشت کنید (شبیه نشانی ایمیل است) چون بعداً به آن نیاز خواهید داشت.
- نقش را روی حسابهای سرویس > کاربر حساب سرویس تنظیم کنید.
- روی تمام کلیک کنید تا ایجاد حساب خدمات تکمیل شود.
- روی نشانی ایمیل حساب سرویسی که ایجاد کردهاید کلیک کنید.
- روی **کلیدها** کلیک کنید.
- روی **افزودن کلید** کلیک کنید، سپس روی **ایجاد کلید جدید** کلیک کنید.
- برای **نوع کلید**، **JSON** را انتخاب کنید.
- روی ایجاد کلیک کنید تا کلید خصوصی در رایانهتان بارگیری شود.
- روی **بستن** کلیک کنید.
- فایل را به دایرکتوری کاریتان منتقل کنید و نام آن را به
service_account_key.jsonتغییر دهید.
مرحله ۲: پیوند دادن حساب سرویس
- درگاه ثبتنام تمامخودکار را باز کنید. شاید لازم باشد به سیستم وارد شوید.
- روی حسابهای سرویس کلیک کنید.
- روی پیوند دادن حساب سرویس کلیک کنید.
- نشانی ایمیل را روی نشانی حساب سرویسی که ایجاد کردید تنظیم کنید.
- روی پیوند دادن حساب سرویس کلیک کنید تا از حساب سرویس با حساب ثبتنام تمام خودکار خودتان استفاده کنید.
مرحله ۳: نصب کتابخانه کارخواه Google
فرمان زیر را اجرا کنید تا کتابخانه را بااستفاده از pip نصب کنید:
pip install --upgrade google-api-python-client
برای گزینههای مختلف نصب، صفحه نصب کتابخانه را ببینید.
مرحله ۴: راهاندازی نمونه
فایلی با نام quickstart.py در دایرکتوری کاریتان ایجاد کنید. کد زیر را کپی کنید و فایل را ذخیره کنید. شناسه شریک
فروشنده خودتان را بهعنوان مقدار PARTNER_ID (اولین خط برنامه پساز
واردات) درج کنید.
#!/usr/bin/env python # -*- coding: utf-8 -*- """Zero-touch enrollment reseller quickstart. This script forms the quickstart introduction to the zero-touch enrollment 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()
شناسه شریک
فراخوانیهای میانای برنامهسازی کاربردی معمولاً به شناسه شریک توزیعکننده شما بهعنوان آرگومان نیاز دارند. برای پیدا کردن شناسه شریک از پرتال ثبتنام تمام خودکار، مراحل زیر را دنبال کنید:
- درگاه را باز کنید. شاید لازم باشد به سیستم وارد شوید.
- روی حسابهای سرویس کلیک کنید.
- شماره شناسه شریکتان را از خط شناسه توزیعکننده شما کپی کنید.
مرحله ۵: اجرای نمونه
برای اجرای دستورگان در فایل، از راهنمای سیستمعاملتان استفاده کنید. در رایانههای UNIX و Mac، فرمان زیر را در پایانه اجرا کنید:
python quickstart.py
درحال چاپ پاسخهای میانای برنامهسازی کاربردی
برای آسانتر کردن بازرسی پاسخها هنگام امتحان کردن میانای برنامهسازی کاربردی، دادههای پاسخ JSON را قالببندی کنید. تکهکد زیر نشان میدهد که چگونه میتوانید این کار را در 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)
عیبیابی
به ما بگویید چه مشکلی در شروع سریع وجود داشت تا برای رفع آن تلاش کنیم. برای آشنایی با نحوه استفاده zero-touch از حسابهای سرویس برای مجاز کردن فراخوانیهای API، مجاز کردن را بخوانید.