in src/modules/sitewise/lib/util/SiteWiseTelemetryUtils.py [0:0]
def create_asset(self, assetName, assetModelId):
self.log(f'Create asset {assetName} for model {assetModelId} ...')
assetlist = self.iotsitewise.list_assets(assetModelId = assetModelId)
nextToken = assetlist.get('nextToken')
for asset in assetlist['assetSummaries']:
if asset['name'] == assetName:
return self.iotsitewise.describe_asset(assetId = asset['id'])
while nextToken is not None:
assetlist = self.iotsitewise.list_assets(assetModelId = assetModelId, nextToken = nextToken)
nextToken = assetlist.get('nextToken')
for asset in assetlist['assetSummaries']:
if asset['name'] == assetName:
return self.iotsitewise.describe_asset(assetId = asset['id'])
assetResult = self.iotsitewise.create_asset(assetName = assetName, assetModelId = assetModelId)
assetId = assetResult['assetId']
asset = self.iotsitewise.describe_asset(assetId = assetId)
state = asset['assetStatus']['state']
while state != 'ACTIVE':
time.sleep(1)
asset = self.iotsitewise.describe_asset(assetId = assetId)
state = asset['assetStatus']['state']
return asset