نمونه ها

در مثال‌های زیر، فرض می‌کنیم که شما قبلاً یک رمز با حساب سرویس خود دریافت کرده‌اید :

TOKEN=$(gcloud auth print-access-token)

همچنین فرض می‌کنیم که قبلاً ${CLIENT_PROJECT} را به شناسه پروژه Google Cloud Project تنظیم کرده‌اید.

مشتریان فعلی را فهرست کنید

دستور زیر تمام مشتریانی را که تماس گیرنده به آنها دسترسی دارد برمی گرداند:

curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${TOKEN}" \"https://sasportal.googleapis.com/v1alpha1/customers"

برای راحتی، نام مشتری را که در یک متغیر برگردانده شده است ذخیره کنید:

CUSTOMER_NAME=customers/...

یک پیکربندی دستگاه جدید ایجاد کنید

ابتدا ${FCCID} و ${SN} دستگاهی را که می‌خواهید ایجاد کنید تنظیم کنید:

FCCID=f1
SN=sn1

سپس با دستور زیر پیکربندی دستگاه را ایجاد کنید:

curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${TOKEN}" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices" \
  -d "{ \"fcc_id\": \"$FCCID\", \"serial_number\": \"$SN\", \"preloaded_config\": { \"call_sign\": \"cs1\", \"category\": \"DEVICE_CATEGORY_A\"}}"

دستور پیکربندی دستگاهی که به تازگی ایجاد شده است را برمی گرداند. برای راحتی، نام دستگاه را در یک متغیر ذخیره کنید:

DEVICE_NAME=customers/.../devices/...

لیست دستگاه های فعلی

دستور زیر دستگاه های موجود را فهرست می کند.

curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices"

دستگاه را بر اساس نام بازیابی کنید

دستور زیر دستگاه ها را بر اساس نام بازیابی می کند.

curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}"

دستگاه موجود را به روز کنید

دستور زیر دستگاه های موجود را به روز می کند.

curl -X PATCH -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}" \

هویت CPI و گواهینامه خود را تأیید کنید

از مثال زیر برای تولید رشته مخفی استفاده کنید:

curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/installer:generateSecret" \
  -d "{}"

این یک مقدار را با فرم زیر برمی گرداند:

{
  "secret": "<generated secret>"
}

سپس رشته مخفی باید در یک JWT کدگذاری شود. از قالب JSON Web Token استفاده کنید. ما فرض می‌کنیم که ${SECRET} را به رشته مخفی، ${ENCODED_SECRET} را به رشته JWT و ${CPI_ID} را به شناسه CPI برای اعتبارسنجی تنظیم کرده‌اید.

دستور زیر هویت و گواهی CPI را تأیید می کند.

curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/installer:validate" \
  -d "{ \"installer_id\": \"${CPI_ID}\", \"secret\": \"${SECRET}\", \"encoded_secret\": \"${ENCODED_SECRET}\" }"

CPI اکنون توانایی نصب یک CBSD را دارد که تمام پارامترهای مورد نیاز را دارد.

ثبت چند مرحله ای CBSD

دو روش برای انجام ثبت چند مرحله ای CBSD وجود دارد که در دو بخش زیر توضیح داده شده است. می‌توانید ثبت چند مرحله‌ای CBSD را با پارامترهایی انجام دهید که قبلاً توسط یک CPI یا با یک حساب CPI امضا شده‌اند.

با پارامترهای دستگاه که قبلاً توسط یک CPI امضا شده است

این نمونه نحوه ایجاد یک پیکربندی دستگاه غیرفعال را با پارامترهای نصب CBSD که قبلاً توسط یک CPI کدگذاری شده بود نشان می‌دهد، بنابراین پیکربندی می‌تواند حتی توسط کاربران غیر CPI ایجاد شود. از کلید خصوصی CPI برای رمزگذاری پارامترهای CBSD استفاده کنید. برای این کار از فرمت JSON Web Token استفاده می کنیم. ما فرض می‌کنیم که ${ENCODED_DEVICE} را روی رشته JWT و ${CPI_ID} را به شناسه CPI تنظیم کرده‌اید.

سپس پیکربندی دستگاه غیرفعال را می توان با دستور زیر ایجاد کرد:

curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${TOKEN}" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices:createSigned" \
  -d "{ \"installer_id\": \"${CPI_ID}\", \"encoded_device\": \"${ENCODED_DEVICE}\", \"parent\": \"${CUSTOMER_NAME}\" }"

سپس CBSD باید یک درخواست ثبت نام را برای تکمیل ثبت خود به SAS ارسال کند.

با یک حساب CPI

ابتدا، قبل از اینکه بخواهید پیکربندی دستگاه را تأیید کنید، هویت CPI باید تأیید شود. پس از انجام این کار، از دستور زیر برای ایجاد یک پیکربندی دستگاه غیرفعال استفاده کنید:

curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}:signDevice" \
  -d "${DEVICE}"

ما فرض می کنیم که ${DEVICE} را به عنوان نمایش JSON پارامترهای ثبت CBSD در این قالب تنظیم کرده اید.

سپس CBSD باید یک درخواست ثبت نام را برای تکمیل ثبت خود به SAS ارسال کند.