diff --git a/CHANGELOG.md b/CHANGELOG.md index df4e08e..d83e1ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog Hiber API +### 0.203 (2024-07-30) + +##### AssignmentService + +- Added device to asset assignment in addition to asset to device. They are essentially the same and will be output in the default asset to device format. + - Added `Assignment.to_asset`, `Assign.Request.to_asset` and `Unassign.Request.from_asset` to support the device to asset assignment. + +##### CertificateService + +- Marked `ca_certificate_name` and `ca_certificate_id` in `Certificate` as optional. + +##### MQTTService + +- We now enforce the use of `mqtts://` for new MQTT integrations. + - Added `override_url_validation` to `CreateMQTTPublisherRequest` and `UpdateMQTTPublisherRequest` override this if necessary. + ### 0.198 (2024-06-25) ##### AssetService diff --git a/assignment.proto b/assignment.proto index 974d1c5..cacb1ab 100644 --- a/assignment.proto +++ b/assignment.proto @@ -124,6 +124,7 @@ message Assignment { string to_modem = 2; ModemMessageBodyParserAssignment to_parser = 4; tag.Tag to_tag = 7; + string to_asset = 11; } } @@ -191,6 +192,7 @@ message Assign { oneof to { modem.ModemSelection to_modems = 5; tag.TagSelection to_tags = 8; + asset.AssetSelection to_assets = 12; } /* The alarm parameters, by alarm identifier, if any, overriding any default values in the alarm(s). */ @@ -236,6 +238,7 @@ message Unassign { oneof from { modem.ModemSelection from_modems = 5; tag.TagSelection from_tags = 7; + asset.AssetSelection from_assets = 11; } /* Time that the assignment ended. diff --git a/certificate.proto b/certificate.proto index d777e98..7ec5d40 100644 --- a/certificate.proto +++ b/certificate.proto @@ -21,8 +21,8 @@ message Certificate { string name = 2; BytesOrHex certificate = 3; bool has_private_key = 4; - string ca_certificate_name = 5; - int64 ca_certificate_id = 6; + optional string ca_certificate_name = 5; + optional int64 ca_certificate_id = 6; } message CertificateSelection { diff --git a/docs/html/assignment.html b/docs/html/assignment.html index b8cf54d..14acd2c 100644 --- a/docs/html/assignment.html +++ b/docs/html/assignment.html @@ -1308,6 +1308,13 @@

Assign.Request

+ + to_assets + hiber.asset.AssetSelection + +

+ + alarm_parameters Assign.Request.AlarmParametersEntry @@ -1487,6 +1494,13 @@

Assignment

+ + to_asset + string + +

+ + @@ -2702,6 +2716,13 @@

Unassign.Request

+ + from_assets + hiber.asset.AssetSelection + +

+ + override_time hiber.Timestamp diff --git a/docs/html/certificate.html b/docs/html/certificate.html index 88d4a25..e95b6cf 100644 --- a/docs/html/certificate.html +++ b/docs/html/certificate.html @@ -496,14 +496,14 @@

Certificate

ca_certificate_name string - + optional

ca_certificate_id int64 - + optional

diff --git a/docs/html/event.html b/docs/html/event.html index 9af6e5f..17d5be9 100644 --- a/docs/html/event.html +++ b/docs/html/event.html @@ -7844,6 +7844,13 @@

Assign.Request

+ + to_assets + hiber.asset.AssetSelection + +

+ + alarm_parameters Assign.Request.AlarmParametersEntry @@ -8023,6 +8030,13 @@

Assignment

+ + to_asset + string + +

+ + @@ -9238,6 +9252,13 @@

Unassign.Request

+ + from_assets + hiber.asset.AssetSelection + +

+ + override_time hiber.Timestamp @@ -13535,6 +13556,13 @@

CreateMQTTPublisherRe

+ + override_url_validation + bool + optional +

Set this flag to not parse the url or enforce mqtts.

+ + @@ -14475,6 +14503,13 @@

UpdateMQTTPublisherRe

Deprecated.

+ + override_url_validation + bool + optional +

Set this flag to not parse the url or enforce mqtts.

+ + diff --git a/docs/html/integration_mqtt.html b/docs/html/integration_mqtt.html index 67855b7..3598708 100644 --- a/docs/html/integration_mqtt.html +++ b/docs/html/integration_mqtt.html @@ -700,6 +700,13 @@

CreateMQTTPublisherRe

+ + override_url_validation + bool + optional +

Set this flag to not parse the url or enforce mqtts.

+ + @@ -1640,6 +1647,13 @@

UpdateMQTTPublisherRe

Deprecated.

+ + override_url_validation + bool + optional +

Set this flag to not parse the url or enforce mqtts.

+ + diff --git a/docs/html/publisher.html b/docs/html/publisher.html index 54716ec..9311762 100644 --- a/docs/html/publisher.html +++ b/docs/html/publisher.html @@ -4426,6 +4426,13 @@

CreateMQTTPublisherRe

+ + override_url_validation + bool + optional +

Set this flag to not parse the url or enforce mqtts.

+ + @@ -5366,6 +5373,13 @@

UpdateMQTTPublisherRe

Deprecated.

+ + override_url_validation + bool + optional +

Set this flag to not parse the url or enforce mqtts.

+ + diff --git a/docs/md/assignment.md b/docs/md/assignment.md index a4f3c5f..166ae7e 100644 --- a/docs/md/assignment.md +++ b/docs/md/assignment.md @@ -301,6 +301,7 @@ Add assignments. | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **assign**.assign_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_modems | [ hiber.modem.ModemSelection](#hibermodemmodemselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_tags | [ hiber.tag.TagSelection](#hibertagtagselection) | | +| [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | alarm_parameters | [map Assign.Request.AlarmParametersEntry](#assignrequestalarmparametersentry) | The alarm parameters, by alarm identifier, if any, overriding any default values in the alarm(s). | | **optional** override_time | [optional hiber.Timestamp](#hibertimestamp) | Time that the assignment should be active. This sets the assignment to start in the past, but would not have effect in the past for assignments like parsers and alarms (they will only be triggered for new messages / values). It would however work for assets having access to device data. This is not allowed to be a value in the future at the moment. | | **optional** end_time | [optional hiber.Timestamp](#hibertimestamp) | Time that the assignment ended. This marks the assignment as ended at the given moment in the past, but would not have effect in the past for assignments like parsers and alarms (i.e. no alarm events are removed). It would however work for assets having access to device data. This is not allowed to be a value in the future at the moment. | @@ -353,6 +354,7 @@ Assignments that are no longer active (end time is in the past) and that no long | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_modem | [ string](#string) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_parser | [ Assignment.ModemMessageBodyParserAssignment](#assignmentmodemmessagebodyparserassignment) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_tag | [ hiber.tag.Tag](#hibertagtag) | | +| [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_asset | [ string](#string) | | ### Assignment.ModemAlarmAssignment @@ -663,6 +665,7 @@ Remove a assignment. | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **unassign**.unassign_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **from**.from_modems | [ hiber.modem.ModemSelection](#hibermodemmodemselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **from**.from_tags | [ hiber.tag.TagSelection](#hibertagtagselection) | | +| [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **from**.from_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | **optional** override_time | [optional hiber.Timestamp](#hibertimestamp) | Time that the assignment ended. This marks the assignment as ended at the given moment in the past, but would not have effect in the past for assignments like parsers and alarms (i.e. no alarm events are removed). It would however work for assets having access to device data. This is not allowed to be a value in the future at the moment. | ### Unassign.Response diff --git a/docs/md/certificate.md b/docs/md/certificate.md index 27d5247..58c06cc 100644 --- a/docs/md/certificate.md +++ b/docs/md/certificate.md @@ -120,8 +120,8 @@ | name | [ string](#string) | | | certificate | [ hiber.BytesOrHex](#hiberbytesorhex) | | | has_private_key | [ bool](#bool) | | -| ca_certificate_name | [ string](#string) | | -| ca_certificate_id | [ int64](#int64) | | +| **optional** ca_certificate_name | [optional string](#string) | | +| **optional** ca_certificate_id | [optional int64](#int64) | | ### CertificateSelection diff --git a/docs/md/event.md b/docs/md/event.md index 77fb8d6..7c86e72 100644 --- a/docs/md/event.md +++ b/docs/md/event.md @@ -1777,6 +1777,7 @@ Add assignments. | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **assign**.assign_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_modems | [ hiber.modem.ModemSelection](#hibermodemmodemselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_tags | [ hiber.tag.TagSelection](#hibertagtagselection) | | +| [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | alarm_parameters | [map hiber.assign.Assign.Request.AlarmParametersEntry](#hiberassignassignrequestalarmparametersentry) | The alarm parameters, by alarm identifier, if any, overriding any default values in the alarm(s). | | **optional** override_time | [optional hiber.Timestamp](#hibertimestamp) | Time that the assignment should be active. This sets the assignment to start in the past, but would not have effect in the past for assignments like parsers and alarms (they will only be triggered for new messages / values). It would however work for assets having access to device data. This is not allowed to be a value in the future at the moment. | | **optional** end_time | [optional hiber.Timestamp](#hibertimestamp) | Time that the assignment ended. This marks the assignment as ended at the given moment in the past, but would not have effect in the past for assignments like parsers and alarms (i.e. no alarm events are removed). It would however work for assets having access to device data. This is not allowed to be a value in the future at the moment. | @@ -1829,6 +1830,7 @@ Assignments that are no longer active (end time is in the past) and that no long | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_modem | [ string](#string) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_parser | [ hiber.assign.Assignment.ModemMessageBodyParserAssignment](#hiberassignassignmentmodemmessagebodyparserassignment) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_tag | [ hiber.tag.Tag](#hibertagtag) | | +| [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **to**.to_asset | [ string](#string) | | ### hiber.assign.Assignment.ModemAlarmAssignment @@ -2139,6 +2141,7 @@ Remove a assignment. | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **unassign**.unassign_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **from**.from_modems | [ hiber.modem.ModemSelection](#hibermodemmodemselection) | | | [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **from**.from_tags | [ hiber.tag.TagSelection](#hibertagtagselection) | | +| [**oneof**](https://developers.google.com/protocol-buffers/docs/proto3#oneof) **from**.from_assets | [ hiber.asset.AssetSelection](#hiberassetassetselection) | | | **optional** override_time | [optional hiber.Timestamp](#hibertimestamp) | Time that the assignment ended. This marks the assignment as ended at the given moment in the past, but would not have effect in the past for assignments like parsers and alarms (i.e. no alarm events are removed). It would however work for assets having access to device data. This is not allowed to be a value in the future at the moment. | ### hiber.assign.Unassign.Response @@ -2607,6 +2610,7 @@ so not all messages listed here are referenced.) | **optional** server_ca_certificate_id | [optional int64](#int64) | Server CA certificate to use when connecting to the MQTT server. | | **optional** disabled | [optional bool](#bool) | Disable the MQTT publisher after creation, so it needs to be enabled before it is active. | | tags | [repeated int64](#int64) | | +| **optional** override_url_validation | [optional bool](#bool) | Set this flag to not parse the url or enforce mqtts. | ### hiber.integration.mqtt.DeleteMQTTPublisherRequest @@ -2818,6 +2822,7 @@ Health configuration for the mqtt integration. Defines how the health is calcula | **optional** health_warning_period | [optional hiber.Duration](#hiberduration) | Period to consider when determining health from warning events. Warning events cannot be resolved. Set this to 0 to disable warnings based on failure percentage. | | **optional** health_warning_failure_percentage | [optional uint32](#uint32) | Allowed percentage of call failures. If the failure percentage is higher, within the warning period, the health is switched to WARNING. | | **optional** deprecated_health_warning_failure_percentage | [optional hiber.UpdateZeroableInt](#hiberupdatezeroableint) | Deprecated. | +| **optional** override_url_validation | [optional bool](#bool) | Set this flag to not parse the url or enforce mqtts. | ### hiber.integration.mqtt.UpdateMQTTPublisherTagsRequest diff --git a/docs/md/integration_mqtt.md b/docs/md/integration_mqtt.md index 52dc51a..e473301 100644 --- a/docs/md/integration_mqtt.md +++ b/docs/md/integration_mqtt.md @@ -174,6 +174,7 @@ | **optional** server_ca_certificate_id | [optional int64](#int64) | Server CA certificate to use when connecting to the MQTT server. | | **optional** disabled | [optional bool](#bool) | Disable the MQTT publisher after creation, so it needs to be enabled before it is active. | | tags | [repeated int64](#int64) | | +| **optional** override_url_validation | [optional bool](#bool) | Set this flag to not parse the url or enforce mqtts. | ### DeleteMQTTPublisherRequest @@ -385,6 +386,7 @@ Health configuration for the mqtt integration. Defines how the health is calcula | **optional** health_warning_period | [optional hiber.Duration](#hiberduration) | Period to consider when determining health from warning events. Warning events cannot be resolved. Set this to 0 to disable warnings based on failure percentage. | | **optional** health_warning_failure_percentage | [optional uint32](#uint32) | Allowed percentage of call failures. If the failure percentage is higher, within the warning period, the health is switched to WARNING. | | **optional** deprecated_health_warning_failure_percentage | [optional hiber.UpdateZeroableInt](#hiberupdatezeroableint) | Deprecated. | +| **optional** override_url_validation | [optional bool](#bool) | Set this flag to not parse the url or enforce mqtts. | ### UpdateMQTTPublisherTagsRequest diff --git a/docs/md/publisher.md b/docs/md/publisher.md index fcf5c9a..aff93d2 100644 --- a/docs/md/publisher.md +++ b/docs/md/publisher.md @@ -492,6 +492,7 @@ so not all messages listed here are referenced.) | **optional** server_ca_certificate_id | [optional int64](#int64) | Server CA certificate to use when connecting to the MQTT server. | | **optional** disabled | [optional bool](#bool) | Disable the MQTT publisher after creation, so it needs to be enabled before it is active. | | tags | [repeated int64](#int64) | | +| **optional** override_url_validation | [optional bool](#bool) | Set this flag to not parse the url or enforce mqtts. | ### hiber.integration.mqtt.DeleteMQTTPublisherRequest @@ -703,6 +704,7 @@ Health configuration for the mqtt integration. Defines how the health is calcula | **optional** health_warning_period | [optional hiber.Duration](#hiberduration) | Period to consider when determining health from warning events. Warning events cannot be resolved. Set this to 0 to disable warnings based on failure percentage. | | **optional** health_warning_failure_percentage | [optional uint32](#uint32) | Allowed percentage of call failures. If the failure percentage is higher, within the warning period, the health is switched to WARNING. | | **optional** deprecated_health_warning_failure_percentage | [optional hiber.UpdateZeroableInt](#hiberupdatezeroableint) | Deprecated. | +| **optional** override_url_validation | [optional bool](#bool) | Set this flag to not parse the url or enforce mqtts. | ### hiber.integration.mqtt.UpdateMQTTPublisherTagsRequest diff --git a/integration_mqtt.proto b/integration_mqtt.proto index f1164bc..cda462b 100644 --- a/integration_mqtt.proto +++ b/integration_mqtt.proto @@ -234,6 +234,9 @@ message CreateMQTTPublisherRequest { repeated int64 tags = 20; + /* Set this flag to not parse the url or enforce mqtts. */ + optional bool override_url_validation = 22; + reserved 19; } @@ -321,6 +324,9 @@ message UpdateMQTTPublisherRequest { */ optional uint32 health_warning_failure_percentage = 34; optional UpdateZeroableInt deprecated_health_warning_failure_percentage = 22 [deprecated = true]; + + /* Set this flag to not parse the url or enforce mqtts. */ + optional bool override_url_validation = 35; } message UpdateMQTTPublisherTagsRequest {