From 377e2310e0aaa742dc2ae3ee32cb331604ea6d09 Mon Sep 17 00:00:00 2001 From: solidiquis Date: Thu, 11 Jul 2024 12:56:56 -0700 Subject: [PATCH] update protos --- protos/buf.lock | 4 +- python/lib/google/__init__.py | 2 +- .../v1/calculated_channels_pb2.py | 10 +- .../v1/calculated_channels_pb2.pyi | 2 + python/lib/sift/data/v1/data_pb2.py | 116 +++++------ python/lib/sift/data/v1/data_pb2.pyi | 11 +- python/lib/sift/rules/v1/rules_pb2.py | 192 +++++++++--------- python/lib/sift/rules/v1/rules_pb2.pyi | 55 +++-- scripts/gen.sh | 7 +- 9 files changed, 216 insertions(+), 183 deletions(-) diff --git a/protos/buf.lock b/protos/buf.lock index 34b627f3..f33f79c4 100644 --- a/protos/buf.lock +++ b/protos/buf.lock @@ -9,5 +9,5 @@ deps: - remote: buf.build owner: grpc-ecosystem repository: grpc-gateway - commit: f04e50c23f5f40f786d0e8fa3fe3d713 - digest: shake256:67b115260e12cb2d6c5d5ce8dbbf3a095c86f0e52b84f9dbd16dec9433b218f8694bc9aadb1d45eb6fd52f5a7029977d460e2d58afb3208ab6c680e7b21c80e4 + commit: a48fcebcf8f140dd9d09359b9bb185a4 + digest: shake256:a926173f0ec3e1a929462c350acda846e546134b5ce2bb83fe44f02f9330a42b1c9b292f64b951b06a4d2c47e2ce4d477d6a2cb31502a15637ada35ecedefcf6 diff --git a/python/lib/google/__init__.py b/python/lib/google/__init__.py index 8db66d3d..69e3be50 100644 --- a/python/lib/google/__init__.py +++ b/python/lib/google/__init__.py @@ -1 +1 @@ -__path__ = __import__("pkgutil").extend_path(__path__, __name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) diff --git a/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.py b/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.py index ea0fcfac..0e28d5ba 100644 --- a/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.py +++ b/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.py @@ -18,7 +18,7 @@ from sift.common.type.v1 import channel_data_type_pb2 as sift_dot_common_dot_type_dot_v1_dot_channel__data__type__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5sift/calculated_channels/v1/calculated_channels.proto\x12\x1bsift.calculated_channels.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a+sift/common/type/v1/channel_data_type.proto\"r\n\x1a\x45xpressionChannelReference\x12\x30\n\x11\x63hannel_reference\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10\x63hannelReference\x12\"\n\nchannel_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\tchannelId\"\xf5\x02\n\x11\x45xpressionRequest\x12x\n\x12\x63hannel_references\x18\x01 \x03(\x0b\x32\x45.sift.calculated_channels.v1.ExpressionRequest.ChannelReferencesEntryB\x02\x18\x01R\x11\x63hannelReferences\x12#\n\nexpression\x18\x02 \x01(\tB\x03\xe0\x41\x02R\nexpression\x12{\n\x1d\x65xpression_channel_references\x18\x03 \x03(\x0b\x32\x37.sift.calculated_channels.v1.ExpressionChannelReferenceR\x1b\x65xpressionChannelReferences\x1a\x44\n\x16\x43hannelReferencesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xa4\x01\n ListExpressionIdentifiersRequest\x12\x1b\n\tpage_size\x18\x01 \x01(\rR\x08pageSize\x12\x1d\n\npage_token\x18\x02 \x01(\tR\tpageToken\x12\x44\n\x04mode\x18\x03 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"}\n!ListExpressionIdentifiersResponse\x12X\n\x0bidentifiers\x18\x01 \x03(\x0b\x32\x31.sift.calculated_channels.v1.ExpressionIdentifierB\x03\xe0\x41\x02R\x0bidentifiers\"\xce\x01\n\x14\x45xpressionIdentifier\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12N\n\x04type\x18\x03 \x01(\x0e\x32\x35.sift.calculated_channels.v1.ExpressionIdentifierTypeB\x03\xe0\x41\x02R\x04type\x12&\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0b\x64isplayName\"\xb6\x01\n\x19ValidateExpressionRequest\x12S\n\nexpression\x18\x01 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestB\x03\xe0\x41\x02R\nexpression\x12\x44\n\x04mode\x18\x02 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"\xd8\x01\n\x1aValidateExpressionResponse\x12T\n\x05\x65rror\x18\x01 \x01(\x0b\x32<.sift.calculated_channels.v1.ErrorValidatingExpressionResultH\x00R\x05\x65rror\x12Z\n\x07success\x18\x02 \x01(\x0b\x32>.sift.calculated_channels.v1.SuccessValidatingExpressionResultH\x00R\x07successB\x08\n\x06result\"K\n\x1f\x45rrorValidatingExpressionResult\x12(\n\rerror_message\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x65rrorMessage\"k\n!SuccessValidatingExpressionResult\x12\x46\n\tdata_type\x18\x01 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType*\x9b\x01\n\x18\x45xpressionIdentifierType\x12.\n&EXPRESSION_IDENTIFIER_TYPE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\'\n#EXPRESSION_IDENTIFIER_TYPE_FUNCTION\x10\x01\x12&\n\"EXPRESSION_IDENTIFIER_TYPE_CHANNEL\x10\x02*y\n\x0e\x45xpressionMode\x12#\n\x1b\x45XPRESSION_MODE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x19\n\x15\x45XPRESSION_MODE_RULES\x10\x01\x12\'\n#EXPRESSION_MODE_CALCULATED_CHANNELS\x10\x02\x32\xf1\x06\n\x19\x43\x61lculatedChannelsService\x12\xd9\x02\n\x19ListExpressionIdentifiers\x12=.sift.calculated_channels.v1.ListExpressionIdentifiersRequest\x1a>.sift.calculated_channels.v1.ListExpressionIdentifiersResponse\"\xbc\x01\x92\x41\x7f\x12\x19ListExpressionIdentifiers\x1a\x62Retrieves a list of valid identifiers that can be used as part of a calculated channel expression.\x82\xd3\xe4\x93\x02\x34\x12\x32/api/v1/calculated-channels:expression-identifiers\x12\xb0\x02\n\x12ValidateExpression\x12\x36.sift.calculated_channels.v1.ValidateExpressionRequest\x1a\x37.sift.calculated_channels.v1.ValidateExpressionResponse\"\xa8\x01\x92\x41k\x12\x12ValidateExpression\x1aUUsed to validate whether or not an expression used for a calculated channel is valid.\x82\xd3\xe4\x93\x02\x34\"//api/v1/calculated-channels:validate-expression:\x01*\x1a\xc4\x01\x92\x41\xc0\x01\x12>Service to programmatically interact with calculated channels.\x1a~\n$Read more about calculated channels.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421153B\xb0\x02\n\x1f\x63om.sift.calculated_channels.v1B\x17\x43\x61lculatedChannelsProtoP\x01ZHazimuth/gen/protos/go/sift/calculated_channels/v1;calculatedchannelsv1pb\xa2\x02\x03SCX\xaa\x02\x1aSift.CalculatedChannels.V1\xca\x02\x1aSift\\CalculatedChannels\\V1\xe2\x02&Sift\\CalculatedChannels\\V1\\GPBMetadata\xea\x02\x1cSift::CalculatedChannels::V1\x92\x41\x1f\x12\x1d\n\x1b\x43\x61lculated Channels Serviceb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5sift/calculated_channels/v1/calculated_channels.proto\x12\x1bsift.calculated_channels.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a+sift/common/type/v1/channel_data_type.proto\"r\n\x1a\x45xpressionChannelReference\x12\x30\n\x11\x63hannel_reference\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10\x63hannelReference\x12\"\n\nchannel_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\tchannelId\"\xf5\x02\n\x11\x45xpressionRequest\x12x\n\x12\x63hannel_references\x18\x01 \x03(\x0b\x32\x45.sift.calculated_channels.v1.ExpressionRequest.ChannelReferencesEntryB\x02\x18\x01R\x11\x63hannelReferences\x12#\n\nexpression\x18\x02 \x01(\tB\x03\xe0\x41\x02R\nexpression\x12{\n\x1d\x65xpression_channel_references\x18\x03 \x03(\x0b\x32\x37.sift.calculated_channels.v1.ExpressionChannelReferenceR\x1b\x65xpressionChannelReferences\x1a\x44\n\x16\x43hannelReferencesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xa4\x01\n ListExpressionIdentifiersRequest\x12\x1b\n\tpage_size\x18\x01 \x01(\rR\x08pageSize\x12\x1d\n\npage_token\x18\x02 \x01(\tR\tpageToken\x12\x44\n\x04mode\x18\x03 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"}\n!ListExpressionIdentifiersResponse\x12X\n\x0bidentifiers\x18\x01 \x03(\x0b\x32\x31.sift.calculated_channels.v1.ExpressionIdentifierB\x03\xe0\x41\x02R\x0bidentifiers\"\xce\x01\n\x14\x45xpressionIdentifier\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12N\n\x04type\x18\x03 \x01(\x0e\x32\x35.sift.calculated_channels.v1.ExpressionIdentifierTypeB\x03\xe0\x41\x02R\x04type\x12&\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0b\x64isplayName\"\xb6\x01\n\x19ValidateExpressionRequest\x12S\n\nexpression\x18\x01 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestB\x03\xe0\x41\x02R\nexpression\x12\x44\n\x04mode\x18\x02 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"\xd8\x01\n\x1aValidateExpressionResponse\x12T\n\x05\x65rror\x18\x01 \x01(\x0b\x32<.sift.calculated_channels.v1.ErrorValidatingExpressionResultH\x00R\x05\x65rror\x12Z\n\x07success\x18\x02 \x01(\x0b\x32>.sift.calculated_channels.v1.SuccessValidatingExpressionResultH\x00R\x07successB\x08\n\x06result\"K\n\x1f\x45rrorValidatingExpressionResult\x12(\n\rerror_message\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x65rrorMessage\"k\n!SuccessValidatingExpressionResult\x12\x46\n\tdata_type\x18\x01 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType*\x9b\x01\n\x18\x45xpressionIdentifierType\x12.\n&EXPRESSION_IDENTIFIER_TYPE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\'\n#EXPRESSION_IDENTIFIER_TYPE_FUNCTION\x10\x01\x12&\n\"EXPRESSION_IDENTIFIER_TYPE_CHANNEL\x10\x02*\x94\x01\n\x0e\x45xpressionMode\x12#\n\x1b\x45XPRESSION_MODE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x19\n\x15\x45XPRESSION_MODE_RULES\x10\x01\x12\'\n#EXPRESSION_MODE_CALCULATED_CHANNELS\x10\x02\x12\x19\n\x15\x45XPRESSION_MODE_RULER\x10\x03\x32\xf1\x06\n\x19\x43\x61lculatedChannelsService\x12\xd9\x02\n\x19ListExpressionIdentifiers\x12=.sift.calculated_channels.v1.ListExpressionIdentifiersRequest\x1a>.sift.calculated_channels.v1.ListExpressionIdentifiersResponse\"\xbc\x01\x92\x41\x7f\x12\x19ListExpressionIdentifiers\x1a\x62Retrieves a list of valid identifiers that can be used as part of a calculated channel expression.\x82\xd3\xe4\x93\x02\x34\x12\x32/api/v1/calculated-channels:expression-identifiers\x12\xb0\x02\n\x12ValidateExpression\x12\x36.sift.calculated_channels.v1.ValidateExpressionRequest\x1a\x37.sift.calculated_channels.v1.ValidateExpressionResponse\"\xa8\x01\x92\x41k\x12\x12ValidateExpression\x1aUUsed to validate whether or not an expression used for a calculated channel is valid.\x82\xd3\xe4\x93\x02\x34\"//api/v1/calculated-channels:validate-expression:\x01*\x1a\xc4\x01\x92\x41\xc0\x01\x12>Service to programmatically interact with calculated channels.\x1a~\n$Read more about calculated channels.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421153B\xb0\x02\n\x1f\x63om.sift.calculated_channels.v1B\x17\x43\x61lculatedChannelsProtoP\x01ZHazimuth/gen/protos/go/sift/calculated_channels/v1;calculatedchannelsv1pb\xa2\x02\x03SCX\xaa\x02\x1aSift.CalculatedChannels.V1\xca\x02\x1aSift\\CalculatedChannels\\V1\xe2\x02&Sift\\CalculatedChannels\\V1\\GPBMetadata\xea\x02\x1cSift::CalculatedChannels::V1\x92\x41\x1f\x12\x1d\n\x1b\x43\x61lculated Channels Serviceb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -68,8 +68,8 @@ _globals['_CALCULATEDCHANNELSSERVICE'].methods_by_name['ValidateExpression']._serialized_options = b'\222Ak\022\022ValidateExpression\032UUsed to validate whether or not an expression used for a calculated channel is valid.\202\323\344\223\0024\"//api/v1/calculated-channels:validate-expression:\001*' _globals['_EXPRESSIONIDENTIFIERTYPE']._serialized_start=1828 _globals['_EXPRESSIONIDENTIFIERTYPE']._serialized_end=1983 - _globals['_EXPRESSIONMODE']._serialized_start=1985 - _globals['_EXPRESSIONMODE']._serialized_end=2106 + _globals['_EXPRESSIONMODE']._serialized_start=1986 + _globals['_EXPRESSIONMODE']._serialized_end=2134 _globals['_EXPRESSIONCHANNELREFERENCE']._serialized_start=242 _globals['_EXPRESSIONCHANNELREFERENCE']._serialized_end=356 _globals['_EXPRESSIONREQUEST']._serialized_start=359 @@ -90,6 +90,6 @@ _globals['_ERRORVALIDATINGEXPRESSIONRESULT']._serialized_end=1716 _globals['_SUCCESSVALIDATINGEXPRESSIONRESULT']._serialized_start=1718 _globals['_SUCCESSVALIDATINGEXPRESSIONRESULT']._serialized_end=1825 - _globals['_CALCULATEDCHANNELSSERVICE']._serialized_start=2109 - _globals['_CALCULATEDCHANNELSSERVICE']._serialized_end=2990 + _globals['_CALCULATEDCHANNELSSERVICE']._serialized_start=2137 + _globals['_CALCULATEDCHANNELSSERVICE']._serialized_end=3018 # @@protoc_insertion_point(module_scope) diff --git a/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.pyi b/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.pyi index 9bc781c3..961891ca 100644 --- a/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.pyi +++ b/python/lib/sift/calculated_channels/v1/calculated_channels_pb2.pyi @@ -46,12 +46,14 @@ class _ExpressionModeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper. EXPRESSION_MODE_UNSPECIFIED: _ExpressionMode.ValueType # 0 EXPRESSION_MODE_RULES: _ExpressionMode.ValueType # 1 EXPRESSION_MODE_CALCULATED_CHANNELS: _ExpressionMode.ValueType # 2 + EXPRESSION_MODE_RULER: _ExpressionMode.ValueType # 3 class ExpressionMode(_ExpressionMode, metaclass=_ExpressionModeEnumTypeWrapper): ... EXPRESSION_MODE_UNSPECIFIED: ExpressionMode.ValueType # 0 EXPRESSION_MODE_RULES: ExpressionMode.ValueType # 1 EXPRESSION_MODE_CALCULATED_CHANNELS: ExpressionMode.ValueType # 2 +EXPRESSION_MODE_RULER: ExpressionMode.ValueType # 3 global___ExpressionMode = ExpressionMode @typing.final diff --git a/python/lib/sift/data/v1/data_pb2.py b/python/lib/sift/data/v1/data_pb2.py index 23718f9b..a337997d 100644 --- a/python/lib/sift/data/v1/data_pb2.py +++ b/python/lib/sift/data/v1/data_pb2.py @@ -23,7 +23,7 @@ from sift.common.type.v1 import channel_enum_type_pb2 as sift_dot_common_dot_type_dot_v1_dot_channel__enum__type__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17sift/data/v1/data.proto\x12\x0csift.data.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/protobuf/any.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x35sift/calculated_channels/v1/calculated_channels.proto\x1a\x33sift/common/type/v1/channel_bit_field_element.proto\x1a+sift/common/type/v1/channel_data_type.proto\x1a+sift/common/type/v1/channel_enum_type.proto\"\x8a\x02\n\x0eGetDataRequest\x12-\n\x07queries\x18\x01 \x03(\x0b\x32\x13.sift.data.v1.QueryR\x07queries\x12\x39\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x1b\n\tsample_ms\x18\x04 \x01(\rR\x08sampleMs\x12\x1b\n\tpage_size\x18\x05 \x01(\rR\x08pageSize\x12\x1d\n\npage_token\x18\x06 \x01(\tR\tpageToken\"\x9f\x01\n\x05Query\x12\x36\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x1a.sift.data.v1.ChannelQueryH\x00R\x07\x63hannel\x12U\n\x12\x63\x61lculated_channel\x18\x02 \x01(\x0b\x32$.sift.data.v1.CalculatedChannelQueryH\x00R\x11\x63\x61lculatedChannelB\x07\n\x05query\"T\n\x0c\x43hannelQuery\x12\x1d\n\nchannel_id\x18\x01 \x01(\tR\tchannelId\x12\x1a\n\x06run_id\x18\x02 \x01(\tH\x00R\x05runId\x88\x01\x01\x42\t\n\x07_run_id\"\xba\x01\n\x16\x43\x61lculatedChannelQuery\x12$\n\x0b\x63hannel_key\x18\x01 \x01(\tB\x03\xe0\x41\x02R\nchannelKey\x12S\n\nexpression\x18\x02 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestB\x03\xe0\x41\x02R\nexpression\x12\x1a\n\x06run_id\x18\x03 \x01(\tH\x00R\x05runId\x88\x01\x01\x42\t\n\x07_run_id\"h\n\x0fGetDataResponse\x12&\n\x0fnext_page_token\x18\x01 \x01(\tR\rnextPageToken\x12-\n\x04\x64\x61ta\x18\x02 \x03(\x0b\x32\x14.google.protobuf.AnyB\x03\xe0\x41\x02R\x04\x64\x61ta\"\xbf\x06\n\x08Metadata\x12\x46\n\tdata_type\x18\x01 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType\x12\"\n\nsampled_ms\x18\x02 \x01(\rB\x03\xe0\x41\x02R\tsampledMs\x12\x37\n\x05\x61sset\x18\x03 \x01(\x0b\x32\x1c.sift.data.v1.Metadata.AssetB\x03\xe0\x41\x02R\x05\x61sset\x12\x31\n\x03run\x18\x04 \x01(\x0b\x32\x1a.sift.data.v1.Metadata.RunH\x00R\x03run\x88\x01\x01\x12=\n\x07\x63hannel\x18\x05 \x01(\x0b\x32\x1e.sift.data.v1.Metadata.ChannelH\x01R\x07\x63hannel\x88\x01\x01\x1a@\n\x05\x41sset\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x1a:\n\x03Run\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x1a\x89\x03\n\x07\x43hannel\x12\"\n\nchannel_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tchannelId\x12\x1c\n\tcomponent\x18\x02 \x01(\tR\tcomponent\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x37\n\x04unit\x18\x04 \x01(\x0b\x32#.sift.data.v1.Metadata.Channel.UnitR\x04unit\x12\x43\n\nenum_types\x18\x05 \x03(\x0b\x32$.sift.common.type.v1.ChannelEnumTypeR\tenumTypes\x12Y\n\x12\x62it_field_elements\x18\x06 \x03(\x0b\x32+.sift.common.type.v1.ChannelBitFieldElementR\x10\x62itFieldElements\x1aO\n\x04Unit\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12.\n\x10\x61\x62\x62reviated_name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0f\x61\x62\x62reviatedNameB\x06\n\x04_runB\n\n\x08_channel\"g\n\x0b\x44oubleValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x01\x42\x03\xe0\x41\x02R\x05value\"\x7f\n\x0c\x44oubleValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.DoubleValueB\x03\xe0\x41\x02R\x06values\"g\n\x0bStringValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x05value\"\x7f\n\x0cStringValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.StringValueB\x03\xe0\x41\x02R\x06values\"e\n\tEnumValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\rB\x03\xe0\x41\x02R\x05value\"{\n\nEnumValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x34\n\x06values\x18\x02 \x03(\x0b\x32\x17.sift.data.v1.EnumValueB\x03\xe0\x41\x02R\x06values\"i\n\rBitFieldValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\rB\x03\xe0\x41\x02R\x05value\"j\n\x15\x42itFieldElementValues\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x38\n\x06values\x18\x02 \x03(\x0b\x32\x1b.sift.data.v1.BitFieldValueB\x03\xe0\x41\x02R\x06values\"\x8b\x01\n\x0e\x42itFieldValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12@\n\x06values\x18\x02 \x03(\x0b\x32#.sift.data.v1.BitFieldElementValuesB\x03\xe0\x41\x02R\x06values\"e\n\tBoolValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x08\x42\x03\xe0\x41\x02R\x05value\"{\n\nBoolValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x34\n\x06values\x18\x02 \x03(\x0b\x32\x17.sift.data.v1.BoolValueB\x03\xe0\x41\x02R\x06values\"f\n\nFloatValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x02\x42\x03\xe0\x41\x02R\x05value\"}\n\x0b\x46loatValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x35\n\x06values\x18\x02 \x03(\x0b\x32\x18.sift.data.v1.FloatValueB\x03\xe0\x41\x02R\x06values\"f\n\nInt32Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02R\x05value\"}\n\x0bInt32Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x35\n\x06values\x18\x02 \x03(\x0b\x32\x18.sift.data.v1.Int32ValueB\x03\xe0\x41\x02R\x06values\"g\n\x0bUint32Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\rB\x03\xe0\x41\x02R\x05value\"\x7f\n\x0cUint32Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.Uint32ValueB\x03\xe0\x41\x02R\x06values\"f\n\nInt64Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x03\x42\x03\xe0\x41\x02R\x05value\"}\n\x0bInt64Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x35\n\x06values\x18\x02 \x03(\x0b\x32\x18.sift.data.v1.Int64ValueB\x03\xe0\x41\x02R\x06values\"g\n\x0bUint64Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x04\x42\x03\xe0\x41\x02R\x05value\"\x7f\n\x0cUint64Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.Uint64ValueB\x03\xe0\x41\x02R\x06values2\xa2\x01\n\x0b\x44\x61taService\x12w\n\x07GetData\x12\x1c.sift.data.v1.GetDataRequest\x1a\x1d.sift.data.v1.GetDataResponse\"/\x92\x41\x15\x12\x07GetData\x1a\nQuery data\x82\xd3\xe4\x93\x02\x11\"\x0c/api/v1/data:\x01*\x1a\x1a\x92\x41\x17\x12\x15Service to query dataB\xaf\x01\n\x10\x63om.sift.data.v1B\tDataProtoP\x01Z+azimuth/gen/protos/go/sift/data/v1;datav1pb\xa2\x02\x03SDX\xaa\x02\x0cSift.Data.V1\xca\x02\x0cSift\\Data\\V1\xe2\x02\x18Sift\\Data\\V1\\GPBMetadata\xea\x02\x0eSift::Data::V1\x92\x41\x10\x12\x0e\n\x0c\x44\x61ta Serviceb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17sift/data/v1/data.proto\x12\x0csift.data.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/protobuf/any.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x35sift/calculated_channels/v1/calculated_channels.proto\x1a\x33sift/common/type/v1/channel_bit_field_element.proto\x1a+sift/common/type/v1/channel_data_type.proto\x1a+sift/common/type/v1/channel_enum_type.proto\"\x8a\x02\n\x0eGetDataRequest\x12-\n\x07queries\x18\x01 \x03(\x0b\x32\x13.sift.data.v1.QueryR\x07queries\x12\x39\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x1b\n\tsample_ms\x18\x04 \x01(\rR\x08sampleMs\x12\x1b\n\tpage_size\x18\x05 \x01(\rR\x08pageSize\x12\x1d\n\npage_token\x18\x06 \x01(\tR\tpageToken\"\x9f\x01\n\x05Query\x12\x36\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x1a.sift.data.v1.ChannelQueryH\x00R\x07\x63hannel\x12U\n\x12\x63\x61lculated_channel\x18\x02 \x01(\x0b\x32$.sift.data.v1.CalculatedChannelQueryH\x00R\x11\x63\x61lculatedChannelB\x07\n\x05query\"T\n\x0c\x43hannelQuery\x12\x1d\n\nchannel_id\x18\x01 \x01(\tR\tchannelId\x12\x1a\n\x06run_id\x18\x02 \x01(\tH\x00R\x05runId\x88\x01\x01\x42\t\n\x07_run_id\"\x89\x02\n\x16\x43\x61lculatedChannelQuery\x12$\n\x0b\x63hannel_key\x18\x01 \x01(\tB\x03\xe0\x41\x02R\nchannelKey\x12S\n\nexpression\x18\x02 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestB\x03\xe0\x41\x02R\nexpression\x12\x1a\n\x06run_id\x18\x03 \x01(\tH\x00R\x05runId\x88\x01\x01\x12\x44\n\x04mode\x18\x04 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeH\x01R\x04mode\x88\x01\x01\x42\t\n\x07_run_idB\x07\n\x05_mode\"h\n\x0fGetDataResponse\x12&\n\x0fnext_page_token\x18\x01 \x01(\tR\rnextPageToken\x12-\n\x04\x64\x61ta\x18\x02 \x03(\x0b\x32\x14.google.protobuf.AnyB\x03\xe0\x41\x02R\x04\x64\x61ta\"\xbf\x06\n\x08Metadata\x12\x46\n\tdata_type\x18\x01 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType\x12\"\n\nsampled_ms\x18\x02 \x01(\rB\x03\xe0\x41\x02R\tsampledMs\x12\x37\n\x05\x61sset\x18\x03 \x01(\x0b\x32\x1c.sift.data.v1.Metadata.AssetB\x03\xe0\x41\x02R\x05\x61sset\x12\x31\n\x03run\x18\x04 \x01(\x0b\x32\x1a.sift.data.v1.Metadata.RunH\x00R\x03run\x88\x01\x01\x12=\n\x07\x63hannel\x18\x05 \x01(\x0b\x32\x1e.sift.data.v1.Metadata.ChannelH\x01R\x07\x63hannel\x88\x01\x01\x1a@\n\x05\x41sset\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x1a:\n\x03Run\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x1a\x89\x03\n\x07\x43hannel\x12\"\n\nchannel_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tchannelId\x12\x1c\n\tcomponent\x18\x02 \x01(\tR\tcomponent\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x37\n\x04unit\x18\x04 \x01(\x0b\x32#.sift.data.v1.Metadata.Channel.UnitR\x04unit\x12\x43\n\nenum_types\x18\x05 \x03(\x0b\x32$.sift.common.type.v1.ChannelEnumTypeR\tenumTypes\x12Y\n\x12\x62it_field_elements\x18\x06 \x03(\x0b\x32+.sift.common.type.v1.ChannelBitFieldElementR\x10\x62itFieldElements\x1aO\n\x04Unit\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12.\n\x10\x61\x62\x62reviated_name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0f\x61\x62\x62reviatedNameB\x06\n\x04_runB\n\n\x08_channel\"g\n\x0b\x44oubleValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x01\x42\x03\xe0\x41\x02R\x05value\"\x7f\n\x0c\x44oubleValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.DoubleValueB\x03\xe0\x41\x02R\x06values\"g\n\x0bStringValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x05value\"\x7f\n\x0cStringValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.StringValueB\x03\xe0\x41\x02R\x06values\"e\n\tEnumValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\rB\x03\xe0\x41\x02R\x05value\"{\n\nEnumValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x34\n\x06values\x18\x02 \x03(\x0b\x32\x17.sift.data.v1.EnumValueB\x03\xe0\x41\x02R\x06values\"i\n\rBitFieldValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\rB\x03\xe0\x41\x02R\x05value\"j\n\x15\x42itFieldElementValues\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x38\n\x06values\x18\x02 \x03(\x0b\x32\x1b.sift.data.v1.BitFieldValueB\x03\xe0\x41\x02R\x06values\"\x8b\x01\n\x0e\x42itFieldValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12@\n\x06values\x18\x02 \x03(\x0b\x32#.sift.data.v1.BitFieldElementValuesB\x03\xe0\x41\x02R\x06values\"e\n\tBoolValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x08\x42\x03\xe0\x41\x02R\x05value\"{\n\nBoolValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x34\n\x06values\x18\x02 \x03(\x0b\x32\x17.sift.data.v1.BoolValueB\x03\xe0\x41\x02R\x06values\"f\n\nFloatValue\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x02\x42\x03\xe0\x41\x02R\x05value\"}\n\x0b\x46loatValues\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x35\n\x06values\x18\x02 \x03(\x0b\x32\x18.sift.data.v1.FloatValueB\x03\xe0\x41\x02R\x06values\"f\n\nInt32Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02R\x05value\"}\n\x0bInt32Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x35\n\x06values\x18\x02 \x03(\x0b\x32\x18.sift.data.v1.Int32ValueB\x03\xe0\x41\x02R\x06values\"g\n\x0bUint32Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\rB\x03\xe0\x41\x02R\x05value\"\x7f\n\x0cUint32Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.Uint32ValueB\x03\xe0\x41\x02R\x06values\"f\n\nInt64Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x03\x42\x03\xe0\x41\x02R\x05value\"}\n\x0bInt64Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x35\n\x06values\x18\x02 \x03(\x0b\x32\x18.sift.data.v1.Int64ValueB\x03\xe0\x41\x02R\x06values\"g\n\x0bUint64Value\x12=\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\ttimestamp\x12\x19\n\x05value\x18\x02 \x01(\x04\x42\x03\xe0\x41\x02R\x05value\"\x7f\n\x0cUint64Values\x12\x37\n\x08metadata\x18\x01 \x01(\x0b\x32\x16.sift.data.v1.MetadataB\x03\xe0\x41\x02R\x08metadata\x12\x36\n\x06values\x18\x02 \x03(\x0b\x32\x19.sift.data.v1.Uint64ValueB\x03\xe0\x41\x02R\x06values2\xa2\x01\n\x0b\x44\x61taService\x12w\n\x07GetData\x12\x1c.sift.data.v1.GetDataRequest\x1a\x1d.sift.data.v1.GetDataResponse\"/\x92\x41\x15\x12\x07GetData\x1a\nQuery data\x82\xd3\xe4\x93\x02\x11\"\x0c/api/v1/data:\x01*\x1a\x1a\x92\x41\x17\x12\x15Service to query dataB\xaf\x01\n\x10\x63om.sift.data.v1B\tDataProtoP\x01Z+azimuth/gen/protos/go/sift/data/v1;datav1pb\xa2\x02\x03SDX\xaa\x02\x0cSift.Data.V1\xca\x02\x0cSift\\Data\\V1\xe2\x02\x18Sift\\Data\\V1\\GPBMetadata\xea\x02\x0eSift::Data::V1\x92\x41\x10\x12\x0e\n\x0c\x44\x61ta Serviceb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -152,61 +152,61 @@ _globals['_CHANNELQUERY']._serialized_start=841 _globals['_CHANNELQUERY']._serialized_end=925 _globals['_CALCULATEDCHANNELQUERY']._serialized_start=928 - _globals['_CALCULATEDCHANNELQUERY']._serialized_end=1114 - _globals['_GETDATARESPONSE']._serialized_start=1116 - _globals['_GETDATARESPONSE']._serialized_end=1220 - _globals['_METADATA']._serialized_start=1223 - _globals['_METADATA']._serialized_end=2054 - _globals['_METADATA_ASSET']._serialized_start=1514 - _globals['_METADATA_ASSET']._serialized_end=1578 - _globals['_METADATA_RUN']._serialized_start=1580 - _globals['_METADATA_RUN']._serialized_end=1638 - _globals['_METADATA_CHANNEL']._serialized_start=1641 - _globals['_METADATA_CHANNEL']._serialized_end=2034 - _globals['_METADATA_CHANNEL_UNIT']._serialized_start=1955 - _globals['_METADATA_CHANNEL_UNIT']._serialized_end=2034 - _globals['_DOUBLEVALUE']._serialized_start=2056 - _globals['_DOUBLEVALUE']._serialized_end=2159 - _globals['_DOUBLEVALUES']._serialized_start=2161 - _globals['_DOUBLEVALUES']._serialized_end=2288 - _globals['_STRINGVALUE']._serialized_start=2290 - _globals['_STRINGVALUE']._serialized_end=2393 - _globals['_STRINGVALUES']._serialized_start=2395 - _globals['_STRINGVALUES']._serialized_end=2522 - _globals['_ENUMVALUE']._serialized_start=2524 - _globals['_ENUMVALUE']._serialized_end=2625 - _globals['_ENUMVALUES']._serialized_start=2627 - _globals['_ENUMVALUES']._serialized_end=2750 - _globals['_BITFIELDVALUE']._serialized_start=2752 - _globals['_BITFIELDVALUE']._serialized_end=2857 - _globals['_BITFIELDELEMENTVALUES']._serialized_start=2859 - _globals['_BITFIELDELEMENTVALUES']._serialized_end=2965 - _globals['_BITFIELDVALUES']._serialized_start=2968 - _globals['_BITFIELDVALUES']._serialized_end=3107 - _globals['_BOOLVALUE']._serialized_start=3109 - _globals['_BOOLVALUE']._serialized_end=3210 - _globals['_BOOLVALUES']._serialized_start=3212 - _globals['_BOOLVALUES']._serialized_end=3335 - _globals['_FLOATVALUE']._serialized_start=3337 - _globals['_FLOATVALUE']._serialized_end=3439 - _globals['_FLOATVALUES']._serialized_start=3441 - _globals['_FLOATVALUES']._serialized_end=3566 - _globals['_INT32VALUE']._serialized_start=3568 - _globals['_INT32VALUE']._serialized_end=3670 - _globals['_INT32VALUES']._serialized_start=3672 - _globals['_INT32VALUES']._serialized_end=3797 - _globals['_UINT32VALUE']._serialized_start=3799 - _globals['_UINT32VALUE']._serialized_end=3902 - _globals['_UINT32VALUES']._serialized_start=3904 - _globals['_UINT32VALUES']._serialized_end=4031 - _globals['_INT64VALUE']._serialized_start=4033 - _globals['_INT64VALUE']._serialized_end=4135 - _globals['_INT64VALUES']._serialized_start=4137 - _globals['_INT64VALUES']._serialized_end=4262 - _globals['_UINT64VALUE']._serialized_start=4264 - _globals['_UINT64VALUE']._serialized_end=4367 - _globals['_UINT64VALUES']._serialized_start=4369 - _globals['_UINT64VALUES']._serialized_end=4496 - _globals['_DATASERVICE']._serialized_start=4499 - _globals['_DATASERVICE']._serialized_end=4661 + _globals['_CALCULATEDCHANNELQUERY']._serialized_end=1193 + _globals['_GETDATARESPONSE']._serialized_start=1195 + _globals['_GETDATARESPONSE']._serialized_end=1299 + _globals['_METADATA']._serialized_start=1302 + _globals['_METADATA']._serialized_end=2133 + _globals['_METADATA_ASSET']._serialized_start=1593 + _globals['_METADATA_ASSET']._serialized_end=1657 + _globals['_METADATA_RUN']._serialized_start=1659 + _globals['_METADATA_RUN']._serialized_end=1717 + _globals['_METADATA_CHANNEL']._serialized_start=1720 + _globals['_METADATA_CHANNEL']._serialized_end=2113 + _globals['_METADATA_CHANNEL_UNIT']._serialized_start=2034 + _globals['_METADATA_CHANNEL_UNIT']._serialized_end=2113 + _globals['_DOUBLEVALUE']._serialized_start=2135 + _globals['_DOUBLEVALUE']._serialized_end=2238 + _globals['_DOUBLEVALUES']._serialized_start=2240 + _globals['_DOUBLEVALUES']._serialized_end=2367 + _globals['_STRINGVALUE']._serialized_start=2369 + _globals['_STRINGVALUE']._serialized_end=2472 + _globals['_STRINGVALUES']._serialized_start=2474 + _globals['_STRINGVALUES']._serialized_end=2601 + _globals['_ENUMVALUE']._serialized_start=2603 + _globals['_ENUMVALUE']._serialized_end=2704 + _globals['_ENUMVALUES']._serialized_start=2706 + _globals['_ENUMVALUES']._serialized_end=2829 + _globals['_BITFIELDVALUE']._serialized_start=2831 + _globals['_BITFIELDVALUE']._serialized_end=2936 + _globals['_BITFIELDELEMENTVALUES']._serialized_start=2938 + _globals['_BITFIELDELEMENTVALUES']._serialized_end=3044 + _globals['_BITFIELDVALUES']._serialized_start=3047 + _globals['_BITFIELDVALUES']._serialized_end=3186 + _globals['_BOOLVALUE']._serialized_start=3188 + _globals['_BOOLVALUE']._serialized_end=3289 + _globals['_BOOLVALUES']._serialized_start=3291 + _globals['_BOOLVALUES']._serialized_end=3414 + _globals['_FLOATVALUE']._serialized_start=3416 + _globals['_FLOATVALUE']._serialized_end=3518 + _globals['_FLOATVALUES']._serialized_start=3520 + _globals['_FLOATVALUES']._serialized_end=3645 + _globals['_INT32VALUE']._serialized_start=3647 + _globals['_INT32VALUE']._serialized_end=3749 + _globals['_INT32VALUES']._serialized_start=3751 + _globals['_INT32VALUES']._serialized_end=3876 + _globals['_UINT32VALUE']._serialized_start=3878 + _globals['_UINT32VALUE']._serialized_end=3981 + _globals['_UINT32VALUES']._serialized_start=3983 + _globals['_UINT32VALUES']._serialized_end=4110 + _globals['_INT64VALUE']._serialized_start=4112 + _globals['_INT64VALUE']._serialized_end=4214 + _globals['_INT64VALUES']._serialized_start=4216 + _globals['_INT64VALUES']._serialized_end=4341 + _globals['_UINT64VALUE']._serialized_start=4343 + _globals['_UINT64VALUE']._serialized_end=4446 + _globals['_UINT64VALUES']._serialized_start=4448 + _globals['_UINT64VALUES']._serialized_end=4575 + _globals['_DATASERVICE']._serialized_start=4578 + _globals['_DATASERVICE']._serialized_end=4740 # @@protoc_insertion_point(module_scope) diff --git a/python/lib/sift/data/v1/data_pb2.pyi b/python/lib/sift/data/v1/data_pb2.pyi index 8fb3266e..cfd049ac 100644 --- a/python/lib/sift/data/v1/data_pb2.pyi +++ b/python/lib/sift/data/v1/data_pb2.pyi @@ -127,6 +127,7 @@ class CalculatedChannelQuery(google.protobuf.message.Message): CHANNEL_KEY_FIELD_NUMBER: builtins.int EXPRESSION_FIELD_NUMBER: builtins.int RUN_ID_FIELD_NUMBER: builtins.int + MODE_FIELD_NUMBER: builtins.int channel_key: builtins.str run_id: builtins.str """Optional. @@ -134,6 +135,8 @@ class CalculatedChannelQuery(google.protobuf.message.Message): If set to the empty string, only non-run data is returned. If unset, all run / non-run data is returned. """ + mode: sift.calculated_channels.v1.calculated_channels_pb2.ExpressionMode.ValueType + """Optional. If unset, will default to EXPRESSION_MODE_CALCULATED_CHANNELS.""" @property def expression(self) -> sift.calculated_channels.v1.calculated_channels_pb2.ExpressionRequest: ... def __init__( @@ -142,9 +145,13 @@ class CalculatedChannelQuery(google.protobuf.message.Message): channel_key: builtins.str = ..., expression: sift.calculated_channels.v1.calculated_channels_pb2.ExpressionRequest | None = ..., run_id: builtins.str | None = ..., + mode: sift.calculated_channels.v1.calculated_channels_pb2.ExpressionMode.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing.Literal["_run_id", b"_run_id", "expression", b"expression", "run_id", b"run_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["_run_id", b"_run_id", "channel_key", b"channel_key", "expression", b"expression", "run_id", b"run_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["_mode", b"_mode", "_run_id", b"_run_id", "expression", b"expression", "mode", b"mode", "run_id", b"run_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["_mode", b"_mode", "_run_id", b"_run_id", "channel_key", b"channel_key", "expression", b"expression", "mode", b"mode", "run_id", b"run_id"]) -> None: ... + @typing.overload + def WhichOneof(self, oneof_group: typing.Literal["_mode", b"_mode"]) -> typing.Literal["mode"] | None: ... + @typing.overload def WhichOneof(self, oneof_group: typing.Literal["_run_id", b"_run_id"]) -> typing.Literal["run_id"] | None: ... global___CalculatedChannelQuery = CalculatedChannelQuery diff --git a/python/lib/sift/rules/v1/rules_pb2.py b/python/lib/sift/rules/v1/rules_pb2.py index 7e9dd962..2b88e3ac 100644 --- a/python/lib/sift/rules/v1/rules_pb2.py +++ b/python/lib/sift/rules/v1/rules_pb2.py @@ -19,7 +19,7 @@ from sift.annotations.v1 import annotations_pb2 as sift_dot_annotations_dot_v1_dot_annotations__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19sift/rules/v1/rules.proto\x12\rsift.rules.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a%sift/annotations/v1/annotations.proto\"\xb5\x04\n\x04Rule\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\x17\n\x04name\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12*\n\x0e\x63urrent_status\x18\x05 \x01(\tB\x03\xe0\x41\x02R\rcurrentStatus\x12\"\n\nis_enabled\x18\x06 \x01(\x08\x42\x03\xe0\x41\x02R\tisEnabled\x12\x42\n\x0c\x63reated_date\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\t \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\n \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12,\n\x0forganization_id\x18\x0b \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\x12\x41\n\nconditions\x18\x0c \x03(\x0b\x32\x1c.sift.rules.v1.RuleConditionB\x03\xe0\x41\x02R\nconditions\"\xf2\x03\n\rRuleCondition\x12/\n\x11rule_condition_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0fruleConditionId\x12\x1c\n\x07rule_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\x12K\n\nexpression\x18\x03 \x01(\x0b\x32&.sift.rules.v1.RuleConditionExpressionB\x03\xe0\x41\x02R\nexpression\x12\x1b\n\x06status\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x06status\x12\x42\n\x0c\x63reated_date\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x08 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12\x38\n\x07\x61\x63tions\x18\t \x03(\x0b\x32\x19.sift.rules.v1.RuleActionB\x03\xe0\x41\x02R\x07\x61\x63tions\"\xec\x03\n\nRuleAction\x12)\n\x0erule_action_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0cruleActionId\x12/\n\x11rule_condition_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0fruleConditionId\x12?\n\x0b\x61\x63tion_type\x18\x03 \x01(\x0e\x32\x19.sift.rules.v1.ActionKindB\x03\xe0\x41\x02R\nactionType\x12Q\n\rconfiguration\x18\x04 \x01(\x0b\x32&.sift.rules.v1.RuleActionConfigurationB\x03\xe0\x41\x02R\rconfiguration\x12\x42\n\x0c\x63reated_date\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x08 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\"\xd9\x02\n\x12SearchRulesRequest\x12\x19\n\x05limit\x18\x01 \x01(\rH\x00R\x05limit\x88\x01\x01\x12\x16\n\x06offset\x18\x02 \x01(\rR\x06offset\x12\x35\n\x05order\x18\x03 \x01(\x0e\x32\x1a.sift.rules.v1.SearchOrderH\x01R\x05order\x88\x01\x01\x12!\n\x0cname_matches\x18\x04 \x01(\tR\x0bnameMatches\x12%\n\x0e\x63\x61se_sensitive\x18\x05 \x01(\x08R\rcaseSensitive\x12\x16\n\x06regexp\x18\x06 \x01(\x08R\x06regexp\x12\x1e\n\x08order_by\x18\x07 \x01(\tH\x02R\x07orderBy\x88\x01\x01\x12\x19\n\x08rule_ids\x18\x08 \x03(\tR\x07ruleIds\x12\x1b\n\tasset_ids\x18\t \x03(\tR\x08\x61ssetIdsB\x08\n\x06_limitB\x08\n\x06_orderB\x0b\n\t_order_by\"`\n\x13SearchRulesResponse\x12\x19\n\x05\x63ount\x18\x01 \x01(\rB\x03\xe0\x41\x02R\x05\x63ount\x12.\n\x05rules\x18\x02 \x03(\x0b\x32\x13.sift.rules.v1.RuleB\x03\xe0\x41\x02R\x05rules\".\n\x0eGetRuleRequest\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"?\n\x0fGetRuleResponse\x12,\n\x04rule\x18\x01 \x01(\x0b\x32\x13.sift.rules.v1.RuleB\x03\xe0\x41\x02R\x04rule\"6\n\x14\x42\x61tchGetRulesRequest\x12\x1e\n\x08rule_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x07ruleIds\"G\n\x15\x42\x61tchGetRulesResponse\x12.\n\x05rules\x18\x01 \x03(\x0b\x32\x13.sift.rules.v1.RuleB\x03\xe0\x41\x02R\x05rules\"R\n\x11\x43reateRuleRequest\x12=\n\x06update\x18\x01 \x01(\x0b\x32 .sift.rules.v1.UpdateRuleRequestB\x03\xe0\x41\x02R\x06update\"2\n\x12\x43reateRuleResponse\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"\xb6\x02\n\x11UpdateRuleRequest\x12\x1c\n\x07rule_id\x18\x01 \x01(\tH\x00R\x06ruleId\x88\x01\x01\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12\x1e\n\x08\x61sset_id\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nis_enabled\x18\x05 \x01(\x08\x42\x03\xe0\x41\x02R\tisEnabled\x12J\n\nconditions\x18\x06 \x03(\x0b\x32%.sift.rules.v1.UpdateConditionRequestB\x03\xe0\x41\x02R\nconditions\x12\'\n\x0forganization_id\x18\x07 \x01(\tR\x0eorganizationIdB\n\n\x08_rule_id\"\x8c\x02\n\x16UpdateConditionRequest\x12/\n\x11rule_condition_id\x18\x01 \x01(\tH\x00R\x0fruleConditionId\x88\x01\x01\x12\x1b\n\x06status\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x06status\x12K\n\nexpression\x18\x03 \x01(\x0b\x32&.sift.rules.v1.RuleConditionExpressionB\x03\xe0\x41\x02R\nexpression\x12\x41\n\x07\x61\x63tions\x18\x04 \x03(\x0b\x32\".sift.rules.v1.UpdateActionRequestB\x03\xe0\x41\x02R\x07\x61\x63tionsB\x14\n\x12_rule_condition_id\"\xe7\x01\n\x13UpdateActionRequest\x12)\n\x0erule_action_id\x18\x01 \x01(\tH\x00R\x0cruleActionId\x88\x01\x01\x12?\n\x0b\x61\x63tion_type\x18\x02 \x01(\x0e\x32\x19.sift.rules.v1.ActionKindB\x03\xe0\x41\x02R\nactionType\x12Q\n\rconfiguration\x18\x03 \x01(\x0b\x32&.sift.rules.v1.RuleActionConfigurationB\x03\xe0\x41\x02R\rconfigurationB\x11\n\x0f_rule_action_id\"2\n\x12UpdateRuleResponse\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"1\n\x11\x44\x65leteRuleRequest\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"\x14\n\x12\x44\x65leteRuleResponse\"C\n\x1dViewHumanFriendlyRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId:\x02\x18\x01\"H\n\x1eViewHumanFriendlyRulesResponse\x12\"\n\nrules_json\x18\x01 \x01(\tB\x03\xe0\x41\x02R\trulesJson:\x02\x18\x01\"\x97\x01\n\x1fUpdateHumanFriendlyRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nrules_json\x18\x02 \x01(\tB\x03\xe0\x41\x02R\trulesJson\x12,\n\x0forganization_id\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId:\x02\x18\x01\"\x8c\x01\n UpdateHumanFriendlyRulesResponse\x12\x1d\n\x07success\x18\x01 \x01(\x08\x42\x03\xe0\x41\x02R\x07success\x12$\n\x0brules_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02R\nrulesCount\x12\x1f\n\x08messages\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x08messages:\x02\x18\x01\"6\n\x14ViewJsonRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\";\n\x15ViewJsonRulesResponse\x12\"\n\nrules_json\x18\x01 \x01(\tB\x03\xe0\x41\x02R\trulesJson\"\x84\x01\n\x10JsonRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nrules_json\x18\x02 \x01(\tB\x03\xe0\x41\x02R\trulesJson\x12,\n\x0forganization_id\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\"\xc1\x02\n\x11JsonRulesResponse\x12\x1d\n\x07success\x18\x01 \x01(\x08\x42\x03\xe0\x41\x02R\x07success\x12/\n\x11total_rules_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02R\x0ftotalRulesCount\x12\x33\n\x13rules_created_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x02R\x11rulesCreatedCount\x12\x33\n\x13rules_updated_count\x18\x04 \x01(\x05\x42\x03\xe0\x41\x02R\x11rulesUpdatedCount\x12\x33\n\x13rules_deleted_count\x18\x05 \x01(\x05\x42\x03\xe0\x41\x02R\x11rulesDeletedCount\x12*\n\x0e\x65rror_messages\x18\x06 \x01(\tH\x00R\rerrorMessages\x88\x01\x01\x42\x11\n\x0f_error_messages\"Z\n\x18ValidateJsonRulesRequest\x12>\n\x07request\x18\x01 \x01(\x0b\x32\x1f.sift.rules.v1.JsonRulesRequestB\x03\xe0\x41\x02R\x07request\"^\n\x19ValidateJsonRulesResponse\x12\x41\n\x08response\x18\x01 \x01(\x0b\x32 .sift.rules.v1.JsonRulesResponseB\x03\xe0\x41\x02R\x08response\"X\n\x16UpdateJsonRulesRequest\x12>\n\x07request\x18\x01 \x01(\x0b\x32\x1f.sift.rules.v1.JsonRulesRequestB\x03\xe0\x41\x02R\x07request\"\\\n\x17UpdateJsonRulesResponse\x12\x41\n\x08response\x18\x01 \x01(\x0b\x32 .sift.rules.v1.JsonRulesResponseB\x03\xe0\x41\x02R\x08response\"\xf0\x01\n\x17RuleConditionExpression\x12n\n\x19single_channel_comparison\x18\x01 \x01(\x0b\x32\x30.sift.rules.v1.SingleChannelComparisonExpressionH\x00R\x17singleChannelComparison\x12W\n\x12\x63\x61lculated_channel\x18\x02 \x01(\x0b\x32&.sift.rules.v1.CalculatedChannelConfigH\x00R\x11\x63\x61lculatedChannelB\x0c\n\nexpression\"\xcb\x02\n!SingleChannelComparisonExpression\x12\x30\n\x11\x63hannel_component\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10\x63hannelComponent\x12&\n\x0c\x63hannel_name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0b\x63hannelName\x12G\n\ncomparator\x18\x03 \x01(\x0e\x32\".sift.rules.v1.ConditionComparatorB\x03\xe0\x41\x02R\ncomparator\x12\x18\n\x06\x64ouble\x18\x04 \x01(\x01H\x00R\x06\x64ouble\x12\x18\n\x06string\x18\x05 \x01(\tH\x00R\x06string\x12\x42\n\nlast_value\x18\x06 \x01(\x0b\x32!.sift.rules.v1.LastValueThresholdH\x00R\tlastValueB\x0b\n\tthreshold\"\x14\n\x12LastValueThreshold\"\x98\x02\n\x17\x43\x61lculatedChannelConfig\x12q\n\x12\x63hannel_references\x18\x01 \x03(\x0b\x32=.sift.rules.v1.CalculatedChannelConfig.ChannelReferencesEntryB\x03\xe0\x41\x02R\x11\x63hannelReferences\x12#\n\nexpression\x18\x02 \x01(\tB\x03\xe0\x41\x02R\nexpression\x1a\x65\n\x16\x43hannelReferencesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32\x1f.sift.rules.v1.ChannelReferenceR\x05value:\x02\x38\x01\"N\n\x10\x43hannelReference\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12!\n\tcomponent\x18\x02 \x01(\tB\x03\xe0\x41\x02R\tcomponent\"\xd0\x01\n\x17RuleActionConfiguration\x12T\n\x0cnotification\x18\x01 \x01(\x0b\x32..sift.rules.v1.NotificationActionConfigurationH\x00R\x0cnotification\x12N\n\nannotation\x18\x02 \x01(\x0b\x32,.sift.rules.v1.AnnotationActionConfigurationH\x00R\nannotationB\x0f\n\rconfiguration\"T\n\x1fNotificationActionConfiguration\x12\x31\n\x12recipient_user_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x10recipientUserIds\"\xd7\x01\n\x1d\x41nnotationActionConfiguration\x12\x1c\n\x07tag_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x06tagIds\x12L\n\x0f\x61nnotation_type\x18\x02 \x01(\x0e\x32#.sift.annotations.v1.AnnotationTypeR\x0e\x61nnotationType\x12\x32\n\x13\x61ssigned_to_user_id\x18\x03 \x01(\tH\x00R\x10\x61ssignedToUserId\x88\x01\x01\x42\x16\n\x14_assigned_to_user_id\"\xf1\x01\n\x14\x45valuateRulesRequest\x12\x1e\n\x08rule_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x07ruleIds\x12X\n\x12\x61nnotation_options\x18\x02 \x01(\x0b\x32).sift.rules.v1.EvaluatedAnnotationOptionsR\x11\x61nnotationOptions\x12\x17\n\x06run_id\x18\x03 \x01(\tH\x00R\x05runId\x12>\n\ntime_range\x18\x04 \x01(\x0b\x32\x1d.sift.rules.v1.TimeRangeQueryH\x00R\ttimeRangeB\x06\n\x04time\"5\n\x1a\x45valuatedAnnotationOptions\x12\x17\n\x07tag_ids\x18\x01 \x03(\tR\x06tagIds\"\x82\x01\n\x0eTimeRangeQuery\x12\x39\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\"Q\n\x15\x45valuateRulesResponse\x12\x38\n\x18\x63reated_annotation_count\x18\x01 \x01(\x05R\x16\x63reatedAnnotationCount*\\\n\x0bSearchOrder\x12 \n\x18SEARCH_ORDER_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x14\n\x10SEARCH_ORDER_ASC\x10\x01\x12\x15\n\x11SEARCH_ORDER_DESC\x10\x02*O\n\nActionKind\x12\x1f\n\x17\x41\x43TION_KIND_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x10\n\x0cNOTIFICATION\x10\x01\x12\x0e\n\nANNOTATION\x10\x02*\xad\x01\n\x13\x43onditionComparator\x12(\n CONDITION_COMPARATOR_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\r\n\tLESS_THAN\x10\x01\x12\x16\n\x12LESS_THAN_OR_EQUAL\x10\x02\x12\x10\n\x0cGREATER_THAN\x10\x03\x12\x19\n\x15GREATER_THAN_OR_EQUAL\x10\x04\x12\t\n\x05\x45QUAL\x10\x05\x12\r\n\tNOT_EQUAL\x10\x06\x32\x9f\x14\n\x0bRuleService\x12\xb9\x01\n\x0bSearchRules\x12!.sift.rules.v1.SearchRulesRequest\x1a\".sift.rules.v1.SearchRulesResponse\"c\x92\x41\x41\x12\x0bSearchRules\x1a\x32Queries rules based on provided search parameters.\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/rules/search:\x01*\x12\x7f\n\x07GetRule\x12\x1d.sift.rules.v1.GetRuleRequest\x1a\x1e.sift.rules.v1.GetRuleResponse\"5\x92\x41\x1d\x12\x08GetRules\x1a\x11Retrieves a rule.\x82\xd3\xe4\x93\x02\x0f\x12\r/api/v1/rules\x12\xaa\x01\n\rBatchGetRules\x12#.sift.rules.v1.BatchGetRulesRequest\x1a$.sift.rules.v1.BatchGetRulesResponse\"N\x92\x41*\x12\rBatchGetRules\x1a\x19Retrieves multiple rules.\x82\xd3\xe4\x93\x02\x1b\"\x16/api/v1/rules:batchGet:\x01*\x12\x8b\x01\n\nCreateRule\x12 .sift.rules.v1.CreateRuleRequest\x1a!.sift.rules.v1.CreateRuleResponse\"8\x92\x41\x1d\x12\nCreateRule\x1a\x0f\x43reates a rule.\x82\xd3\xe4\x93\x02\x12\"\r/api/v1/rules:\x01*\x12\x95\x01\n\nUpdateRule\x12 .sift.rules.v1.UpdateRuleRequest\x1a!.sift.rules.v1.UpdateRuleResponse\"B\x92\x41\'\x12\nUpdateRule\x1a\x19Updates an existing rule.\x82\xd3\xe4\x93\x02\x12\x1a\r/api/v1/rules:\x01*\x12\x92\x01\n\nDeleteRule\x12 .sift.rules.v1.DeleteRuleRequest\x1a!.sift.rules.v1.DeleteRuleResponse\"?\x92\x41\x1d\x12\nDeleteRule\x1a\x0f\x44\x65letes a rule.\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/rules/delete:\x01*\x12\xdb\x01\n\rEvaluateRules\x12#.sift.rules.v1.EvaluateRulesRequest\x1a$.sift.rules.v1.EvaluateRulesResponse\"\x7f\x92\x41[\x12\rEvaluateRules\x1aJEvaluates the provided rules and generate annotations based on the result.\x82\xd3\xe4\x93\x02\x1b\"\x16/api/v1/rules/evaluate:\x01*\x12\x84\x02\n\x16ViewHumanFriendlyRules\x12,.sift.rules.v1.ViewHumanFriendlyRulesRequest\x1a-.sift.rules.v1.ViewHumanFriendlyRulesResponse\"\x8c\x01\x88\x02\x01\x92\x41_\x12\x16ViewHumanFriendlyRules\x1a\x45Retrieve a JSON object containing all of the rules for a given asset.\x82\xd3\xe4\x93\x02!\x12\x1f/api/v1/rules:viewHumanFriendly\x12\xd3\x01\n\rViewJsonRules\x12#.sift.rules.v1.ViewJsonRulesRequest\x1a$.sift.rules.v1.ViewJsonRulesResponse\"w\x92\x41V\x12\rViewJsonRules\x1a\x45Retrieve a JSON object containing all of the rules for a given asset.\x82\xd3\xe4\x93\x02\x18\x12\x16/api/v1/rules:viewJson\x12\x94\x02\n\x18UpdateHumanFriendlyRules\x12..sift.rules.v1.UpdateHumanFriendlyRulesRequest\x1a/.sift.rules.v1.UpdateHumanFriendlyRulesResponse\"\x96\x01\x88\x02\x01\x92\x41\x64\x12\x18UpdateHumanFriendlyRules\x1aHBatch update rules given the `rules_json` which is a JSON list of rules.\x82\xd3\xe4\x93\x02&\"!/api/v1/rules:updateHumanFriendly:\x01*\x12\xfd\x01\n\x11ValidateJsonRules\x12\'.sift.rules.v1.ValidateJsonRulesRequest\x1a(.sift.rules.v1.ValidateJsonRulesResponse\"\x94\x01\x92\x41l\x12\x11ValidateJsonRules\x1aWValidate a batch update for rules given the `rules_json` which is a JSON list of rules.\x82\xd3\xe4\x93\x02\x1f\"\x1a/api/v1/rules:validateJson:\x01*\x12\xe4\x01\n\x0fUpdateJsonRules\x12%.sift.rules.v1.UpdateJsonRulesRequest\x1a&.sift.rules.v1.UpdateJsonRulesResponse\"\x81\x01\x92\x41[\x12\x0fUpdateJsonRules\x1aHBatch update rules given the `rules_json` which is a JSON list of rules.\x82\xd3\xe4\x93\x02\x1d\"\x18/api/v1/rules:updateJson:\x01*\x1a\xb1\x01\x92\x41\xad\x01\x12\x30Service to programmatically interact with rules.\x1ay\n\x1fRead more about what rules are.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421102B\xb7\x01\n\x11\x63om.sift.rules.v1B\nRulesProtoP\x01Z-azimuth/gen/protos/go/sift/rules/v1;rulesv1pb\xa2\x02\x03SRX\xaa\x02\rSift.Rules.V1\xca\x02\rSift\\Rules\\V1\xe2\x02\x19Sift\\Rules\\V1\\GPBMetadata\xea\x02\x0fSift::Rules::V1\x92\x41\x10\x12\x0e\n\x0cRule Serviceb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19sift/rules/v1/rules.proto\x12\rsift.rules.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a%sift/annotations/v1/annotations.proto\"\x8f\x04\n\x04Rule\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\x17\n\x04name\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12\"\n\nis_enabled\x18\x06 \x01(\x08\x42\x03\xe0\x41\x02R\tisEnabled\x12\x42\n\x0c\x63reated_date\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\t \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\n \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12,\n\x0forganization_id\x18\x0b \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\x12\x41\n\nconditions\x18\x0c \x03(\x0b\x32\x1c.sift.rules.v1.RuleConditionB\x03\xe0\x41\x02R\nconditionsJ\x04\x08\x05\x10\x06\"\xdb\x03\n\rRuleCondition\x12/\n\x11rule_condition_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0fruleConditionId\x12\x1c\n\x07rule_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\x12K\n\nexpression\x18\x03 \x01(\x0b\x32&.sift.rules.v1.RuleConditionExpressionB\x03\xe0\x41\x02R\nexpression\x12\x42\n\x0c\x63reated_date\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x08 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12\x38\n\x07\x61\x63tions\x18\t \x03(\x0b\x32\x19.sift.rules.v1.RuleActionB\x03\xe0\x41\x02R\x07\x61\x63tionsJ\x04\x08\x04\x10\x05\"\xec\x03\n\nRuleAction\x12)\n\x0erule_action_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0cruleActionId\x12/\n\x11rule_condition_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0fruleConditionId\x12?\n\x0b\x61\x63tion_type\x18\x03 \x01(\x0e\x32\x19.sift.rules.v1.ActionKindB\x03\xe0\x41\x02R\nactionType\x12Q\n\rconfiguration\x18\x04 \x01(\x0b\x32&.sift.rules.v1.RuleActionConfigurationB\x03\xe0\x41\x02R\rconfiguration\x12\x42\n\x0c\x63reated_date\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x08 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\"\xd9\x02\n\x12SearchRulesRequest\x12\x19\n\x05limit\x18\x01 \x01(\rH\x00R\x05limit\x88\x01\x01\x12\x16\n\x06offset\x18\x02 \x01(\rR\x06offset\x12\x35\n\x05order\x18\x03 \x01(\x0e\x32\x1a.sift.rules.v1.SearchOrderH\x01R\x05order\x88\x01\x01\x12!\n\x0cname_matches\x18\x04 \x01(\tR\x0bnameMatches\x12%\n\x0e\x63\x61se_sensitive\x18\x05 \x01(\x08R\rcaseSensitive\x12\x16\n\x06regexp\x18\x06 \x01(\x08R\x06regexp\x12\x1e\n\x08order_by\x18\x07 \x01(\tH\x02R\x07orderBy\x88\x01\x01\x12\x19\n\x08rule_ids\x18\x08 \x03(\tR\x07ruleIds\x12\x1b\n\tasset_ids\x18\t \x03(\tR\x08\x61ssetIdsB\x08\n\x06_limitB\x08\n\x06_orderB\x0b\n\t_order_by\"`\n\x13SearchRulesResponse\x12\x19\n\x05\x63ount\x18\x01 \x01(\rB\x03\xe0\x41\x02R\x05\x63ount\x12.\n\x05rules\x18\x02 \x03(\x0b\x32\x13.sift.rules.v1.RuleB\x03\xe0\x41\x02R\x05rules\".\n\x0eGetRuleRequest\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"?\n\x0fGetRuleResponse\x12,\n\x04rule\x18\x01 \x01(\x0b\x32\x13.sift.rules.v1.RuleB\x03\xe0\x41\x02R\x04rule\"6\n\x14\x42\x61tchGetRulesRequest\x12\x1e\n\x08rule_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x07ruleIds\"G\n\x15\x42\x61tchGetRulesResponse\x12.\n\x05rules\x18\x01 \x03(\x0b\x32\x13.sift.rules.v1.RuleB\x03\xe0\x41\x02R\x05rules\"R\n\x11\x43reateRuleRequest\x12=\n\x06update\x18\x01 \x01(\x0b\x32 .sift.rules.v1.UpdateRuleRequestB\x03\xe0\x41\x02R\x06update\"2\n\x12\x43reateRuleResponse\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"\xb6\x02\n\x11UpdateRuleRequest\x12\x1c\n\x07rule_id\x18\x01 \x01(\tH\x00R\x06ruleId\x88\x01\x01\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12\x1e\n\x08\x61sset_id\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nis_enabled\x18\x05 \x01(\x08\x42\x03\xe0\x41\x02R\tisEnabled\x12J\n\nconditions\x18\x06 \x03(\x0b\x32%.sift.rules.v1.UpdateConditionRequestB\x03\xe0\x41\x02R\nconditions\x12\'\n\x0forganization_id\x18\x07 \x01(\tR\x0eorganizationIdB\n\n\x08_rule_id\"\xf5\x01\n\x16UpdateConditionRequest\x12/\n\x11rule_condition_id\x18\x01 \x01(\tH\x00R\x0fruleConditionId\x88\x01\x01\x12K\n\nexpression\x18\x03 \x01(\x0b\x32&.sift.rules.v1.RuleConditionExpressionB\x03\xe0\x41\x02R\nexpression\x12\x41\n\x07\x61\x63tions\x18\x04 \x03(\x0b\x32\".sift.rules.v1.UpdateActionRequestB\x03\xe0\x41\x02R\x07\x61\x63tionsB\x14\n\x12_rule_condition_idJ\x04\x08\x02\x10\x03\"\xe7\x01\n\x13UpdateActionRequest\x12)\n\x0erule_action_id\x18\x01 \x01(\tH\x00R\x0cruleActionId\x88\x01\x01\x12?\n\x0b\x61\x63tion_type\x18\x02 \x01(\x0e\x32\x19.sift.rules.v1.ActionKindB\x03\xe0\x41\x02R\nactionType\x12Q\n\rconfiguration\x18\x03 \x01(\x0b\x32&.sift.rules.v1.RuleActionConfigurationB\x03\xe0\x41\x02R\rconfigurationB\x11\n\x0f_rule_action_id\"2\n\x12UpdateRuleResponse\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"1\n\x11\x44\x65leteRuleRequest\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\"\x14\n\x12\x44\x65leteRuleResponse\"C\n\x1dViewHumanFriendlyRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId:\x02\x18\x01\"H\n\x1eViewHumanFriendlyRulesResponse\x12\"\n\nrules_json\x18\x01 \x01(\tB\x03\xe0\x41\x02R\trulesJson:\x02\x18\x01\"\x97\x01\n\x1fUpdateHumanFriendlyRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nrules_json\x18\x02 \x01(\tB\x03\xe0\x41\x02R\trulesJson\x12,\n\x0forganization_id\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId:\x02\x18\x01\"\x8c\x01\n UpdateHumanFriendlyRulesResponse\x12\x1d\n\x07success\x18\x01 \x01(\x08\x42\x03\xe0\x41\x02R\x07success\x12$\n\x0brules_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02R\nrulesCount\x12\x1f\n\x08messages\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x08messages:\x02\x18\x01\"6\n\x14ViewJsonRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\";\n\x15ViewJsonRulesResponse\x12\"\n\nrules_json\x18\x01 \x01(\tB\x03\xe0\x41\x02R\trulesJson\"\x84\x01\n\x10JsonRulesRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nrules_json\x18\x02 \x01(\tB\x03\xe0\x41\x02R\trulesJson\x12,\n\x0forganization_id\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\"\xc1\x02\n\x11JsonRulesResponse\x12\x1d\n\x07success\x18\x01 \x01(\x08\x42\x03\xe0\x41\x02R\x07success\x12/\n\x11total_rules_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02R\x0ftotalRulesCount\x12\x33\n\x13rules_created_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x02R\x11rulesCreatedCount\x12\x33\n\x13rules_updated_count\x18\x04 \x01(\x05\x42\x03\xe0\x41\x02R\x11rulesUpdatedCount\x12\x33\n\x13rules_deleted_count\x18\x05 \x01(\x05\x42\x03\xe0\x41\x02R\x11rulesDeletedCount\x12*\n\x0e\x65rror_messages\x18\x06 \x01(\tH\x00R\rerrorMessages\x88\x01\x01\x42\x11\n\x0f_error_messages\"Z\n\x18ValidateJsonRulesRequest\x12>\n\x07request\x18\x01 \x01(\x0b\x32\x1f.sift.rules.v1.JsonRulesRequestB\x03\xe0\x41\x02R\x07request\"^\n\x19ValidateJsonRulesResponse\x12\x41\n\x08response\x18\x01 \x01(\x0b\x32 .sift.rules.v1.JsonRulesResponseB\x03\xe0\x41\x02R\x08response\"X\n\x16UpdateJsonRulesRequest\x12>\n\x07request\x18\x01 \x01(\x0b\x32\x1f.sift.rules.v1.JsonRulesRequestB\x03\xe0\x41\x02R\x07request\"\\\n\x17UpdateJsonRulesResponse\x12\x41\n\x08response\x18\x01 \x01(\x0b\x32 .sift.rules.v1.JsonRulesResponseB\x03\xe0\x41\x02R\x08response\"\xf0\x01\n\x17RuleConditionExpression\x12n\n\x19single_channel_comparison\x18\x01 \x01(\x0b\x32\x30.sift.rules.v1.SingleChannelComparisonExpressionH\x00R\x17singleChannelComparison\x12W\n\x12\x63\x61lculated_channel\x18\x02 \x01(\x0b\x32&.sift.rules.v1.CalculatedChannelConfigH\x00R\x11\x63\x61lculatedChannelB\x0c\n\nexpression\"\xcb\x02\n!SingleChannelComparisonExpression\x12\x30\n\x11\x63hannel_component\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10\x63hannelComponent\x12&\n\x0c\x63hannel_name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0b\x63hannelName\x12G\n\ncomparator\x18\x03 \x01(\x0e\x32\".sift.rules.v1.ConditionComparatorB\x03\xe0\x41\x02R\ncomparator\x12\x18\n\x06\x64ouble\x18\x04 \x01(\x01H\x00R\x06\x64ouble\x12\x18\n\x06string\x18\x05 \x01(\tH\x00R\x06string\x12\x42\n\nlast_value\x18\x06 \x01(\x0b\x32!.sift.rules.v1.LastValueThresholdH\x00R\tlastValueB\x0b\n\tthreshold\"\x14\n\x12LastValueThreshold\"\x98\x02\n\x17\x43\x61lculatedChannelConfig\x12q\n\x12\x63hannel_references\x18\x01 \x03(\x0b\x32=.sift.rules.v1.CalculatedChannelConfig.ChannelReferencesEntryB\x03\xe0\x41\x02R\x11\x63hannelReferences\x12#\n\nexpression\x18\x02 \x01(\tB\x03\xe0\x41\x02R\nexpression\x1a\x65\n\x16\x43hannelReferencesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32\x1f.sift.rules.v1.ChannelReferenceR\x05value:\x02\x38\x01\"N\n\x10\x43hannelReference\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12!\n\tcomponent\x18\x02 \x01(\tB\x03\xe0\x41\x02R\tcomponent\"\xd0\x01\n\x17RuleActionConfiguration\x12T\n\x0cnotification\x18\x01 \x01(\x0b\x32..sift.rules.v1.NotificationActionConfigurationH\x00R\x0cnotification\x12N\n\nannotation\x18\x02 \x01(\x0b\x32,.sift.rules.v1.AnnotationActionConfigurationH\x00R\nannotationB\x0f\n\rconfiguration\"T\n\x1fNotificationActionConfiguration\x12\x31\n\x12recipient_user_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x10recipientUserIds\"\xd7\x01\n\x1d\x41nnotationActionConfiguration\x12\x1c\n\x07tag_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x06tagIds\x12L\n\x0f\x61nnotation_type\x18\x02 \x01(\x0e\x32#.sift.annotations.v1.AnnotationTypeR\x0e\x61nnotationType\x12\x32\n\x13\x61ssigned_to_user_id\x18\x03 \x01(\tH\x00R\x10\x61ssignedToUserId\x88\x01\x01\x42\x16\n\x14_assigned_to_user_id\"\x8a\x02\n\x14\x45valuateRulesRequest\x12\x1e\n\x08rule_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x07ruleIds\x12X\n\x12\x61nnotation_options\x18\x02 \x01(\x0b\x32).sift.rules.v1.EvaluatedAnnotationOptionsR\x11\x61nnotationOptions\x12\x17\n\x06run_id\x18\x03 \x01(\tH\x00R\x05runId\x12>\n\ntime_range\x18\x04 \x01(\x0b\x32\x1d.sift.rules.v1.TimeRangeQueryH\x00R\ttimeRange\x12\x17\n\x07\x64ry_run\x18\x05 \x01(\x08R\x06\x64ryRunB\x06\n\x04time\"5\n\x1a\x45valuatedAnnotationOptions\x12\x17\n\x07tag_ids\x18\x01 \x03(\tR\x06tagIds\"\x82\x01\n\x0eTimeRangeQuery\x12\x39\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\"\xa2\x01\n\x15\x45valuateRulesResponse\x12\x38\n\x18\x63reated_annotation_count\x18\x01 \x01(\x05R\x16\x63reatedAnnotationCount\x12O\n\x13\x64ry_run_annotations\x18\x02 \x03(\x0b\x32\x1f.sift.rules.v1.DryRunAnnotationR\x11\x64ryRunAnnotations\"\xbb\x01\n\x10\x44ryRunAnnotation\x12!\n\x0c\x63ondition_id\x18\x01 \x01(\tR\x0b\x63onditionId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x39\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime*\\\n\x0bSearchOrder\x12 \n\x18SEARCH_ORDER_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x14\n\x10SEARCH_ORDER_ASC\x10\x01\x12\x15\n\x11SEARCH_ORDER_DESC\x10\x02*O\n\nActionKind\x12\x1f\n\x17\x41\x43TION_KIND_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x10\n\x0cNOTIFICATION\x10\x01\x12\x0e\n\nANNOTATION\x10\x02*\xad\x01\n\x13\x43onditionComparator\x12(\n CONDITION_COMPARATOR_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\r\n\tLESS_THAN\x10\x01\x12\x16\n\x12LESS_THAN_OR_EQUAL\x10\x02\x12\x10\n\x0cGREATER_THAN\x10\x03\x12\x19\n\x15GREATER_THAN_OR_EQUAL\x10\x04\x12\t\n\x05\x45QUAL\x10\x05\x12\r\n\tNOT_EQUAL\x10\x06\x32\x9f\x14\n\x0bRuleService\x12\xb9\x01\n\x0bSearchRules\x12!.sift.rules.v1.SearchRulesRequest\x1a\".sift.rules.v1.SearchRulesResponse\"c\x92\x41\x41\x12\x0bSearchRules\x1a\x32Queries rules based on provided search parameters.\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/rules/search:\x01*\x12\x7f\n\x07GetRule\x12\x1d.sift.rules.v1.GetRuleRequest\x1a\x1e.sift.rules.v1.GetRuleResponse\"5\x92\x41\x1d\x12\x08GetRules\x1a\x11Retrieves a rule.\x82\xd3\xe4\x93\x02\x0f\x12\r/api/v1/rules\x12\xaa\x01\n\rBatchGetRules\x12#.sift.rules.v1.BatchGetRulesRequest\x1a$.sift.rules.v1.BatchGetRulesResponse\"N\x92\x41*\x12\rBatchGetRules\x1a\x19Retrieves multiple rules.\x82\xd3\xe4\x93\x02\x1b\"\x16/api/v1/rules:batchGet:\x01*\x12\x8b\x01\n\nCreateRule\x12 .sift.rules.v1.CreateRuleRequest\x1a!.sift.rules.v1.CreateRuleResponse\"8\x92\x41\x1d\x12\nCreateRule\x1a\x0f\x43reates a rule.\x82\xd3\xe4\x93\x02\x12\"\r/api/v1/rules:\x01*\x12\x95\x01\n\nUpdateRule\x12 .sift.rules.v1.UpdateRuleRequest\x1a!.sift.rules.v1.UpdateRuleResponse\"B\x92\x41\'\x12\nUpdateRule\x1a\x19Updates an existing rule.\x82\xd3\xe4\x93\x02\x12\x1a\r/api/v1/rules:\x01*\x12\x92\x01\n\nDeleteRule\x12 .sift.rules.v1.DeleteRuleRequest\x1a!.sift.rules.v1.DeleteRuleResponse\"?\x92\x41\x1d\x12\nDeleteRule\x1a\x0f\x44\x65letes a rule.\x82\xd3\xe4\x93\x02\x19\"\x14/api/v1/rules/delete:\x01*\x12\xdb\x01\n\rEvaluateRules\x12#.sift.rules.v1.EvaluateRulesRequest\x1a$.sift.rules.v1.EvaluateRulesResponse\"\x7f\x92\x41[\x12\rEvaluateRules\x1aJEvaluates the provided rules and generate annotations based on the result.\x82\xd3\xe4\x93\x02\x1b\"\x16/api/v1/rules/evaluate:\x01*\x12\x84\x02\n\x16ViewHumanFriendlyRules\x12,.sift.rules.v1.ViewHumanFriendlyRulesRequest\x1a-.sift.rules.v1.ViewHumanFriendlyRulesResponse\"\x8c\x01\x88\x02\x01\x92\x41_\x12\x16ViewHumanFriendlyRules\x1a\x45Retrieve a JSON object containing all of the rules for a given asset.\x82\xd3\xe4\x93\x02!\x12\x1f/api/v1/rules:viewHumanFriendly\x12\xd3\x01\n\rViewJsonRules\x12#.sift.rules.v1.ViewJsonRulesRequest\x1a$.sift.rules.v1.ViewJsonRulesResponse\"w\x92\x41V\x12\rViewJsonRules\x1a\x45Retrieve a JSON object containing all of the rules for a given asset.\x82\xd3\xe4\x93\x02\x18\x12\x16/api/v1/rules:viewJson\x12\x94\x02\n\x18UpdateHumanFriendlyRules\x12..sift.rules.v1.UpdateHumanFriendlyRulesRequest\x1a/.sift.rules.v1.UpdateHumanFriendlyRulesResponse\"\x96\x01\x88\x02\x01\x92\x41\x64\x12\x18UpdateHumanFriendlyRules\x1aHBatch update rules given the `rules_json` which is a JSON list of rules.\x82\xd3\xe4\x93\x02&\"!/api/v1/rules:updateHumanFriendly:\x01*\x12\xfd\x01\n\x11ValidateJsonRules\x12\'.sift.rules.v1.ValidateJsonRulesRequest\x1a(.sift.rules.v1.ValidateJsonRulesResponse\"\x94\x01\x92\x41l\x12\x11ValidateJsonRules\x1aWValidate a batch update for rules given the `rules_json` which is a JSON list of rules.\x82\xd3\xe4\x93\x02\x1f\"\x1a/api/v1/rules:validateJson:\x01*\x12\xe4\x01\n\x0fUpdateJsonRules\x12%.sift.rules.v1.UpdateJsonRulesRequest\x1a&.sift.rules.v1.UpdateJsonRulesResponse\"\x81\x01\x92\x41[\x12\x0fUpdateJsonRules\x1aHBatch update rules given the `rules_json` which is a JSON list of rules.\x82\xd3\xe4\x93\x02\x1d\"\x18/api/v1/rules:updateJson:\x01*\x1a\xb1\x01\x92\x41\xad\x01\x12\x30Service to programmatically interact with rules.\x1ay\n\x1fRead more about what rules are.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421102B\xb7\x01\n\x11\x63om.sift.rules.v1B\nRulesProtoP\x01Z-azimuth/gen/protos/go/sift/rules/v1;rulesv1pb\xa2\x02\x03SRX\xaa\x02\rSift.Rules.V1\xca\x02\rSift\\Rules\\V1\xe2\x02\x19Sift\\Rules\\V1\\GPBMetadata\xea\x02\x0fSift::Rules::V1\x92\x41\x10\x12\x0e\n\x0cRule Serviceb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -41,8 +41,6 @@ _globals['_RULE'].fields_by_name['name']._serialized_options = b'\340A\002' _globals['_RULE'].fields_by_name['description']._loaded_options = None _globals['_RULE'].fields_by_name['description']._serialized_options = b'\340A\002' - _globals['_RULE'].fields_by_name['current_status']._loaded_options = None - _globals['_RULE'].fields_by_name['current_status']._serialized_options = b'\340A\002' _globals['_RULE'].fields_by_name['is_enabled']._loaded_options = None _globals['_RULE'].fields_by_name['is_enabled']._serialized_options = b'\340A\002' _globals['_RULE'].fields_by_name['created_date']._loaded_options = None @@ -63,8 +61,6 @@ _globals['_RULECONDITION'].fields_by_name['rule_id']._serialized_options = b'\340A\002' _globals['_RULECONDITION'].fields_by_name['expression']._loaded_options = None _globals['_RULECONDITION'].fields_by_name['expression']._serialized_options = b'\340A\002' - _globals['_RULECONDITION'].fields_by_name['status']._loaded_options = None - _globals['_RULECONDITION'].fields_by_name['status']._serialized_options = b'\340A\002' _globals['_RULECONDITION'].fields_by_name['created_date']._loaded_options = None _globals['_RULECONDITION'].fields_by_name['created_date']._serialized_options = b'\340A\002' _globals['_RULECONDITION'].fields_by_name['modified_date']._loaded_options = None @@ -117,8 +113,6 @@ _globals['_UPDATERULEREQUEST'].fields_by_name['is_enabled']._serialized_options = b'\340A\002' _globals['_UPDATERULEREQUEST'].fields_by_name['conditions']._loaded_options = None _globals['_UPDATERULEREQUEST'].fields_by_name['conditions']._serialized_options = b'\340A\002' - _globals['_UPDATECONDITIONREQUEST'].fields_by_name['status']._loaded_options = None - _globals['_UPDATECONDITIONREQUEST'].fields_by_name['status']._serialized_options = b'\340A\002' _globals['_UPDATECONDITIONREQUEST'].fields_by_name['expression']._loaded_options = None _globals['_UPDATECONDITIONREQUEST'].fields_by_name['expression']._serialized_options = b'\340A\002' _globals['_UPDATECONDITIONREQUEST'].fields_by_name['actions']._loaded_options = None @@ -231,96 +225,98 @@ _globals['_RULESERVICE'].methods_by_name['ValidateJsonRules']._serialized_options = b'\222Al\022\021ValidateJsonRules\032WValidate a batch update for rules given the `rules_json` which is a JSON list of rules.\202\323\344\223\002\037\"\032/api/v1/rules:validateJson:\001*' _globals['_RULESERVICE'].methods_by_name['UpdateJsonRules']._loaded_options = None _globals['_RULESERVICE'].methods_by_name['UpdateJsonRules']._serialized_options = b'\222A[\022\017UpdateJsonRules\032HBatch update rules given the `rules_json` which is a JSON list of rules.\202\323\344\223\002\035\"\030/api/v1/rules:updateJson:\001*' - _globals['_SEARCHORDER']._serialized_start=6938 - _globals['_SEARCHORDER']._serialized_end=7030 - _globals['_ACTIONKIND']._serialized_start=7032 - _globals['_ACTIONKIND']._serialized_end=7111 - _globals['_CONDITIONCOMPARATOR']._serialized_start=7114 - _globals['_CONDITIONCOMPARATOR']._serialized_end=7287 + _globals['_SEARCHORDER']._serialized_start=7151 + _globals['_SEARCHORDER']._serialized_end=7243 + _globals['_ACTIONKIND']._serialized_start=7245 + _globals['_ACTIONKIND']._serialized_end=7324 + _globals['_CONDITIONCOMPARATOR']._serialized_start=7327 + _globals['_CONDITIONCOMPARATOR']._serialized_end=7500 _globals['_RULE']._serialized_start=228 - _globals['_RULE']._serialized_end=793 - _globals['_RULECONDITION']._serialized_start=796 - _globals['_RULECONDITION']._serialized_end=1294 - _globals['_RULEACTION']._serialized_start=1297 - _globals['_RULEACTION']._serialized_end=1789 - _globals['_SEARCHRULESREQUEST']._serialized_start=1792 - _globals['_SEARCHRULESREQUEST']._serialized_end=2137 - _globals['_SEARCHRULESRESPONSE']._serialized_start=2139 - _globals['_SEARCHRULESRESPONSE']._serialized_end=2235 - _globals['_GETRULEREQUEST']._serialized_start=2237 - _globals['_GETRULEREQUEST']._serialized_end=2283 - _globals['_GETRULERESPONSE']._serialized_start=2285 - _globals['_GETRULERESPONSE']._serialized_end=2348 - _globals['_BATCHGETRULESREQUEST']._serialized_start=2350 - _globals['_BATCHGETRULESREQUEST']._serialized_end=2404 - _globals['_BATCHGETRULESRESPONSE']._serialized_start=2406 - _globals['_BATCHGETRULESRESPONSE']._serialized_end=2477 - _globals['_CREATERULEREQUEST']._serialized_start=2479 - _globals['_CREATERULEREQUEST']._serialized_end=2561 - _globals['_CREATERULERESPONSE']._serialized_start=2563 - _globals['_CREATERULERESPONSE']._serialized_end=2613 - _globals['_UPDATERULEREQUEST']._serialized_start=2616 - _globals['_UPDATERULEREQUEST']._serialized_end=2926 - _globals['_UPDATECONDITIONREQUEST']._serialized_start=2929 - _globals['_UPDATECONDITIONREQUEST']._serialized_end=3197 - _globals['_UPDATEACTIONREQUEST']._serialized_start=3200 - _globals['_UPDATEACTIONREQUEST']._serialized_end=3431 - _globals['_UPDATERULERESPONSE']._serialized_start=3433 - _globals['_UPDATERULERESPONSE']._serialized_end=3483 - _globals['_DELETERULEREQUEST']._serialized_start=3485 - _globals['_DELETERULEREQUEST']._serialized_end=3534 - _globals['_DELETERULERESPONSE']._serialized_start=3536 - _globals['_DELETERULERESPONSE']._serialized_end=3556 - _globals['_VIEWHUMANFRIENDLYRULESREQUEST']._serialized_start=3558 - _globals['_VIEWHUMANFRIENDLYRULESREQUEST']._serialized_end=3625 - _globals['_VIEWHUMANFRIENDLYRULESRESPONSE']._serialized_start=3627 - _globals['_VIEWHUMANFRIENDLYRULESRESPONSE']._serialized_end=3699 - _globals['_UPDATEHUMANFRIENDLYRULESREQUEST']._serialized_start=3702 - _globals['_UPDATEHUMANFRIENDLYRULESREQUEST']._serialized_end=3853 - _globals['_UPDATEHUMANFRIENDLYRULESRESPONSE']._serialized_start=3856 - _globals['_UPDATEHUMANFRIENDLYRULESRESPONSE']._serialized_end=3996 - _globals['_VIEWJSONRULESREQUEST']._serialized_start=3998 - _globals['_VIEWJSONRULESREQUEST']._serialized_end=4052 - _globals['_VIEWJSONRULESRESPONSE']._serialized_start=4054 - _globals['_VIEWJSONRULESRESPONSE']._serialized_end=4113 - _globals['_JSONRULESREQUEST']._serialized_start=4116 - _globals['_JSONRULESREQUEST']._serialized_end=4248 - _globals['_JSONRULESRESPONSE']._serialized_start=4251 - _globals['_JSONRULESRESPONSE']._serialized_end=4572 - _globals['_VALIDATEJSONRULESREQUEST']._serialized_start=4574 - _globals['_VALIDATEJSONRULESREQUEST']._serialized_end=4664 - _globals['_VALIDATEJSONRULESRESPONSE']._serialized_start=4666 - _globals['_VALIDATEJSONRULESRESPONSE']._serialized_end=4760 - _globals['_UPDATEJSONRULESREQUEST']._serialized_start=4762 - _globals['_UPDATEJSONRULESREQUEST']._serialized_end=4850 - _globals['_UPDATEJSONRULESRESPONSE']._serialized_start=4852 - _globals['_UPDATEJSONRULESRESPONSE']._serialized_end=4944 - _globals['_RULECONDITIONEXPRESSION']._serialized_start=4947 - _globals['_RULECONDITIONEXPRESSION']._serialized_end=5187 - _globals['_SINGLECHANNELCOMPARISONEXPRESSION']._serialized_start=5190 - _globals['_SINGLECHANNELCOMPARISONEXPRESSION']._serialized_end=5521 - _globals['_LASTVALUETHRESHOLD']._serialized_start=5523 - _globals['_LASTVALUETHRESHOLD']._serialized_end=5543 - _globals['_CALCULATEDCHANNELCONFIG']._serialized_start=5546 - _globals['_CALCULATEDCHANNELCONFIG']._serialized_end=5826 - _globals['_CALCULATEDCHANNELCONFIG_CHANNELREFERENCESENTRY']._serialized_start=5725 - _globals['_CALCULATEDCHANNELCONFIG_CHANNELREFERENCESENTRY']._serialized_end=5826 - _globals['_CHANNELREFERENCE']._serialized_start=5828 - _globals['_CHANNELREFERENCE']._serialized_end=5906 - _globals['_RULEACTIONCONFIGURATION']._serialized_start=5909 - _globals['_RULEACTIONCONFIGURATION']._serialized_end=6117 - _globals['_NOTIFICATIONACTIONCONFIGURATION']._serialized_start=6119 - _globals['_NOTIFICATIONACTIONCONFIGURATION']._serialized_end=6203 - _globals['_ANNOTATIONACTIONCONFIGURATION']._serialized_start=6206 - _globals['_ANNOTATIONACTIONCONFIGURATION']._serialized_end=6421 - _globals['_EVALUATERULESREQUEST']._serialized_start=6424 - _globals['_EVALUATERULESREQUEST']._serialized_end=6665 - _globals['_EVALUATEDANNOTATIONOPTIONS']._serialized_start=6667 - _globals['_EVALUATEDANNOTATIONOPTIONS']._serialized_end=6720 - _globals['_TIMERANGEQUERY']._serialized_start=6723 - _globals['_TIMERANGEQUERY']._serialized_end=6853 - _globals['_EVALUATERULESRESPONSE']._serialized_start=6855 - _globals['_EVALUATERULESRESPONSE']._serialized_end=6936 - _globals['_RULESERVICE']._serialized_start=7290 - _globals['_RULESERVICE']._serialized_end=9881 + _globals['_RULE']._serialized_end=755 + _globals['_RULECONDITION']._serialized_start=758 + _globals['_RULECONDITION']._serialized_end=1233 + _globals['_RULEACTION']._serialized_start=1236 + _globals['_RULEACTION']._serialized_end=1728 + _globals['_SEARCHRULESREQUEST']._serialized_start=1731 + _globals['_SEARCHRULESREQUEST']._serialized_end=2076 + _globals['_SEARCHRULESRESPONSE']._serialized_start=2078 + _globals['_SEARCHRULESRESPONSE']._serialized_end=2174 + _globals['_GETRULEREQUEST']._serialized_start=2176 + _globals['_GETRULEREQUEST']._serialized_end=2222 + _globals['_GETRULERESPONSE']._serialized_start=2224 + _globals['_GETRULERESPONSE']._serialized_end=2287 + _globals['_BATCHGETRULESREQUEST']._serialized_start=2289 + _globals['_BATCHGETRULESREQUEST']._serialized_end=2343 + _globals['_BATCHGETRULESRESPONSE']._serialized_start=2345 + _globals['_BATCHGETRULESRESPONSE']._serialized_end=2416 + _globals['_CREATERULEREQUEST']._serialized_start=2418 + _globals['_CREATERULEREQUEST']._serialized_end=2500 + _globals['_CREATERULERESPONSE']._serialized_start=2502 + _globals['_CREATERULERESPONSE']._serialized_end=2552 + _globals['_UPDATERULEREQUEST']._serialized_start=2555 + _globals['_UPDATERULEREQUEST']._serialized_end=2865 + _globals['_UPDATECONDITIONREQUEST']._serialized_start=2868 + _globals['_UPDATECONDITIONREQUEST']._serialized_end=3113 + _globals['_UPDATEACTIONREQUEST']._serialized_start=3116 + _globals['_UPDATEACTIONREQUEST']._serialized_end=3347 + _globals['_UPDATERULERESPONSE']._serialized_start=3349 + _globals['_UPDATERULERESPONSE']._serialized_end=3399 + _globals['_DELETERULEREQUEST']._serialized_start=3401 + _globals['_DELETERULEREQUEST']._serialized_end=3450 + _globals['_DELETERULERESPONSE']._serialized_start=3452 + _globals['_DELETERULERESPONSE']._serialized_end=3472 + _globals['_VIEWHUMANFRIENDLYRULESREQUEST']._serialized_start=3474 + _globals['_VIEWHUMANFRIENDLYRULESREQUEST']._serialized_end=3541 + _globals['_VIEWHUMANFRIENDLYRULESRESPONSE']._serialized_start=3543 + _globals['_VIEWHUMANFRIENDLYRULESRESPONSE']._serialized_end=3615 + _globals['_UPDATEHUMANFRIENDLYRULESREQUEST']._serialized_start=3618 + _globals['_UPDATEHUMANFRIENDLYRULESREQUEST']._serialized_end=3769 + _globals['_UPDATEHUMANFRIENDLYRULESRESPONSE']._serialized_start=3772 + _globals['_UPDATEHUMANFRIENDLYRULESRESPONSE']._serialized_end=3912 + _globals['_VIEWJSONRULESREQUEST']._serialized_start=3914 + _globals['_VIEWJSONRULESREQUEST']._serialized_end=3968 + _globals['_VIEWJSONRULESRESPONSE']._serialized_start=3970 + _globals['_VIEWJSONRULESRESPONSE']._serialized_end=4029 + _globals['_JSONRULESREQUEST']._serialized_start=4032 + _globals['_JSONRULESREQUEST']._serialized_end=4164 + _globals['_JSONRULESRESPONSE']._serialized_start=4167 + _globals['_JSONRULESRESPONSE']._serialized_end=4488 + _globals['_VALIDATEJSONRULESREQUEST']._serialized_start=4490 + _globals['_VALIDATEJSONRULESREQUEST']._serialized_end=4580 + _globals['_VALIDATEJSONRULESRESPONSE']._serialized_start=4582 + _globals['_VALIDATEJSONRULESRESPONSE']._serialized_end=4676 + _globals['_UPDATEJSONRULESREQUEST']._serialized_start=4678 + _globals['_UPDATEJSONRULESREQUEST']._serialized_end=4766 + _globals['_UPDATEJSONRULESRESPONSE']._serialized_start=4768 + _globals['_UPDATEJSONRULESRESPONSE']._serialized_end=4860 + _globals['_RULECONDITIONEXPRESSION']._serialized_start=4863 + _globals['_RULECONDITIONEXPRESSION']._serialized_end=5103 + _globals['_SINGLECHANNELCOMPARISONEXPRESSION']._serialized_start=5106 + _globals['_SINGLECHANNELCOMPARISONEXPRESSION']._serialized_end=5437 + _globals['_LASTVALUETHRESHOLD']._serialized_start=5439 + _globals['_LASTVALUETHRESHOLD']._serialized_end=5459 + _globals['_CALCULATEDCHANNELCONFIG']._serialized_start=5462 + _globals['_CALCULATEDCHANNELCONFIG']._serialized_end=5742 + _globals['_CALCULATEDCHANNELCONFIG_CHANNELREFERENCESENTRY']._serialized_start=5641 + _globals['_CALCULATEDCHANNELCONFIG_CHANNELREFERENCESENTRY']._serialized_end=5742 + _globals['_CHANNELREFERENCE']._serialized_start=5744 + _globals['_CHANNELREFERENCE']._serialized_end=5822 + _globals['_RULEACTIONCONFIGURATION']._serialized_start=5825 + _globals['_RULEACTIONCONFIGURATION']._serialized_end=6033 + _globals['_NOTIFICATIONACTIONCONFIGURATION']._serialized_start=6035 + _globals['_NOTIFICATIONACTIONCONFIGURATION']._serialized_end=6119 + _globals['_ANNOTATIONACTIONCONFIGURATION']._serialized_start=6122 + _globals['_ANNOTATIONACTIONCONFIGURATION']._serialized_end=6337 + _globals['_EVALUATERULESREQUEST']._serialized_start=6340 + _globals['_EVALUATERULESREQUEST']._serialized_end=6606 + _globals['_EVALUATEDANNOTATIONOPTIONS']._serialized_start=6608 + _globals['_EVALUATEDANNOTATIONOPTIONS']._serialized_end=6661 + _globals['_TIMERANGEQUERY']._serialized_start=6664 + _globals['_TIMERANGEQUERY']._serialized_end=6794 + _globals['_EVALUATERULESRESPONSE']._serialized_start=6797 + _globals['_EVALUATERULESRESPONSE']._serialized_end=6959 + _globals['_DRYRUNANNOTATION']._serialized_start=6962 + _globals['_DRYRUNANNOTATION']._serialized_end=7149 + _globals['_RULESERVICE']._serialized_start=7503 + _globals['_RULESERVICE']._serialized_end=10094 # @@protoc_insertion_point(module_scope) diff --git a/python/lib/sift/rules/v1/rules_pb2.pyi b/python/lib/sift/rules/v1/rules_pb2.pyi index 0ece5040..18228260 100644 --- a/python/lib/sift/rules/v1/rules_pb2.pyi +++ b/python/lib/sift/rules/v1/rules_pb2.pyi @@ -95,7 +95,6 @@ class Rule(google.protobuf.message.Message): ASSET_ID_FIELD_NUMBER: builtins.int NAME_FIELD_NUMBER: builtins.int DESCRIPTION_FIELD_NUMBER: builtins.int - CURRENT_STATUS_FIELD_NUMBER: builtins.int IS_ENABLED_FIELD_NUMBER: builtins.int CREATED_DATE_FIELD_NUMBER: builtins.int MODIFIED_DATE_FIELD_NUMBER: builtins.int @@ -107,7 +106,6 @@ class Rule(google.protobuf.message.Message): asset_id: builtins.str name: builtins.str description: builtins.str - current_status: builtins.str is_enabled: builtins.bool created_by_user_id: builtins.str modified_by_user_id: builtins.str @@ -125,7 +123,6 @@ class Rule(google.protobuf.message.Message): asset_id: builtins.str = ..., name: builtins.str = ..., description: builtins.str = ..., - current_status: builtins.str = ..., is_enabled: builtins.bool = ..., created_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., modified_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., @@ -135,7 +132,7 @@ class Rule(google.protobuf.message.Message): conditions: collections.abc.Iterable[global___RuleCondition] | None = ..., ) -> None: ... def HasField(self, field_name: typing.Literal["created_date", b"created_date", "modified_date", b"modified_date"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["asset_id", b"asset_id", "conditions", b"conditions", "created_by_user_id", b"created_by_user_id", "created_date", b"created_date", "current_status", b"current_status", "description", b"description", "is_enabled", b"is_enabled", "modified_by_user_id", b"modified_by_user_id", "modified_date", b"modified_date", "name", b"name", "organization_id", b"organization_id", "rule_id", b"rule_id"]) -> None: ... + def ClearField(self, field_name: typing.Literal["asset_id", b"asset_id", "conditions", b"conditions", "created_by_user_id", b"created_by_user_id", "created_date", b"created_date", "description", b"description", "is_enabled", b"is_enabled", "modified_by_user_id", b"modified_by_user_id", "modified_date", b"modified_date", "name", b"name", "organization_id", b"organization_id", "rule_id", b"rule_id"]) -> None: ... global___Rule = Rule @@ -146,7 +143,6 @@ class RuleCondition(google.protobuf.message.Message): RULE_CONDITION_ID_FIELD_NUMBER: builtins.int RULE_ID_FIELD_NUMBER: builtins.int EXPRESSION_FIELD_NUMBER: builtins.int - STATUS_FIELD_NUMBER: builtins.int CREATED_DATE_FIELD_NUMBER: builtins.int MODIFIED_DATE_FIELD_NUMBER: builtins.int CREATED_BY_USER_ID_FIELD_NUMBER: builtins.int @@ -154,7 +150,6 @@ class RuleCondition(google.protobuf.message.Message): ACTIONS_FIELD_NUMBER: builtins.int rule_condition_id: builtins.str rule_id: builtins.str - status: builtins.str created_by_user_id: builtins.str modified_by_user_id: builtins.str @property @@ -171,7 +166,6 @@ class RuleCondition(google.protobuf.message.Message): rule_condition_id: builtins.str = ..., rule_id: builtins.str = ..., expression: global___RuleConditionExpression | None = ..., - status: builtins.str = ..., created_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., modified_date: google.protobuf.timestamp_pb2.Timestamp | None = ..., created_by_user_id: builtins.str = ..., @@ -179,7 +173,7 @@ class RuleCondition(google.protobuf.message.Message): actions: collections.abc.Iterable[global___RuleAction] | None = ..., ) -> None: ... def HasField(self, field_name: typing.Literal["created_date", b"created_date", "expression", b"expression", "modified_date", b"modified_date"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["actions", b"actions", "created_by_user_id", b"created_by_user_id", "created_date", b"created_date", "expression", b"expression", "modified_by_user_id", b"modified_by_user_id", "modified_date", b"modified_date", "rule_condition_id", b"rule_condition_id", "rule_id", b"rule_id", "status", b"status"]) -> None: ... + def ClearField(self, field_name: typing.Literal["actions", b"actions", "created_by_user_id", b"created_by_user_id", "created_date", b"created_date", "expression", b"expression", "modified_by_user_id", b"modified_by_user_id", "modified_date", b"modified_date", "rule_condition_id", b"rule_condition_id", "rule_id", b"rule_id"]) -> None: ... global___RuleCondition = RuleCondition @@ -436,11 +430,9 @@ class UpdateConditionRequest(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor RULE_CONDITION_ID_FIELD_NUMBER: builtins.int - STATUS_FIELD_NUMBER: builtins.int EXPRESSION_FIELD_NUMBER: builtins.int ACTIONS_FIELD_NUMBER: builtins.int rule_condition_id: builtins.str - status: builtins.str @property def expression(self) -> global___RuleConditionExpression: ... @property @@ -449,12 +441,11 @@ class UpdateConditionRequest(google.protobuf.message.Message): self, *, rule_condition_id: builtins.str | None = ..., - status: builtins.str = ..., expression: global___RuleConditionExpression | None = ..., actions: collections.abc.Iterable[global___UpdateActionRequest] | None = ..., ) -> None: ... def HasField(self, field_name: typing.Literal["_rule_condition_id", b"_rule_condition_id", "expression", b"expression", "rule_condition_id", b"rule_condition_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["_rule_condition_id", b"_rule_condition_id", "actions", b"actions", "expression", b"expression", "rule_condition_id", b"rule_condition_id", "status", b"status"]) -> None: ... + def ClearField(self, field_name: typing.Literal["_rule_condition_id", b"_rule_condition_id", "actions", b"actions", "expression", b"expression", "rule_condition_id", b"rule_condition_id"]) -> None: ... def WhichOneof(self, oneof_group: typing.Literal["_rule_condition_id", b"_rule_condition_id"]) -> typing.Literal["rule_condition_id"] | None: ... global___UpdateConditionRequest = UpdateConditionRequest @@ -944,7 +935,9 @@ class EvaluateRulesRequest(google.protobuf.message.Message): ANNOTATION_OPTIONS_FIELD_NUMBER: builtins.int RUN_ID_FIELD_NUMBER: builtins.int TIME_RANGE_FIELD_NUMBER: builtins.int + DRY_RUN_FIELD_NUMBER: builtins.int run_id: builtins.str + dry_run: builtins.bool @property def rule_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ... @property @@ -958,9 +951,10 @@ class EvaluateRulesRequest(google.protobuf.message.Message): annotation_options: global___EvaluatedAnnotationOptions | None = ..., run_id: builtins.str = ..., time_range: global___TimeRangeQuery | None = ..., + dry_run: builtins.bool = ..., ) -> None: ... def HasField(self, field_name: typing.Literal["annotation_options", b"annotation_options", "run_id", b"run_id", "time", b"time", "time_range", b"time_range"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["annotation_options", b"annotation_options", "rule_ids", b"rule_ids", "run_id", b"run_id", "time", b"time", "time_range", b"time_range"]) -> None: ... + def ClearField(self, field_name: typing.Literal["annotation_options", b"annotation_options", "dry_run", b"dry_run", "rule_ids", b"rule_ids", "run_id", b"run_id", "time", b"time", "time_range", b"time_range"]) -> None: ... def WhichOneof(self, oneof_group: typing.Literal["time", b"time"]) -> typing.Literal["run_id", "time_range"] | None: ... global___EvaluateRulesRequest = EvaluateRulesRequest @@ -1007,12 +1001,45 @@ class EvaluateRulesResponse(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor CREATED_ANNOTATION_COUNT_FIELD_NUMBER: builtins.int + DRY_RUN_ANNOTATIONS_FIELD_NUMBER: builtins.int created_annotation_count: builtins.int + @property + def dry_run_annotations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DryRunAnnotation]: + """If dry_run is true, this will be populated with the annotations that would be created""" + def __init__( self, *, created_annotation_count: builtins.int = ..., + dry_run_annotations: collections.abc.Iterable[global___DryRunAnnotation] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing.Literal["created_annotation_count", b"created_annotation_count"]) -> None: ... + def ClearField(self, field_name: typing.Literal["created_annotation_count", b"created_annotation_count", "dry_run_annotations", b"dry_run_annotations"]) -> None: ... global___EvaluateRulesResponse = EvaluateRulesResponse + +@typing.final +class DryRunAnnotation(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + + CONDITION_ID_FIELD_NUMBER: builtins.int + NAME_FIELD_NUMBER: builtins.int + START_TIME_FIELD_NUMBER: builtins.int + END_TIME_FIELD_NUMBER: builtins.int + condition_id: builtins.str + name: builtins.str + @property + def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + @property + def end_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ... + def __init__( + self, + *, + condition_id: builtins.str = ..., + name: builtins.str = ..., + start_time: google.protobuf.timestamp_pb2.Timestamp | None = ..., + end_time: google.protobuf.timestamp_pb2.Timestamp | None = ..., + ) -> None: ... + def HasField(self, field_name: typing.Literal["end_time", b"end_time", "start_time", b"start_time"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["condition_id", b"condition_id", "end_time", b"end_time", "name", b"name", "start_time", b"start_time"]) -> None: ... + +global___DryRunAnnotation = DryRunAnnotation diff --git a/scripts/gen.sh b/scripts/gen.sh index 4ef7d973..2dab55aa 100755 --- a/scripts/gen.sh +++ b/scripts/gen.sh @@ -44,9 +44,9 @@ err_and_exit() { } gen_python_modules() { - local python_gen_dir = "python/gen" - local python_lib - "python/lib" - local sift_py - "python/lib/sift_py" + local python_gen_dir="python/gen" + local python_lib="python/lib" + local sift_py="python/lib/sift_py" if [[ ! -d "$python_gen_dir" ]]; then err_and_exit "The '$python_gen_dir' directory could not be located. Failed to generate python modules." @@ -60,6 +60,7 @@ gen_python_modules() { touch "$init_py" fi done + rm "$python_lib/__init__.py" mv $sift_py $python_gen_dir rm -rf $python_lib