Example Usages
Digital Twins
1min
from pprint import pprint import urllib3 from litmussdk import digital twins from litmussdk digital twins import debugging params if name == " main " urllib3 disable warnings(urllib3 exceptions insecurerequestwarning) \## models ( sample model name, sample model description, updated model name, updated model description, sample clone model name, ) = debugging params setup models() \## static attributes ( sample static attribute name, sample static attribute value, updated static attribute name, updated static attribute value, ) = debugging params setup static attributes() \## transformations ( sample transformation name, sample transformation schema, updated transformation name, updated transformation schema, ) = debugging params setup transformations() \## dynamic attributes ( sample dynamic attribute name, sample dynamic attribute unit, sample dynamic attribute datatype, sample dynamic attribute schema id, sample dynamic attribute topic, updated dynamic attribute name, updated dynamic attribute unit, updated dynamic attribute datatype, ) = debugging params setup dynamic attributes() \## instances ( sample instance name, sample instance topic, sample instance interval, sample instance flat hierarchy, updated instance name, updated instance topic, updated instance interval, updated instance flat hierarchy, updated instance state, ) = debugging params setup instances() print("\n") print(" \nmodels\n ") \## version pprint(digital twins version()) \## list models pprint(digital twins list models()) \## create model created model = digital twins create model( model name=sample model name, model description=sample model description, ) pprint(created model) sample model id = created model\["id"] \## update model pprint( digital twins update model( model name=updated model name, model description=updated model description, model id=sample model id, ) ) \## clone model cloned model = digital twins clone model( model id=sample model id, clone model name=sample clone model name, ) pprint(cloned model) \## export model exported model = digital twins export model(cloned model\["id"]) pprint(exported model) \## import model pprint(digital twins import model(exported model)) print(" \nstatic attributes\n ") \## list static attributes pprint(digital twins list static attributes(sample model id)) \## create static attribute created static attribute = digital twins create static attributes( model id=sample model id, static attribute name=sample static attribute name, static attribute value=sample static attribute value, ) sample static attribute id = created static attribute\["id"] pprint(created static attribute) \## update static attribute pprint( digital twins update static attributes( model id=sample model id, static attribute id=sample static attribute id, static attribute name=updated static attribute name, static attribute value=updated static attribute value, ) ) print(" \ntransformations\n ") \## get transformations pprint(digital twins list transformations(sample model id)) \## create transformations created transformation = digital twins create transformations( model id=sample model id, transformation name=sample transformation name, transformation schema=sample transformation schema, ) sample transformation id = created transformation\["id"] pprint(created transformation) \## update transformation pprint( digital twins update transformations( transformation id=sample transformation id, updated transformation name=updated transformation name, updated transformation schema=updated transformation schema, ) ) print(" \ndynamic attributes\n ") \## create dynamic attribute sample dynamic attribute = digital twins create dynamic attribute( model id=sample model id, dynamic attribute name=sample dynamic attribute name, dynamic attribute unit=sample dynamic attribute unit, dynamic attribute datatype=sample dynamic attribute datatype, dynamic attribute schema id=sample dynamic attribute schema id, dynamic attribute topic=sample dynamic attribute topic, ) pprint(sample dynamic attribute) sample dynamic attribute id = sample dynamic attribute\["id"] \## list dynamic attributes pprint(digital twins list dynamic attributes(sample model id)) \## update dynamic attribute pprint( digital twins update dynamic attribute( dynamic attribute id=sample dynamic attribute id, model id=sample model id, dynamic attribute name=updated dynamic attribute name, dynamic attribute unit=updated dynamic attribute unit, dynamic attribute datatype=updated dynamic attribute datatype, dynamic attribute schema id=sample dynamic attribute schema id, dynamic attribute topic=sample dynamic attribute topic, ) ) print(" \ninstances\n ") \## create instances sample instance = digital twins create instance( model id=sample model id, instance name=sample instance name, instance topic=sample instance topic, instance interval=sample instance interval, instance flat hierarchy=sample instance flat hierarchy, ) sample instance id = sample instance\["id"] pprint(sample instance) \## get instances pprint(digital twins list all instances()) pprint(digital twins get instance by model(sample model id)) \## update instance pprint( digital twins update instance( instance id=sample instance id, model id=sample model id, instance name=updated instance name, instance interval=updated instance interval, instance topic=updated instance topic, instance flat hierarchy=updated instance flat hierarchy, ) ) \## set instance state pprint( digital twins set instance state( instance id=sample instance id, instance state=updated instance state ) ) print(" \nclean up\n ") \## delete instance pprint(digital twins delete instance(sample instance id)) \## delete dynamic attribute pprint(digital twins delete dynamic attribute(sample dynamic attribute id)) \## delete transformation pprint(digital twins delete transformations(sample transformation id)) \## delete static attribute/s pprint(digital twins delete static attribute(sample static attribute id)) \## delete model pprint(digital twins delete model(cloned model\["id"])) pprint(digital twins delete model(created model\["id"])) \ models \ {'git' '13b0dbac49', 'version' '2 4 21'} \[{'assets' 'asset', 'description' '', 'id' '599f4b39 8739 47b5 b659 add177721b44', 'name' 'dt1'}] {'assets' 'asset', 'description' 'created model', 'id' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'apidebug'} {'assets' 'asset', 'description' 'updated model', 'id' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'apitest'} {'assets' 'asset', 'description' 'updated model', 'id' '888a2c93 4cb9 43fc ade7 7ce580721885', 'name' 'clonedmodel'} \[{'assets' 'asset', 'connectorname' '', 'description' 'updated model', 'dynamicattributes' none, 'hierarchynodes' none, 'id' '888a2c93 4cb9 43fc ade7 7ce580721885', 'image' '', 'isuns' false, 'name' 'clonedmodel', 'staticattributes' none, 'transformationbackup' none}] true \ static attributes \ \[] {'id' '405b26c9 cc8f 422d 89e3 7491cf8d2ff5', 'instanceid' none, 'key' 'apidebug', 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'value' 'debug from api'} {'createdat' '1970 01 01t00 00 01z', 'id' '405b26c9 cc8f 422d 89e3 7491cf8d2ff5', 'instanceid' none, 'key' 'updated attribute name', 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'updatedat' '1970 01 01t00 00 01z', 'value' 'updated attribute value'} \ transformations \ \[] {'id' '25a404c7 ce3d 48cf 89d6 3b2d61c78a5e', 'name' 'debug transformation', 'schema' '"{\\\\"key\\\\" \\\\"value\\\\"}"'} {'id' '25a404c7 ce3d 48cf 89d6 3b2d61c78a5e', 'name' 'update transformation', 'schema' '"{\\\\"updatedkey\\\\" \\\\"updatedvalue\\\\"}"'} \ dynamic attributes \ {'createdat' '1970 01 01t00 00 01z', 'datatype' 'float64', 'id' 'f8508add e335 4ab0 af85 19622acdb320', 'instanceid' none, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'api created dynamic attribute', 'schemaid' none, 'topic' '', 'unit' 'celsius', 'updatedat' '1970 01 01t00 00 01z'} \[{'createdat' '1970 01 01t00 00 01z', 'datatype' 'float64', 'id' 'f8508add e335 4ab0 af85 19622acdb320', 'instanceid' none, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'api created dynamic attribute', 'schemaid' none, 'topic' '', 'unit' 'celsius', 'updatedat' '1970 01 01t00 00 01z'}] {'createdat' '1970 01 01t00 00 01z', 'datatype' 'float32', 'id' 'f8508add e335 4ab0 af85 19622acdb320', 'instanceid' none, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'updated dynamic attribute', 'schemaid' none, 'topic' '', 'unit' 'fahrenheit', 'updatedat' '1970 01 01t00 00 01z'} \ instances \ {'flathierarchy' false, 'id' '75c9a5ec 5832 4bcb a789 937b5552b59d', 'interval' 1, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'apiinstance', 'topic' 'digitaltwinsapiinstance'} \[{'flathierarchy' false, 'id' '538b54f5 d794 47f3 aed0 2ca9e646ae97', 'interval' 1, 'modelid' '599f4b39 8739 47b5 b659 add177721b44', 'name' 'dt2', 'topic' ''}, {'flathierarchy' false, 'id' '75c9a5ec 5832 4bcb a789 937b5552b59d', 'interval' 1, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'apiinstance', 'topic' 'digitaltwinsapiinstance'}, {'flathierarchy' false, 'id' '9cd3fd69 a21d 4f4e b759 b7750f514849', 'interval' 1, 'modelid' '00000000 0000 0000 0000 000000000000', 'name' 'dtinstace1', 'topic' ''}] \[{'flathierarchy' false, 'id' '75c9a5ec 5832 4bcb a789 937b5552b59d', 'interval' 1, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'apiinstance', 'topic' 'digitaltwinsapiinstance'}] {'flathierarchy' false, 'id' '75c9a5ec 5832 4bcb a789 937b5552b59d', 'interval' 1, 'modelid' 'a6675f0a 23e7 40b2 8a70 3ad0c4f734df', 'name' 'apiinstanceupdated', 'topic' 'digitaltwinsapiinstanceupdated'} false \ clean up \ none none none none none none