tbctl 0.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- tb_client/__init__.py +1 -0
- tb_client/api/__init__.py +1 -0
- tb_client/api/admin_controller_api.py +7410 -0
- tb_client/api/ai_model_controller_api.py +1524 -0
- tb_client/api/alarm_comment_controller_api.py +982 -0
- tb_client/api/alarm_controller_api.py +4821 -0
- tb_client/api/api_key_controller_api.py +1568 -0
- tb_client/api/asset_controller_api.py +4920 -0
- tb_client/api/asset_profile_controller_api.py +2973 -0
- tb_client/api/audit_log_controller_api.py +1691 -0
- tb_client/api/auth_controller_api.py +2554 -0
- tb_client/api/blob_entity_controller_api.py +1550 -0
- tb_client/api/calculated_field_controller_api.py +3493 -0
- tb_client/api/component_descriptor_controller_api.py +907 -0
- tb_client/api/converter_controller_api.py +2809 -0
- tb_client/api/converter_library_controller_api.py +2490 -0
- tb_client/api/custom_menu_controller_api.py +3101 -0
- tb_client/api/custom_translation_controller_api.py +2076 -0
- tb_client/api/customer_controller_api.py +4162 -0
- tb_client/api/dashboard_controller_api.py +6553 -0
- tb_client/api/dashboard_report_controller_api.py +657 -0
- tb_client/api/device_api_controller_api.py +3441 -0
- tb_client/api/device_connectivity_controller_api.py +869 -0
- tb_client/api/device_controller_api.py +7390 -0
- tb_client/api/device_group_ota_package_controller_api.py +887 -0
- tb_client/api/device_profile_controller_api.py +3548 -0
- tb_client/api/domain_controller_api.py +1557 -0
- tb_client/api/edge_controller_api.py +7752 -0
- tb_client/api/edge_event_controller_api.py +435 -0
- tb_client/api/entities_version_control_controller_api.py +3800 -0
- tb_client/api/entity_group_controller_api.py +11279 -0
- tb_client/api/entity_query_controller_api.py +2094 -0
- tb_client/api/entity_relation_controller_api.py +4501 -0
- tb_client/api/entity_view_controller_api.py +4608 -0
- tb_client/api/event_controller_api.py +1721 -0
- tb_client/api/group_permission_controller_api.py +2023 -0
- tb_client/api/image_controller_api.py +4427 -0
- tb_client/api/integration_controller_api.py +4603 -0
- tb_client/api/job_controller_api.py +1581 -0
- tb_client/api/login_endpoint_api.py +611 -0
- tb_client/api/lwm2m_controller_api.py +621 -0
- tb_client/api/mail_config_template_controller_api.py +298 -0
- tb_client/api/mobile_app_bundle_controller_api.py +1557 -0
- tb_client/api/mobile_app_controller_api.py +1838 -0
- tb_client/api/notification_controller_api.py +5522 -0
- tb_client/api/notification_rule_controller_api.py +1233 -0
- tb_client/api/notification_target_controller_api.py +2201 -0
- tb_client/api/notification_template_controller_api.py +1547 -0
- tb_client/api/o_auth2_config_template_controller_api.py +868 -0
- tb_client/api/o_auth2_controller_api.py +2070 -0
- tb_client/api/ota_package_controller_api.py +2880 -0
- tb_client/api/owner_controller_api.py +710 -0
- tb_client/api/qr_code_settings_controller_api.py +1664 -0
- tb_client/api/queue_controller_api.py +1542 -0
- tb_client/api/queue_stats_controller_api.py +944 -0
- tb_client/api/report_controller_api.py +2754 -0
- tb_client/api/report_template_controller_api.py +1842 -0
- tb_client/api/role_controller_api.py +1528 -0
- tb_client/api/rpc_v1_controller_api.py +647 -0
- tb_client/api/rpc_v2_controller_api.py +1594 -0
- tb_client/api/rule_chain_controller_api.py +6709 -0
- tb_client/api/rule_engine_controller_api.py +1332 -0
- tb_client/api/scheduler_event_controller_api.py +4366 -0
- tb_client/api/secret_controller_api.py +2385 -0
- tb_client/api/self_registration_controller_api.py +1734 -0
- tb_client/api/sign_up_controller_api.py +2603 -0
- tb_client/api/solution_controller_api.py +1412 -0
- tb_client/api/tb_resource_controller_api.py +5886 -0
- tb_client/api/telemetry_controller_api.py +5517 -0
- tb_client/api/tenant_controller_api.py +2134 -0
- tb_client/api/tenant_profile_controller_api.py +2673 -0
- tb_client/api/translation_controller_api.py +1991 -0
- tb_client/api/trendz_api_controller_api.py +1190 -0
- tb_client/api/trendz_controller_api.py +1638 -0
- tb_client/api/two_factor_auth_config_controller_api.py +2580 -0
- tb_client/api/two_factor_auth_controller_api.py +1138 -0
- tb_client/api/ui_settings_controller_api.py +298 -0
- tb_client/api/usage_info_controller_api.py +295 -0
- tb_client/api/user_controller_api.py +9796 -0
- tb_client/api/user_permissions_controller_api.py +607 -0
- tb_client/api/white_labeling_controller_api.py +3675 -0
- tb_client/api/widget_type_controller_api.py +4392 -0
- tb_client/api/widgets_bundle_controller_api.py +2453 -0
- tb_client/api_client.py +805 -0
- tb_client/api_response.py +21 -0
- tb_client/configuration.py +627 -0
- tb_client/exceptions.py +219 -0
- tb_client/models/__init__.py +16 -0
- tb_client/models/account_two_fa_settings.py +102 -0
- tb_client/models/activate_user_request.py +91 -0
- tb_client/models/admin_settings.py +114 -0
- tb_client/models/admin_settings_id.py +99 -0
- tb_client/models/affected_tenant_administrators_filter.py +89 -0
- tb_client/models/affected_user_filter.py +89 -0
- tb_client/models/aggregation_configuration.py +101 -0
- tb_client/models/aggregation_params.py +115 -0
- tb_client/models/ai_chat_model_config_object.py +107 -0
- tb_client/models/ai_chat_model_config_object_provider_config.py +236 -0
- tb_client/models/ai_model.py +118 -0
- tb_client/models/ai_model_config.py +138 -0
- tb_client/models/ai_model_id.py +99 -0
- tb_client/models/alarm.py +182 -0
- tb_client/models/alarm_assignee.py +99 -0
- tb_client/models/alarm_assignment_notification_rule_trigger_config.py +128 -0
- tb_client/models/alarm_comment.py +140 -0
- tb_client/models/alarm_comment_id.py +90 -0
- tb_client/models/alarm_comment_info.py +146 -0
- tb_client/models/alarm_comment_notification_rule_trigger_config.py +121 -0
- tb_client/models/alarm_condition.py +103 -0
- tb_client/models/alarm_condition_filter.py +118 -0
- tb_client/models/alarm_condition_filter_key.py +101 -0
- tb_client/models/alarm_condition_spec.py +115 -0
- tb_client/models/alarm_count_query.py +145 -0
- tb_client/models/alarm_data.py +222 -0
- tb_client/models/alarm_data_page_link.py +143 -0
- tb_client/models/alarm_data_query.py +137 -0
- tb_client/models/alarm_filter_config.py +123 -0
- tb_client/models/alarm_id.py +99 -0
- tb_client/models/alarm_info.py +194 -0
- tb_client/models/alarm_notification_rule_trigger_config.py +121 -0
- tb_client/models/alarm_rule.py +107 -0
- tb_client/models/alarm_schedule.py +130 -0
- tb_client/models/alarm_table_component.py +135 -0
- tb_client/models/alias_entity_id.py +111 -0
- tb_client/models/all_users_filter.py +89 -0
- tb_client/models/allow_create_new_devices_device_profile_provision_configuration.py +90 -0
- tb_client/models/allowed_permissions_info.py +164 -0
- tb_client/models/amazon_bedrock_chat_model_config.py +122 -0
- tb_client/models/amazon_bedrock_provider_config.py +93 -0
- tb_client/models/anthropic_chat_model_config.py +124 -0
- tb_client/models/anthropic_provider_config.py +89 -0
- tb_client/models/any_time_schedule.py +94 -0
- tb_client/models/api_auth_token_post_request.py +94 -0
- tb_client/models/api_key.py +124 -0
- tb_client/models/api_key_id.py +99 -0
- tb_client/models/api_key_info.py +122 -0
- tb_client/models/api_usage_limit_notification_rule_trigger_config.py +115 -0
- tb_client/models/api_usage_state_filter.py +95 -0
- tb_client/models/argument.py +111 -0
- tb_client/models/asset.py +142 -0
- tb_client/models/asset_id.py +99 -0
- tb_client/models/asset_info.py +158 -0
- tb_client/models/asset_profile.py +134 -0
- tb_client/models/asset_profile_id.py +99 -0
- tb_client/models/asset_profile_info.py +109 -0
- tb_client/models/asset_search_query.py +97 -0
- tb_client/models/asset_search_query_filter.py +122 -0
- tb_client/models/asset_type_filter.py +95 -0
- tb_client/models/attribute_export_data.py +101 -0
- tb_client/models/attributes_entity_view.py +93 -0
- tb_client/models/attributes_immediate_output_strategy.py +99 -0
- tb_client/models/attributes_output.py +98 -0
- tb_client/models/attributes_output_strategy.py +112 -0
- tb_client/models/attributes_rule_chain_output_strategy.py +89 -0
- tb_client/models/audit_log.py +178 -0
- tb_client/models/audit_log_id.py +90 -0
- tb_client/models/auto_version_create_config.py +101 -0
- tb_client/models/available_entity_keys.py +102 -0
- tb_client/models/aws_sns_sms_provider_configuration.py +95 -0
- tb_client/models/azure_open_ai_chat_model_config.py +126 -0
- tb_client/models/azure_open_ai_provider_config.py +93 -0
- tb_client/models/backup_code_two_fa_account_config.py +95 -0
- tb_client/models/backup_code_two_fa_provider_config.py +92 -0
- tb_client/models/bar_series_settings.py +127 -0
- tb_client/models/base_read_ts_kv_query.py +119 -0
- tb_client/models/basic.py +93 -0
- tb_client/models/blob_entity_id.py +99 -0
- tb_client/models/blob_entity_info.py +150 -0
- tb_client/models/blob_entity_with_customer_info.py +156 -0
- tb_client/models/boolean_filter_predicate.py +107 -0
- tb_client/models/branch_info.py +91 -0
- tb_client/models/bulk_import_request.py +103 -0
- tb_client/models/bulk_import_result_asset.py +105 -0
- tb_client/models/bulk_import_result_asset_created.py +99 -0
- tb_client/models/bulk_import_result_device.py +105 -0
- tb_client/models/bulk_import_result_edge.py +105 -0
- tb_client/models/button.py +112 -0
- tb_client/models/calculated_field.py +141 -0
- tb_client/models/calculated_field_debug_event_filter.py +120 -0
- tb_client/models/calculated_field_id.py +99 -0
- tb_client/models/calculated_field_info.py +143 -0
- tb_client/models/captcha_params.py +115 -0
- tb_client/models/cell_settings.py +121 -0
- tb_client/models/cf_argument_dynamic_source_configuration.py +112 -0
- tb_client/models/cf_reprocessing_job_configuration.py +111 -0
- tb_client/models/cf_reprocessing_job_result.py +106 -0
- tb_client/models/cf_reprocessing_task_failure.py +95 -0
- tb_client/models/cf_reprocessing_task_result.py +99 -0
- tb_client/models/cf_reprocessing_validation_result.py +103 -0
- tb_client/models/change_password_request.py +91 -0
- tb_client/models/chart_fill_settings.py +107 -0
- tb_client/models/chart_fill_settings_gradient.py +91 -0
- tb_client/models/check_pre_provisioned_devices_device_profile_provision_configuration.py +90 -0
- tb_client/models/claim_request.py +89 -0
- tb_client/models/clear_rule.py +100 -0
- tb_client/models/client_attributes_querying_snmp_communication_config.py +101 -0
- tb_client/models/coap_device_profile_transport_configuration.py +101 -0
- tb_client/models/coap_device_transport_configuration.py +107 -0
- tb_client/models/coap_device_type_configuration.py +112 -0
- tb_client/models/color_range.py +93 -0
- tb_client/models/column_mapping.py +101 -0
- tb_client/models/column_settings.py +112 -0
- tb_client/models/comparison_ts_value.py +98 -0
- tb_client/models/complex_filter_predicate.py +110 -0
- tb_client/models/complex_version_create_request.py +118 -0
- tb_client/models/component_descriptor.py +170 -0
- tb_client/models/component_descriptor_id.py +90 -0
- tb_client/models/contact_based_object.py +123 -0
- tb_client/models/converter.py +156 -0
- tb_client/models/converter_id.py +99 -0
- tb_client/models/converters_info.py +93 -0
- tb_client/models/create_report_request.py +91 -0
- tb_client/models/csv_report_template_config.py +118 -0
- tb_client/models/current_owner_dynamic_source_configuration.py +89 -0
- tb_client/models/custom_menu.py +141 -0
- tb_client/models/custom_menu_config.py +97 -0
- tb_client/models/custom_menu_delete_result.py +111 -0
- tb_client/models/custom_menu_id.py +90 -0
- tb_client/models/custom_menu_info.py +135 -0
- tb_client/models/custom_menu_item.py +135 -0
- tb_client/models/custom_mobile_page.py +97 -0
- tb_client/models/custom_time_schedule.py +106 -0
- tb_client/models/custom_time_schedule_item.py +95 -0
- tb_client/models/customer.py +160 -0
- tb_client/models/customer_id.py +99 -0
- tb_client/models/customer_info.py +176 -0
- tb_client/models/customer_users_filter.py +92 -0
- tb_client/models/dashboard.py +168 -0
- tb_client/models/dashboard_component.py +151 -0
- tb_client/models/dashboard_id.py +99 -0
- tb_client/models/dashboard_info.py +184 -0
- tb_client/models/dashboard_page.py +97 -0
- tb_client/models/dashboard_report_config.py +112 -0
- tb_client/models/data_key.py +127 -0
- tb_client/models/data_key_comparison_settings.py +93 -0
- tb_client/models/data_key_settings.py +152 -0
- tb_client/models/data_source.py +130 -0
- tb_client/models/debug_converter_event_filter.py +106 -0
- tb_client/models/debug_integration_event_filter.py +104 -0
- tb_client/models/debug_settings.py +93 -0
- tb_client/models/default_coap_device_type_configuration.py +95 -0
- tb_client/models/default_dashboard_params.py +91 -0
- tb_client/models/default_data_key_settings.py +89 -0
- tb_client/models/default_device_configuration.py +89 -0
- tb_client/models/default_device_profile_configuration.py +89 -0
- tb_client/models/default_device_profile_transport_configuration.py +89 -0
- tb_client/models/default_device_transport_configuration.py +89 -0
- tb_client/models/default_menu_item.py +110 -0
- tb_client/models/default_mobile_page.py +107 -0
- tb_client/models/default_rule_chain_create_request.py +89 -0
- tb_client/models/default_tenant_profile_configuration.py +263 -0
- tb_client/models/delivery_method_notification_template.py +127 -0
- tb_client/models/device.py +159 -0
- tb_client/models/device_activity_notification_rule_trigger_config.py +105 -0
- tb_client/models/device_configuration.py +109 -0
- tb_client/models/device_credentials.py +121 -0
- tb_client/models/device_credentials_id.py +90 -0
- tb_client/models/device_data.py +99 -0
- tb_client/models/device_export_data.py +134 -0
- tb_client/models/device_group_ota_package.py +116 -0
- tb_client/models/device_id.py +99 -0
- tb_client/models/device_info.py +179 -0
- tb_client/models/device_profile.py +189 -0
- tb_client/models/device_profile_alarm.py +121 -0
- tb_client/models/device_profile_configuration.py +109 -0
- tb_client/models/device_profile_data.py +115 -0
- tb_client/models/device_profile_id.py +99 -0
- tb_client/models/device_profile_info.py +133 -0
- tb_client/models/device_profile_provision_configuration.py +119 -0
- tb_client/models/device_profile_transport_configuration.py +121 -0
- tb_client/models/device_search_query.py +97 -0
- tb_client/models/device_search_query_filter.py +122 -0
- tb_client/models/device_transport_configuration.py +121 -0
- tb_client/models/device_type_filter.py +95 -0
- tb_client/models/disabled_device_profile_provision_configuration.py +90 -0
- tb_client/models/divider_component.py +137 -0
- tb_client/models/domain.py +124 -0
- tb_client/models/domain_id.py +99 -0
- tb_client/models/domain_info.py +134 -0
- tb_client/models/dummy_job_configuration.py +117 -0
- tb_client/models/dummy_job_result.py +106 -0
- tb_client/models/dummy_task_failure.py +93 -0
- tb_client/models/dummy_task_result.py +99 -0
- tb_client/models/duration_alarm_condition_spec.py +107 -0
- tb_client/models/dynamic_value_boolean.py +105 -0
- tb_client/models/dynamic_value_double.py +105 -0
- tb_client/models/dynamic_value_integer.py +105 -0
- tb_client/models/dynamic_value_long.py +105 -0
- tb_client/models/dynamic_value_string.py +105 -0
- tb_client/models/edge.py +152 -0
- tb_client/models/edge_communication_failure_notification_rule_trigger_config.py +92 -0
- tb_client/models/edge_connection_notification_rule_trigger_config.py +105 -0
- tb_client/models/edge_event.py +149 -0
- tb_client/models/edge_event_id.py +90 -0
- tb_client/models/edge_id.py +99 -0
- tb_client/models/edge_info.py +168 -0
- tb_client/models/edge_instructions.py +89 -0
- tb_client/models/edge_search_query.py +97 -0
- tb_client/models/edge_search_query_filter.py +122 -0
- tb_client/models/edge_type_filter.py +95 -0
- tb_client/models/edqs_state.py +113 -0
- tb_client/models/edqs_sync_request.py +100 -0
- tb_client/models/efento_coap_device_type_configuration.py +89 -0
- tb_client/models/email_delivery_method_notification_template.py +94 -0
- tb_client/models/email_two_fa_account_config.py +93 -0
- tb_client/models/email_two_fa_provider_config.py +92 -0
- tb_client/models/enterprise_captcha_params.py +101 -0
- tb_client/models/entities_by_group_name_filter.py +113 -0
- tb_client/models/entities_limit_notification_rule_trigger_config.py +105 -0
- tb_client/models/entity.py +93 -0
- tb_client/models/entity_action_notification_rule_trigger_config.py +108 -0
- tb_client/models/entity_alias.py +97 -0
- tb_client/models/entity_count_query.py +103 -0
- tb_client/models/entity_data.py +151 -0
- tb_client/models/entity_data_diff.py +98 -0
- tb_client/models/entity_data_diff_current_version.py +239 -0
- tb_client/models/entity_data_info.py +99 -0
- tb_client/models/entity_data_page_link.py +101 -0
- tb_client/models/entity_data_query.py +128 -0
- tb_client/models/entity_data_sort_order.py +105 -0
- tb_client/models/entity_export_data_object.py +175 -0
- tb_client/models/entity_filter.py +169 -0
- tb_client/models/entity_group.py +142 -0
- tb_client/models/entity_group_export_data.py +150 -0
- tb_client/models/entity_group_filter.py +119 -0
- tb_client/models/entity_group_id.py +99 -0
- tb_client/models/entity_group_info.py +151 -0
- tb_client/models/entity_group_list_filter.py +103 -0
- tb_client/models/entity_group_name_filter.py +103 -0
- tb_client/models/entity_id.py +99 -0
- tb_client/models/entity_info.py +95 -0
- tb_client/models/entity_key.py +101 -0
- tb_client/models/entity_list_filter.py +103 -0
- tb_client/models/entity_load_error.py +102 -0
- tb_client/models/entity_name_filter.py +103 -0
- tb_client/models/entity_relation.py +119 -0
- tb_client/models/entity_relation_info.py +127 -0
- tb_client/models/entity_relations_query.py +103 -0
- tb_client/models/entity_subtype.py +107 -0
- tb_client/models/entity_table_component.py +133 -0
- tb_client/models/entity_type_filter.py +101 -0
- tb_client/models/entity_type_load_result.py +111 -0
- tb_client/models/entity_type_version_create_config.py +116 -0
- tb_client/models/entity_type_version_load_config.py +105 -0
- tb_client/models/entity_type_version_load_request.py +107 -0
- tb_client/models/entity_version.py +95 -0
- tb_client/models/entity_view.py +149 -0
- tb_client/models/entity_view_id.py +99 -0
- tb_client/models/entity_view_info.py +165 -0
- tb_client/models/entity_view_search_query.py +97 -0
- tb_client/models/entity_view_search_query_filter.py +122 -0
- tb_client/models/entity_view_type_filter.py +95 -0
- tb_client/models/error_component.py +98 -0
- tb_client/models/error_component_all_of_exception.py +116 -0
- tb_client/models/error_component_all_of_exception_cause.py +101 -0
- tb_client/models/error_component_all_of_exception_cause_stack_trace.py +103 -0
- tb_client/models/error_event_filter.py +96 -0
- tb_client/models/escalated_notification_rule_recipients_config.py +92 -0
- tb_client/models/event_filter.py +141 -0
- tb_client/models/event_id.py +90 -0
- tb_client/models/event_info.py +124 -0
- tb_client/models/exportable_entity_entity_id.py +95 -0
- tb_client/models/failure.py +92 -0
- tb_client/models/favicon.py +89 -0
- tb_client/models/features_info.py +99 -0
- tb_client/models/filter.py +101 -0
- tb_client/models/filter_predicate_value_boolean.py +97 -0
- tb_client/models/filter_predicate_value_double.py +97 -0
- tb_client/models/filter_predicate_value_integer.py +97 -0
- tb_client/models/filter_predicate_value_long.py +97 -0
- tb_client/models/filter_predicate_value_string.py +97 -0
- tb_client/models/fixed_time_window.py +91 -0
- tb_client/models/font.py +115 -0
- tb_client/models/git_hub_models_chat_model_config.py +126 -0
- tb_client/models/git_hub_models_provider_config.py +89 -0
- tb_client/models/google_ai_gemini_chat_model_config.py +128 -0
- tb_client/models/google_ai_gemini_provider_config.py +89 -0
- tb_client/models/google_vertex_ai_gemini_chat_model_config.py +128 -0
- tb_client/models/google_vertex_ai_gemini_provider_config.py +95 -0
- tb_client/models/group_entity_export_data.py +128 -0
- tb_client/models/group_permission.py +142 -0
- tb_client/models/group_permission_id.py +99 -0
- tb_client/models/group_permission_info.py +167 -0
- tb_client/models/has_id_object.py +94 -0
- tb_client/models/header_footer.py +106 -0
- tb_client/models/heading.py +123 -0
- tb_client/models/heading_component.py +155 -0
- tb_client/models/history.py +115 -0
- tb_client/models/home_dashboard_info.py +95 -0
- tb_client/models/home_dashboard_params.py +91 -0
- tb_client/models/home_menu_item.py +125 -0
- tb_client/models/image_component.py +159 -0
- tb_client/models/insets.py +95 -0
- tb_client/models/integration.py +163 -0
- tb_client/models/integration_converters_info.py +98 -0
- tb_client/models/integration_id.py +99 -0
- tb_client/models/integration_info.py +143 -0
- tb_client/models/integration_lifecycle_event_notification_rule_trigger_config.py +120 -0
- tb_client/models/interval.py +101 -0
- tb_client/models/job.py +144 -0
- tb_client/models/job_configuration.py +126 -0
- tb_client/models/job_id.py +99 -0
- tb_client/models/job_result.py +132 -0
- tb_client/models/json_transport_payload_configuration.py +89 -0
- tb_client/models/jwt_pair.py +103 -0
- tb_client/models/jwt_settings.py +95 -0
- tb_client/models/key_filter.py +111 -0
- tb_client/models/key_filter_predicate.py +118 -0
- tb_client/models/last_visited_dashboard_info.py +98 -0
- tb_client/models/latest_chart_component.py +153 -0
- tb_client/models/latest_chart_component_all_of_latest_chart_settings.py +166 -0
- tb_client/models/legend_config.py +111 -0
- tb_client/models/license_usage_info.py +109 -0
- tb_client/models/life_cycle_event_filter.py +108 -0
- tb_client/models/line_series_settings.py +167 -0
- tb_client/models/login_mobile_info.py +115 -0
- tb_client/models/login_request.py +91 -0
- tb_client/models/login_response.py +91 -0
- tb_client/models/login_white_labeling_params.py +145 -0
- tb_client/models/lw_m2_m_bootstrap_server_credential.py +118 -0
- tb_client/models/lw_m2_m_server_security_config_default.py +143 -0
- tb_client/models/lw_m2m_instance.py +99 -0
- tb_client/models/lw_m2m_object.py +107 -0
- tb_client/models/lw_m2m_resource_observe.py +99 -0
- tb_client/models/lw_m2m_version.py +89 -0
- tb_client/models/lwm2m_device_profile_transport_configuration.py +113 -0
- tb_client/models/lwm2m_device_transport_configuration.py +107 -0
- tb_client/models/mapping.py +103 -0
- tb_client/models/menu_item.py +126 -0
- tb_client/models/merged_group_permission_info.py +112 -0
- tb_client/models/merged_group_type_permission_info.py +99 -0
- tb_client/models/merged_user_permissions.py +172 -0
- tb_client/models/microsoft_teams_delivery_method_notification_template.py +101 -0
- tb_client/models/microsoft_teams_notification_target_config.py +112 -0
- tb_client/models/mistral_ai_chat_model_config.py +126 -0
- tb_client/models/mistral_ai_provider_config.py +89 -0
- tb_client/models/mobile_app.py +144 -0
- tb_client/models/mobile_app_bundle.py +137 -0
- tb_client/models/mobile_app_bundle_id.py +99 -0
- tb_client/models/mobile_app_bundle_info.py +153 -0
- tb_client/models/mobile_app_delivery_method_notification_template.py +101 -0
- tb_client/models/mobile_app_id.py +99 -0
- tb_client/models/mobile_app_notification_delivery_method_config.py +95 -0
- tb_client/models/mobile_app_version_info.py +95 -0
- tb_client/models/mobile_layout_config.py +97 -0
- tb_client/models/mobile_page.py +129 -0
- tb_client/models/mobile_redirect_params.py +91 -0
- tb_client/models/mobile_self_registration_params.py +165 -0
- tb_client/models/mobile_session_info.py +89 -0
- tb_client/models/model.py +98 -0
- tb_client/models/model_none.py +89 -0
- tb_client/models/mqtt_device_profile_transport_configuration.py +107 -0
- tb_client/models/mqtt_device_transport_configuration.py +89 -0
- tb_client/models/multi_value_map_string_string.py +102 -0
- tb_client/models/new_platform_version_notification_rule_trigger_config.py +89 -0
- tb_client/models/no_sec_lw_m2_m_bootstrap_server_credential.py +137 -0
- tb_client/models/node_connection_info.py +93 -0
- tb_client/models/notification.py +162 -0
- tb_client/models/notification_delivery_method_config.py +112 -0
- tb_client/models/notification_id.py +99 -0
- tb_client/models/notification_info.py +101 -0
- tb_client/models/notification_pref.py +91 -0
- tb_client/models/notification_request.py +161 -0
- tb_client/models/notification_request_config.py +100 -0
- tb_client/models/notification_request_id.py +99 -0
- tb_client/models/notification_request_info.py +176 -0
- tb_client/models/notification_request_preview.py +108 -0
- tb_client/models/notification_request_stats.py +113 -0
- tb_client/models/notification_rule.py +141 -0
- tb_client/models/notification_rule_config.py +89 -0
- tb_client/models/notification_rule_id.py +99 -0
- tb_client/models/notification_rule_info.py +156 -0
- tb_client/models/notification_rule_recipients_config.py +116 -0
- tb_client/models/notification_rule_trigger_config.py +161 -0
- tb_client/models/notification_settings.py +102 -0
- tb_client/models/notification_target.py +112 -0
- tb_client/models/notification_target_config.py +116 -0
- tb_client/models/notification_target_id.py +99 -0
- tb_client/models/notification_template.py +121 -0
- tb_client/models/notification_template_config.py +118 -0
- tb_client/models/notification_template_id.py +99 -0
- tb_client/models/numeric_filter_predicate.py +107 -0
- tb_client/models/o_auth2_basic_mapper_config.py +114 -0
- tb_client/models/o_auth2_client.py +172 -0
- tb_client/models/o_auth2_client_id.py +99 -0
- tb_client/models/o_auth2_client_info.py +118 -0
- tb_client/models/o_auth2_client_login_info.py +93 -0
- tb_client/models/o_auth2_client_registration_template.py +136 -0
- tb_client/models/o_auth2_client_registration_template_id.py +90 -0
- tb_client/models/o_auth2_custom_mapper_config.py +95 -0
- tb_client/models/o_auth2_mapper_config.py +112 -0
- tb_client/models/object_attributes.py +120 -0
- tb_client/models/ollama_auth.py +115 -0
- tb_client/models/ollama_chat_model_config.py +126 -0
- tb_client/models/ollama_provider_config.py +95 -0
- tb_client/models/open_ai_chat_model_config.py +126 -0
- tb_client/models/open_ai_provider_config.py +91 -0
- tb_client/models/originator_entity_owner_users_filter.py +89 -0
- tb_client/models/ota_package.py +194 -0
- tb_client/models/ota_package_data.py +103 -0
- tb_client/models/ota_package_export_data.py +128 -0
- tb_client/models/ota_package_id.py +99 -0
- tb_client/models/ota_package_info.py +188 -0
- tb_client/models/other_configuration.py +119 -0
- tb_client/models/output.py +131 -0
- tb_client/models/page_break_component.py +90 -0
- tb_client/models/page_data_ai_model.py +111 -0
- tb_client/models/page_data_alarm_comment_info.py +111 -0
- tb_client/models/page_data_alarm_data.py +111 -0
- tb_client/models/page_data_alarm_info.py +111 -0
- tb_client/models/page_data_api_key_info.py +111 -0
- tb_client/models/page_data_asset.py +111 -0
- tb_client/models/page_data_asset_info.py +111 -0
- tb_client/models/page_data_asset_profile.py +111 -0
- tb_client/models/page_data_asset_profile_info.py +111 -0
- tb_client/models/page_data_audit_log.py +111 -0
- tb_client/models/page_data_blob_entity_with_customer_info.py +111 -0
- tb_client/models/page_data_calculated_field.py +111 -0
- tb_client/models/page_data_calculated_field_info.py +111 -0
- tb_client/models/page_data_contact_based_object.py +111 -0
- tb_client/models/page_data_converter.py +111 -0
- tb_client/models/page_data_custom_menu_info.py +111 -0
- tb_client/models/page_data_customer.py +111 -0
- tb_client/models/page_data_customer_info.py +111 -0
- tb_client/models/page_data_dashboard_info.py +111 -0
- tb_client/models/page_data_device.py +111 -0
- tb_client/models/page_data_device_info.py +111 -0
- tb_client/models/page_data_device_profile.py +111 -0
- tb_client/models/page_data_device_profile_info.py +111 -0
- tb_client/models/page_data_domain_info.py +111 -0
- tb_client/models/page_data_edge.py +111 -0
- tb_client/models/page_data_edge_event.py +111 -0
- tb_client/models/page_data_edge_info.py +111 -0
- tb_client/models/page_data_entity_data.py +111 -0
- tb_client/models/page_data_entity_group_info.py +111 -0
- tb_client/models/page_data_entity_info.py +111 -0
- tb_client/models/page_data_entity_subtype.py +111 -0
- tb_client/models/page_data_entity_version.py +111 -0
- tb_client/models/page_data_entity_view.py +111 -0
- tb_client/models/page_data_entity_view_info.py +111 -0
- tb_client/models/page_data_event_info.py +111 -0
- tb_client/models/page_data_integration.py +111 -0
- tb_client/models/page_data_integration_info.py +111 -0
- tb_client/models/page_data_job.py +111 -0
- tb_client/models/page_data_mobile_app.py +111 -0
- tb_client/models/page_data_mobile_app_bundle_info.py +111 -0
- tb_client/models/page_data_notification.py +111 -0
- tb_client/models/page_data_notification_request_info.py +111 -0
- tb_client/models/page_data_notification_rule_info.py +111 -0
- tb_client/models/page_data_notification_target.py +111 -0
- tb_client/models/page_data_notification_template.py +111 -0
- tb_client/models/page_data_o_auth2_client_info.py +111 -0
- tb_client/models/page_data_ota_package_info.py +111 -0
- tb_client/models/page_data_queue.py +111 -0
- tb_client/models/page_data_queue_stats.py +111 -0
- tb_client/models/page_data_report.py +111 -0
- tb_client/models/page_data_report_info.py +111 -0
- tb_client/models/page_data_report_template_info.py +111 -0
- tb_client/models/page_data_role.py +111 -0
- tb_client/models/page_data_rule_chain.py +111 -0
- tb_client/models/page_data_scheduled_report_info.py +111 -0
- tb_client/models/page_data_scheduler_event_info.py +111 -0
- tb_client/models/page_data_scheduler_event_with_customer_info.py +111 -0
- tb_client/models/page_data_secret_info.py +111 -0
- tb_client/models/page_data_short_entity_view.py +111 -0
- tb_client/models/page_data_string.py +103 -0
- tb_client/models/page_data_tb_resource_info.py +111 -0
- tb_client/models/page_data_tenant.py +111 -0
- tb_client/models/page_data_tenant_info.py +111 -0
- tb_client/models/page_data_tenant_profile.py +111 -0
- tb_client/models/page_data_trendz_view_config_lite.py +111 -0
- tb_client/models/page_data_user.py +111 -0
- tb_client/models/page_data_user_email_info.py +111 -0
- tb_client/models/page_data_user_info.py +111 -0
- tb_client/models/page_data_widget_type_info.py +111 -0
- tb_client/models/page_data_widgets_bundle.py +111 -0
- tb_client/models/palette.py +93 -0
- tb_client/models/palette_settings.py +98 -0
- tb_client/models/pdf_report_template_config.py +161 -0
- tb_client/models/platform_two_fa_settings.py +130 -0
- tb_client/models/platform_users_notification_target_config.py +96 -0
- tb_client/models/power_saving_configuration.py +105 -0
- tb_client/models/processing_strategy.py +107 -0
- tb_client/models/proto_transport_payload_configuration.py +101 -0
- tb_client/models/psklw_m2_m_bootstrap_server_credential.py +137 -0
- tb_client/models/qr_code_config.py +107 -0
- tb_client/models/qr_code_settings.py +133 -0
- tb_client/models/qr_code_settings_id.py +90 -0
- tb_client/models/queue.py +134 -0
- tb_client/models/queue_id.py +99 -0
- tb_client/models/queue_stats.py +107 -0
- tb_client/models/queue_stats_id.py +99 -0
- tb_client/models/rate_limits_notification_rule_trigger_config.py +102 -0
- tb_client/models/raw_data_event_filter.py +98 -0
- tb_client/models/referenced_entity_key.py +113 -0
- tb_client/models/relation_entity_type_filter.py +104 -0
- tb_client/models/relation_path_level.py +99 -0
- tb_client/models/relation_path_query_dynamic_source_configuration.py +99 -0
- tb_client/models/relations_query_filter.py +146 -0
- tb_client/models/relations_search_parameters.py +130 -0
- tb_client/models/repeating_alarm_condition_spec.py +95 -0
- tb_client/models/report.py +141 -0
- tb_client/models/report_bar_chart_settings.py +168 -0
- tb_client/models/report_bar_chart_with_labels_settings.py +256 -0
- tb_client/models/report_component.py +169 -0
- tb_client/models/report_doughnut_chart_settings.py +172 -0
- tb_client/models/report_id.py +99 -0
- tb_client/models/report_info.py +151 -0
- tb_client/models/report_job_configuration.py +154 -0
- tb_client/models/report_job_result.py +112 -0
- tb_client/models/report_latest_chart_settings.py +151 -0
- tb_client/models/report_pie_chart_settings.py +180 -0
- tb_client/models/report_range_chart_settings.py +255 -0
- tb_client/models/report_request.py +118 -0
- tb_client/models/report_task_result.py +101 -0
- tb_client/models/report_template.py +151 -0
- tb_client/models/report_template_config.py +151 -0
- tb_client/models/report_template_id.py +99 -0
- tb_client/models/report_template_info.py +149 -0
- tb_client/models/report_time_series_chart_settings.py +222 -0
- tb_client/models/repository_settings.py +119 -0
- tb_client/models/repository_settings_info.py +91 -0
- tb_client/models/reset_password_email_request.py +89 -0
- tb_client/models/reset_password_request.py +91 -0
- tb_client/models/resource_export_data.py +129 -0
- tb_client/models/resources_shortage_notification_rule_trigger_config.py +96 -0
- tb_client/models/rich_text_component.py +121 -0
- tb_client/models/role.py +148 -0
- tb_client/models/role_id.py +99 -0
- tb_client/models/rpc.py +158 -0
- tb_client/models/rpc_id.py +99 -0
- tb_client/models/rpklw_m2_m_bootstrap_server_credential.py +137 -0
- tb_client/models/rule_chain.py +145 -0
- tb_client/models/rule_chain_connection_info.py +104 -0
- tb_client/models/rule_chain_data.py +111 -0
- tb_client/models/rule_chain_debug_event_filter.py +100 -0
- tb_client/models/rule_chain_export_data.py +134 -0
- tb_client/models/rule_chain_id.py +99 -0
- tb_client/models/rule_chain_import_result.py +99 -0
- tb_client/models/rule_chain_meta_data.py +129 -0
- tb_client/models/rule_chain_output_labels_usage.py +115 -0
- tb_client/models/rule_engine_component_lifecycle_event_notification_rule_trigger_config.py +124 -0
- tb_client/models/rule_node.py +142 -0
- tb_client/models/rule_node_debug_event_filter.py +134 -0
- tb_client/models/rule_node_id.py +99 -0
- tb_client/models/save_device_with_credentials_request.py +99 -0
- tb_client/models/save_ota_package_info_request.py +192 -0
- tb_client/models/scheduled_report_info.py +166 -0
- tb_client/models/scheduler_event.py +157 -0
- tb_client/models/scheduler_event_export_data.py +128 -0
- tb_client/models/scheduler_event_filter.py +104 -0
- tb_client/models/scheduler_event_id.py +99 -0
- tb_client/models/scheduler_event_info.py +150 -0
- tb_client/models/scheduler_event_with_customer_info.py +158 -0
- tb_client/models/secret.py +123 -0
- tb_client/models/secret_id.py +99 -0
- tb_client/models/secret_info.py +119 -0
- tb_client/models/security_settings.py +104 -0
- tb_client/models/self_registration_params.py +175 -0
- tb_client/models/share_group_request.py +113 -0
- tb_client/models/shared_attributes_setting_snmp_communication_config.py +99 -0
- tb_client/models/short_customer_info.py +99 -0
- tb_client/models/short_entity_view.py +99 -0
- tb_client/models/sign_up_field.py +100 -0
- tb_client/models/sign_up_request.py +107 -0
- tb_client/models/sign_up_self_registration_params.py +109 -0
- tb_client/models/simple_alarm_condition_spec.py +89 -0
- tb_client/models/simple_calculated_field_configuration.py +112 -0
- tb_client/models/simple_entity.py +91 -0
- tb_client/models/single_entity_filter.py +95 -0
- tb_client/models/single_entity_version_create_request.py +103 -0
- tb_client/models/single_entity_version_load_request.py +107 -0
- tb_client/models/slack_conversation.py +107 -0
- tb_client/models/slack_delivery_method_notification_template.py +91 -0
- tb_client/models/slack_notification_delivery_method_config.py +92 -0
- tb_client/models/slack_notification_target_config.py +108 -0
- tb_client/models/smpp_sms_provider_configuration.py +146 -0
- tb_client/models/sms_delivery_method_notification_template.py +91 -0
- tb_client/models/sms_provider_configuration.py +115 -0
- tb_client/models/sms_two_fa_account_config.py +103 -0
- tb_client/models/sms_two_fa_provider_config.py +104 -0
- tb_client/models/snmp_communication_config.py +131 -0
- tb_client/models/snmp_device_profile_transport_configuration.py +103 -0
- tb_client/models/snmp_device_transport_configuration.py +143 -0
- tb_client/models/snmp_mapping.py +103 -0
- tb_client/models/solution_install_response.py +111 -0
- tb_client/models/specific_time_schedule.py +102 -0
- tb_client/models/split_view_component.py +147 -0
- tb_client/models/starred_dashboard_info.py +96 -0
- tb_client/models/state_entity_filter.py +95 -0
- tb_client/models/state_entity_owner_filter.py +100 -0
- tb_client/models/statistics_event_filter.py +100 -0
- tb_client/models/store_info.py +93 -0
- tb_client/models/string_filter_predicate.py +109 -0
- tb_client/models/sub_report_component.py +108 -0
- tb_client/models/submit_strategy.py +101 -0
- tb_client/models/subscription_info.py +139 -0
- tb_client/models/success.py +92 -0
- tb_client/models/system_administrators_filter.py +89 -0
- tb_client/models/system_info.py +99 -0
- tb_client/models/system_info_data.py +103 -0
- tb_client/models/table_sort_order.py +101 -0
- tb_client/models/task_processing_failure_notification_rule_trigger_config.py +89 -0
- tb_client/models/task_result.py +119 -0
- tb_client/models/tb_chat_request.py +101 -0
- tb_client/models/tb_chat_response.py +112 -0
- tb_client/models/tb_content.py +109 -0
- tb_client/models/tb_image_delete_result.py +116 -0
- tb_client/models/tb_resource.py +182 -0
- tb_client/models/tb_resource_delete_result.py +106 -0
- tb_client/models/tb_resource_id.py +99 -0
- tb_client/models/tb_resource_info.py +178 -0
- tb_client/models/tb_secret_delete_result.py +106 -0
- tb_client/models/tb_text_content.py +92 -0
- tb_client/models/tb_user_message.py +98 -0
- tb_client/models/telemetry_entity_view.py +95 -0
- tb_client/models/telemetry_mapping_configuration.py +124 -0
- tb_client/models/telemetry_querying_snmp_communication_config.py +101 -0
- tb_client/models/tenant.py +136 -0
- tb_client/models/tenant_administrators_filter.py +94 -0
- tb_client/models/tenant_id.py +99 -0
- tb_client/models/tenant_info.py +138 -0
- tb_client/models/tenant_profile.py +111 -0
- tb_client/models/tenant_profile_configuration.py +109 -0
- tb_client/models/tenant_profile_data.py +103 -0
- tb_client/models/tenant_profile_id.py +99 -0
- tb_client/models/tenant_profile_queue_configuration.py +118 -0
- tb_client/models/tenant_solution_template_details.py +117 -0
- tb_client/models/tenant_solution_template_info.py +119 -0
- tb_client/models/tenant_solution_template_instructions.py +109 -0
- tb_client/models/test_sms_request.py +97 -0
- tb_client/models/thingsboard_credentials_expired_response.py +138 -0
- tb_client/models/thingsboard_error_response.py +134 -0
- tb_client/models/time_series_chart_bar_width.py +93 -0
- tb_client/models/time_series_chart_bar_width_settings.py +91 -0
- tb_client/models/time_series_chart_grid_settings.py +95 -0
- tb_client/models/time_series_chart_key_settings.py +123 -0
- tb_client/models/time_series_chart_no_aggregation_bar_width_settings.py +110 -0
- tb_client/models/time_series_chart_state_settings.py +114 -0
- tb_client/models/time_series_chart_threshold.py +187 -0
- tb_client/models/time_series_chart_x_axis_settings.py +134 -0
- tb_client/models/time_series_chart_y_axis_settings.py +148 -0
- tb_client/models/time_series_immediate_output_strategy.py +99 -0
- tb_client/models/time_series_output.py +98 -0
- tb_client/models/time_series_output_strategy.py +112 -0
- tb_client/models/time_series_rule_chain_output_strategy.py +89 -0
- tb_client/models/time_window_configuration.py +101 -0
- tb_client/models/timeseries_chart_component.py +159 -0
- tb_client/models/timeseries_chart_component_all_of_time_series_chart_settings.py +152 -0
- tb_client/models/timeseries_table_component.py +151 -0
- tb_client/models/to_core_edqs_request.py +95 -0
- tb_client/models/to_device_rpc_request_snmp_communication_config.py +99 -0
- tb_client/models/to_server_rpc_request_snmp_communication_config.py +99 -0
- tb_client/models/token.py +91 -0
- tb_client/models/totp_two_fa_account_config.py +103 -0
- tb_client/models/totp_two_fa_provider_config.py +92 -0
- tb_client/models/translation_info.py +97 -0
- tb_client/models/transport_payload_type_configuration.py +112 -0
- tb_client/models/trendz_configuration.py +91 -0
- tb_client/models/trendz_healthcheck_result.py +115 -0
- tb_client/models/trendz_summary.py +99 -0
- tb_client/models/trendz_synchronization_result.py +115 -0
- tb_client/models/trendz_usage.py +121 -0
- tb_client/models/trendz_view_config.py +94 -0
- tb_client/models/trendz_view_config_lite.py +92 -0
- tb_client/models/ts_value.py +93 -0
- tb_client/models/twilio_sms_provider_configuration.py +95 -0
- tb_client/models/two_fa_account_config.py +119 -0
- tb_client/models/two_fa_account_config_update_request.py +89 -0
- tb_client/models/two_fa_provider_config.py +118 -0
- tb_client/models/two_fa_provider_info.py +107 -0
- tb_client/models/update_message.py +99 -0
- tb_client/models/usage_info.py +141 -0
- tb_client/models/user.py +157 -0
- tb_client/models/user_activation_link.py +91 -0
- tb_client/models/user_dashboards_info.py +111 -0
- tb_client/models/user_email_info.py +99 -0
- tb_client/models/user_group_list_filter.py +93 -0
- tb_client/models/user_id.py +99 -0
- tb_client/models/user_info.py +173 -0
- tb_client/models/user_list_filter.py +93 -0
- tb_client/models/user_mobile_info.py +118 -0
- tb_client/models/user_notification_settings.py +102 -0
- tb_client/models/user_password_policy.py +107 -0
- tb_client/models/user_role_filter.py +93 -0
- tb_client/models/users_filter.py +136 -0
- tb_client/models/v2_captcha_params.py +95 -0
- tb_client/models/v3_captcha_params.py +95 -0
- tb_client/models/vendor.py +91 -0
- tb_client/models/version_create_config.py +99 -0
- tb_client/models/version_create_request.py +124 -0
- tb_client/models/version_creation_result.py +103 -0
- tb_client/models/version_load_config.py +101 -0
- tb_client/models/version_load_request.py +123 -0
- tb_client/models/version_load_result.py +105 -0
- tb_client/models/versioned_entity_info.py +95 -0
- tb_client/models/web_delivery_method_notification_template.py +101 -0
- tb_client/models/web_self_registration_params.py +165 -0
- tb_client/models/web_view_page.py +97 -0
- tb_client/models/white_labeling.py +124 -0
- tb_client/models/white_labeling_params.py +127 -0
- tb_client/models/widget_bundle_info.py +95 -0
- tb_client/models/widget_type.py +128 -0
- tb_client/models/widget_type_details.py +144 -0
- tb_client/models/widget_type_export_data.py +128 -0
- tb_client/models/widget_type_id.py +99 -0
- tb_client/models/widget_type_info.py +147 -0
- tb_client/models/widgets_bundle.py +135 -0
- tb_client/models/widgets_bundle_export_data.py +132 -0
- tb_client/models/widgets_bundle_id.py +99 -0
- tb_client/models/x509_certificate_chain_provision_configuration.py +94 -0
- tb_client/models/x509_lw_m2_m_bootstrap_server_credential.py +137 -0
- tb_client/py.typed +0 -0
- tb_client/rest.py +264 -0
- tbctl/__init__.py +0 -0
- tbctl/cli.py +36 -0
- tbctl/commands/__init__.py +0 -0
- tbctl/commands/_client.py +252 -0
- tbctl/commands/attributes.py +70 -0
- tbctl/commands/config_cmd.py +73 -0
- tbctl/commands/device.py +223 -0
- tbctl/commands/ota.py +562 -0
- tbctl/commands/telemetry.py +273 -0
- tbctl/config.py +31 -0
- tbctl-0.2.0.dist-info/METADATA +201 -0
- tbctl-0.2.0.dist-info/RECORD +829 -0
- tbctl-0.2.0.dist-info/WHEEL +4 -0
- tbctl-0.2.0.dist-info/entry_points.txt +2 -0
- tbctl-0.2.0.dist-info/licenses/LICENSE +202 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ThingsBoard REST API
|
|
5
|
+
|
|
6
|
+
ThingsBoard Professional Edition IoT platform REST API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 4.3.0.1PE
|
|
9
|
+
Contact: info@thingsboard.io
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from uuid import UUID
|
|
24
|
+
from tb_client.models.entity_group_id import EntityGroupId
|
|
25
|
+
from tb_client.models.ota_package_id import OtaPackageId
|
|
26
|
+
from typing import Optional, Set
|
|
27
|
+
from typing_extensions import Self
|
|
28
|
+
from pydantic_core import to_jsonable_python
|
|
29
|
+
|
|
30
|
+
class DeviceGroupOtaPackage(BaseModel):
|
|
31
|
+
"""
|
|
32
|
+
DeviceGroupOtaPackage
|
|
33
|
+
""" # noqa: E501
|
|
34
|
+
id: Optional[UUID] = None
|
|
35
|
+
group_id: Optional[EntityGroupId] = Field(default=None, alias="groupId")
|
|
36
|
+
ota_package_type: Optional[StrictStr] = Field(default=None, alias="otaPackageType")
|
|
37
|
+
ota_package_id: Optional[OtaPackageId] = Field(default=None, alias="otaPackageId")
|
|
38
|
+
ota_package_update_time: Optional[StrictInt] = Field(default=None, alias="otaPackageUpdateTime")
|
|
39
|
+
__properties: ClassVar[List[str]] = ["id", "groupId", "otaPackageType", "otaPackageId", "otaPackageUpdateTime"]
|
|
40
|
+
|
|
41
|
+
@field_validator('ota_package_type')
|
|
42
|
+
def ota_package_type_validate_enum(cls, value):
|
|
43
|
+
"""Validates the enum"""
|
|
44
|
+
if value is None:
|
|
45
|
+
return value
|
|
46
|
+
|
|
47
|
+
if value not in set(['FIRMWARE', 'SOFTWARE']):
|
|
48
|
+
raise ValueError("must be one of enum values ('FIRMWARE', 'SOFTWARE')")
|
|
49
|
+
return value
|
|
50
|
+
|
|
51
|
+
model_config = ConfigDict(
|
|
52
|
+
validate_by_name=True,
|
|
53
|
+
validate_by_alias=True,
|
|
54
|
+
validate_assignment=True,
|
|
55
|
+
protected_namespaces=(),
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def to_str(self) -> str:
|
|
60
|
+
"""Returns the string representation of the model using alias"""
|
|
61
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
62
|
+
|
|
63
|
+
def to_json(self) -> str:
|
|
64
|
+
"""Returns the JSON representation of the model using alias"""
|
|
65
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
66
|
+
|
|
67
|
+
@classmethod
|
|
68
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
69
|
+
"""Create an instance of DeviceGroupOtaPackage from a JSON string"""
|
|
70
|
+
return cls.from_dict(json.loads(json_str))
|
|
71
|
+
|
|
72
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
73
|
+
"""Return the dictionary representation of the model using alias.
|
|
74
|
+
|
|
75
|
+
This has the following differences from calling pydantic's
|
|
76
|
+
`self.model_dump(by_alias=True)`:
|
|
77
|
+
|
|
78
|
+
* `None` is only added to the output dict for nullable fields that
|
|
79
|
+
were set at model initialization. Other fields with value `None`
|
|
80
|
+
are ignored.
|
|
81
|
+
"""
|
|
82
|
+
excluded_fields: Set[str] = set([
|
|
83
|
+
])
|
|
84
|
+
|
|
85
|
+
_dict = self.model_dump(
|
|
86
|
+
by_alias=True,
|
|
87
|
+
exclude=excluded_fields,
|
|
88
|
+
exclude_none=True,
|
|
89
|
+
)
|
|
90
|
+
# override the default output from pydantic by calling `to_dict()` of group_id
|
|
91
|
+
if self.group_id:
|
|
92
|
+
_dict['groupId'] = self.group_id.to_dict()
|
|
93
|
+
# override the default output from pydantic by calling `to_dict()` of ota_package_id
|
|
94
|
+
if self.ota_package_id:
|
|
95
|
+
_dict['otaPackageId'] = self.ota_package_id.to_dict()
|
|
96
|
+
return _dict
|
|
97
|
+
|
|
98
|
+
@classmethod
|
|
99
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
100
|
+
"""Create an instance of DeviceGroupOtaPackage from a dict"""
|
|
101
|
+
if obj is None:
|
|
102
|
+
return None
|
|
103
|
+
|
|
104
|
+
if not isinstance(obj, dict):
|
|
105
|
+
return cls.model_validate(obj)
|
|
106
|
+
|
|
107
|
+
_obj = cls.model_validate({
|
|
108
|
+
"id": obj.get("id"),
|
|
109
|
+
"groupId": EntityGroupId.from_dict(obj["groupId"]) if obj.get("groupId") is not None else None,
|
|
110
|
+
"otaPackageType": obj.get("otaPackageType"),
|
|
111
|
+
"otaPackageId": OtaPackageId.from_dict(obj["otaPackageId"]) if obj.get("otaPackageId") is not None else None,
|
|
112
|
+
"otaPackageUpdateTime": obj.get("otaPackageUpdateTime")
|
|
113
|
+
})
|
|
114
|
+
return _obj
|
|
115
|
+
|
|
116
|
+
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ThingsBoard REST API
|
|
5
|
+
|
|
6
|
+
ThingsBoard Professional Edition IoT platform REST API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 4.3.0.1PE
|
|
9
|
+
Contact: info@thingsboard.io
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from uuid import UUID
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
26
|
+
from pydantic_core import to_jsonable_python
|
|
27
|
+
|
|
28
|
+
class DeviceId(BaseModel):
|
|
29
|
+
"""
|
|
30
|
+
DeviceId
|
|
31
|
+
""" # noqa: E501
|
|
32
|
+
id: UUID = Field(description="ID of the entity, time-based UUID v1", json_schema_extra={"examples": ["784f394c-42b6-435a-983c-b7beff2784f9"]})
|
|
33
|
+
entity_type: StrictStr = Field(description="string", alias="entityType", json_schema_extra={"examples": ["DEVICE"]})
|
|
34
|
+
__properties: ClassVar[List[str]] = ["id", "entityType"]
|
|
35
|
+
|
|
36
|
+
@field_validator('entity_type')
|
|
37
|
+
def entity_type_validate_enum(cls, value):
|
|
38
|
+
"""Validates the enum"""
|
|
39
|
+
if value not in set(['DEVICE']):
|
|
40
|
+
raise ValueError("must be one of enum values ('DEVICE')")
|
|
41
|
+
return value
|
|
42
|
+
|
|
43
|
+
model_config = ConfigDict(
|
|
44
|
+
validate_by_name=True,
|
|
45
|
+
validate_by_alias=True,
|
|
46
|
+
validate_assignment=True,
|
|
47
|
+
protected_namespaces=(),
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def to_str(self) -> str:
|
|
52
|
+
"""Returns the string representation of the model using alias"""
|
|
53
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
54
|
+
|
|
55
|
+
def to_json(self) -> str:
|
|
56
|
+
"""Returns the JSON representation of the model using alias"""
|
|
57
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
58
|
+
|
|
59
|
+
@classmethod
|
|
60
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
61
|
+
"""Create an instance of DeviceId from a JSON string"""
|
|
62
|
+
return cls.from_dict(json.loads(json_str))
|
|
63
|
+
|
|
64
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
65
|
+
"""Return the dictionary representation of the model using alias.
|
|
66
|
+
|
|
67
|
+
This has the following differences from calling pydantic's
|
|
68
|
+
`self.model_dump(by_alias=True)`:
|
|
69
|
+
|
|
70
|
+
* `None` is only added to the output dict for nullable fields that
|
|
71
|
+
were set at model initialization. Other fields with value `None`
|
|
72
|
+
are ignored.
|
|
73
|
+
"""
|
|
74
|
+
excluded_fields: Set[str] = set([
|
|
75
|
+
])
|
|
76
|
+
|
|
77
|
+
_dict = self.model_dump(
|
|
78
|
+
by_alias=True,
|
|
79
|
+
exclude=excluded_fields,
|
|
80
|
+
exclude_none=True,
|
|
81
|
+
)
|
|
82
|
+
return _dict
|
|
83
|
+
|
|
84
|
+
@classmethod
|
|
85
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
|
+
"""Create an instance of DeviceId from a dict"""
|
|
87
|
+
if obj is None:
|
|
88
|
+
return None
|
|
89
|
+
|
|
90
|
+
if not isinstance(obj, dict):
|
|
91
|
+
return cls.model_validate(obj)
|
|
92
|
+
|
|
93
|
+
_obj = cls.model_validate({
|
|
94
|
+
"id": obj.get("id"),
|
|
95
|
+
"entityType": obj.get("entityType")
|
|
96
|
+
})
|
|
97
|
+
return _obj
|
|
98
|
+
|
|
99
|
+
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ThingsBoard REST API
|
|
5
|
+
|
|
6
|
+
ThingsBoard Professional Edition IoT platform REST API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 4.3.0.1PE
|
|
9
|
+
Contact: info@thingsboard.io
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from tb_client.models.customer_id import CustomerId
|
|
24
|
+
from tb_client.models.device_data import DeviceData
|
|
25
|
+
from tb_client.models.device_id import DeviceId
|
|
26
|
+
from tb_client.models.device_profile_id import DeviceProfileId
|
|
27
|
+
from tb_client.models.entity_id import EntityId
|
|
28
|
+
from tb_client.models.entity_info import EntityInfo
|
|
29
|
+
from tb_client.models.ota_package_id import OtaPackageId
|
|
30
|
+
from tb_client.models.tenant_id import TenantId
|
|
31
|
+
from typing import Optional, Set
|
|
32
|
+
from typing_extensions import Self
|
|
33
|
+
from pydantic_core import to_jsonable_python
|
|
34
|
+
|
|
35
|
+
class DeviceInfo(BaseModel):
|
|
36
|
+
"""
|
|
37
|
+
DeviceInfo
|
|
38
|
+
""" # noqa: E501
|
|
39
|
+
id: Optional[DeviceId] = Field(default=None, description="JSON object with the Device Id. Specify this field to update the Device. Referencing non-existing Device Id will cause error. Omit this field to create new Device.")
|
|
40
|
+
created_time: Optional[StrictInt] = Field(default=None, description="Timestamp of the device creation, in milliseconds", alias="createdTime", json_schema_extra={"examples": [1609459200000]})
|
|
41
|
+
tenant_id: Optional[TenantId] = Field(default=None, description="JSON object with Tenant Id. Use 'assignDeviceToTenant' to change the Tenant Id.", alias="tenantId")
|
|
42
|
+
customer_id: Optional[CustomerId] = Field(default=None, description="JSON object with Customer Id. Use 'assignDeviceToCustomer' to change the Customer Id.", alias="customerId")
|
|
43
|
+
name: Optional[StrictStr] = Field(default=None, description="Unique Device Name in scope of Tenant", json_schema_extra={"examples": ["A4B72CCDFF33"]})
|
|
44
|
+
type: Optional[StrictStr] = Field(default=None, description="Device Profile Name", json_schema_extra={"examples": ["Temperature Sensor"]})
|
|
45
|
+
label: Optional[StrictStr] = Field(default=None, description="Label that may be used in widgets", json_schema_extra={"examples": ["Room 234 Sensor"]})
|
|
46
|
+
device_profile_id: DeviceProfileId = Field(description="JSON object with Device Profile Id.", alias="deviceProfileId")
|
|
47
|
+
firmware_id: Optional[OtaPackageId] = Field(default=None, description="JSON object with Ota Package Id.", alias="firmwareId")
|
|
48
|
+
software_id: Optional[OtaPackageId] = Field(default=None, description="JSON object with Ota Package Id.", alias="softwareId")
|
|
49
|
+
version: Optional[StrictInt] = None
|
|
50
|
+
owner_name: Optional[StrictStr] = Field(default=None, description="Owner name", alias="ownerName")
|
|
51
|
+
groups: Optional[List[EntityInfo]] = Field(default=None, description="Groups")
|
|
52
|
+
active: Optional[StrictBool] = Field(default=None, description="Device active flag.")
|
|
53
|
+
device_data: Optional[DeviceData] = Field(default=None, description="JSON object with content specific to type of transport in the device profile.", alias="deviceData")
|
|
54
|
+
owner_id: Optional[EntityId] = Field(default=None, description="JSON object with Customer or Tenant Id", alias="ownerId")
|
|
55
|
+
additional_info: Optional[Any] = Field(default=None, description="Additional parameters of the device", alias="additionalInfo")
|
|
56
|
+
__properties: ClassVar[List[str]] = ["id", "createdTime", "tenantId", "customerId", "name", "type", "label", "deviceProfileId", "firmwareId", "softwareId", "version", "ownerName", "groups", "active", "deviceData", "ownerId", "additionalInfo"]
|
|
57
|
+
|
|
58
|
+
model_config = ConfigDict(
|
|
59
|
+
validate_by_name=True,
|
|
60
|
+
validate_by_alias=True,
|
|
61
|
+
validate_assignment=True,
|
|
62
|
+
protected_namespaces=(),
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
def to_str(self) -> str:
|
|
67
|
+
"""Returns the string representation of the model using alias"""
|
|
68
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
69
|
+
|
|
70
|
+
def to_json(self) -> str:
|
|
71
|
+
"""Returns the JSON representation of the model using alias"""
|
|
72
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
73
|
+
|
|
74
|
+
@classmethod
|
|
75
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
76
|
+
"""Create an instance of DeviceInfo from a JSON string"""
|
|
77
|
+
return cls.from_dict(json.loads(json_str))
|
|
78
|
+
|
|
79
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
80
|
+
"""Return the dictionary representation of the model using alias.
|
|
81
|
+
|
|
82
|
+
This has the following differences from calling pydantic's
|
|
83
|
+
`self.model_dump(by_alias=True)`:
|
|
84
|
+
|
|
85
|
+
* `None` is only added to the output dict for nullable fields that
|
|
86
|
+
were set at model initialization. Other fields with value `None`
|
|
87
|
+
are ignored.
|
|
88
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
89
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
90
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
91
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
92
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
93
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
94
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
95
|
+
"""
|
|
96
|
+
excluded_fields: Set[str] = set([
|
|
97
|
+
"created_time",
|
|
98
|
+
"tenant_id",
|
|
99
|
+
"customer_id",
|
|
100
|
+
"owner_name",
|
|
101
|
+
"groups",
|
|
102
|
+
"active",
|
|
103
|
+
"owner_id",
|
|
104
|
+
])
|
|
105
|
+
|
|
106
|
+
_dict = self.model_dump(
|
|
107
|
+
by_alias=True,
|
|
108
|
+
exclude=excluded_fields,
|
|
109
|
+
exclude_none=True,
|
|
110
|
+
)
|
|
111
|
+
# override the default output from pydantic by calling `to_dict()` of id
|
|
112
|
+
if self.id:
|
|
113
|
+
_dict['id'] = self.id.to_dict()
|
|
114
|
+
# override the default output from pydantic by calling `to_dict()` of tenant_id
|
|
115
|
+
if self.tenant_id:
|
|
116
|
+
_dict['tenantId'] = self.tenant_id.to_dict()
|
|
117
|
+
# override the default output from pydantic by calling `to_dict()` of customer_id
|
|
118
|
+
if self.customer_id:
|
|
119
|
+
_dict['customerId'] = self.customer_id.to_dict()
|
|
120
|
+
# override the default output from pydantic by calling `to_dict()` of device_profile_id
|
|
121
|
+
if self.device_profile_id:
|
|
122
|
+
_dict['deviceProfileId'] = self.device_profile_id.to_dict()
|
|
123
|
+
# override the default output from pydantic by calling `to_dict()` of firmware_id
|
|
124
|
+
if self.firmware_id:
|
|
125
|
+
_dict['firmwareId'] = self.firmware_id.to_dict()
|
|
126
|
+
# override the default output from pydantic by calling `to_dict()` of software_id
|
|
127
|
+
if self.software_id:
|
|
128
|
+
_dict['softwareId'] = self.software_id.to_dict()
|
|
129
|
+
# override the default output from pydantic by calling `to_dict()` of each item in groups (list)
|
|
130
|
+
_items = []
|
|
131
|
+
if self.groups:
|
|
132
|
+
for _item_groups in self.groups:
|
|
133
|
+
if _item_groups:
|
|
134
|
+
_items.append(_item_groups.to_dict())
|
|
135
|
+
_dict['groups'] = _items
|
|
136
|
+
# override the default output from pydantic by calling `to_dict()` of device_data
|
|
137
|
+
if self.device_data:
|
|
138
|
+
_dict['deviceData'] = self.device_data.to_dict()
|
|
139
|
+
# override the default output from pydantic by calling `to_dict()` of owner_id
|
|
140
|
+
if self.owner_id:
|
|
141
|
+
_dict['ownerId'] = self.owner_id.to_dict()
|
|
142
|
+
# set to None if additional_info (nullable) is None
|
|
143
|
+
# and model_fields_set contains the field
|
|
144
|
+
if self.additional_info is None and "additional_info" in self.model_fields_set:
|
|
145
|
+
_dict['additionalInfo'] = None
|
|
146
|
+
|
|
147
|
+
return _dict
|
|
148
|
+
|
|
149
|
+
@classmethod
|
|
150
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
151
|
+
"""Create an instance of DeviceInfo from a dict"""
|
|
152
|
+
if obj is None:
|
|
153
|
+
return None
|
|
154
|
+
|
|
155
|
+
if not isinstance(obj, dict):
|
|
156
|
+
return cls.model_validate(obj)
|
|
157
|
+
|
|
158
|
+
_obj = cls.model_validate({
|
|
159
|
+
"id": DeviceId.from_dict(obj["id"]) if obj.get("id") is not None else None,
|
|
160
|
+
"createdTime": obj.get("createdTime"),
|
|
161
|
+
"tenantId": TenantId.from_dict(obj["tenantId"]) if obj.get("tenantId") is not None else None,
|
|
162
|
+
"customerId": CustomerId.from_dict(obj["customerId"]) if obj.get("customerId") is not None else None,
|
|
163
|
+
"name": obj.get("name"),
|
|
164
|
+
"type": obj.get("type"),
|
|
165
|
+
"label": obj.get("label"),
|
|
166
|
+
"deviceProfileId": DeviceProfileId.from_dict(obj["deviceProfileId"]) if obj.get("deviceProfileId") is not None else None,
|
|
167
|
+
"firmwareId": OtaPackageId.from_dict(obj["firmwareId"]) if obj.get("firmwareId") is not None else None,
|
|
168
|
+
"softwareId": OtaPackageId.from_dict(obj["softwareId"]) if obj.get("softwareId") is not None else None,
|
|
169
|
+
"version": obj.get("version"),
|
|
170
|
+
"ownerName": obj.get("ownerName"),
|
|
171
|
+
"groups": [EntityInfo.from_dict(_item) for _item in obj["groups"]] if obj.get("groups") is not None else None,
|
|
172
|
+
"active": obj.get("active"),
|
|
173
|
+
"deviceData": DeviceData.from_dict(obj["deviceData"]) if obj.get("deviceData") is not None else None,
|
|
174
|
+
"ownerId": EntityId.from_dict(obj["ownerId"]) if obj.get("ownerId") is not None else None,
|
|
175
|
+
"additionalInfo": obj.get("additionalInfo")
|
|
176
|
+
})
|
|
177
|
+
return _obj
|
|
178
|
+
|
|
179
|
+
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ThingsBoard REST API
|
|
5
|
+
|
|
6
|
+
ThingsBoard Professional Edition IoT platform REST API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 4.3.0.1PE
|
|
9
|
+
Contact: info@thingsboard.io
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from tb_client.models.dashboard_id import DashboardId
|
|
24
|
+
from tb_client.models.device_profile_data import DeviceProfileData
|
|
25
|
+
from tb_client.models.device_profile_id import DeviceProfileId
|
|
26
|
+
from tb_client.models.ota_package_id import OtaPackageId
|
|
27
|
+
from tb_client.models.rule_chain_id import RuleChainId
|
|
28
|
+
from tb_client.models.tenant_id import TenantId
|
|
29
|
+
from typing import Optional, Set
|
|
30
|
+
from typing_extensions import Self
|
|
31
|
+
from pydantic_core import to_jsonable_python
|
|
32
|
+
|
|
33
|
+
class DeviceProfile(BaseModel):
|
|
34
|
+
"""
|
|
35
|
+
A JSON value representing the device profile.
|
|
36
|
+
""" # noqa: E501
|
|
37
|
+
id: Optional[DeviceProfileId] = Field(default=None, description="JSON object with the device profile Id. Specify this field to update the device profile. Referencing non-existing device profile Id will cause error. Omit this field to create new device profile.")
|
|
38
|
+
created_time: Optional[StrictInt] = Field(default=None, description="Timestamp of the profile creation, in milliseconds", alias="createdTime", json_schema_extra={"examples": [1609459200000]})
|
|
39
|
+
tenant_id: Optional[TenantId] = Field(default=None, description="JSON object with Tenant Id that owns the profile.", alias="tenantId")
|
|
40
|
+
name: Optional[StrictStr] = Field(default=None, description="Unique Device Profile Name in scope of Tenant.", json_schema_extra={"examples": ["Moisture Sensor"]})
|
|
41
|
+
description: Optional[StrictStr] = Field(default=None, description="Device Profile description. ")
|
|
42
|
+
image: Optional[StrictStr] = Field(default=None, description="Either URL or Base64 data of the icon. Used in the mobile application to visualize set of device profiles in the grid view. ")
|
|
43
|
+
type: Optional[StrictStr] = Field(default=None, description="Type of the profile. Always 'DEFAULT' for now. Reserved for future use.")
|
|
44
|
+
transport_type: Optional[StrictStr] = Field(default=None, description="Type of the transport used to connect the device. Default transport supports HTTP, CoAP and MQTT.", alias="transportType")
|
|
45
|
+
provision_type: Optional[StrictStr] = Field(default=None, description="Provisioning strategy.", alias="provisionType")
|
|
46
|
+
default_rule_chain_id: Optional[RuleChainId] = Field(default=None, description="Reference to the rule chain. If present, the specified rule chain will be used to process all messages related to device, including telemetry, attribute updates, etc. Otherwise, the root rule chain will be used to process those messages.", alias="defaultRuleChainId")
|
|
47
|
+
default_dashboard_id: Optional[DashboardId] = Field(default=None, description="Reference to the dashboard. Used in the mobile application to open the default dashboard when user navigates to device details.", alias="defaultDashboardId")
|
|
48
|
+
default_queue_name: Optional[StrictStr] = Field(default=None, description="Rule engine queue name. If present, the specified queue will be used to store all unprocessed messages related to device, including telemetry, attribute updates, etc. Otherwise, the 'Main' queue will be used to store those messages.", alias="defaultQueueName")
|
|
49
|
+
provision_device_key: Optional[StrictStr] = Field(default=None, description="Unique provisioning key used by 'Device Provisioning' feature.", alias="provisionDeviceKey")
|
|
50
|
+
firmware_id: Optional[OtaPackageId] = Field(default=None, description="Reference to the firmware OTA package. If present, the specified package will be used as default device firmware. ", alias="firmwareId")
|
|
51
|
+
software_id: Optional[OtaPackageId] = Field(default=None, description="Reference to the software OTA package. If present, the specified package will be used as default device software. ", alias="softwareId")
|
|
52
|
+
default_edge_rule_chain_id: Optional[RuleChainId] = Field(default=None, description="Reference to the edge rule chain. If present, the specified edge rule chain will be used on the edge to process all messages related to device, including telemetry, attribute updates, etc. Otherwise, the edge root rule chain will be used to process those messages.", alias="defaultEdgeRuleChainId")
|
|
53
|
+
version: Optional[StrictInt] = None
|
|
54
|
+
default: Optional[StrictBool] = Field(default=None, description="Used to mark the default profile. Default profile is used when the device profile is not specified during device creation.")
|
|
55
|
+
profile_data: Optional[DeviceProfileData] = Field(default=None, description="Complex JSON object that includes addition device profile configuration (transport, alarm rules, etc).", alias="profileData")
|
|
56
|
+
__properties: ClassVar[List[str]] = ["id", "createdTime", "tenantId", "name", "description", "image", "type", "transportType", "provisionType", "defaultRuleChainId", "defaultDashboardId", "defaultQueueName", "provisionDeviceKey", "firmwareId", "softwareId", "defaultEdgeRuleChainId", "version", "default", "profileData"]
|
|
57
|
+
|
|
58
|
+
@field_validator('type')
|
|
59
|
+
def type_validate_enum(cls, value):
|
|
60
|
+
"""Validates the enum"""
|
|
61
|
+
if value is None:
|
|
62
|
+
return value
|
|
63
|
+
|
|
64
|
+
if value not in set(['DEFAULT']):
|
|
65
|
+
raise ValueError("must be one of enum values ('DEFAULT')")
|
|
66
|
+
return value
|
|
67
|
+
|
|
68
|
+
@field_validator('transport_type')
|
|
69
|
+
def transport_type_validate_enum(cls, value):
|
|
70
|
+
"""Validates the enum"""
|
|
71
|
+
if value is None:
|
|
72
|
+
return value
|
|
73
|
+
|
|
74
|
+
if value not in set(['DEFAULT', 'MQTT', 'COAP', 'LWM2M', 'SNMP']):
|
|
75
|
+
raise ValueError("must be one of enum values ('DEFAULT', 'MQTT', 'COAP', 'LWM2M', 'SNMP')")
|
|
76
|
+
return value
|
|
77
|
+
|
|
78
|
+
@field_validator('provision_type')
|
|
79
|
+
def provision_type_validate_enum(cls, value):
|
|
80
|
+
"""Validates the enum"""
|
|
81
|
+
if value is None:
|
|
82
|
+
return value
|
|
83
|
+
|
|
84
|
+
if value not in set(['DISABLED', 'ALLOW_CREATE_NEW_DEVICES', 'CHECK_PRE_PROVISIONED_DEVICES', 'X509_CERTIFICATE_CHAIN']):
|
|
85
|
+
raise ValueError("must be one of enum values ('DISABLED', 'ALLOW_CREATE_NEW_DEVICES', 'CHECK_PRE_PROVISIONED_DEVICES', 'X509_CERTIFICATE_CHAIN')")
|
|
86
|
+
return value
|
|
87
|
+
|
|
88
|
+
model_config = ConfigDict(
|
|
89
|
+
validate_by_name=True,
|
|
90
|
+
validate_by_alias=True,
|
|
91
|
+
validate_assignment=True,
|
|
92
|
+
protected_namespaces=(),
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def to_str(self) -> str:
|
|
97
|
+
"""Returns the string representation of the model using alias"""
|
|
98
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
99
|
+
|
|
100
|
+
def to_json(self) -> str:
|
|
101
|
+
"""Returns the JSON representation of the model using alias"""
|
|
102
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
103
|
+
|
|
104
|
+
@classmethod
|
|
105
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
106
|
+
"""Create an instance of DeviceProfile from a JSON string"""
|
|
107
|
+
return cls.from_dict(json.loads(json_str))
|
|
108
|
+
|
|
109
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
110
|
+
"""Return the dictionary representation of the model using alias.
|
|
111
|
+
|
|
112
|
+
This has the following differences from calling pydantic's
|
|
113
|
+
`self.model_dump(by_alias=True)`:
|
|
114
|
+
|
|
115
|
+
* `None` is only added to the output dict for nullable fields that
|
|
116
|
+
were set at model initialization. Other fields with value `None`
|
|
117
|
+
are ignored.
|
|
118
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
119
|
+
* OpenAPI `readOnly` fields are excluded.
|
|
120
|
+
"""
|
|
121
|
+
excluded_fields: Set[str] = set([
|
|
122
|
+
"created_time",
|
|
123
|
+
"tenant_id",
|
|
124
|
+
])
|
|
125
|
+
|
|
126
|
+
_dict = self.model_dump(
|
|
127
|
+
by_alias=True,
|
|
128
|
+
exclude=excluded_fields,
|
|
129
|
+
exclude_none=True,
|
|
130
|
+
)
|
|
131
|
+
# override the default output from pydantic by calling `to_dict()` of id
|
|
132
|
+
if self.id:
|
|
133
|
+
_dict['id'] = self.id.to_dict()
|
|
134
|
+
# override the default output from pydantic by calling `to_dict()` of tenant_id
|
|
135
|
+
if self.tenant_id:
|
|
136
|
+
_dict['tenantId'] = self.tenant_id.to_dict()
|
|
137
|
+
# override the default output from pydantic by calling `to_dict()` of default_rule_chain_id
|
|
138
|
+
if self.default_rule_chain_id:
|
|
139
|
+
_dict['defaultRuleChainId'] = self.default_rule_chain_id.to_dict()
|
|
140
|
+
# override the default output from pydantic by calling `to_dict()` of default_dashboard_id
|
|
141
|
+
if self.default_dashboard_id:
|
|
142
|
+
_dict['defaultDashboardId'] = self.default_dashboard_id.to_dict()
|
|
143
|
+
# override the default output from pydantic by calling `to_dict()` of firmware_id
|
|
144
|
+
if self.firmware_id:
|
|
145
|
+
_dict['firmwareId'] = self.firmware_id.to_dict()
|
|
146
|
+
# override the default output from pydantic by calling `to_dict()` of software_id
|
|
147
|
+
if self.software_id:
|
|
148
|
+
_dict['softwareId'] = self.software_id.to_dict()
|
|
149
|
+
# override the default output from pydantic by calling `to_dict()` of default_edge_rule_chain_id
|
|
150
|
+
if self.default_edge_rule_chain_id:
|
|
151
|
+
_dict['defaultEdgeRuleChainId'] = self.default_edge_rule_chain_id.to_dict()
|
|
152
|
+
# override the default output from pydantic by calling `to_dict()` of profile_data
|
|
153
|
+
if self.profile_data:
|
|
154
|
+
_dict['profileData'] = self.profile_data.to_dict()
|
|
155
|
+
return _dict
|
|
156
|
+
|
|
157
|
+
@classmethod
|
|
158
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
159
|
+
"""Create an instance of DeviceProfile from a dict"""
|
|
160
|
+
if obj is None:
|
|
161
|
+
return None
|
|
162
|
+
|
|
163
|
+
if not isinstance(obj, dict):
|
|
164
|
+
return cls.model_validate(obj)
|
|
165
|
+
|
|
166
|
+
_obj = cls.model_validate({
|
|
167
|
+
"id": DeviceProfileId.from_dict(obj["id"]) if obj.get("id") is not None else None,
|
|
168
|
+
"createdTime": obj.get("createdTime"),
|
|
169
|
+
"tenantId": TenantId.from_dict(obj["tenantId"]) if obj.get("tenantId") is not None else None,
|
|
170
|
+
"name": obj.get("name"),
|
|
171
|
+
"description": obj.get("description"),
|
|
172
|
+
"image": obj.get("image"),
|
|
173
|
+
"type": obj.get("type"),
|
|
174
|
+
"transportType": obj.get("transportType"),
|
|
175
|
+
"provisionType": obj.get("provisionType"),
|
|
176
|
+
"defaultRuleChainId": RuleChainId.from_dict(obj["defaultRuleChainId"]) if obj.get("defaultRuleChainId") is not None else None,
|
|
177
|
+
"defaultDashboardId": DashboardId.from_dict(obj["defaultDashboardId"]) if obj.get("defaultDashboardId") is not None else None,
|
|
178
|
+
"defaultQueueName": obj.get("defaultQueueName"),
|
|
179
|
+
"provisionDeviceKey": obj.get("provisionDeviceKey"),
|
|
180
|
+
"firmwareId": OtaPackageId.from_dict(obj["firmwareId"]) if obj.get("firmwareId") is not None else None,
|
|
181
|
+
"softwareId": OtaPackageId.from_dict(obj["softwareId"]) if obj.get("softwareId") is not None else None,
|
|
182
|
+
"defaultEdgeRuleChainId": RuleChainId.from_dict(obj["defaultEdgeRuleChainId"]) if obj.get("defaultEdgeRuleChainId") is not None else None,
|
|
183
|
+
"version": obj.get("version"),
|
|
184
|
+
"default": obj.get("default"),
|
|
185
|
+
"profileData": DeviceProfileData.from_dict(obj["profileData"]) if obj.get("profileData") is not None else None
|
|
186
|
+
})
|
|
187
|
+
return _obj
|
|
188
|
+
|
|
189
|
+
|