自动执行设备注册 - AWS Panorama

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

自动执行设备注册

若要预置设备,请使用 ProvisionDevice API。响应包括一个 ZIP 文件,其中包含设备的配置和临时凭证。对文件进行解码,并将其保存在前缀为 certificates-omni_ 的存档中。

provision-device.sh
if [[ $# -eq 1 ]] ; then DEVICE_NAME=$1 else echo "Usage: ./provision-device.sh <device-name>" exit 1 fi CERTIFICATE_BUNDLE=certificates-omni_${DEVICE_NAME}.zip aws panorama provision-device --name ${DEVICE_NAME} --output text --query Certificates | base64 --decode > ${CERTIFICATE_BUNDLE} echo "Created certificate bundle ${CERTIFICATE_BUNDLE}"

配置存档中的凭证将在 5 分钟后过期。使用随附的 USB 驱动器将存档传输到您的设备。

若要注册摄像头,请使用 CreateNodeFromTemplateJob API。此 API 采用摄像头用户名、密码和 URL 的模板参数映射。可以使用 Bash 字符串操作将此映射格式化为 JSON 文档。

register-camera.sh
if [[ $# -eq 3 ]] ; then NAME=$1 USERNAME=$2 URL=$3 else echo "Usage: ./register-camera.sh <stream-name> <username> <rtsp-url>" exit 1 fi echo "Enter camera stream password: " read PASSWORD TEMPLATE='{"Username":"MY_USERNAME","Password":"MY_PASSWORD","StreamUrl": "MY_URL"}' TEMPLATE=${TEMPLATE/MY_USERNAME/$USERNAME} TEMPLATE=${TEMPLATE/MY_PASSWORD/$PASSWORD} TEMPLATE=${TEMPLATE/MY_URL/$URL} echo ${TEMPLATE} JOB_ID=$(aws panorama create-node-from-template-job --template-type RTSP_CAMERA_STREAM --output-package-name ${NAME} --output-package-version "1.0" --node-name ${NAME} --template-parameters "${TEMPLATE}" --output text)

或者,您可以从文件加载 JSON 配置。

--template-parameters file://camera-template.json