in gettingstarted/resourceManager.py [0:0]
def check_or_create_sitewise_camera_assets(self):
for camera in self.cameras:
if camera.get("Name") in self.existsCameraAssets:
print ("Asset" + camera.get("Name") + " already exists, skip creation.")
else:
# create sitewise asset
camera_asset_id = self.create_sitewise_asset(camera.get("Name"), self.sitewise_asset_model_id_camera)
# create kvs stream if not exists
if camera.get('KinesisVideoStreamName'):
self.check_or_create_kinesis_video_stream(camera.get('KinesisVideoStreamName'))
else:
print ("Cannot find KinesisVideoStreamName for " + camera.get("Name") + ", will not update it")
# create secret for rtsp url
secret_arn = ''
if camera.get('RTSPStream'):
secret_arn = self.create_secret(camera.get('RTSPStream'))
camera['RTSPStreamSecretARN'] = secret_arn
else:
print ("Cannot find RTSPStream for " + camera.get("Name") + ", will not update it")
properties = self.describe_sitewise_asset(camera_asset_id)
for key in camera:
if properties.get(key):
self.update_sitewise_property(camera_asset_id, properties.get(key), camera.get(key))
i = 0
while i < 5:
time.sleep(2)
if self.is_sitewise_asset_active(camera_asset_id):
self.turn_on_notification_on_video_upload_request_measurement(camera_asset_id, properties)
break
i = i+1
if not self.is_sitewise_asset_active(camera_asset_id):
print ("Camera asset create time out, did not turn on VideoUploadRequest measurement notification queue")
self.existingCameraAssetNameAndIdMap[camera.get("Name")] = camera_asset_id
print ("Created camera asset: " + camera.get("Name"))