النماذج

في الأمثلة التالية، نفترض أنك حصلت على رمز مميّز باستخدام حساب الخدمة الخاص بك:

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

ونفترض أيضًا أنك ضبطت ${CLIENT_PROJECT} من قبل على رقم تعريف المشروع لمشروع Google Cloud.

سرد العملاء الحاليين

يعرض الأمر التالي جميع العملاء الذين حصل المتصِل على حق الوصول إليهم:

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}" \

التحقّق من هوية CID والشهادة

استخدِم المثال التالي لإنشاء السلسلة السرية:

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 JSON المميّز للويب. نفترض أنك ضبطت ${SECRET} على السلسلة السرية، و${ENCODED_SECRET} على سلسلة JWT، و${CPI_ID} على رقم تعريف التكلفة لكل تثبيت للتحقق.

يعمل الأمر التالي على التحقّق من هوية التكلفة لكل تثبيت واعتمادها.

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}\" }"

يمكن الآن للتكلفة لكل تثبيت تثبيت CBSD الذي يحتوي على جميع المعلمات المطلوبة.

تسجيل CBSD متعدد الخطوات

هناك طريقتان لإجراء تسجيل CBSD متعدد الخطوات مشمول في القسمين التاليين. يمكنك تسجيل التسجيل في نظام CBSD المتعدد الخطوات باستخدام المعلّمات التي وقّعت عليها سابقًا تكلفة لكل تثبيت أو مع حساب التكلفة لكل تثبيت.

باستخدام معلَمات الجهاز التي تم توقيعها سابقًا من خلال تكلفة لكل تثبيت

يوضّح هذا النموذج كيفية إنشاء ضبط جهاز غير نشط باستخدام معلَمات تثبيت CBSD التي تم تشفيرها سابقًا باستخدام التكلفة لكل تثبيت، حتى يتمكّن المستخدمون الذين لا يستخدمون التكلفة لكل تثبيت من إنشاء الإعدادات. استخدِم المفتاح الخاص للتكلفة لكل تثبيت (CPA) لترميز معلَمات CBSD. نستخدم تنسيق رمز JSON المميّز للويب لإجراء ذلك. ونفترض أنك ضبطت ${ENCODED_DEVICE} على سلسلة JWT و${CPI_ID} على رقم تعريف التكلفة لكل تثبيت.

ويمكنك بعد ذلك إنشاء إعدادات غير نشطة للجهاز باستخدام الأمر التالي:

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 لإكمال عملية التسجيل.

مع حساب التكلفة لكل تثبيت

أولاً، يجب التحقّق من هوية التكلفة لكل تثبيت قبل محاولة التحقق من إعداد الجهاز. بعد الانتهاء من هذا الإجراء، استخدِم الأمر التالي لإنشاء إعدادات غير نشطة للجهاز:

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 لإكمال عملية التسجيل.