Compare commits

...

161 Commits

Author SHA1 Message Date
091909e8ea Bump version to 4.6.0-test.1 2023-10-26 15:38:37 +01:00
fefa4f8be9 Re-generate API code. 2023-10-26 15:38:37 +01:00
d38062aebd Add preamble and no_crc fields to LoraModulationInfo. 2023-10-26 15:38:37 +01:00
da30e3db96 Remove trailing whitespace in toml config. (#308) 2023-10-25 10:00:20 +01:00
0481b1a5e3 Log full codec error. 2023-10-24 15:21:44 +01:00
3d4455b968 Improve log output.
This improves the log output on the following points:

In case when .context(...) is used, the error printed in the logs would
only show the outer error. This has been improved to show the complete
chain of errors.

In many cases error! and warn! logs were used for logging related to
user input. This is very inconvenient when using log output for
monitoring as it can trigger alerts based on end-user mistakes. While
refactoring the logs, the following criteria has been used:

* error = Messages that need attention and that are within the domain
  of the ChirpStack administrator.
* warn = Messages that should stand out of the other log messages, but
  that might be end-user (or end-device) related. Depending on if you
  have control of the full chain or not, you might or might not want to
  be alerted based on these messages.

Tracing spans have been improved to make it easier to correlate between
log messages and events.
2023-10-24 11:21:20 +01:00
dc5be942d4 api: Re-generate API code. 2023-10-19 17:12:19 +01:00
a087c4c18b Add tags to tenants and applications.
Note that the integration events will contain the application +
device-profile + device tags. Integration events will NOT contain the
tenant tags. Most likely tenant tags will be used to store information
about the tenant, data that is unrelated to the integration events.

Fixes #211.
2023-10-19 17:11:50 +01:00
c7e586a326 Speed up user authorization validation queries.
This is related to the previous commit. This commit refactors the
queries in case of user tokens.
2023-10-18 12:11:06 +01:00
ce5b9fbfd0 Speed up API authorization validation queries.
Using sub-queries, the amount of potentially selected records is
reduced. As well the joins on api_key.tenant_id causes (or might
cause) seq scans, because api_key.tenant_id is nullable.
2023-10-17 14:25:48 +01:00
4e0331dbf4 backend: Add async test with 204 response.
Some NSes might return a 204 instead of a 200 response. This tests makes
sure that this possible behavior is captured in a test.
2023-10-16 15:00:12 +01:00
1f64212923 api: Regenerate API SDKs. 2023-10-16 12:25:53 +01:00
a9e1f02f0f Fix clippy warnings & errors after Rust update. 2023-10-16 12:18:45 +01:00
b4845b5613 api: Rename time to gw_time. Add ns_time.
The gw_time defines the RX time by the gateway, the ns_time defines when
it was received by the NS. The latter could for example help to debug
latency between the GW <> NS.
2023-10-16 12:11:57 +01:00
31ffb30201 api: Update build image to Rust 1.73.0. 2023-10-16 11:43:31 +01:00
ac698495d8 Update Rust to v1.73.0. 2023-10-16 11:30:01 +01:00
c82bfa5a72 api: Ignore unknown fields (Rust JSON decode).
The JSON encoding should only be used for debugging purposes! However
this change avoids showing errors in case there are unknown fields in the
JSON payload. This would happen when for example the MQTT Forwarder
and ChirpStack uses a different API version (which in case of Protobuf
would be fine, as long as the major version remains the same).
2023-10-16 10:51:29 +01:00
d9a2eeba3c Refactor device lock / scheduler_run_after field setting.
This removes the device lock that is stored in Redis to avoid Class-A
and Class-B / Class-C overlapping. Instead, it consistently sets the
scheduler_run_after timestamp, which indicates if the Class-B /
Class-C scheduler should consider scheduling downlinks for a particular
device.

This also updates the get_with_class_b_c_queue_items function to make
sure that multiple ChirpStack instances can execute the same query at
the same time, without getting the same set of data (as the device
records are locked for update and then updated with a
scheduler_run_after timestamp in the future).
2023-10-16 10:34:37 +01:00
fda489d315 Add chirpstack_integration crate.
This crate can be used to build external ChirpStack integrations.
The plan is to move all non-HTTP based integrations to external
repositories. The reason is that these integrations usually require
quite some external dependencies as these rely on their own SDKs.
2023-10-13 11:38:56 +01:00
81d37a1d6c Update tests to power in EIRP (16 & 29). 2023-10-12 15:42:48 +01:00
5e63c5efe0 Make it explicit that tx power is in EIRP + fixes.
Historically, the tx power was defined as ERP. The Semtech UDP Packet
Forwarder protocol was never explicit if the "powe" field was in ERP or
EIRP. However, as the antenna gain in the Semtech UDP Packet Forwarder
is documented as dBi and is deducted from the "powe" field, this means
that "powe" is in EIRP.

This commit corrects all values to EIRP, to make sure that if the
antenna gain is properly configured (which should be), that the correct
rf_power is used by the gateway.
2023-10-12 15:36:11 +01:00
89a44dcf6b Fix postinst to only run on install.
Fixes #295.
2023-10-11 09:37:20 +01:00
4506cd91eb Use region default rx2 freq if device-session rx2 freq == 0. 2023-10-10 10:43:43 +01:00
fc3a94521f Do not fail on corrupted mac-commands.
This will print a warn log in case of a corrupted mac-command that can
not be decoded instead of failing on the uplink.
2023-10-10 09:56:50 +01:00
eccb09cb1b Add secondary_net_ids config option.
This can be useful when using multiple NetIDs (e.g. after a merge of two
networks, or when using multiple NetIDs). Previously, any other NetID
than the configured net_id would be considered roaming.
2023-10-09 14:24:23 +01:00
99561f2e47 Reset uplink_adr_history in case of DR / TxPower / NbTrans change. 2023-10-09 11:33:04 +01:00
4d27c339cc Expose skip_f_cnt and device variables to ADR.
This provides more flexibility to custom ADR algorithm implementations.
E.g. the device variables can be used to store per-device variables that
might overwrite normal ADR logic.
2023-10-09 11:23:13 +01:00
41d00cb651 Implement end-to-end app payload encryption.
This implements end-to-end encryption between the end-device and
end-application. The encrypted AppSKey or SessionKeyID is forwarded to
the end-application which should be able to decrypt or request the
AppSKey to decrypt the uplink payload. As well the end-application will
be able to enqueue encrypted application payloads.

Using this mechanism, ChirpStack will never have access to the uplink
and downlink application-payloads.
2023-10-05 13:06:09 +01:00
503beaa2fd Bump version to 4.5.1 2023-10-05 10:20:32 +01:00
fe131c070a api: Re-export prost dependency. (#285) 2023-10-03 15:29:49 +01:00
943ccd558d lrwn: Fix AS923 max payload-size table.
See #283
2023-10-02 14:00:56 +01:00
5bd2f2b24f chirpstack: Log OTAA for unknown device as warning. 2023-09-29 14:12:36 +01:00
48aa453e95 ui: Fix Doughnut chart resizing.
Fixes #284.
2023-09-29 12:36:42 +01:00
2c986d0889 Fix AS923 max-payload table.
Fixes #283 and #276.
2023-09-29 11:18:25 +01:00
97d9072ffc Apply fix for #282 to all forms. 2023-09-29 10:46:53 +01:00
91611b0505 Show form validation errors in notification.
This solves #282 because the issue was that auto created measurements
did not have a name and without the measurements tab open, the error
was not visible.

Before ChirpStack v4.5.0 forceRender was not used on the Tabs.TabPane,
in which case the validation would not run on unrendered tabs, which
explains why the form could be submitted even with the empty
measurement names.

Closes #282.
2023-09-29 10:24:50 +01:00
a402b487f8 Update dependencies. 2023-09-18 16:22:05 +01:00
0cf0a91699 chirpstack: Fix enabled_uplink_channels error (change 65 > 66) (#274) 2023-09-14 11:30:51 +01:00
4ebee8d614 Bump version to 4.5.0 2023-09-11 16:58:25 +01:00
81ac49ff8f Bump version to 4.5.0-test.3 2023-09-07 16:53:20 +01:00
f39efa995f chirpstack: disable auto requirement in rpm package. 2023-09-07 16:39:49 +01:00
f06f11334e Bump version to 4.5.0-test.2 2023-09-05 12:14:35 +01:00
adec1fdca4 Update pq, zlib and openssl versions.
The old zlib download URL returns 404 and breaks the build.
OpenSSL 1.1.1 is almost EOL.
2023-09-05 10:44:08 +01:00
295cd5e4b1 Bump version to 4.5.0-test.1 2023-09-04 15:06:38 +01:00
76858bd610 ui: Update dependencies. 2023-09-04 14:29:23 +01:00
81df990fd0 Bump redis from 0.23.1 to 0.23.3 (#269)
Bumps [redis](https://github.com/redis-rs/redis-rs) from 0.23.1 to 0.23.3.
- [Release notes](https://github.com/redis-rs/redis-rs/releases)
- [Commits](https://github.com/redis-rs/redis-rs/compare/redis-0.23.1...redis-0.23.3)

---
updated-dependencies:
- dependency-name: redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 14:12:06 +01:00
ee0597f500 lrwn: Fix compiler warnings. 2023-09-04 14:11:05 +01:00
570a1fb07b chirpstack: Fix compiler warnings. 2023-09-04 14:10:55 +01:00
cd57929b43 Update dependencies. 2023-09-04 14:10:27 +01:00
2bc2dde0ba Fix resolver version warning. 2023-09-04 13:27:08 +01:00
5b8ff67016 Update Rust toolchain version. 2023-09-04 13:26:50 +01:00
be035f16b5 chirpstack: add rediss:// config example.
See #219.
2023-09-04 10:56:53 +01:00
582cf9f257 chirpstack: Do not set empty username / password in MQTT.
Closes #257.
2023-08-10 13:44:14 +01:00
d15a180a39 examples: Bump google.golang.org/grpc in /examples/frame_log/go (#227)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.45.0 to 1.53.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.45.0...v1.53.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 13:32:12 +01:00
85864be5ed examples: Bump google.golang.org/grpc in /examples/request_log/go (#228)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.45.0 to 1.53.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.45.0...v1.53.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 13:31:53 +01:00
d3b2d6a824 chirpstack: Update rdkafka dependency. 2023-08-08 13:29:42 +01:00
582df0dc8f api: Update js dependencies. 2023-08-08 12:22:45 +01:00
5ce2b636ca api: Update grpc-web dependencies. 2023-08-08 12:17:58 +01:00
cc5b27f299 ui: Update dependencies. 2023-08-08 12:07:29 +01:00
443d3a4db9 api: Update Go gRPC dependencies + generate code. 2023-08-08 11:59:51 +01:00
e2d82134de Update dependencies. 2023-08-08 11:53:56 +01:00
8f40b6dca3 Fix ADR plugin variable mapping (maxRr > maxDr) (#256) 2023-08-07 14:24:11 +01:00
ae8c732895 Send CtrlUplinkAction=1 for deleted Relay devices. 2023-08-01 14:39:48 +01:00
4359e90613 Implement removing device from Relay filter list. 2023-07-31 16:00:08 +01:00
050610de55 Fix clippy warnings. 2023-07-31 12:58:14 +01:00
a433c7dd14 Cleanup dead code warnings. 2023-07-31 11:49:45 +01:00
dac4f15f40 Fix showing initial InfluxDB integration form.
Closes #254.
2023-07-31 10:51:23 +01:00
651fcfce43 Fix gRPC stream handling after UI refactor.
This moves the onMessage handler out of useEffect and it fixes
appending the the array. The .unshift() method does not work
well using React.useState. It would prepend, but since it would not
change the array (it adds an item to the array), the update would
not propagate.
2023-07-27 16:39:29 +01:00
6f1638e87a Refactor UI to function elements & update React + Ant.
This refactor the UI components from class based element into function
based elements. This makes it possible to use hooks that are used now
by most React components. This also updates React and Ant to the latest
versions (+ other dependencies).
2023-07-27 13:07:00 +01:00
afc196095d Make it possible to use DeviceModeInd for LW 1.0.x devices.
This change makes it possible to use the DeviceModeInd mac-command to
switch between Class-A / C for LoRaWAN 1.0.x devices. In such a case the
Supports Class-C would be disabled for LoRaWAN 1.0.x devices, meaning
that on OTAA the device is marked as Class-A. If the device then sends a
DeviceModeInd mac-command, this will cause the to be marked as
Class-C, event.

This was (unintentionally) possible in v3, but this part of the Class-B
beacon locked code would prevent to make the same work in v4.
2023-07-26 12:01:52 +01:00
7ff12f5ae7 Bump version to 4.4.3 2023-07-24 11:54:31 +01:00
a28d29deb9 Do not disable activation fields.
It prevents showing and copying the keys etc.
2023-07-19 11:49:20 +01:00
f930bd6b96 Wait for first uplink for Class-C scheduling. 2023-07-19 11:27:55 +01:00
f66186bb7b Bump version to 4.4.2 2023-07-14 10:56:00 +01:00
3f8f746dc5 Fix sending multiple FilterListReq mac-commands. 2023-07-13 12:26:03 +01:00
57ab993a88 Update dependencies. 2023-07-13 11:39:20 +01:00
a975cf3223 Add create-api-key sub-command.
This makes is possible to create a global API key (programmatically)
using the CLI.

Fixes https://github.com/chirpstack/chirpstack-rest-api/issues/12.
2023-07-13 11:10:32 +01:00
9d543603d5 Bump version to 4.4.1 2023-07-05 11:18:51 +01:00
e9be79e948 Set TZ correctly before running tests. 2023-07-05 11:06:36 +01:00
0c9e22d255 Add missing adr_plugins setting to config template. 2023-07-04 16:15:45 +01:00
4031c5cb95 Fix sending channel-mask twice for US915 (like). 2023-07-03 12:27:26 +01:00
258e103f22 Update dependencies. 2023-07-03 10:07:03 +01:00
3aa8bdbecc Add support for JSON log output. 2023-06-29 13:17:28 +01:00
96767e954f Update rquickjs dependency. 2023-06-27 09:46:17 +01:00
407ebd2d3f Bump version to 4.4.0 2023-06-26 12:05:45 +00:00
b263b86675 Add feature-flags to exclude some integration tests.
This reduces the number of external services that must be running to
succesful run 'cargo test'. In this case one the requirements that
ChirpStack has must be present and there is no need to run local
Kafka and RabbitMQ instances.

These integrations can still be tested using the 'test-all-integrations'
feature flag (which is included in the CI workflow).
2023-06-26 12:44:22 +01:00
2184e4eaa5 Update dependencies. 2023-06-26 12:04:08 +01:00
46f22dba2e Reverse OTAA dev-nonce and mic validations.
The dev-nonce validation updates the used dev-nonces in the database.
Therefore, we should first check the MIC. This also removes the
ctx.save_device_keys step, and puts the join-nonce increment in the
device_keys::validate_incr_... function, reducing the SQL queries by one.
2023-06-26 11:55:21 +01:00
087a27f904 Re-generate API code. 2023-06-14 13:13:13 +01:00
ba7b262323 Change enabled_class > class_enabled for consistency. 2023-06-14 13:13:13 +01:00
6480b3bbd5 Add enabled class to DeviceInfo in events. 2023-06-14 13:13:13 +01:00
d6d735cb03 Allow using system certificate store for TLS (#204)
Co-authored-by: Markus Siemens <markus.siemens@vivavis.com>
2023-06-14 13:04:38 +01:00
a1a34abaf7 Refactor device enabled_class to enum + expose in API. 2023-06-14 11:17:04 +01:00
fd29f4190b Update dependencies. 2023-06-13 14:50:14 +01:00
11af89ac40 Update javascript api readme (#202) 2023-06-13 14:15:15 +01:00
318f097344 Fix CN470 ping-slot frequencies + add comments.
The frequency-hopping ping-slots are equal to the beacon frequencys.
With the US915 and AU915 channels using the Class-A downlink
channels as beacon-frequencies, this was wrongly implemented in the
same way, but in case of CN470 the beacon-frequencies are not equal
to the Class-A downlink frequencies.
2023-06-09 09:24:06 +01:00
a284a8179e Update shell.nix. 2023-06-05 12:35:00 +01:00
da3e6c8cde Fix incorrect config template key. 2023-06-03 13:13:46 +01:00
0e91779f30 Update README + remove Vagrantfile. 2023-05-31 12:11:48 +01:00
3f77203516 Bump version to 4.4.0-test.1 2023-05-30 14:08:45 +00:00
28e940d2b7 Update api generated code. 2023-05-30 14:51:15 +01:00
ca666da016 Bump aws-sdk-sns from 0.27.0 to 0.28.0 (#187)
Bumps [aws-sdk-sns](https://github.com/awslabs/aws-sdk-rust) from 0.27.0 to 0.28.0.
- [Release notes](https://github.com/awslabs/aws-sdk-rust/releases)
- [Changelog](https://github.com/awslabs/aws-sdk-rust/blob/main/CHANGELOG.md)
- [Commits](https://github.com/awslabs/aws-sdk-rust/commits)

---
updated-dependencies:
- dependency-name: aws-sdk-sns
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-30 14:32:27 +01:00
b89221a932 Update dependencies + Diesel related changes. 2023-05-30 12:42:42 +00:00
2a88f45123 UI menu grammar & typo fixes. (#186)
Closes #185.
2023-05-30 12:22:16 +01:00
cf5ef8d061 Update README and Makefiles. 2023-05-30 12:13:52 +01:00
b0148da1bf Add Vagrantfile example. 2023-05-30 12:13:52 +01:00
e7dc3beafa Update dist workflow. 2023-05-30 12:13:52 +01:00
4f90c87784 Add dotenv for test dependency config. 2023-05-30 12:13:52 +01:00
c0d4270508 Update test workflow. 2023-05-30 12:13:52 +01:00
1f89f30878 Refactor build scripts for cross-rs based cross compiling. 2023-05-30 12:13:52 +01:00
cd3594fd96 Implement fully static ARMv7 build. 2023-05-30 12:13:52 +01:00
a162d04136 Implement fully static ARM64 build. 2023-05-30 12:13:52 +01:00
de114d5d22 Implement fully static AMD64 build. 2023-05-30 12:13:52 +01:00
9e15c48217 Add missing device search filter. 2023-05-29 16:26:03 +01:00
93ae75e3fa Update aws-sdk-sns dependency. 2023-05-22 12:59:09 +01:00
cf06e07654 Update dependencies. 2023-05-22 11:53:00 +01:00
cefe61072d Initial Relay support implementation (TS011).
Closes #59.
2023-05-22 11:04:13 +01:00
513aa7804d Add event prefix + arbitrary JSON options for IFTTT. 2023-05-19 14:43:39 +01:00
5146c87940 Fix netid_type method.
It would panic in case all bits are set (which would be
an invalid DevAddr prefix type).
2023-05-17 15:12:19 +01:00
e3383baa02 Add rust-toolchain.toml + shell.nix files.
This makes it easier to start a devshell without using Docker.
2023-05-17 14:46:13 +01:00
f32c5eb5af Bump lrwn_filters version. 2023-04-27 16:00:49 +01:00
f513cacab5 Add Clone and Copy derive to Prefix types. 2023-04-27 15:58:57 +01:00
cfadb9c78a Validate prefix size. 2023-04-27 14:25:35 +01:00
21896e65d7 Add crate for PhyPayload filtering.
This can be used by the ChirpStack UDP and MQTT Forwarder.

See also:
https://github.com/chirpstack/chirpstack-mqtt-forwarder/issues/25
2023-04-27 12:51:33 +01:00
0679f10fad Add feature flags to lrwn crate.
This avoids pulling and building unnecessary dependencies for simple
use-cases.
2023-04-27 10:37:34 +01:00
08d69502de Bump version to 4.3.2 2023-04-26 13:02:10 +01:00
683f59c063 Update Rust API dependencies. 2023-04-26 12:36:10 +01:00
0ef9f16f40 Re-enable v4_migrate option for now. 2023-04-26 12:27:12 +01:00
a5dd650510 Update dependencies. 2023-04-26 12:04:54 +01:00
de90b7d284 Enable redis tls-rustls feature.
Fixes #170.
2023-04-26 11:58:59 +01:00
fe0ef398ec Format Cargo.toml 2023-04-26 11:56:27 +01:00
58bd8eb5b4 Fix Rust fmt error. 2023-04-26 11:52:50 +01:00
0a294e41b5 Fix clippy feedback. 2023-04-13 22:06:44 +01:00
f71d30ca83 Re-implement frame and event download option. 2023-04-12 14:50:33 +01:00
ef0a97ab3d Log .send() error, rather than returning.
Closes https://github.com/chirpstack/chirpstack-docker/issues/80.
2023-04-11 15:10:08 +01:00
e93d3bc534 Update AWS SNS SDK crate. 2023-04-11 14:57:03 +01:00
31e359b314 Disable v3-v4 GW<>NS message migration and make config option.
By making this opt-in, we can reduce the overhead of supporting both v3
and v4 gateway messages. In case of v3 to v4 migration, one would
upgrade all ChirpStack Gateway Bridge instances to the latest v3
version, migrate ChirpStack as described here + enable this config flag:
https://www.chirpstack.io/docs/v3-v4-migration.html

Then upgrade ChirpStack Gateway Bridge to the latest v4 version followed
by disabling / removing this config flag (`v4_migrate`) again.
2023-04-11 14:19:07 +01:00
0a3fcaeb2d Bump version to 4.3.1 2023-04-10 12:24:52 +01:00
77051e8956 Update Rust API Cargo.lock. 2023-04-10 12:08:12 +01:00
3a9cb20c03 Update Dockerfiles. 2023-04-10 11:32:18 +01:00
1b96b4f91f Update caniuse-lite (ui). 2023-04-10 11:31:44 +01:00
101b155d91 Update dependencies. 2023-04-10 11:10:52 +01:00
3f4c262267 Bump webpack from 5.72.0 to 5.76.3 in /ui (#150)
Bumps [webpack](https://github.com/webpack/webpack) from 5.72.0 to 5.76.3.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.72.0...v5.76.3)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 10:14:19 +01:00
88939d4396 Update LoRa Cloud integration logo. 2023-04-06 16:27:43 +01:00
269b7f4d9d Fix gnss_assist_position enable toggle for gnss msg. 2023-04-06 16:26:45 +01:00
0ce60b789f Remove unused dependencies. 2023-03-28 22:11:06 +01:00
8fe0c7c6c2 Improve Rust SDK build flags / reduce dependencies.
This reduces the amount of dependencies in case not all features are
being used. E.g. tonic is only needed if using gRPC and pbjson,
pbjson-types and serde are only needed if using the JSON serialization.
2023-03-28 21:11:54 +01:00
4917de2b32 Earlier db initialization + change unwrap for error.
Closes #147.
2023-03-28 14:05:39 +01:00
d81af6b607 Bump dns-packet from 5.3.1 to 5.4.0 in /ui (#136)
Bumps [dns-packet](https://github.com/mafintosh/dns-packet) from 5.3.1 to 5.4.0.
- [Release notes](https://github.com/mafintosh/dns-packet/releases)
- [Changelog](https://github.com/mafintosh/dns-packet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mafintosh/dns-packet/compare/v5.3.1...5.4.0)

---
updated-dependencies:
- dependency-name: dns-packet
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-28 13:43:18 +01:00
cb6ac27ba4 Update dependencies. 2023-03-28 13:41:20 +01:00
1430c30ab3 Make using gateway location optional (LoRa Cloud). 2023-03-28 13:11:49 +01:00
cb49afeb01 Update LoRa Cloud form label. 2023-03-23 11:38:34 +00:00
9ba826963c Let serde use defaults for LoraCloudModemGeolocationServices.
This lets serde use default values in case a field is missing.
Specifically, this fixes the 'missing field `forward_f_ports`'
if migrating from an older LoRa Cloud configuration where the
`forward_f_ports` field was not yet present.
2023-03-23 11:01:35 +00:00
1f7fcc139d Update application.proto (#143) 2023-03-16 14:58:27 +00:00
8a496d9019 Fix Python README.
Closes #141.
2023-03-09 09:32:11 +00:00
ef97eccf62 Update LoRa Cloud integration. 2023-03-08 17:01:11 +00:00
50f8093c07 Bump version to 4.3.0 2023-03-08 09:20:50 +00:00
eaad8586a1 Bump version to 4.3.0-test.3 2023-03-02 14:32:56 +00:00
43567ccfd2 Show fcnt in event log.
Closes #121.
2023-03-02 13:40:06 +00:00
ddea09d9d4 Decode frm_payload mac-commands in device frame log. 2023-03-02 12:21:42 +00:00
9ab059a552 Fix disabling mac-commands. 2023-03-02 09:19:36 +00:00
554 changed files with 66569 additions and 34668 deletions

View File

@ -1,5 +1,8 @@
[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"
[target.x86_64-unknown-linux-musl]
rustflags = ["-C", "target-feature=+crt-static", "-C", "link-arg=-s", "-C", "link-arg=-lc", "-C", "link-arg=-lgcc"]
[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"
[target.aarch64-unknown-linux-musl]
rustflags = ["-C", "target-feature=+crt-static", "-C", "link-arg=-s", "-C", "link-arg=-lc", "-C", "link-arg=-lgcc"]
[target.armv7-unknown-linux-musleabihf]
rustflags = ["-C", "target-feature=+crt-static", "-C", "link-arg=-s", "-C", "link-arg=-lc", "-C", "link-arg=-lgcc"]

View File

@ -1,6 +1,9 @@
.git
.cargo
.rust
**/target
api/rust/target
backend/target
lrwn/target
lrwn/filters/target
**/node_modules
Dockerfile

9
.env Normal file
View File

@ -0,0 +1,9 @@
# Diesel
DATABASE_URL=postgres://chirpstack_test:chirpstack_test@localhost/chirpstack_test?sslmode=disable
# Testing
TEST_POSTGRESQL_DSN="postgres://chirpstack_test:chirpstack_test@localhost/chirpstack_test?sslmode=disable"
TEST_REDIS_URL="redis://localhost/1"
TEST_MOSQUITTO_SERVER="tcp://localhost:1883/"
TEST_KAFKA_BROKER="localhost:9092"
TEST_AMQP_URL="amqp://guest:guest@localhost:5672"

View File

@ -14,22 +14,31 @@ jobs:
-
name: Checkout
uses: actions/checkout@v2
-
name: Install Nix
uses: cachix/install-nix-action@v20
with:
nix_path: nixpkgs=channel:nixos-22.11
-
name: Cargo cache
uses: actions/cache@v3
with:
path: .rust/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-test-${{ hashFiles('**/Cargo.lock') }}
-
name: Start dependency services
run: docker-compose up -d
-
name: Build UI
run: make build-ui
-
name: Run tests
run: make test
-
name: Make cache accessible to caching action
run: |
sudo chown $(whoami):$(whoami) -R .rust
run: nix-shell --command "make test"
dist:
needs: tests
@ -39,18 +48,31 @@ jobs:
-
name: Checkout
uses: actions/checkout@v2
-
name: Install Nix
uses: cachix/install-nix-action@v20
with:
nix_path: nixpkgs=channel:nixos-22.11
-
name: Cargo cache
uses: actions/cache@v3
with:
path: .rust/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-dist-${{ hashFiles('**/Cargo.lock') }}
-
name: Build UI
run: make build-ui
-
name: Install dev dependencies
run: nix-shell --command "make dev-dependencies"
-
name: Build distributables
run: make dist
run: nix-shell --command "make dist"
-
name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
@ -63,19 +85,6 @@ jobs:
run: |
aws s3 sync dist s3://builds.loraserver.io/chirpstack
if: startsWith(github.ref, 'refs/tags/v')
-
name: Make cache accessible to caching action
run: |
sudo chown $(whoami):$(whoami) -R .rust
docker:
needs: tests
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/v')
steps:
-
name: Checkout
uses: actions/checkout@v2
-
name: Docker meta
id: meta
@ -106,8 +115,9 @@ jobs:
id: docker_build
uses: docker/build-push-action@v2
with:
platforms: linux/amd64,linux/arm/v7,linux/arm64
context: .
push: ${{ startsWith(github.ref, 'refs/tags/v') }}
platforms: linux/amd64,linux/arm/v7,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
-

1
.gitignore vendored
View File

@ -2,6 +2,7 @@
.*
!/chirpstack/.rpm
!/.cargo
!/.env
# Log files
*.log

2726
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,10 @@
[workspace]
resolver = "2"
members = [
"chirpstack",
"chirpstack-integration",
"lrwn",
"lrwn-filters",
"backend",
"api/rust",
]

11
Cross.toml Normal file
View File

@ -0,0 +1,11 @@
[build]
default-target="x86_64-unknown-linux-musl"
[target.x86_64-unknown-linux-musl]
dockerfile="cross/Dockerfile.x86_64-unknown-linux-musl"
[target.aarch64-unknown-linux-musl]
dockerfile="cross/Dockerfile.aarch64-unknown-linux-musl"
[target.armv7-unknown-linux-musleabihf]
dockerfile="cross/Dockerfile.armv7-unknown-linux-musleabihf"

View File

@ -1,82 +1,30 @@
# UI build stage
FROM --platform=$BUILDPLATFORM alpine:3.17.0 AS ui-build
ENV PROJECT_PATH=/chirpstack
RUN apk add --no-cache make git bash build-base nodejs npm yarn
RUN mkdir -p $PROJECT_PATH
COPY ./api/grpc-web $PROJECT_PATH/api/grpc-web
COPY ./ui $PROJECT_PATH/ui
RUN cd $PROJECT_PATH/ui && \
yarn install --network-timeout 600000 && \
yarn build
# ChirpStack build stage
FROM --platform=$BUILDPLATFORM rust:1.65.0-buster AS rust-build
ENV PROJECT_PATH=/chirpstack
RUN mkdir -p $PROJECT_PATH
RUN dpkg --add-architecture armhf
RUN dpkg --add-architecture arm64
RUN apt-get update && \
apt-get install -y \
make \
cmake \
git \
libpq-dev \
clang \
libclang-dev \
jq \
protobuf-compiler \
gcc-arm-linux-gnueabihf \
g++-arm-linux-gnueabihf \
gcc-aarch64-linux-gnu \
g++-aarch64-linux-gnu \
zlib1g-dev:armhf \
zlib1g-dev:arm64
RUN rustup target add armv7-unknown-linux-gnueabihf
RUN rustup target add aarch64-unknown-linux-gnu
# Copy binary stage
FROM --platform=$BUILDPLATFORM alpine:3.18.0 as binary
ARG TARGETPLATFORM
RUN mkdir -p /release/$TARGETPLATFORM
COPY . $PROJECT_PATH
COPY --from=ui-build $PROJECT_PATH/ui/build $PROJECT_PATH/ui/build
COPY target/x86_64-unknown-linux-musl/release/chirpstack /usr/bin/chirpstack-x86_64
COPY target/armv7-unknown-linux-musleabihf/release/chirpstack /usr/bin/chirpstack-armv7hf
COPY target/aarch64-unknown-linux-musl/release/chirpstack /usr/bin/chirpstack-aarch64
RUN case "$TARGETPLATFORM" in \
"linux/amd64") \
cd $PROJECT_PATH/chirpstack && make release-amd64; \
cp $PROJECT_PATH/target/release/chirpstack /release/$TARGETPLATFORM; \
cp /usr/bin/chirpstack-x86_64 /usr/bin/chirpstack; \
;; \
"linux/arm/v7") \
cd $PROJECT_PATH/chirpstack && make release-armv7hf; \
cp $PROJECT_PATH/target/armv7-unknown-linux-gnueabihf/release/chirpstack /release/$TARGETPLATFORM; \
cp /usr/bin/chirpstack-armv7hf /usr/bin/chirpstack; \
;; \
"linux/arm64") \
cd $PROJECT_PATH/chirpstack && make release-arm64; \
cp $PROJECT_PATH/target/aarch64-unknown-linux-gnu/release/chirpstack /release/$TARGETPLATFORM; \
cp /usr/bin/chirpstack-aarch64 /usr/bin/chirpstack; \
;; \
esac;
# Final stage
FROM debian:buster-slim as production
FROM alpine:3.18.0
RUN apt-get update && \
apt-get install -y \
ca-certificates \
libpq5 \
&& rm -rf /var/lib/apt/lists/*
RUN apk --no-cache add \
ca-certificates
ARG TARGETPLATFORM
COPY --from=rust-build /release/$TARGETPLATFORM/chirpstack /usr/bin/chirpstack
COPY --from=rust-build /chirpstack/chirpstack/configuration/* /etc/chirpstack/
COPY --from=binary /usr/bin/chirpstack /usr/bin/chirpstack
USER nobody:nogroup
ENTRYPOINT ["/usr/bin/chirpstack"]
ENTRYPOINT ["/usr/bin/chirpstack"]

View File

@ -1,42 +1,6 @@
FROM rust:1.65.0-buster
FROM nixos/nix
ENV PROJECT_PATH=/chirpstack
RUN mkdir -p $PROJECT_PATH
WORKDIR $PROJECT_PATH
RUN dpkg --add-architecture armhf
RUN dpkg --add-architecture arm64
RUN apt-get update && \
apt-get install -y \
make \
cmake \
git \
bash \
screen \
postgresql-client \
libpq-dev \
mosquitto-clients \
redis-tools \
rpm \
clang \
libclang-dev \
golang-cfssl \
jq \
protobuf-compiler \
gcc-arm-linux-gnueabihf \
g++-arm-linux-gnueabihf \
gcc-aarch64-linux-gnu \
g++-aarch64-linux-gnu \
zlib1g-dev:armhf \
zlib1g-dev:arm64
RUN rustup component add rustfmt clippy
RUN rustup target add armv7-unknown-linux-gnueabihf
RUN rustup target add aarch64-unknown-linux-gnu
RUN cargo install diesel_cli --version 2.0.0 --no-default-features --features postgres
RUN cargo install cargo-deb
RUN cargo install cargo-rpm
RUN cargo install cargo-bitbake
WORKDIR $PROJECT_PATH/chirpstack
ENTRYPOINT ["nix-shell"]

View File

@ -2,7 +2,15 @@
# Build distributable binaries.
dist:
docker-compose run --rm --no-deps chirpstack make dist
cd chirpstack && make dist
# Install dev dependencies
dev-dependencies:
cargo install cross --version 0.2.5
cargo install diesel_cli --version 2.1.0 --no-default-features --features postgres
cargo install cargo-deb --version 1.43.1
cargo install cargo-bitbake --version 0.3.16
cargo install cargo-generate-rpm --version 0.12.1
# Set the versions
version:
@ -10,6 +18,7 @@ version:
sed -i 's/^version.*/version = "$(VERSION)"/g' ./chirpstack/Cargo.toml
sed -i 's/^version.*/version = "$(VERSION)"/g' ./backend/Cargo.toml
sed -i 's/^version.*/version = "$(VERSION)"/g' ./lrwn/Cargo.toml
sed -i 's/^version.*/version = "$(VERSION)"/g' ./lrwn-filters/Cargo.toml
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./ui/package.json
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./api/grpc-web/package.json
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./api/js/package.json
@ -33,24 +42,29 @@ api: version
build-ui:
docker-compose run --rm --no-deps chirpstack-ui make build
# Enters the devshell for ChirpStack development.
# Enter the devshell.
devshell:
docker-compose run --rm --service-ports --name chirpstack chirpstack bash
nix-shell
# Enters the Docker devshell for ChirpStack development.
docker-devshell:
docker-compose run --rm --service-ports --name chirpstack chirpstack
# Enters the devshell for ChirpStack UI development.
devshell-ui:
docker-devshell-ui:
docker-compose run --rm --service-ports --name chirpstack-ui chirpstack-ui bash
# Runs the tests
test:
docker-compose run --rm chirpstack make test
docker-compose run --rm chirpstack make test-lrwn
cd backend && cargo test
cd chirpstack && make test
cd lrwn && make test
cd lrwn-filters && make test
# Starts the ChirpStack server (for testing only).
test-server: build-ui
docker-compose run --rm --service-ports chirpstack make test-server
# Update the Docker development images
update-images:
docker-compose build chirpstack
docker-compose build chirpstack-ui
# Runs all the tests (including some that normally are ignored)
test-all:
cd backend && cargo test
cd chirpstack && make test-all
cd chirpstack-integration && cargo test
cd lrwn && make test
cd lrwn-filters && make test

View File

@ -9,10 +9,105 @@ cloud providers, databases and services commonly used for handling device data.
ChirpStack provides a gRPC based API that can be used to integrate or extend
ChirpStack.
## Documentation
## Documentation and binaries
Please refer to the [ChirpStack](https://www.chirpstack.io/) website for
documentation.
documentation and pre-compiled binaries.
## Building from source
### Requirements
Building ChirpStack requires:
* [Nix](https://nixos.org/download.html) (recommended) and
* [Docker](https://www.docker.com/)
#### Nix
Nix is used for setting up the development environment which is used for local
development and for creating the binaries.
If you do not have Nix installed and do not wish to install it, then you can
use the provided Docker Compose based Nix environment. To start this environment
execute the following command:
```bash
make docker-devshell
```
**Note:** You will be able to run the test commands and run `cargo build`, but
cross-compiling will not work within this environment (because it would try start
Docker within Docker).
#### Docker
Docker is used by [cross-rs](https://github.com/cross-rs/cross) for cross-compiling,
as well as some of the `make` commands.
### Starting the development shell
Run the following command to start the development shell:
```bash
nix-shell
```
Or if you do not have Nix installed, execute the following command:
```bash
make docker-devshell
```
### Building the UI
To build the ChirpStack UI, execute the following command:
```
make build-ui
```
### Running ChirpStack tests
#### Start required services
ChirpStack requires several services like PostgresQL, Redis, Mosquitto, ...
to be running before you can run the tests. You need to start these services
manually if you started the development shell using `nix-shell`:
```bash
docker-compose up -d
```
#### Run tests
Run the following command to run the ChirpStack tests:
```bash
make test
```
### Building ChirpStack binaries
Before compiling the binaries, you need to install some additional development
tools (for cross-compiling, packaging, e.d.). Execute the following command:
```bash
make dev-dependencies
```
Run the following command within the `./chirpstack` sub-folder:
```bash
# Build AMD64 debug build (optimized for build speed)
make debug-amd64
# Build AMD64 release build (optimized for performance and binary size)
make release-amd64
# Build all packages (all targets, .deb, .rpm and .tar.gz files)
make dist
```
## License

2
api/Dockerfile-rust vendored
View File

@ -1,4 +1,4 @@
FROM rust:1.65
FROM rust:1.73
ENV PROJECT_PATH=/chirpstack/api
RUN apt-get update && \

View File

@ -20,6 +20,7 @@
<Protobuf Include="../proto/api/frame_log.proto" ProtoRoot="../proto/" OutputDir="Chirpstack/" CompileOutputs="false" AdditionalImportDirs="/googleproto" />
<Protobuf Include="../proto/api/multicast_group.proto" ProtoRoot="../proto/" OutputDir="Chirpstack/" CompileOutputs="false" AdditionalImportDirs="/googleproto" />
<Protobuf Include="../proto/api/request_log.proto" ProtoRoot="../proto/" OutputDir="Chirpstack/" CompileOutputs="false" AdditionalImportDirs="/googleproto" />
<Protobuf Include="../proto/api/relay.proto" ProtoRoot="../proto/" OutputDir="Chirpstack/" CompileOutputs="false" AdditionalImportDirs="/googleproto" />
<Protobuf Include="../proto/integration/integration.proto" ProtoRoot="../proto/" OutputDir="Chirpstack/" CompileOutputs="false" AdditionalImportDirs="/googleproto" />
<Protobuf Include="../proto/meta/meta.proto" ProtoRoot="../proto/" OutputDir="Chirpstack/" CompileOutputs="false" AdditionalImportDirs="/googleproto" />
<Protobuf Include="/googleproto/google/api/*.proto" ProtoRoot="/googleproto" OutputDir="Chirpstack/" CompileOutputs="false" />
@ -34,4 +35,4 @@
</PackageReference>
</ItemGroup>
</Project>
</Project>

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,8 @@ using grpc = global::Grpc.Core;
namespace Chirpstack.Api {
/// <summary>
/// ApplicationService is the service providing API methods for managing applications.
/// ApplicationService is the service providing API methods for managing
/// applications.
/// </summary>
public static partial class ApplicationService
{

File diff suppressed because it is too large Load Diff

View File

@ -106,6 +106,10 @@ namespace Chirpstack.Api {
static readonly grpc::Marshaller<global::Chirpstack.Api.GetDeviceQueueItemsRequest> __Marshaller_api_GetDeviceQueueItemsRequest = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.GetDeviceQueueItemsRequest.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.GetDeviceQueueItemsResponse> __Marshaller_api_GetDeviceQueueItemsResponse = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.GetDeviceQueueItemsResponse.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.GetDeviceNextFCntDownRequest> __Marshaller_api_GetDeviceNextFCntDownRequest = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.GetDeviceNextFCntDownRequest.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.GetDeviceNextFCntDownResponse> __Marshaller_api_GetDeviceNextFCntDownResponse = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.GetDeviceNextFCntDownResponse.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::Chirpstack.Api.CreateDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty> __Method_Create = new grpc::Method<global::Chirpstack.Api.CreateDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty>(
@ -259,6 +263,14 @@ namespace Chirpstack.Api {
__Marshaller_api_GetDeviceQueueItemsRequest,
__Marshaller_api_GetDeviceQueueItemsResponse);
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::Chirpstack.Api.GetDeviceNextFCntDownRequest, global::Chirpstack.Api.GetDeviceNextFCntDownResponse> __Method_GetNextFCntDown = new grpc::Method<global::Chirpstack.Api.GetDeviceNextFCntDownRequest, global::Chirpstack.Api.GetDeviceNextFCntDownResponse>(
grpc::MethodType.Unary,
__ServiceName,
"GetNextFCntDown",
__Marshaller_api_GetDeviceNextFCntDownRequest,
__Marshaller_api_GetDeviceNextFCntDownResponse);
/// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
@ -390,7 +402,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
/// Activate (re)activates the device with the given parameters (for ABP or for
/// importing OTAA activations).
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
@ -414,7 +427,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// GetActivation returns the current activation details of the device (OTAA or ABP).
/// GetActivation returns the current activation details of the device (OTAA or
/// ABP).
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
@ -426,7 +440,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
/// account.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
@ -439,7 +454,8 @@ namespace Chirpstack.Api {
/// <summary>
/// GetMetrics returns the device metrics.
/// Note that this requires a device-profile with codec and measurements configured.
/// Note that this requires a device-profile with codec and measurements
/// configured.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
@ -499,6 +515,20 @@ namespace Chirpstack.Api {
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
/// <summary>
/// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
/// downlinks. The difference with the DeviceActivation f_cont_down is that
/// this method takes potential existing queue-items into account.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
/// <returns>The response to send back to the client (wrapped by a task).</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::System.Threading.Tasks.Task<global::Chirpstack.Api.GetDeviceNextFCntDownResponse> GetNextFCntDown(global::Chirpstack.Api.GetDeviceNextFCntDownRequest request, grpc::ServerCallContext context)
{
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
}
/// <summary>Client for DeviceService</summary>
@ -1009,7 +1039,8 @@ namespace Chirpstack.Api {
return CallInvoker.AsyncUnaryCall(__Method_FlushDevNonces, null, options, request);
}
/// <summary>
/// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
/// Activate (re)activates the device with the given parameters (for ABP or for
/// importing OTAA activations).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1022,7 +1053,8 @@ namespace Chirpstack.Api {
return Activate(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
/// Activate (re)activates the device with the given parameters (for ABP or for
/// importing OTAA activations).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1033,7 +1065,8 @@ namespace Chirpstack.Api {
return CallInvoker.BlockingUnaryCall(__Method_Activate, null, options, request);
}
/// <summary>
/// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
/// Activate (re)activates the device with the given parameters (for ABP or for
/// importing OTAA activations).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1046,7 +1079,8 @@ namespace Chirpstack.Api {
return ActivateAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
/// Activate (re)activates the device with the given parameters (for ABP or for
/// importing OTAA activations).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1105,7 +1139,8 @@ namespace Chirpstack.Api {
return CallInvoker.AsyncUnaryCall(__Method_Deactivate, null, options, request);
}
/// <summary>
/// GetActivation returns the current activation details of the device (OTAA or ABP).
/// GetActivation returns the current activation details of the device (OTAA or
/// ABP).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1118,7 +1153,8 @@ namespace Chirpstack.Api {
return GetActivation(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// GetActivation returns the current activation details of the device (OTAA or ABP).
/// GetActivation returns the current activation details of the device (OTAA or
/// ABP).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1129,7 +1165,8 @@ namespace Chirpstack.Api {
return CallInvoker.BlockingUnaryCall(__Method_GetActivation, null, options, request);
}
/// <summary>
/// GetActivation returns the current activation details of the device (OTAA or ABP).
/// GetActivation returns the current activation details of the device (OTAA or
/// ABP).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1142,7 +1179,8 @@ namespace Chirpstack.Api {
return GetActivationAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// GetActivation returns the current activation details of the device (OTAA or ABP).
/// GetActivation returns the current activation details of the device (OTAA or
/// ABP).
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1153,7 +1191,8 @@ namespace Chirpstack.Api {
return CallInvoker.AsyncUnaryCall(__Method_GetActivation, null, options, request);
}
/// <summary>
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
/// account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1166,7 +1205,8 @@ namespace Chirpstack.Api {
return GetRandomDevAddr(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
/// account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1177,7 +1217,8 @@ namespace Chirpstack.Api {
return CallInvoker.BlockingUnaryCall(__Method_GetRandomDevAddr, null, options, request);
}
/// <summary>
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
/// account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1190,7 +1231,8 @@ namespace Chirpstack.Api {
return GetRandomDevAddrAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
/// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
/// account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1202,7 +1244,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// GetMetrics returns the device metrics.
/// Note that this requires a device-profile with codec and measurements configured.
/// Note that this requires a device-profile with codec and measurements
/// configured.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1216,7 +1259,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// GetMetrics returns the device metrics.
/// Note that this requires a device-profile with codec and measurements configured.
/// Note that this requires a device-profile with codec and measurements
/// configured.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1228,7 +1272,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// GetMetrics returns the device metrics.
/// Note that this requires a device-profile with codec and measurements configured.
/// Note that this requires a device-profile with codec and measurements
/// configured.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
@ -1242,7 +1287,8 @@ namespace Chirpstack.Api {
}
/// <summary>
/// GetMetrics returns the device metrics.
/// Note that this requires a device-profile with codec and measurements configured.
/// Note that this requires a device-profile with codec and measurements
/// configured.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
@ -1448,6 +1494,62 @@ namespace Chirpstack.Api {
{
return CallInvoker.AsyncUnaryCall(__Method_GetQueue, null, options, request);
}
/// <summary>
/// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
/// downlinks. The difference with the DeviceActivation f_cont_down is that
/// this method takes potential existing queue-items into account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Chirpstack.Api.GetDeviceNextFCntDownResponse GetNextFCntDown(global::Chirpstack.Api.GetDeviceNextFCntDownRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return GetNextFCntDown(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
/// downlinks. The difference with the DeviceActivation f_cont_down is that
/// this method takes potential existing queue-items into account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Chirpstack.Api.GetDeviceNextFCntDownResponse GetNextFCntDown(global::Chirpstack.Api.GetDeviceNextFCntDownRequest request, grpc::CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_GetNextFCntDown, null, options, request);
}
/// <summary>
/// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
/// downlinks. The difference with the DeviceActivation f_cont_down is that
/// this method takes potential existing queue-items into account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Chirpstack.Api.GetDeviceNextFCntDownResponse> GetNextFCntDownAsync(global::Chirpstack.Api.GetDeviceNextFCntDownRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return GetNextFCntDownAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
/// downlinks. The difference with the DeviceActivation f_cont_down is that
/// this method takes potential existing queue-items into account.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Chirpstack.Api.GetDeviceNextFCntDownResponse> GetNextFCntDownAsync(global::Chirpstack.Api.GetDeviceNextFCntDownRequest request, grpc::CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_GetNextFCntDown, null, options, request);
}
/// <summary>Creates a new instance of client from given <c>ClientBaseConfiguration</c>.</summary>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
protected override DeviceServiceClient NewInstance(ClientBaseConfiguration configuration)
@ -1480,7 +1582,8 @@ namespace Chirpstack.Api {
.AddMethod(__Method_GetLinkMetrics, serviceImpl.GetLinkMetrics)
.AddMethod(__Method_Enqueue, serviceImpl.Enqueue)
.AddMethod(__Method_FlushQueue, serviceImpl.FlushQueue)
.AddMethod(__Method_GetQueue, serviceImpl.GetQueue).Build();
.AddMethod(__Method_GetQueue, serviceImpl.GetQueue)
.AddMethod(__Method_GetNextFCntDown, serviceImpl.GetNextFCntDown).Build();
}
/// <summary>Register service method with a service binder with or without implementation. Useful when customizing the service binding logic.
@ -1509,6 +1612,7 @@ namespace Chirpstack.Api {
serviceBinder.AddMethod(__Method_Enqueue, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.EnqueueDeviceQueueItemRequest, global::Chirpstack.Api.EnqueueDeviceQueueItemResponse>(serviceImpl.Enqueue));
serviceBinder.AddMethod(__Method_FlushQueue, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.FlushDeviceQueueRequest, global::Google.Protobuf.WellKnownTypes.Empty>(serviceImpl.FlushQueue));
serviceBinder.AddMethod(__Method_GetQueue, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.GetDeviceQueueItemsRequest, global::Chirpstack.Api.GetDeviceQueueItemsResponse>(serviceImpl.GetQueue));
serviceBinder.AddMethod(__Method_GetNextFCntDown, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.GetDeviceNextFCntDownRequest, global::Chirpstack.Api.GetDeviceNextFCntDownResponse>(serviceImpl.GetNextFCntDown));
}
}

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,8 @@ using grpc = global::Grpc.Core;
namespace Chirpstack.Api {
/// <summary>
/// DeviceProfileService is the service providing API methods for managing device-profiles.
/// DeviceProfileService is the service providing API methods for managing
/// device-profiles.
/// </summary>
public static partial class DeviceProfileService
{

View File

@ -26,25 +26,26 @@ namespace Chirpstack.Api {
string.Concat(
"ChNhcGkvZnJhbWVfbG9nLnByb3RvEgNhcGkaH2dvb2dsZS9wcm90b2J1Zi90",
"aW1lc3RhbXAucHJvdG8aE2NvbW1vbi9jb21tb24ucHJvdG8aC2d3L2d3LnBy",
"b3RvIvcBCg5VcGxpbmtGcmFtZUxvZxITCgtwaHlfcGF5bG9hZBgBIAEoDBIh",
"b3RvIpACCg5VcGxpbmtGcmFtZUxvZxITCgtwaHlfcGF5bG9hZBgBIAEoDBIh",
"Cgd0eF9pbmZvGAIgASgLMhAuZ3cuVXBsaW5rVHhJbmZvEiEKB3J4X2luZm8Y",
"AyADKAsyEC5ndy5VcGxpbmtSeEluZm8SHQoGbV90eXBlGAQgASgOMg0uY29t",
"bW9uLk1UeXBlEhAKCGRldl9hZGRyGAUgASgJEg8KB2Rldl9ldWkYBiABKAkS",
"KAoEdGltZRgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHgoW",
"cGxhaW50ZXh0X21hY19jb21tYW5kcxgIIAEoCCKBAgoQRG93bmxpbmtGcmFt",
"ZUxvZxIoCgR0aW1lGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFt",
"cBITCgtwaHlfcGF5bG9hZBgCIAEoDBIjCgd0eF9pbmZvGAMgASgLMhIuZ3cu",
"RG93bmxpbmtUeEluZm8SEwoLZG93bmxpbmtfaWQYBCABKA0SEgoKZ2F0ZXdh",
"eV9pZBgFIAEoCRIdCgZtX3R5cGUYBiABKA4yDS5jb21tb24uTVR5cGUSEAoI",
"ZGV2X2FkZHIYByABKAkSDwoHZGV2X2V1aRgIIAEoCRIeChZwbGFpbnRleHRf",
"bWFjX2NvbW1hbmRzGAkgASgIQmUKEWlvLmNoaXJwc3RhY2suYXBpQg1GcmFt",
"ZUxvZ1Byb3RvUAFaLmdpdGh1Yi5jb20vY2hpcnBzdGFjay9jaGlycHN0YWNr",
"L2FwaS9nby92NC9hcGmqAg5DaGlycHN0YWNrLkFwaWIGcHJvdG8z"));
"KAoEdGltZRgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGAoQ",
"cGxhaW50ZXh0X2Zfb3B0cxgIIAEoCBIdChVwbGFpbnRleHRfZnJtX3BheWxv",
"YWQYCSABKAgimgIKEERvd25saW5rRnJhbWVMb2cSKAoEdGltZRgBIAEoCzIa",
"Lmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEwoLcGh5X3BheWxvYWQYAiAB",
"KAwSIwoHdHhfaW5mbxgDIAEoCzISLmd3LkRvd25saW5rVHhJbmZvEhMKC2Rv",
"d25saW5rX2lkGAQgASgNEhIKCmdhdGV3YXlfaWQYBSABKAkSHQoGbV90eXBl",
"GAYgASgOMg0uY29tbW9uLk1UeXBlEhAKCGRldl9hZGRyGAcgASgJEg8KB2Rl",
"dl9ldWkYCCABKAkSGAoQcGxhaW50ZXh0X2Zfb3B0cxgJIAEoCBIdChVwbGFp",
"bnRleHRfZnJtX3BheWxvYWQYCiABKAhCZQoRaW8uY2hpcnBzdGFjay5hcGlC",
"DUZyYW1lTG9nUHJvdG9QAVouZ2l0aHViLmNvbS9jaGlycHN0YWNrL2NoaXJw",
"c3RhY2svYXBpL2dvL3Y0L2FwaaoCDkNoaXJwc3RhY2suQXBpYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Chirpstack.Common.CommonReflection.Descriptor, global::Chirpstack.Gateway.GwReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.UplinkFrameLog), global::Chirpstack.Api.UplinkFrameLog.Parser, new[]{ "PhyPayload", "TxInfo", "RxInfo", "MType", "DevAddr", "DevEui", "Time", "PlaintextMacCommands" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.DownlinkFrameLog), global::Chirpstack.Api.DownlinkFrameLog.Parser, new[]{ "Time", "PhyPayload", "TxInfo", "DownlinkId", "GatewayId", "MType", "DevAddr", "DevEui", "PlaintextMacCommands" }, null, null, null, null)
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.UplinkFrameLog), global::Chirpstack.Api.UplinkFrameLog.Parser, new[]{ "PhyPayload", "TxInfo", "RxInfo", "MType", "DevAddr", "DevEui", "Time", "PlaintextFOpts", "PlaintextFrmPayload" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.DownlinkFrameLog), global::Chirpstack.Api.DownlinkFrameLog.Parser, new[]{ "Time", "PhyPayload", "TxInfo", "DownlinkId", "GatewayId", "MType", "DevAddr", "DevEui", "PlaintextFOpts", "PlaintextFrmPayload" }, null, null, null, null)
}));
}
#endregion
@ -92,7 +93,8 @@ namespace Chirpstack.Api {
devAddr_ = other.devAddr_;
devEui_ = other.devEui_;
time_ = other.time_ != null ? other.time_.Clone() : null;
plaintextMacCommands_ = other.plaintextMacCommands_;
plaintextFOpts_ = other.plaintextFOpts_;
plaintextFrmPayload_ = other.plaintextFrmPayload_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
@ -206,18 +208,33 @@ namespace Chirpstack.Api {
}
}
/// <summary>Field number for the "plaintext_mac_commands" field.</summary>
public const int PlaintextMacCommandsFieldNumber = 8;
private bool plaintextMacCommands_;
/// <summary>Field number for the "plaintext_f_opts" field.</summary>
public const int PlaintextFOptsFieldNumber = 8;
private bool plaintextFOpts_;
/// <summary>
/// Plaintext mac-commands.
/// Plaintext f_opts mac-commands.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool PlaintextMacCommands {
get { return plaintextMacCommands_; }
public bool PlaintextFOpts {
get { return plaintextFOpts_; }
set {
plaintextMacCommands_ = value;
plaintextFOpts_ = value;
}
}
/// <summary>Field number for the "plaintext_frm_payload" field.</summary>
public const int PlaintextFrmPayloadFieldNumber = 9;
private bool plaintextFrmPayload_;
/// <summary>
/// Plaintext frm_payload.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool PlaintextFrmPayload {
get { return plaintextFrmPayload_; }
set {
plaintextFrmPayload_ = value;
}
}
@ -243,7 +260,8 @@ namespace Chirpstack.Api {
if (DevAddr != other.DevAddr) return false;
if (DevEui != other.DevEui) return false;
if (!object.Equals(Time, other.Time)) return false;
if (PlaintextMacCommands != other.PlaintextMacCommands) return false;
if (PlaintextFOpts != other.PlaintextFOpts) return false;
if (PlaintextFrmPayload != other.PlaintextFrmPayload) return false;
return Equals(_unknownFields, other._unknownFields);
}
@ -258,7 +276,8 @@ namespace Chirpstack.Api {
if (DevAddr.Length != 0) hash ^= DevAddr.GetHashCode();
if (DevEui.Length != 0) hash ^= DevEui.GetHashCode();
if (time_ != null) hash ^= Time.GetHashCode();
if (PlaintextMacCommands != false) hash ^= PlaintextMacCommands.GetHashCode();
if (PlaintextFOpts != false) hash ^= PlaintextFOpts.GetHashCode();
if (PlaintextFrmPayload != false) hash ^= PlaintextFrmPayload.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
@ -302,9 +321,13 @@ namespace Chirpstack.Api {
output.WriteRawTag(58);
output.WriteMessage(Time);
}
if (PlaintextMacCommands != false) {
if (PlaintextFOpts != false) {
output.WriteRawTag(64);
output.WriteBool(PlaintextMacCommands);
output.WriteBool(PlaintextFOpts);
}
if (PlaintextFrmPayload != false) {
output.WriteRawTag(72);
output.WriteBool(PlaintextFrmPayload);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
@ -341,9 +364,13 @@ namespace Chirpstack.Api {
output.WriteRawTag(58);
output.WriteMessage(Time);
}
if (PlaintextMacCommands != false) {
if (PlaintextFOpts != false) {
output.WriteRawTag(64);
output.WriteBool(PlaintextMacCommands);
output.WriteBool(PlaintextFOpts);
}
if (PlaintextFrmPayload != false) {
output.WriteRawTag(72);
output.WriteBool(PlaintextFrmPayload);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
@ -374,7 +401,10 @@ namespace Chirpstack.Api {
if (time_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Time);
}
if (PlaintextMacCommands != false) {
if (PlaintextFOpts != false) {
size += 1 + 1;
}
if (PlaintextFrmPayload != false) {
size += 1 + 1;
}
if (_unknownFields != null) {
@ -414,8 +444,11 @@ namespace Chirpstack.Api {
}
Time.MergeFrom(other.Time);
}
if (other.PlaintextMacCommands != false) {
PlaintextMacCommands = other.PlaintextMacCommands;
if (other.PlaintextFOpts != false) {
PlaintextFOpts = other.PlaintextFOpts;
}
if (other.PlaintextFrmPayload != false) {
PlaintextFrmPayload = other.PlaintextFrmPayload;
}
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
@ -467,7 +500,11 @@ namespace Chirpstack.Api {
break;
}
case 64: {
PlaintextMacCommands = input.ReadBool();
PlaintextFOpts = input.ReadBool();
break;
}
case 72: {
PlaintextFrmPayload = input.ReadBool();
break;
}
}
@ -520,7 +557,11 @@ namespace Chirpstack.Api {
break;
}
case 64: {
PlaintextMacCommands = input.ReadBool();
PlaintextFOpts = input.ReadBool();
break;
}
case 72: {
PlaintextFrmPayload = input.ReadBool();
break;
}
}
@ -572,7 +613,8 @@ namespace Chirpstack.Api {
mType_ = other.mType_;
devAddr_ = other.devAddr_;
devEui_ = other.devEui_;
plaintextMacCommands_ = other.plaintextMacCommands_;
plaintextFOpts_ = other.plaintextFOpts_;
plaintextFrmPayload_ = other.plaintextFrmPayload_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
@ -702,18 +744,33 @@ namespace Chirpstack.Api {
}
}
/// <summary>Field number for the "plaintext_mac_commands" field.</summary>
public const int PlaintextMacCommandsFieldNumber = 9;
private bool plaintextMacCommands_;
/// <summary>Field number for the "plaintext_f_opts" field.</summary>
public const int PlaintextFOptsFieldNumber = 9;
private bool plaintextFOpts_;
/// <summary>
/// Plaintext mac-commands.
/// Plaintext f_opts mac-commands.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool PlaintextMacCommands {
get { return plaintextMacCommands_; }
public bool PlaintextFOpts {
get { return plaintextFOpts_; }
set {
plaintextMacCommands_ = value;
plaintextFOpts_ = value;
}
}
/// <summary>Field number for the "plaintext_frm_payload" field.</summary>
public const int PlaintextFrmPayloadFieldNumber = 10;
private bool plaintextFrmPayload_;
/// <summary>
/// Plaintext frm_payload.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool PlaintextFrmPayload {
get { return plaintextFrmPayload_; }
set {
plaintextFrmPayload_ = value;
}
}
@ -740,7 +797,8 @@ namespace Chirpstack.Api {
if (MType != other.MType) return false;
if (DevAddr != other.DevAddr) return false;
if (DevEui != other.DevEui) return false;
if (PlaintextMacCommands != other.PlaintextMacCommands) return false;
if (PlaintextFOpts != other.PlaintextFOpts) return false;
if (PlaintextFrmPayload != other.PlaintextFrmPayload) return false;
return Equals(_unknownFields, other._unknownFields);
}
@ -756,7 +814,8 @@ namespace Chirpstack.Api {
if (MType != global::Chirpstack.Common.MType.JoinRequest) hash ^= MType.GetHashCode();
if (DevAddr.Length != 0) hash ^= DevAddr.GetHashCode();
if (DevEui.Length != 0) hash ^= DevEui.GetHashCode();
if (PlaintextMacCommands != false) hash ^= PlaintextMacCommands.GetHashCode();
if (PlaintextFOpts != false) hash ^= PlaintextFOpts.GetHashCode();
if (PlaintextFrmPayload != false) hash ^= PlaintextFrmPayload.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
@ -807,9 +866,13 @@ namespace Chirpstack.Api {
output.WriteRawTag(66);
output.WriteString(DevEui);
}
if (PlaintextMacCommands != false) {
if (PlaintextFOpts != false) {
output.WriteRawTag(72);
output.WriteBool(PlaintextMacCommands);
output.WriteBool(PlaintextFOpts);
}
if (PlaintextFrmPayload != false) {
output.WriteRawTag(80);
output.WriteBool(PlaintextFrmPayload);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
@ -853,9 +916,13 @@ namespace Chirpstack.Api {
output.WriteRawTag(66);
output.WriteString(DevEui);
}
if (PlaintextMacCommands != false) {
if (PlaintextFOpts != false) {
output.WriteRawTag(72);
output.WriteBool(PlaintextMacCommands);
output.WriteBool(PlaintextFOpts);
}
if (PlaintextFrmPayload != false) {
output.WriteRawTag(80);
output.WriteBool(PlaintextFrmPayload);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
@ -891,7 +958,10 @@ namespace Chirpstack.Api {
if (DevEui.Length != 0) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(DevEui);
}
if (PlaintextMacCommands != false) {
if (PlaintextFOpts != false) {
size += 1 + 1;
}
if (PlaintextFrmPayload != false) {
size += 1 + 1;
}
if (_unknownFields != null) {
@ -936,8 +1006,11 @@ namespace Chirpstack.Api {
if (other.DevEui.Length != 0) {
DevEui = other.DevEui;
}
if (other.PlaintextMacCommands != false) {
PlaintextMacCommands = other.PlaintextMacCommands;
if (other.PlaintextFOpts != false) {
PlaintextFOpts = other.PlaintextFOpts;
}
if (other.PlaintextFrmPayload != false) {
PlaintextFrmPayload = other.PlaintextFrmPayload;
}
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
@ -993,7 +1066,11 @@ namespace Chirpstack.Api {
break;
}
case 72: {
PlaintextMacCommands = input.ReadBool();
PlaintextFOpts = input.ReadBool();
break;
}
case 80: {
PlaintextFrmPayload = input.ReadBool();
break;
}
}
@ -1050,7 +1127,11 @@ namespace Chirpstack.Api {
break;
}
case 72: {
PlaintextMacCommands = input.ReadBool();
PlaintextFOpts = input.ReadBool();
break;
}
case 80: {
PlaintextFrmPayload = input.ReadBool();
break;
}
}

2040
api/csharp/Chirpstack/api/Relay.cs vendored Normal file

File diff suppressed because it is too large Load Diff

412
api/csharp/Chirpstack/api/RelayGrpc.cs vendored Normal file
View File

@ -0,0 +1,412 @@
// <auto-generated>
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: api/relay.proto
// </auto-generated>
#pragma warning disable 0414, 1591, 8981
#region Designer generated code
using grpc = global::Grpc.Core;
namespace Chirpstack.Api {
/// <summary>
/// RelayService is the service providing API methos for managing relays.
/// </summary>
public static partial class RelayService
{
static readonly string __ServiceName = "api.RelayService";
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static void __Helper_SerializeMessage(global::Google.Protobuf.IMessage message, grpc::SerializationContext context)
{
#if !GRPC_DISABLE_PROTOBUF_BUFFER_SERIALIZATION
if (message is global::Google.Protobuf.IBufferMessage)
{
context.SetPayloadLength(message.CalculateSize());
global::Google.Protobuf.MessageExtensions.WriteTo(message, context.GetBufferWriter());
context.Complete();
return;
}
#endif
context.Complete(global::Google.Protobuf.MessageExtensions.ToByteArray(message));
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static class __Helper_MessageCache<T>
{
public static readonly bool IsBufferMessage = global::System.Reflection.IntrospectionExtensions.GetTypeInfo(typeof(global::Google.Protobuf.IBufferMessage)).IsAssignableFrom(typeof(T));
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static T __Helper_DeserializeMessage<T>(grpc::DeserializationContext context, global::Google.Protobuf.MessageParser<T> parser) where T : global::Google.Protobuf.IMessage<T>
{
#if !GRPC_DISABLE_PROTOBUF_BUFFER_SERIALIZATION
if (__Helper_MessageCache<T>.IsBufferMessage)
{
return parser.ParseFrom(context.PayloadAsReadOnlySequence());
}
#endif
return parser.ParseFrom(context.PayloadAsNewBuffer());
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.ListRelaysRequest> __Marshaller_api_ListRelaysRequest = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.ListRelaysRequest.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.ListRelaysResponse> __Marshaller_api_ListRelaysResponse = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.ListRelaysResponse.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.AddRelayDeviceRequest> __Marshaller_api_AddRelayDeviceRequest = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.AddRelayDeviceRequest.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Google.Protobuf.WellKnownTypes.Empty> __Marshaller_google_protobuf_Empty = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Google.Protobuf.WellKnownTypes.Empty.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.RemoveRelayDeviceRequest> __Marshaller_api_RemoveRelayDeviceRequest = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.RemoveRelayDeviceRequest.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.ListRelayDevicesRequest> __Marshaller_api_ListRelayDevicesRequest = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.ListRelayDevicesRequest.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::Chirpstack.Api.ListRelayDevicesResponse> __Marshaller_api_ListRelayDevicesResponse = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::Chirpstack.Api.ListRelayDevicesResponse.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::Chirpstack.Api.ListRelaysRequest, global::Chirpstack.Api.ListRelaysResponse> __Method_List = new grpc::Method<global::Chirpstack.Api.ListRelaysRequest, global::Chirpstack.Api.ListRelaysResponse>(
grpc::MethodType.Unary,
__ServiceName,
"List",
__Marshaller_api_ListRelaysRequest,
__Marshaller_api_ListRelaysResponse);
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::Chirpstack.Api.AddRelayDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty> __Method_AddDevice = new grpc::Method<global::Chirpstack.Api.AddRelayDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty>(
grpc::MethodType.Unary,
__ServiceName,
"AddDevice",
__Marshaller_api_AddRelayDeviceRequest,
__Marshaller_google_protobuf_Empty);
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::Chirpstack.Api.RemoveRelayDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty> __Method_RemoveDevice = new grpc::Method<global::Chirpstack.Api.RemoveRelayDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty>(
grpc::MethodType.Unary,
__ServiceName,
"RemoveDevice",
__Marshaller_api_RemoveRelayDeviceRequest,
__Marshaller_google_protobuf_Empty);
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::Chirpstack.Api.ListRelayDevicesRequest, global::Chirpstack.Api.ListRelayDevicesResponse> __Method_ListDevices = new grpc::Method<global::Chirpstack.Api.ListRelayDevicesRequest, global::Chirpstack.Api.ListRelayDevicesResponse>(
grpc::MethodType.Unary,
__ServiceName,
"ListDevices",
__Marshaller_api_ListRelayDevicesRequest,
__Marshaller_api_ListRelayDevicesResponse);
/// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Chirpstack.Api.RelayReflection.Descriptor.Services[0]; }
}
/// <summary>Base class for server-side implementations of RelayService</summary>
[grpc::BindServiceMethod(typeof(RelayService), "BindService")]
public abstract partial class RelayServiceBase
{
/// <summary>
/// List lists the relays for the given application id.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
/// <returns>The response to send back to the client (wrapped by a task).</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::System.Threading.Tasks.Task<global::Chirpstack.Api.ListRelaysResponse> List(global::Chirpstack.Api.ListRelaysRequest request, grpc::ServerCallContext context)
{
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
/// <summary>
/// AddDevice adds the given device to the relay.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
/// <returns>The response to send back to the client (wrapped by a task).</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::System.Threading.Tasks.Task<global::Google.Protobuf.WellKnownTypes.Empty> AddDevice(global::Chirpstack.Api.AddRelayDeviceRequest request, grpc::ServerCallContext context)
{
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
/// <summary>
/// RemoveDevice removes the given device from the relay.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
/// <returns>The response to send back to the client (wrapped by a task).</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::System.Threading.Tasks.Task<global::Google.Protobuf.WellKnownTypes.Empty> RemoveDevice(global::Chirpstack.Api.RemoveRelayDeviceRequest request, grpc::ServerCallContext context)
{
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
/// <summary>
/// ListDevices lists the devices for the given relay.
/// </summary>
/// <param name="request">The request received from the client.</param>
/// <param name="context">The context of the server-side call handler being invoked.</param>
/// <returns>The response to send back to the client (wrapped by a task).</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::System.Threading.Tasks.Task<global::Chirpstack.Api.ListRelayDevicesResponse> ListDevices(global::Chirpstack.Api.ListRelayDevicesRequest request, grpc::ServerCallContext context)
{
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
}
/// <summary>Client for RelayService</summary>
public partial class RelayServiceClient : grpc::ClientBase<RelayServiceClient>
{
/// <summary>Creates a new client for RelayService</summary>
/// <param name="channel">The channel to use to make remote calls.</param>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public RelayServiceClient(grpc::ChannelBase channel) : base(channel)
{
}
/// <summary>Creates a new client for RelayService that uses a custom <c>CallInvoker</c>.</summary>
/// <param name="callInvoker">The callInvoker to use to make remote calls.</param>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public RelayServiceClient(grpc::CallInvoker callInvoker) : base(callInvoker)
{
}
/// <summary>Protected parameterless constructor to allow creation of test doubles.</summary>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
protected RelayServiceClient() : base()
{
}
/// <summary>Protected constructor to allow creation of configured clients.</summary>
/// <param name="configuration">The client configuration.</param>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
protected RelayServiceClient(ClientBaseConfiguration configuration) : base(configuration)
{
}
/// <summary>
/// List lists the relays for the given application id.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Chirpstack.Api.ListRelaysResponse List(global::Chirpstack.Api.ListRelaysRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return List(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// List lists the relays for the given application id.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Chirpstack.Api.ListRelaysResponse List(global::Chirpstack.Api.ListRelaysRequest request, grpc::CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_List, null, options, request);
}
/// <summary>
/// List lists the relays for the given application id.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Chirpstack.Api.ListRelaysResponse> ListAsync(global::Chirpstack.Api.ListRelaysRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return ListAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// List lists the relays for the given application id.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Chirpstack.Api.ListRelaysResponse> ListAsync(global::Chirpstack.Api.ListRelaysRequest request, grpc::CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_List, null, options, request);
}
/// <summary>
/// AddDevice adds the given device to the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Google.Protobuf.WellKnownTypes.Empty AddDevice(global::Chirpstack.Api.AddRelayDeviceRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return AddDevice(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// AddDevice adds the given device to the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Google.Protobuf.WellKnownTypes.Empty AddDevice(global::Chirpstack.Api.AddRelayDeviceRequest request, grpc::CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_AddDevice, null, options, request);
}
/// <summary>
/// AddDevice adds the given device to the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Google.Protobuf.WellKnownTypes.Empty> AddDeviceAsync(global::Chirpstack.Api.AddRelayDeviceRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return AddDeviceAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// AddDevice adds the given device to the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Google.Protobuf.WellKnownTypes.Empty> AddDeviceAsync(global::Chirpstack.Api.AddRelayDeviceRequest request, grpc::CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_AddDevice, null, options, request);
}
/// <summary>
/// RemoveDevice removes the given device from the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Google.Protobuf.WellKnownTypes.Empty RemoveDevice(global::Chirpstack.Api.RemoveRelayDeviceRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return RemoveDevice(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// RemoveDevice removes the given device from the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Google.Protobuf.WellKnownTypes.Empty RemoveDevice(global::Chirpstack.Api.RemoveRelayDeviceRequest request, grpc::CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_RemoveDevice, null, options, request);
}
/// <summary>
/// RemoveDevice removes the given device from the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Google.Protobuf.WellKnownTypes.Empty> RemoveDeviceAsync(global::Chirpstack.Api.RemoveRelayDeviceRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return RemoveDeviceAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// RemoveDevice removes the given device from the relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Google.Protobuf.WellKnownTypes.Empty> RemoveDeviceAsync(global::Chirpstack.Api.RemoveRelayDeviceRequest request, grpc::CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_RemoveDevice, null, options, request);
}
/// <summary>
/// ListDevices lists the devices for the given relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Chirpstack.Api.ListRelayDevicesResponse ListDevices(global::Chirpstack.Api.ListRelayDevicesRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return ListDevices(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// ListDevices lists the devices for the given relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The response received from the server.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::Chirpstack.Api.ListRelayDevicesResponse ListDevices(global::Chirpstack.Api.ListRelayDevicesRequest request, grpc::CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_ListDevices, null, options, request);
}
/// <summary>
/// ListDevices lists the devices for the given relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
/// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
/// <param name="cancellationToken">An optional token for canceling the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Chirpstack.Api.ListRelayDevicesResponse> ListDevicesAsync(global::Chirpstack.Api.ListRelayDevicesRequest request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return ListDevicesAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
/// <summary>
/// ListDevices lists the devices for the given relay.
/// </summary>
/// <param name="request">The request to send to the server.</param>
/// <param name="options">The options for the call.</param>
/// <returns>The call object.</returns>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::Chirpstack.Api.ListRelayDevicesResponse> ListDevicesAsync(global::Chirpstack.Api.ListRelayDevicesRequest request, grpc::CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_ListDevices, null, options, request);
}
/// <summary>Creates a new instance of client from given <c>ClientBaseConfiguration</c>.</summary>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
protected override RelayServiceClient NewInstance(ClientBaseConfiguration configuration)
{
return new RelayServiceClient(configuration);
}
}
/// <summary>Creates service definition that can be registered with a server</summary>
/// <param name="serviceImpl">An object implementing the server-side handling logic.</param>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public static grpc::ServerServiceDefinition BindService(RelayServiceBase serviceImpl)
{
return grpc::ServerServiceDefinition.CreateBuilder()
.AddMethod(__Method_List, serviceImpl.List)
.AddMethod(__Method_AddDevice, serviceImpl.AddDevice)
.AddMethod(__Method_RemoveDevice, serviceImpl.RemoveDevice)
.AddMethod(__Method_ListDevices, serviceImpl.ListDevices).Build();
}
/// <summary>Register service method with a service binder with or without implementation. Useful when customizing the service binding logic.
/// Note: this method is part of an experimental API that can change or be removed without any prior notice.</summary>
/// <param name="serviceBinder">Service methods will be bound by calling <c>AddMethod</c> on this object.</param>
/// <param name="serviceImpl">An object implementing the server-side handling logic.</param>
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public static void BindService(grpc::ServiceBinderBase serviceBinder, RelayServiceBase serviceImpl)
{
serviceBinder.AddMethod(__Method_List, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.ListRelaysRequest, global::Chirpstack.Api.ListRelaysResponse>(serviceImpl.List));
serviceBinder.AddMethod(__Method_AddDevice, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.AddRelayDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty>(serviceImpl.AddDevice));
serviceBinder.AddMethod(__Method_RemoveDevice, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.RemoveRelayDeviceRequest, global::Google.Protobuf.WellKnownTypes.Empty>(serviceImpl.RemoveDevice));
serviceBinder.AddMethod(__Method_ListDevices, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::Chirpstack.Api.ListRelayDevicesRequest, global::Chirpstack.Api.ListRelayDevicesResponse>(serviceImpl.ListDevices));
}
}
}
#endregion

View File

@ -26,80 +26,82 @@ namespace Chirpstack.Api {
string.Concat(
"ChBhcGkvdGVuYW50LnByb3RvEgNhcGkaHGdvb2dsZS9hcGkvYW5ub3RhdGlv",
"bnMucHJvdG8aH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8aG2dv",
"b2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90byLDAQoGVGVuYW50EgoKAmlkGAEg",
"b2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90byKVAgoGVGVuYW50EgoKAmlkGAEg",
"ASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSGQoRY2Fu",
"X2hhdmVfZ2F0ZXdheXMYBCABKAgSGQoRbWF4X2dhdGV3YXlfY291bnQYBSAB",
"KA0SGAoQbWF4X2RldmljZV9jb3VudBgGIAEoDRIbChNwcml2YXRlX2dhdGV3",
"YXlzX3VwGAcgASgIEh0KFXByaXZhdGVfZ2F0ZXdheXNfZG93bhgIIAEoCCKW",
"AgoOVGVuYW50TGlzdEl0ZW0SCgoCaWQYASABKAkSLgoKY3JlYXRlZF9hdBgC",
"IAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9h",
"dBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDAoEbmFtZRgE",
"IAEoCRIZChFjYW5faGF2ZV9nYXRld2F5cxgFIAEoCBIbChNwcml2YXRlX2dh",
"dGV3YXlzX3VwGAYgASgIEh0KFXByaXZhdGVfZ2F0ZXdheXNfZG93bhgJIAEo",
"CBIZChFtYXhfZ2F0ZXdheV9jb3VudBgHIAEoDRIYChBtYXhfZGV2aWNlX2Nv",
"dW50GAggASgNIjIKE0NyZWF0ZVRlbmFudFJlcXVlc3QSGwoGdGVuYW50GAEg",
"ASgLMgsuYXBpLlRlbmFudCIiChRDcmVhdGVUZW5hbnRSZXNwb25zZRIKCgJp",
"ZBgBIAEoCSIeChBHZXRUZW5hbnRSZXF1ZXN0EgoKAmlkGAEgASgJIpABChFH",
"ZXRUZW5hbnRSZXNwb25zZRIbCgZ0ZW5hbnQYASABKAsyCy5hcGkuVGVuYW50",
"Ei4KCmNyZWF0ZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0",
"YW1wEi4KCnVwZGF0ZWRfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGlt",
"ZXN0YW1wIjIKE1VwZGF0ZVRlbmFudFJlcXVlc3QSGwoGdGVuYW50GAEgASgL",
"MgsuYXBpLlRlbmFudCIhChNEZWxldGVUZW5hbnRSZXF1ZXN0EgoKAmlkGAEg",
"ASgJIlQKEkxpc3RUZW5hbnRzUmVxdWVzdBINCgVsaW1pdBgBIAEoDRIOCgZv",
"ZmZzZXQYAiABKA0SDgoGc2VhcmNoGAMgASgJEg8KB3VzZXJfaWQYBCABKAki",
"TwoTTGlzdFRlbmFudHNSZXNwb25zZRITCgt0b3RhbF9jb3VudBgBIAEoDRIj",
"CgZyZXN1bHQYAiADKAsyEy5hcGkuVGVuYW50TGlzdEl0ZW0ihAEKClRlbmFu",
"dFVzZXISEQoJdGVuYW50X2lkGAEgASgJEg8KB3VzZXJfaWQYAiABKAkSEAoI",
"aXNfYWRtaW4YAyABKAgSFwoPaXNfZGV2aWNlX2FkbWluGAQgASgIEhgKEGlz",
"X2dhdGV3YXlfYWRtaW4YBSABKAgSDQoFZW1haWwYBiABKAki7AEKElRlbmFu",
"dFVzZXJMaXN0SXRlbRIRCgl0ZW5hbnRfaWQYASABKAkSDwoHdXNlcl9pZBgC",
"IAEoCRIuCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRp",
"bWVzdGFtcBIuCgp1cGRhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVm",
"LlRpbWVzdGFtcBINCgVlbWFpbBgFIAEoCRIQCghpc19hZG1pbhgGIAEoCBIX",
"Cg9pc19kZXZpY2VfYWRtaW4YByABKAgSGAoQaXNfZ2F0ZXdheV9hZG1pbhgI",
"IAEoCCI8ChRBZGRUZW5hbnRVc2VyUmVxdWVzdBIkCgt0ZW5hbnRfdXNlchgB",
"IAEoCzIPLmFwaS5UZW5hbnRVc2VyIjoKFEdldFRlbmFudFVzZXJSZXF1ZXN0",
"EhEKCXRlbmFudF9pZBgBIAEoCRIPCgd1c2VyX2lkGAIgASgJIp0BChVHZXRU",
"ZW5hbnRVc2VyUmVzcG9uc2USJAoLdGVuYW50X3VzZXIYASABKAsyDy5hcGku",
"VGVuYW50VXNlchIuCgpjcmVhdGVkX2F0GAIgASgLMhouZ29vZ2xlLnByb3Rv",
"YnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnBy",
"b3RvYnVmLlRpbWVzdGFtcCI/ChdVcGRhdGVUZW5hbnRVc2VyUmVxdWVzdBIk",
"Cgt0ZW5hbnRfdXNlchgBIAEoCzIPLmFwaS5UZW5hbnRVc2VyIj0KF0RlbGV0",
"ZVRlbmFudFVzZXJSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEoCRIPCgd1c2Vy",
"X2lkGAIgASgJIkoKFkxpc3RUZW5hbnRVc2Vyc1JlcXVlc3QSEQoJdGVuYW50",
"X2lkGAEgASgJEg0KBWxpbWl0GAIgASgNEg4KBm9mZnNldBgDIAEoDSJXChdM",
"aXN0VGVuYW50VXNlcnNSZXNwb25zZRITCgt0b3RhbF9jb3VudBgBIAEoDRIn",
"CgZyZXN1bHQYAiADKAsyFy5hcGkuVGVuYW50VXNlckxpc3RJdGVtMqIICg1U",
"ZW5hbnRTZXJ2aWNlElYKBkNyZWF0ZRIYLmFwaS5DcmVhdGVUZW5hbnRSZXF1",
"ZXN0GhkuYXBpLkNyZWF0ZVRlbmFudFJlc3BvbnNlIheC0+STAhEiDC9hcGkv",
"dGVuYW50czoBKhJPCgNHZXQSFS5hcGkuR2V0VGVuYW50UmVxdWVzdBoWLmFw",
"aS5HZXRUZW5hbnRSZXNwb25zZSIZgtPkkwITEhEvYXBpL3RlbmFudHMve2lk",
"fRJfCgZVcGRhdGUSGC5hcGkuVXBkYXRlVGVuYW50UmVxdWVzdBoWLmdvb2ds",
"ZS5wcm90b2J1Zi5FbXB0eSIjgtPkkwIdGhgvYXBpL3RlbmFudHMve3RlbmFu",
"dC5pZH06ASoSVQoGRGVsZXRlEhguYXBpLkRlbGV0ZVRlbmFudFJlcXVlc3Qa",
"Fi5nb29nbGUucHJvdG9idWYuRW1wdHkiGYLT5JMCEyoRL2FwaS90ZW5hbnRz",
"L3tpZH0STwoETGlzdBIXLmFwaS5MaXN0VGVuYW50c1JlcXVlc3QaGC5hcGku",
"TGlzdFRlbmFudHNSZXNwb25zZSIUgtPkkwIOEgwvYXBpL3RlbmFudHMScwoH",
"QWRkVXNlchIZLmFwaS5BZGRUZW5hbnRVc2VyUmVxdWVzdBoWLmdvb2dsZS5w",
"cm90b2J1Zi5FbXB0eSI1gtPkkwIvIiovYXBpL3RlbmFudHMve3RlbmFudF91",
"c2VyLnRlbmFudF9pZH0vdXNlcnM6ASoScgoHR2V0VXNlchIZLmFwaS5HZXRU",
"ZW5hbnRVc2VyUmVxdWVzdBoaLmFwaS5HZXRUZW5hbnRVc2VyUmVzcG9uc2Ui",
"MILT5JMCKhIoL2FwaS90ZW5hbnRzL3t0ZW5hbnRfaWR9L3VzZXJzL3t1c2Vy",
"X2lkfRKPAQoKVXBkYXRlVXNlchIcLmFwaS5VcGRhdGVUZW5hbnRVc2VyUmVx",
"dWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSJLgtPkkwJFGkAvYXBpL3Rl",
"bmFudHMve3RlbmFudF91c2VyLnRlbmFudF9pZH0vdXNlcnMve3RlbmFudF91",
"c2VyLnVzZXJfaWR9OgEqEnQKCkRlbGV0ZVVzZXISHC5hcGkuRGVsZXRlVGVu",
"YW50VXNlclJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkiMILT5JMC",
"KiooL2FwaS90ZW5hbnRzL3t0ZW5hbnRfaWR9L3VzZXJzL3t1c2VyX2lkfRJu",
"CglMaXN0VXNlcnMSGy5hcGkuTGlzdFRlbmFudFVzZXJzUmVxdWVzdBocLmFw",
"aS5MaXN0VGVuYW50VXNlcnNSZXNwb25zZSImgtPkkwIgEh4vYXBpL3RlbmFu",
"dHMve3RlbmFudF9pZH0vdXNlcnNCYwoRaW8uY2hpcnBzdGFjay5hcGlCC1Rl",
"bmFudFByb3RvUAFaLmdpdGh1Yi5jb20vY2hpcnBzdGFjay9jaGlycHN0YWNr",
"L2FwaS9nby92NC9hcGmqAg5DaGlycHN0YWNrLkFwaWIGcHJvdG8z"));
"YXlzX3VwGAcgASgIEh0KFXByaXZhdGVfZ2F0ZXdheXNfZG93bhgIIAEoCBIj",
"CgR0YWdzGAkgAygLMhUuYXBpLlRlbmFudC5UYWdzRW50cnkaKwoJVGFnc0Vu",
"dHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEilgIKDlRlbmFu",
"dExpc3RJdGVtEgoKAmlkGAEgASgJEi4KCmNyZWF0ZWRfYXQYAiABKAsyGi5n",
"b29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYAyABKAsy",
"Gi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEgwKBG5hbWUYBCABKAkSGQoR",
"Y2FuX2hhdmVfZ2F0ZXdheXMYBSABKAgSGwoTcHJpdmF0ZV9nYXRld2F5c191",
"cBgGIAEoCBIdChVwcml2YXRlX2dhdGV3YXlzX2Rvd24YCSABKAgSGQoRbWF4",
"X2dhdGV3YXlfY291bnQYByABKA0SGAoQbWF4X2RldmljZV9jb3VudBgIIAEo",
"DSIyChNDcmVhdGVUZW5hbnRSZXF1ZXN0EhsKBnRlbmFudBgBIAEoCzILLmFw",
"aS5UZW5hbnQiIgoUQ3JlYXRlVGVuYW50UmVzcG9uc2USCgoCaWQYASABKAki",
"HgoQR2V0VGVuYW50UmVxdWVzdBIKCgJpZBgBIAEoCSKQAQoRR2V0VGVuYW50",
"UmVzcG9uc2USGwoGdGVuYW50GAEgASgLMgsuYXBpLlRlbmFudBIuCgpjcmVh",
"dGVkX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1",
"cGRhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIy",
"ChNVcGRhdGVUZW5hbnRSZXF1ZXN0EhsKBnRlbmFudBgBIAEoCzILLmFwaS5U",
"ZW5hbnQiIQoTRGVsZXRlVGVuYW50UmVxdWVzdBIKCgJpZBgBIAEoCSJUChJM",
"aXN0VGVuYW50c1JlcXVlc3QSDQoFbGltaXQYASABKA0SDgoGb2Zmc2V0GAIg",
"ASgNEg4KBnNlYXJjaBgDIAEoCRIPCgd1c2VyX2lkGAQgASgJIk8KE0xpc3RU",
"ZW5hbnRzUmVzcG9uc2USEwoLdG90YWxfY291bnQYASABKA0SIwoGcmVzdWx0",
"GAIgAygLMhMuYXBpLlRlbmFudExpc3RJdGVtIoQBCgpUZW5hbnRVc2VyEhEK",
"CXRlbmFudF9pZBgBIAEoCRIPCgd1c2VyX2lkGAIgASgJEhAKCGlzX2FkbWlu",
"GAMgASgIEhcKD2lzX2RldmljZV9hZG1pbhgEIAEoCBIYChBpc19nYXRld2F5",
"X2FkbWluGAUgASgIEg0KBWVtYWlsGAYgASgJIuwBChJUZW5hbnRVc2VyTGlz",
"dEl0ZW0SEQoJdGVuYW50X2lkGAEgASgJEg8KB3VzZXJfaWQYAiABKAkSLgoK",
"Y3JlYXRlZF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAS",
"LgoKdXBkYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3Rh",
"bXASDQoFZW1haWwYBSABKAkSEAoIaXNfYWRtaW4YBiABKAgSFwoPaXNfZGV2",
"aWNlX2FkbWluGAcgASgIEhgKEGlzX2dhdGV3YXlfYWRtaW4YCCABKAgiPAoU",
"QWRkVGVuYW50VXNlclJlcXVlc3QSJAoLdGVuYW50X3VzZXIYASABKAsyDy5h",
"cGkuVGVuYW50VXNlciI6ChRHZXRUZW5hbnRVc2VyUmVxdWVzdBIRCgl0ZW5h",
"bnRfaWQYASABKAkSDwoHdXNlcl9pZBgCIAEoCSKdAQoVR2V0VGVuYW50VXNl",
"clJlc3BvbnNlEiQKC3RlbmFudF91c2VyGAEgASgLMg8uYXBpLlRlbmFudFVz",
"ZXISLgoKY3JlYXRlZF9hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1l",
"c3RhbXASLgoKdXBkYXRlZF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5U",
"aW1lc3RhbXAiPwoXVXBkYXRlVGVuYW50VXNlclJlcXVlc3QSJAoLdGVuYW50",
"X3VzZXIYASABKAsyDy5hcGkuVGVuYW50VXNlciI9ChdEZWxldGVUZW5hbnRV",
"c2VyUmVxdWVzdBIRCgl0ZW5hbnRfaWQYASABKAkSDwoHdXNlcl9pZBgCIAEo",
"CSJKChZMaXN0VGVuYW50VXNlcnNSZXF1ZXN0EhEKCXRlbmFudF9pZBgBIAEo",
"CRINCgVsaW1pdBgCIAEoDRIOCgZvZmZzZXQYAyABKA0iVwoXTGlzdFRlbmFu",
"dFVzZXJzUmVzcG9uc2USEwoLdG90YWxfY291bnQYASABKA0SJwoGcmVzdWx0",
"GAIgAygLMhcuYXBpLlRlbmFudFVzZXJMaXN0SXRlbTKiCAoNVGVuYW50U2Vy",
"dmljZRJWCgZDcmVhdGUSGC5hcGkuQ3JlYXRlVGVuYW50UmVxdWVzdBoZLmFw",
"aS5DcmVhdGVUZW5hbnRSZXNwb25zZSIXgtPkkwIRIgwvYXBpL3RlbmFudHM6",
"ASoSTwoDR2V0EhUuYXBpLkdldFRlbmFudFJlcXVlc3QaFi5hcGkuR2V0VGVu",
"YW50UmVzcG9uc2UiGYLT5JMCExIRL2FwaS90ZW5hbnRzL3tpZH0SXwoGVXBk",
"YXRlEhguYXBpLlVwZGF0ZVRlbmFudFJlcXVlc3QaFi5nb29nbGUucHJvdG9i",
"dWYuRW1wdHkiI4LT5JMCHRoYL2FwaS90ZW5hbnRzL3t0ZW5hbnQuaWR9OgEq",
"ElUKBkRlbGV0ZRIYLmFwaS5EZWxldGVUZW5hbnRSZXF1ZXN0GhYuZ29vZ2xl",
"LnByb3RvYnVmLkVtcHR5IhmC0+STAhMqES9hcGkvdGVuYW50cy97aWR9Ek8K",
"BExpc3QSFy5hcGkuTGlzdFRlbmFudHNSZXF1ZXN0GhguYXBpLkxpc3RUZW5h",
"bnRzUmVzcG9uc2UiFILT5JMCDhIML2FwaS90ZW5hbnRzEnMKB0FkZFVzZXIS",
"GS5hcGkuQWRkVGVuYW50VXNlclJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYu",
"RW1wdHkiNYLT5JMCLyIqL2FwaS90ZW5hbnRzL3t0ZW5hbnRfdXNlci50ZW5h",
"bnRfaWR9L3VzZXJzOgEqEnIKB0dldFVzZXISGS5hcGkuR2V0VGVuYW50VXNl",
"clJlcXVlc3QaGi5hcGkuR2V0VGVuYW50VXNlclJlc3BvbnNlIjCC0+STAioS",
"KC9hcGkvdGVuYW50cy97dGVuYW50X2lkfS91c2Vycy97dXNlcl9pZH0SjwEK",
"ClVwZGF0ZVVzZXISHC5hcGkuVXBkYXRlVGVuYW50VXNlclJlcXVlc3QaFi5n",
"b29nbGUucHJvdG9idWYuRW1wdHkiS4LT5JMCRRpAL2FwaS90ZW5hbnRzL3t0",
"ZW5hbnRfdXNlci50ZW5hbnRfaWR9L3VzZXJzL3t0ZW5hbnRfdXNlci51c2Vy",
"X2lkfToBKhJ0CgpEZWxldGVVc2VyEhwuYXBpLkRlbGV0ZVRlbmFudFVzZXJS",
"ZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5IjCC0+STAioqKC9hcGkv",
"dGVuYW50cy97dGVuYW50X2lkfS91c2Vycy97dXNlcl9pZH0SbgoJTGlzdFVz",
"ZXJzEhsuYXBpLkxpc3RUZW5hbnRVc2Vyc1JlcXVlc3QaHC5hcGkuTGlzdFRl",
"bmFudFVzZXJzUmVzcG9uc2UiJoLT5JMCIBIeL2FwaS90ZW5hbnRzL3t0ZW5h",
"bnRfaWR9L3VzZXJzQmMKEWlvLmNoaXJwc3RhY2suYXBpQgtUZW5hbnRQcm90",
"b1ABWi5naXRodWIuY29tL2NoaXJwc3RhY2svY2hpcnBzdGFjay9hcGkvZ28v",
"djQvYXBpqgIOQ2hpcnBzdGFjay5BcGliBnByb3RvMw=="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Google.Api.AnnotationsReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.EmptyReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.Tenant), global::Chirpstack.Api.Tenant.Parser, new[]{ "Id", "Name", "Description", "CanHaveGateways", "MaxGatewayCount", "MaxDeviceCount", "PrivateGatewaysUp", "PrivateGatewaysDown" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.Tenant), global::Chirpstack.Api.Tenant.Parser, new[]{ "Id", "Name", "Description", "CanHaveGateways", "MaxGatewayCount", "MaxDeviceCount", "PrivateGatewaysUp", "PrivateGatewaysDown", "Tags" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.TenantListItem), global::Chirpstack.Api.TenantListItem.Parser, new[]{ "Id", "CreatedAt", "UpdatedAt", "Name", "CanHaveGateways", "PrivateGatewaysUp", "PrivateGatewaysDown", "MaxGatewayCount", "MaxDeviceCount" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.CreateTenantRequest), global::Chirpstack.Api.CreateTenantRequest.Parser, new[]{ "Tenant" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Api.CreateTenantResponse), global::Chirpstack.Api.CreateTenantResponse.Parser, new[]{ "Id" }, null, null, null, null),
@ -166,6 +168,7 @@ namespace Chirpstack.Api {
maxDeviceCount_ = other.maxDeviceCount_;
privateGatewaysUp_ = other.privateGatewaysUp_;
privateGatewaysDown_ = other.privateGatewaysDown_;
tags_ = other.tags_.Clone();
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
@ -303,6 +306,22 @@ namespace Chirpstack.Api {
}
}
/// <summary>Field number for the "tags" field.</summary>
public const int TagsFieldNumber = 9;
private static readonly pbc::MapField<string, string>.Codec _map_tags_codec
= new pbc::MapField<string, string>.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForString(18, ""), 74);
private readonly pbc::MapField<string, string> tags_ = new pbc::MapField<string, string>();
/// <summary>
/// Tags (user defined).
/// These tags can be used to add additional information to the tenant. These
/// tags are NOT exposed in the integration events.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::MapField<string, string> Tags {
get { return tags_; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
@ -326,6 +345,7 @@ namespace Chirpstack.Api {
if (MaxDeviceCount != other.MaxDeviceCount) return false;
if (PrivateGatewaysUp != other.PrivateGatewaysUp) return false;
if (PrivateGatewaysDown != other.PrivateGatewaysDown) return false;
if (!Tags.Equals(other.Tags)) return false;
return Equals(_unknownFields, other._unknownFields);
}
@ -341,6 +361,7 @@ namespace Chirpstack.Api {
if (MaxDeviceCount != 0) hash ^= MaxDeviceCount.GetHashCode();
if (PrivateGatewaysUp != false) hash ^= PrivateGatewaysUp.GetHashCode();
if (PrivateGatewaysDown != false) hash ^= PrivateGatewaysDown.GetHashCode();
hash ^= Tags.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
@ -391,6 +412,7 @@ namespace Chirpstack.Api {
output.WriteRawTag(64);
output.WriteBool(PrivateGatewaysDown);
}
tags_.WriteTo(output, _map_tags_codec);
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
@ -433,6 +455,7 @@ namespace Chirpstack.Api {
output.WriteRawTag(64);
output.WriteBool(PrivateGatewaysDown);
}
tags_.WriteTo(ref output, _map_tags_codec);
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
@ -467,6 +490,7 @@ namespace Chirpstack.Api {
if (PrivateGatewaysDown != false) {
size += 1 + 1;
}
size += tags_.CalculateSize(_map_tags_codec);
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
@ -503,6 +527,7 @@ namespace Chirpstack.Api {
if (other.PrivateGatewaysDown != false) {
PrivateGatewaysDown = other.PrivateGatewaysDown;
}
tags_.Add(other.tags_);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
@ -550,6 +575,10 @@ namespace Chirpstack.Api {
PrivateGatewaysDown = input.ReadBool();
break;
}
case 74: {
tags_.AddEntriesFrom(input, _map_tags_codec);
break;
}
}
}
#endif
@ -597,6 +626,10 @@ namespace Chirpstack.Api {
PrivateGatewaysDown = input.ReadBool();
break;
}
case 74: {
tags_.AddEntriesFrom(ref input, _map_tags_codec);
break;
}
}
}
}

View File

@ -53,12 +53,13 @@ namespace Chirpstack.Common {
"X1JFU09MVkVSX0dOU1MQBRIVChFHRU9fUkVTT0xWRVJfV0lGSRAGKisKC0Fn",
"Z3JlZ2F0aW9uEggKBEhPVVIQABIHCgNEQVkQARIJCgVNT05USBACKjIKCk1l",
"dHJpY0tpbmQSCwoHQ09VTlRFUhAAEgwKCEFCU09MVVRFEAESCQoFR0FVR0UQ",
"AkJpChFpby5jaGlycHN0YWNrLmFwaUILQ29tbW9uUHJvdG9QAVoxZ2l0aHVi",
"LmNvbS9jaGlycHN0YWNrL2NoaXJwc3RhY2svYXBpL2dvL3Y0L2NvbW1vbqoC",
"EUNoaXJwc3RhY2suQ29tbW9uYgZwcm90bzM="));
"Aio0CgtEZXZpY2VDbGFzcxILCgdDTEFTU19BEAASCwoHQ0xBU1NfQhABEgsK",
"B0NMQVNTX0MQAkJpChFpby5jaGlycHN0YWNrLmFwaUILQ29tbW9uUHJvdG9Q",
"AVoxZ2l0aHViLmNvbS9jaGlycHN0YWNrL2NoaXJwc3RhY2svYXBpL2dvL3Y0",
"L2NvbW1vbqoCEUNoaXJwc3RhY2suQ29tbW9uYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Chirpstack.Common.Modulation), typeof(global::Chirpstack.Common.Region), typeof(global::Chirpstack.Common.MType), typeof(global::Chirpstack.Common.MacVersion), typeof(global::Chirpstack.Common.RegParamsRevision), typeof(global::Chirpstack.Common.LocationSource), typeof(global::Chirpstack.Common.Aggregation), typeof(global::Chirpstack.Common.MetricKind), }, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Chirpstack.Common.Modulation), typeof(global::Chirpstack.Common.Region), typeof(global::Chirpstack.Common.MType), typeof(global::Chirpstack.Common.MacVersion), typeof(global::Chirpstack.Common.RegParamsRevision), typeof(global::Chirpstack.Common.LocationSource), typeof(global::Chirpstack.Common.Aggregation), typeof(global::Chirpstack.Common.MetricKind), typeof(global::Chirpstack.Common.DeviceClass), }, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Common.Location), global::Chirpstack.Common.Location.Parser, new[]{ "Latitude", "Longitude", "Altitude", "Source", "Accuracy" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Common.KeyEnvelope), global::Chirpstack.Common.KeyEnvelope.Parser, new[]{ "KekLabel", "AesKey" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Common.Metric), global::Chirpstack.Common.Metric.Parser, new[]{ "Name", "Timestamps", "Datasets", "Kind" }, null, null, null, null),
@ -244,7 +245,8 @@ namespace Chirpstack.Common {
public enum MetricKind {
/// <summary>
/// Incrementing counters that never decrease (these are not reset on each reading).
/// Incrementing counters that never decrease (these are not reset on each
/// reading).
/// </summary>
[pbr::OriginalName("COUNTER")] Counter = 0,
/// <summary>
@ -257,6 +259,21 @@ namespace Chirpstack.Common {
[pbr::OriginalName("GAUGE")] Gauge = 2,
}
public enum DeviceClass {
/// <summary>
/// Class-A.
/// </summary>
[pbr::OriginalName("CLASS_A")] ClassA = 0,
/// <summary>
/// Class-B.
/// </summary>
[pbr::OriginalName("CLASS_B")] ClassB = 1,
/// <summary>
/// Class-C.
/// </summary>
[pbr::OriginalName("CLASS_C")] ClassC = 2,
}
#endregion
#region Messages

View File

@ -451,15 +451,18 @@ namespace Google.Api {
/// 1. Leaf request fields (recursive expansion nested messages in the request
/// message) are classified into three categories:
/// - Fields referred by the path template. They are passed via the URL path.
/// - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP
/// - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They
/// are passed via the HTTP
/// request body.
/// - All other fields are passed via the URL query parameters, and the
/// parameter name is the field path in the request message. A repeated
/// field can be represented as multiple query parameters under the same
/// name.
/// 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields
/// 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL
/// query parameter, all fields
/// are passed via URL path and HTTP request body.
/// 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all
/// 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP
/// request body, all
/// fields are passed via URL path and URL query parameters.
///
/// ### Path template syntax
@ -626,7 +629,8 @@ namespace Google.Api {
/// <summary>
/// Selects a method to which this rule applies.
///
/// Refer to [selector][google.api.DocumentationRule.selector] for syntax details.
/// Refer to [selector][google.api.DocumentationRule.selector] for syntax
/// details.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]

View File

@ -37,158 +37,159 @@ namespace Chirpstack.Gateway {
"KAsyFS5ndy5Gc2tNb2R1bGF0aW9uSW5mb0gAEjsKF2xyX2Zoc3NfbW9kdWxh",
"dGlvbl9pbmZvGAUgASgLMhguZ3cuTHJGaHNzTW9kdWxhdGlvbkluZm9IAEIR",
"Cg9tb2R1bGF0aW9uX2luZm8iRQoMVXBsaW5rVHhJbmZvEhEKCWZyZXF1ZW5j",
"eRgBIAEoDRIiCgptb2R1bGF0aW9uGAIgASgLMg4uZ3cuTW9kdWxhdGlvbiKc",
"eRgBIAEoDRIiCgptb2R1bGF0aW9uGAIgASgLMg4uZ3cuTW9kdWxhdGlvbiK+",
"AQoSTG9yYU1vZHVsYXRpb25JbmZvEhEKCWJhbmR3aWR0aBgBIAEoDRIYChBz",
"cHJlYWRpbmdfZmFjdG9yGAIgASgNEhgKEGNvZGVfcmF0ZV9sZWdhY3kYAyAB",
"KAkSHwoJY29kZV9yYXRlGAUgASgOMgwuZ3cuQ29kZVJhdGUSHgoWcG9sYXJp",
"emF0aW9uX2ludmVyc2lvbhgEIAEoCCJCChFGc2tNb2R1bGF0aW9uSW5mbxIb",
"ChNmcmVxdWVuY3lfZGV2aWF0aW9uGAEgASgNEhAKCGRhdGFyYXRlGAIgASgN",
"IoYBChRMckZoc3NNb2R1bGF0aW9uSW5mbxIfChdvcGVyYXRpbmdfY2hhbm5l",
"bF93aWR0aBgBIAEoDRIYChBjb2RlX3JhdGVfbGVnYWN5GAIgASgJEh8KCWNv",
"ZGVfcmF0ZRgEIAEoDjIMLmd3LkNvZGVSYXRlEhIKCmdyaWRfc3RlcHMYAyAB",
"KA0iVgoWRW5jcnlwdGVkRmluZVRpbWVzdGFtcBIVCg1hZXNfa2V5X2luZGV4",
"GAEgASgNEhQKDGVuY3J5cHRlZF9ucxgCIAEoDBIPCgdmcGdhX2lkGAMgASgM",
"Ij4KElBsYWluRmluZVRpbWVzdGFtcBIoCgR0aW1lGAEgASgLMhouZ29vZ2xl",
"LnByb3RvYnVmLlRpbWVzdGFtcCKQBwoMR2F0ZXdheVN0YXRzEhkKEWdhdGV3",
"YXlfaWRfbGVnYWN5GAEgASgMEhIKCmdhdGV3YXlfaWQYESABKAkSKAoEdGlt",
"ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASIgoIbG9jYXRp",
"b24YAyABKAsyEC5jb21tb24uTG9jYXRpb24SFgoOY29uZmlnX3ZlcnNpb24Y",
"BCABKAkSGwoTcnhfcGFja2V0c19yZWNlaXZlZBgFIAEoDRIeChZyeF9wYWNr",
"ZXRzX3JlY2VpdmVkX29rGAYgASgNEhsKE3R4X3BhY2tldHNfcmVjZWl2ZWQY",
"ByABKA0SGgoSdHhfcGFja2V0c19lbWl0dGVkGAggASgNEjAKCG1ldGFkYXRh",
"GAogAygLMh4uZ3cuR2F0ZXdheVN0YXRzLk1ldGFkYXRhRW50cnkSTQoYdHhf",
"cGFja2V0c19wZXJfZnJlcXVlbmN5GAwgAygLMisuZ3cuR2F0ZXdheVN0YXRz",
"LlR4UGFja2V0c1BlckZyZXF1ZW5jeUVudHJ5Ek0KGHJ4X3BhY2tldHNfcGVy",
"X2ZyZXF1ZW5jeRgNIAMoCzIrLmd3LkdhdGV3YXlTdGF0cy5SeFBhY2tldHNQ",
"ZXJGcmVxdWVuY3lFbnRyeRI5Chl0eF9wYWNrZXRzX3Blcl9tb2R1bGF0aW9u",
"GA4gAygLMhYuZ3cuUGVyTW9kdWxhdGlvbkNvdW50EjkKGXJ4X3BhY2tldHNf",
"cGVyX21vZHVsYXRpb24YDyADKAsyFi5ndy5QZXJNb2R1bGF0aW9uQ291bnQS",
"RwoVdHhfcGFja2V0c19wZXJfc3RhdHVzGBAgAygLMiguZ3cuR2F0ZXdheVN0",
"YXRzLlR4UGFja2V0c1BlclN0YXR1c0VudHJ5Gi8KDU1ldGFkYXRhRW50cnkS",
"CwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ARo8ChpUeFBhY2tldHNQ",
"ZXJGcmVxdWVuY3lFbnRyeRILCgNrZXkYASABKA0SDQoFdmFsdWUYAiABKA06",
"AjgBGjwKGlJ4UGFja2V0c1BlckZyZXF1ZW5jeUVudHJ5EgsKA2tleRgBIAEo",
"DRINCgV2YWx1ZRgCIAEoDToCOAEaOQoXVHhQYWNrZXRzUGVyU3RhdHVzRW50",
"cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgNOgI4ASJHChJQZXJNb2R1",
"bGF0aW9uQ291bnQSIgoKbW9kdWxhdGlvbhgBIAEoCzIOLmd3Lk1vZHVsYXRp",
"b24SDQoFY291bnQYAiABKA0igAUKElVwbGlua1J4SW5mb0xlZ2FjeRISCgpn",
"YXRld2F5X2lkGAEgASgMEigKBHRpbWUYAiABKAsyGi5nb29nbGUucHJvdG9i",
"dWYuVGltZXN0YW1wEjcKFHRpbWVfc2luY2VfZ3BzX2Vwb2NoGAMgASgLMhku",
"Z29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEgwKBHJzc2kYBSABKAUSEAoIbG9y",
"YV9zbnIYBiABKAESDwoHY2hhbm5lbBgHIAEoDRIQCghyZl9jaGFpbhgIIAEo",
"DRINCgVib2FyZBgJIAEoDRIPCgdhbnRlbm5hGAogASgNEiIKCGxvY2F0aW9u",
"GAsgASgLMhAuY29tbW9uLkxvY2F0aW9uEjIKE2ZpbmVfdGltZXN0YW1wX3R5",
"cGUYDCABKA4yFS5ndy5GaW5lVGltZXN0YW1wVHlwZRI+ChhlbmNyeXB0ZWRf",
"ZmluZV90aW1lc3RhbXAYDSABKAsyGi5ndy5FbmNyeXB0ZWRGaW5lVGltZXN0",
"YW1wSAASNgoUcGxhaW5fZmluZV90aW1lc3RhbXAYDiABKAsyFi5ndy5QbGFp",
"bkZpbmVUaW1lc3RhbXBIABIPCgdjb250ZXh0GA8gASgMEhEKCXVwbGlua19p",
"ZBgQIAEoDBIhCgpjcmNfc3RhdHVzGBEgASgOMg0uZ3cuQ1JDU3RhdHVzEjYK",
"CG1ldGFkYXRhGBIgAygLMiQuZ3cuVXBsaW5rUnhJbmZvTGVnYWN5Lk1ldGFk",
"YXRhRW50cnkaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFs",
"dWUYAiABKAk6AjgBQhAKDmZpbmVfdGltZXN0YW1wIu8DCgxVcGxpbmtSeElu",
"Zm8SEgoKZ2F0ZXdheV9pZBgBIAEoCRIRCgl1cGxpbmtfaWQYAiABKA0SKAoE",
"dGltZRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNwoUdGlt",
"ZV9zaW5jZV9ncHNfZXBvY2gYBCABKAsyGS5nb29nbGUucHJvdG9idWYuRHVy",
"YXRpb24SPAoZZmluZV90aW1lX3NpbmNlX2dwc19lcG9jaBgFIAEoCzIZLmdv",
"b2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIMCgRyc3NpGAYgASgFEgsKA3NuchgH",
"IAEoAhIPCgdjaGFubmVsGAggASgNEhAKCHJmX2NoYWluGAkgASgNEg0KBWJv",
"YXJkGAogASgNEg8KB2FudGVubmEYCyABKA0SIgoIbG9jYXRpb24YDCABKAsy",
"EC5jb21tb24uTG9jYXRpb24SDwoHY29udGV4dBgNIAEoDBIwCghtZXRhZGF0",
"YRgPIAMoCzIeLmd3LlVwbGlua1J4SW5mby5NZXRhZGF0YUVudHJ5EiEKCmNy",
"Y19zdGF0dXMYECABKA4yDS5ndy5DUkNTdGF0dXMaLwoNTWV0YWRhdGFFbnRy",
"eRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIoIEChREb3dubGlu",
"a1R4SW5mb0xlZ2FjeRISCgpnYXRld2F5X2lkGAEgASgMEhEKCWZyZXF1ZW5j",
"eRgFIAEoDRINCgVwb3dlchgGIAEoBRImCgptb2R1bGF0aW9uGAcgASgOMhIu",
"Y29tbW9uLk1vZHVsYXRpb24SNgoUbG9yYV9tb2R1bGF0aW9uX2luZm8YCCAB",
"KAsyFi5ndy5Mb3JhTW9kdWxhdGlvbkluZm9IABI0ChNmc2tfbW9kdWxhdGlv",
"bl9pbmZvGAkgASgLMhUuZ3cuRnNrTW9kdWxhdGlvbkluZm9IABINCgVib2Fy",
"ZBgKIAEoDRIPCgdhbnRlbm5hGAsgASgNEiIKBnRpbWluZxgMIAEoDjISLmd3",
"LkRvd25saW5rVGltaW5nEjwKF2ltbWVkaWF0ZWx5X3RpbWluZ19pbmZvGA0g",
"ASgLMhkuZ3cuSW1tZWRpYXRlbHlUaW1pbmdJbmZvSAESMAoRZGVsYXlfdGlt",
"aW5nX2luZm8YDiABKAsyEy5ndy5EZWxheVRpbWluZ0luZm9IARI3ChVncHNf",
"ZXBvY2hfdGltaW5nX2luZm8YDyABKAsyFi5ndy5HUFNFcG9jaFRpbWluZ0lu",
"Zm9IARIPCgdjb250ZXh0GBAgASgMQhEKD21vZHVsYXRpb25faW5mb0INCgt0",
"aW1pbmdfaW5mbyKjAQoORG93bmxpbmtUeEluZm8SEQoJZnJlcXVlbmN5GAEg",
"ASgNEg0KBXBvd2VyGAIgASgFEiIKCm1vZHVsYXRpb24YAyABKAsyDi5ndy5N",
"b2R1bGF0aW9uEg0KBWJvYXJkGAQgASgNEg8KB2FudGVubmEYBSABKA0SGgoG",
"dGltaW5nGAYgASgLMgouZ3cuVGltaW5nEg8KB2NvbnRleHQYByABKAwimwEK",
"BlRpbWluZxIwCgtpbW1lZGlhdGVseRgBIAEoCzIZLmd3LkltbWVkaWF0ZWx5",
"VGltaW5nSW5mb0gAEiQKBWRlbGF5GAIgASgLMhMuZ3cuRGVsYXlUaW1pbmdJ",
"bmZvSAASKwoJZ3BzX2Vwb2NoGAMgASgLMhYuZ3cuR1BTRXBvY2hUaW1pbmdJ",
"bmZvSABCDAoKcGFyYW1ldGVycyIXChVJbW1lZGlhdGVseVRpbWluZ0luZm8i",
"OwoPRGVsYXlUaW1pbmdJbmZvEigKBWRlbGF5GAEgASgLMhkuZ29vZ2xlLnBy",
"b3RvYnVmLkR1cmF0aW9uIk0KEkdQU0Vwb2NoVGltaW5nSW5mbxI3ChR0aW1l",
"X3NpbmNlX2dwc19lcG9jaBgBIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJh",
"dGlvbiLIAQoLVXBsaW5rRnJhbWUSEwoLcGh5X3BheWxvYWQYASABKAwSLgoO",
"dHhfaW5mb19sZWdhY3kYAiABKAsyFi5ndy5VcGxpbmtUeEluZm9MZWdhY3kS",
"LgoOcnhfaW5mb19sZWdhY3kYAyABKAsyFi5ndy5VcGxpbmtSeEluZm9MZWdh",
"Y3kSIQoHdHhfaW5mbxgEIAEoCzIQLmd3LlVwbGlua1R4SW5mbxIhCgdyeF9p",
"bmZvGAUgASgLMhAuZ3cuVXBsaW5rUnhJbmZvImsKDlVwbGlua0ZyYW1lU2V0",
"EhMKC3BoeV9wYXlsb2FkGAEgASgMEiEKB3R4X2luZm8YAiABKAsyEC5ndy5V",
"cGxpbmtUeEluZm8SIQoHcnhfaW5mbxgDIAMoCzIQLmd3LlVwbGlua1J4SW5m",
"byKVAQoNRG93bmxpbmtGcmFtZRITCgtkb3dubGlua19pZBgDIAEoDRIaChJk",
"b3dubGlua19pZF9sZWdhY3kYBCABKAwSJAoFaXRlbXMYBSADKAsyFS5ndy5E",
"b3dubGlua0ZyYW1lSXRlbRIZChFnYXRld2F5X2lkX2xlZ2FjeRgGIAEoDBIS",
"CgpnYXRld2F5X2lkGAcgASgJIn8KEURvd25saW5rRnJhbWVJdGVtEhMKC3Bo",
"eV9wYXlsb2FkGAEgASgMEjAKDnR4X2luZm9fbGVnYWN5GAIgASgLMhguZ3cu",
"RG93bmxpbmtUeEluZm9MZWdhY3kSIwoHdHhfaW5mbxgDIAEoCzISLmd3LkRv",
"d25saW5rVHhJbmZvIpUBCg1Eb3dubGlua1R4QWNrEhkKEWdhdGV3YXlfaWRf",
"bGVnYWN5GAEgASgMEhIKCmdhdGV3YXlfaWQYBiABKAkSEwoLZG93bmxpbmtf",
"aWQYAiABKA0SGgoSZG93bmxpbmtfaWRfbGVnYWN5GAQgASgMEiQKBWl0ZW1z",
"GAUgAygLMhUuZ3cuRG93bmxpbmtUeEFja0l0ZW0iNAoRRG93bmxpbmtUeEFj",
"a0l0ZW0SHwoGc3RhdHVzGAEgASgOMg8uZ3cuVHhBY2tTdGF0dXMitQEKFEdh",
"dGV3YXlDb25maWd1cmF0aW9uEhkKEWdhdGV3YXlfaWRfbGVnYWN5GAEgASgM",
"EhIKCmdhdGV3YXlfaWQYBSABKAkSDwoHdmVyc2lvbhgCIAEoCRIqCghjaGFu",
"bmVscxgDIAMoCzIYLmd3LkNoYW5uZWxDb25maWd1cmF0aW9uEjEKDnN0YXRz",
"X2ludGVydmFsGAQgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uIocC",
"ChRDaGFubmVsQ29uZmlndXJhdGlvbhIRCglmcmVxdWVuY3kYASABKA0SLQoR",
"bW9kdWxhdGlvbl9sZWdhY3kYAiABKA4yEi5jb21tb24uTW9kdWxhdGlvbhI6",
"ChZsb3JhX21vZHVsYXRpb25fY29uZmlnGAMgASgLMhguZ3cuTG9yYU1vZHVs",
"YXRpb25Db25maWdIABI4ChVmc2tfbW9kdWxhdGlvbl9jb25maWcYBCABKAsy",
"Fy5ndy5Gc2tNb2R1bGF0aW9uQ29uZmlnSAASDQoFYm9hcmQYBSABKA0SEwoL",
"ZGVtb2R1bGF0b3IYBiABKA1CEwoRbW9kdWxhdGlvbl9jb25maWciXgoUTG9y",
"YU1vZHVsYXRpb25Db25maWcSGAoQYmFuZHdpZHRoX2xlZ2FjeRgBIAEoDRIR",
"CgliYW5kd2lkdGgYAyABKA0SGQoRc3ByZWFkaW5nX2ZhY3RvcnMYAiADKA0i",
"UwoTRnNrTW9kdWxhdGlvbkNvbmZpZxIYChBiYW5kd2lkdGhfbGVnYWN5GAEg",
"ASgNEhEKCWJhbmR3aWR0aBgDIAEoDRIPCgdiaXRyYXRlGAIgASgNIvQBChlH",
"YXRld2F5Q29tbWFuZEV4ZWNSZXF1ZXN0EhkKEWdhdGV3YXlfaWRfbGVnYWN5",
"GAEgASgMEhIKCmdhdGV3YXlfaWQYBiABKAkSDwoHY29tbWFuZBgCIAEoCRIP",
"CgdleGVjX2lkGAcgASgNEg0KBXN0ZGluGAQgASgMEkMKC2Vudmlyb25tZW50",
"GAUgAygLMi4uZ3cuR2F0ZXdheUNvbW1hbmRFeGVjUmVxdWVzdC5FbnZpcm9u",
"bWVudEVudHJ5GjIKEEVudmlyb25tZW50RW50cnkSCwoDa2V5GAEgASgJEg0K",
"BXZhbHVlGAIgASgJOgI4ASKLAQoaR2F0ZXdheUNvbW1hbmRFeGVjUmVzcG9u",
"c2USGQoRZ2F0ZXdheV9pZF9sZWdhY3kYASABKAwSEgoKZ2F0ZXdheV9pZBgG",
"IAEoCRIPCgdleGVjX2lkGAcgASgNEg4KBnN0ZG91dBgDIAEoDBIOCgZzdGRl",
"cnIYBCABKAwSDQoFZXJyb3IYBSABKAkiWQoXUmF3UGFja2V0Rm9yd2FyZGVy",
"RXZlbnQSGQoRZ2F0ZXdheV9pZF9sZWdhY3kYASABKAwSEgoKZ2F0ZXdheV9p",
"ZBgEIAEoCRIPCgdwYXlsb2FkGAMgASgMIlsKGVJhd1BhY2tldEZvcndhcmRl",
"ckNvbW1hbmQSGQoRZ2F0ZXdheV9pZF9sZWdhY3kYASABKAwSEgoKZ2F0ZXdh",
"eV9pZBgEIAEoCRIPCgdwYXlsb2FkGAMgASgMIoABCglDb25uU3RhdGUSGQoR",
"Z2F0ZXdheV9pZF9sZWdhY3kYASABKAwSEgoKZ2F0ZXdheV9pZBgDIAEoCRIi",
"CgVzdGF0ZRgCIAEoDjITLmd3LkNvbm5TdGF0ZS5TdGF0ZSIgCgVTdGF0ZRIL",
"CgdPRkZMSU5FEAASCgoGT05MSU5FEAEqtQEKCENvZGVSYXRlEhAKDENSX1VO",
"REVGSU5FRBAAEgoKBkNSXzRfNRABEgoKBkNSXzRfNhACEgoKBkNSXzRfNxAD",
"EgoKBkNSXzRfOBAEEgoKBkNSXzNfOBAFEgoKBkNSXzJfNhAGEgoKBkNSXzFf",
"NBAHEgoKBkNSXzFfNhAIEgoKBkNSXzVfNhAJEg0KCUNSX0xJXzRfNRAKEg0K",
"CUNSX0xJXzRfNhALEg0KCUNSX0xJXzRfOBAMKjsKDkRvd25saW5rVGltaW5n",
"Eg8KC0lNTUVESUFURUxZEAASCQoFREVMQVkQARINCglHUFNfRVBPQ0gQAio3",
"ChFGaW5lVGltZXN0YW1wVHlwZRIICgROT05FEAASDQoJRU5DUllQVEVEEAES",
"CQoFUExBSU4QAiowCglDUkNTdGF0dXMSCgoGTk9fQ1JDEAASCwoHQkFEX0NS",
"QxABEgoKBkNSQ19PSxACKrwBCgtUeEFja1N0YXR1cxILCgdJR05PUkVEEAAS",
"BgoCT0sQARIMCghUT09fTEFURRACEg0KCVRPT19FQVJMWRADEhQKEENPTExJ",
"U0lPTl9QQUNLRVQQBBIUChBDT0xMSVNJT05fQkVBQ09OEAUSCwoHVFhfRlJF",
"URAGEgwKCFRYX1BPV0VSEAcSEAoMR1BTX1VOTE9DS0VEEAgSDgoKUVVFVUVf",
"RlVMTBAJEhIKDklOVEVSTkFMX0VSUk9SEApCagoUaW8uY2hpcnBzdGFjay5h",
"cGkuZ3dCDEdhdGV3YXlQcm90b1ABWi1naXRodWIuY29tL2NoaXJwc3RhY2sv",
"Y2hpcnBzdGFjay9hcGkvZ28vdjQvZ3eqAhJDaGlycHN0YWNrLkdhdGV3YXli",
"BnByb3RvMw=="));
"emF0aW9uX2ludmVyc2lvbhgEIAEoCBIQCghwcmVhbWJsZRgGIAEoDRIOCgZu",
"b19jcmMYByABKAgiQgoRRnNrTW9kdWxhdGlvbkluZm8SGwoTZnJlcXVlbmN5",
"X2RldmlhdGlvbhgBIAEoDRIQCghkYXRhcmF0ZRgCIAEoDSKGAQoUTHJGaHNz",
"TW9kdWxhdGlvbkluZm8SHwoXb3BlcmF0aW5nX2NoYW5uZWxfd2lkdGgYASAB",
"KA0SGAoQY29kZV9yYXRlX2xlZ2FjeRgCIAEoCRIfCgljb2RlX3JhdGUYBCAB",
"KA4yDC5ndy5Db2RlUmF0ZRISCgpncmlkX3N0ZXBzGAMgASgNIlYKFkVuY3J5",
"cHRlZEZpbmVUaW1lc3RhbXASFQoNYWVzX2tleV9pbmRleBgBIAEoDRIUCgxl",
"bmNyeXB0ZWRfbnMYAiABKAwSDwoHZnBnYV9pZBgDIAEoDCI+ChJQbGFpbkZp",
"bmVUaW1lc3RhbXASKAoEdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5U",
"aW1lc3RhbXAikAcKDEdhdGV3YXlTdGF0cxIZChFnYXRld2F5X2lkX2xlZ2Fj",
"eRgBIAEoDBISCgpnYXRld2F5X2lkGBEgASgJEigKBHRpbWUYAiABKAsyGi5n",
"b29nbGUucHJvdG9idWYuVGltZXN0YW1wEiIKCGxvY2F0aW9uGAMgASgLMhAu",
"Y29tbW9uLkxvY2F0aW9uEhYKDmNvbmZpZ192ZXJzaW9uGAQgASgJEhsKE3J4",
"X3BhY2tldHNfcmVjZWl2ZWQYBSABKA0SHgoWcnhfcGFja2V0c19yZWNlaXZl",
"ZF9vaxgGIAEoDRIbChN0eF9wYWNrZXRzX3JlY2VpdmVkGAcgASgNEhoKEnR4",
"X3BhY2tldHNfZW1pdHRlZBgIIAEoDRIwCghtZXRhZGF0YRgKIAMoCzIeLmd3",
"LkdhdGV3YXlTdGF0cy5NZXRhZGF0YUVudHJ5Ek0KGHR4X3BhY2tldHNfcGVy",
"X2ZyZXF1ZW5jeRgMIAMoCzIrLmd3LkdhdGV3YXlTdGF0cy5UeFBhY2tldHNQ",
"ZXJGcmVxdWVuY3lFbnRyeRJNChhyeF9wYWNrZXRzX3Blcl9mcmVxdWVuY3kY",
"DSADKAsyKy5ndy5HYXRld2F5U3RhdHMuUnhQYWNrZXRzUGVyRnJlcXVlbmN5",
"RW50cnkSOQoZdHhfcGFja2V0c19wZXJfbW9kdWxhdGlvbhgOIAMoCzIWLmd3",
"LlBlck1vZHVsYXRpb25Db3VudBI5ChlyeF9wYWNrZXRzX3Blcl9tb2R1bGF0",
"aW9uGA8gAygLMhYuZ3cuUGVyTW9kdWxhdGlvbkNvdW50EkcKFXR4X3BhY2tl",
"dHNfcGVyX3N0YXR1cxgQIAMoCzIoLmd3LkdhdGV3YXlTdGF0cy5UeFBhY2tl",
"dHNQZXJTdGF0dXNFbnRyeRovCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEo",
"CRINCgV2YWx1ZRgCIAEoCToCOAEaPAoaVHhQYWNrZXRzUGVyRnJlcXVlbmN5",
"RW50cnkSCwoDa2V5GAEgASgNEg0KBXZhbHVlGAIgASgNOgI4ARo8ChpSeFBh",
"Y2tldHNQZXJGcmVxdWVuY3lFbnRyeRILCgNrZXkYASABKA0SDQoFdmFsdWUY",
"AiABKA06AjgBGjkKF1R4UGFja2V0c1BlclN0YXR1c0VudHJ5EgsKA2tleRgB",
"IAEoCRINCgV2YWx1ZRgCIAEoDToCOAEiRwoSUGVyTW9kdWxhdGlvbkNvdW50",
"EiIKCm1vZHVsYXRpb24YASABKAsyDi5ndy5Nb2R1bGF0aW9uEg0KBWNvdW50",
"GAIgASgNIoAFChJVcGxpbmtSeEluZm9MZWdhY3kSEgoKZ2F0ZXdheV9pZBgB",
"IAEoDBIoCgR0aW1lGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFt",
"cBI3ChR0aW1lX3NpbmNlX2dwc19lcG9jaBgDIAEoCzIZLmdvb2dsZS5wcm90",
"b2J1Zi5EdXJhdGlvbhIMCgRyc3NpGAUgASgFEhAKCGxvcmFfc25yGAYgASgB",
"Eg8KB2NoYW5uZWwYByABKA0SEAoIcmZfY2hhaW4YCCABKA0SDQoFYm9hcmQY",
"CSABKA0SDwoHYW50ZW5uYRgKIAEoDRIiCghsb2NhdGlvbhgLIAEoCzIQLmNv",
"bW1vbi5Mb2NhdGlvbhIyChNmaW5lX3RpbWVzdGFtcF90eXBlGAwgASgOMhUu",
"Z3cuRmluZVRpbWVzdGFtcFR5cGUSPgoYZW5jcnlwdGVkX2ZpbmVfdGltZXN0",
"YW1wGA0gASgLMhouZ3cuRW5jcnlwdGVkRmluZVRpbWVzdGFtcEgAEjYKFHBs",
"YWluX2ZpbmVfdGltZXN0YW1wGA4gASgLMhYuZ3cuUGxhaW5GaW5lVGltZXN0",
"YW1wSAASDwoHY29udGV4dBgPIAEoDBIRCgl1cGxpbmtfaWQYECABKAwSIQoK",
"Y3JjX3N0YXR1cxgRIAEoDjINLmd3LkNSQ1N0YXR1cxI2CghtZXRhZGF0YRgS",
"IAMoCzIkLmd3LlVwbGlua1J4SW5mb0xlZ2FjeS5NZXRhZGF0YUVudHJ5Gi8K",
"DU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4",
"AUIQCg5maW5lX3RpbWVzdGFtcCKfBAoMVXBsaW5rUnhJbmZvEhIKCmdhdGV3",
"YXlfaWQYASABKAkSEQoJdXBsaW5rX2lkGAIgASgNEisKB2d3X3RpbWUYAyAB",
"KAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEisKB25zX3RpbWUYESAB",
"KAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjcKFHRpbWVfc2luY2Vf",
"Z3BzX2Vwb2NoGAQgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEjwK",
"GWZpbmVfdGltZV9zaW5jZV9ncHNfZXBvY2gYBSABKAsyGS5nb29nbGUucHJv",
"dG9idWYuRHVyYXRpb24SDAoEcnNzaRgGIAEoBRILCgNzbnIYByABKAISDwoH",
"Y2hhbm5lbBgIIAEoDRIQCghyZl9jaGFpbhgJIAEoDRINCgVib2FyZBgKIAEo",
"DRIPCgdhbnRlbm5hGAsgASgNEiIKCGxvY2F0aW9uGAwgASgLMhAuY29tbW9u",
"LkxvY2F0aW9uEg8KB2NvbnRleHQYDSABKAwSMAoIbWV0YWRhdGEYDyADKAsy",
"Hi5ndy5VcGxpbmtSeEluZm8uTWV0YWRhdGFFbnRyeRIhCgpjcmNfc3RhdHVz",
"GBAgASgOMg0uZ3cuQ1JDU3RhdHVzGi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5",
"GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKCBAoURG93bmxpbmtUeEluZm9M",
"ZWdhY3kSEgoKZ2F0ZXdheV9pZBgBIAEoDBIRCglmcmVxdWVuY3kYBSABKA0S",
"DQoFcG93ZXIYBiABKAUSJgoKbW9kdWxhdGlvbhgHIAEoDjISLmNvbW1vbi5N",
"b2R1bGF0aW9uEjYKFGxvcmFfbW9kdWxhdGlvbl9pbmZvGAggASgLMhYuZ3cu",
"TG9yYU1vZHVsYXRpb25JbmZvSAASNAoTZnNrX21vZHVsYXRpb25faW5mbxgJ",
"IAEoCzIVLmd3LkZza01vZHVsYXRpb25JbmZvSAASDQoFYm9hcmQYCiABKA0S",
"DwoHYW50ZW5uYRgLIAEoDRIiCgZ0aW1pbmcYDCABKA4yEi5ndy5Eb3dubGlu",
"a1RpbWluZxI8ChdpbW1lZGlhdGVseV90aW1pbmdfaW5mbxgNIAEoCzIZLmd3",
"LkltbWVkaWF0ZWx5VGltaW5nSW5mb0gBEjAKEWRlbGF5X3RpbWluZ19pbmZv",
"GA4gASgLMhMuZ3cuRGVsYXlUaW1pbmdJbmZvSAESNwoVZ3BzX2Vwb2NoX3Rp",
"bWluZ19pbmZvGA8gASgLMhYuZ3cuR1BTRXBvY2hUaW1pbmdJbmZvSAESDwoH",
"Y29udGV4dBgQIAEoDEIRCg9tb2R1bGF0aW9uX2luZm9CDQoLdGltaW5nX2lu",
"Zm8iowEKDkRvd25saW5rVHhJbmZvEhEKCWZyZXF1ZW5jeRgBIAEoDRINCgVw",
"b3dlchgCIAEoBRIiCgptb2R1bGF0aW9uGAMgASgLMg4uZ3cuTW9kdWxhdGlv",
"bhINCgVib2FyZBgEIAEoDRIPCgdhbnRlbm5hGAUgASgNEhoKBnRpbWluZxgG",
"IAEoCzIKLmd3LlRpbWluZxIPCgdjb250ZXh0GAcgASgMIpsBCgZUaW1pbmcS",
"MAoLaW1tZWRpYXRlbHkYASABKAsyGS5ndy5JbW1lZGlhdGVseVRpbWluZ0lu",
"Zm9IABIkCgVkZWxheRgCIAEoCzITLmd3LkRlbGF5VGltaW5nSW5mb0gAEisK",
"CWdwc19lcG9jaBgDIAEoCzIWLmd3LkdQU0Vwb2NoVGltaW5nSW5mb0gAQgwK",
"CnBhcmFtZXRlcnMiFwoVSW1tZWRpYXRlbHlUaW1pbmdJbmZvIjsKD0RlbGF5",
"VGltaW5nSW5mbxIoCgVkZWxheRgBIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5E",
"dXJhdGlvbiJNChJHUFNFcG9jaFRpbWluZ0luZm8SNwoUdGltZV9zaW5jZV9n",
"cHNfZXBvY2gYASABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24iyAEK",
"C1VwbGlua0ZyYW1lEhMKC3BoeV9wYXlsb2FkGAEgASgMEi4KDnR4X2luZm9f",
"bGVnYWN5GAIgASgLMhYuZ3cuVXBsaW5rVHhJbmZvTGVnYWN5Ei4KDnJ4X2lu",
"Zm9fbGVnYWN5GAMgASgLMhYuZ3cuVXBsaW5rUnhJbmZvTGVnYWN5EiEKB3R4",
"X2luZm8YBCABKAsyEC5ndy5VcGxpbmtUeEluZm8SIQoHcnhfaW5mbxgFIAEo",
"CzIQLmd3LlVwbGlua1J4SW5mbyJrCg5VcGxpbmtGcmFtZVNldBITCgtwaHlf",
"cGF5bG9hZBgBIAEoDBIhCgd0eF9pbmZvGAIgASgLMhAuZ3cuVXBsaW5rVHhJ",
"bmZvEiEKB3J4X2luZm8YAyADKAsyEC5ndy5VcGxpbmtSeEluZm8ilQEKDURv",
"d25saW5rRnJhbWUSEwoLZG93bmxpbmtfaWQYAyABKA0SGgoSZG93bmxpbmtf",
"aWRfbGVnYWN5GAQgASgMEiQKBWl0ZW1zGAUgAygLMhUuZ3cuRG93bmxpbmtG",
"cmFtZUl0ZW0SGQoRZ2F0ZXdheV9pZF9sZWdhY3kYBiABKAwSEgoKZ2F0ZXdh",
"eV9pZBgHIAEoCSJ/ChFEb3dubGlua0ZyYW1lSXRlbRITCgtwaHlfcGF5bG9h",
"ZBgBIAEoDBIwCg50eF9pbmZvX2xlZ2FjeRgCIAEoCzIYLmd3LkRvd25saW5r",
"VHhJbmZvTGVnYWN5EiMKB3R4X2luZm8YAyABKAsyEi5ndy5Eb3dubGlua1R4",
"SW5mbyKVAQoNRG93bmxpbmtUeEFjaxIZChFnYXRld2F5X2lkX2xlZ2FjeRgB",
"IAEoDBISCgpnYXRld2F5X2lkGAYgASgJEhMKC2Rvd25saW5rX2lkGAIgASgN",
"EhoKEmRvd25saW5rX2lkX2xlZ2FjeRgEIAEoDBIkCgVpdGVtcxgFIAMoCzIV",
"Lmd3LkRvd25saW5rVHhBY2tJdGVtIjQKEURvd25saW5rVHhBY2tJdGVtEh8K",
"BnN0YXR1cxgBIAEoDjIPLmd3LlR4QWNrU3RhdHVzIrUBChRHYXRld2F5Q29u",
"ZmlndXJhdGlvbhIZChFnYXRld2F5X2lkX2xlZ2FjeRgBIAEoDBISCgpnYXRl",
"d2F5X2lkGAUgASgJEg8KB3ZlcnNpb24YAiABKAkSKgoIY2hhbm5lbHMYAyAD",
"KAsyGC5ndy5DaGFubmVsQ29uZmlndXJhdGlvbhIxCg5zdGF0c19pbnRlcnZh",
"bBgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbiKHAgoUQ2hhbm5l",
"bENvbmZpZ3VyYXRpb24SEQoJZnJlcXVlbmN5GAEgASgNEi0KEW1vZHVsYXRp",
"b25fbGVnYWN5GAIgASgOMhIuY29tbW9uLk1vZHVsYXRpb24SOgoWbG9yYV9t",
"b2R1bGF0aW9uX2NvbmZpZxgDIAEoCzIYLmd3LkxvcmFNb2R1bGF0aW9uQ29u",
"ZmlnSAASOAoVZnNrX21vZHVsYXRpb25fY29uZmlnGAQgASgLMhcuZ3cuRnNr",
"TW9kdWxhdGlvbkNvbmZpZ0gAEg0KBWJvYXJkGAUgASgNEhMKC2RlbW9kdWxh",
"dG9yGAYgASgNQhMKEW1vZHVsYXRpb25fY29uZmlnIl4KFExvcmFNb2R1bGF0",
"aW9uQ29uZmlnEhgKEGJhbmR3aWR0aF9sZWdhY3kYASABKA0SEQoJYmFuZHdp",
"ZHRoGAMgASgNEhkKEXNwcmVhZGluZ19mYWN0b3JzGAIgAygNIlMKE0Zza01v",
"ZHVsYXRpb25Db25maWcSGAoQYmFuZHdpZHRoX2xlZ2FjeRgBIAEoDRIRCgli",
"YW5kd2lkdGgYAyABKA0SDwoHYml0cmF0ZRgCIAEoDSL0AQoZR2F0ZXdheUNv",
"bW1hbmRFeGVjUmVxdWVzdBIZChFnYXRld2F5X2lkX2xlZ2FjeRgBIAEoDBIS",
"CgpnYXRld2F5X2lkGAYgASgJEg8KB2NvbW1hbmQYAiABKAkSDwoHZXhlY19p",
"ZBgHIAEoDRINCgVzdGRpbhgEIAEoDBJDCgtlbnZpcm9ubWVudBgFIAMoCzIu",
"Lmd3LkdhdGV3YXlDb21tYW5kRXhlY1JlcXVlc3QuRW52aXJvbm1lbnRFbnRy",
"eRoyChBFbnZpcm9ubWVudEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgC",
"IAEoCToCOAEiiwEKGkdhdGV3YXlDb21tYW5kRXhlY1Jlc3BvbnNlEhkKEWdh",
"dGV3YXlfaWRfbGVnYWN5GAEgASgMEhIKCmdhdGV3YXlfaWQYBiABKAkSDwoH",
"ZXhlY19pZBgHIAEoDRIOCgZzdGRvdXQYAyABKAwSDgoGc3RkZXJyGAQgASgM",
"Eg0KBWVycm9yGAUgASgJIlkKF1Jhd1BhY2tldEZvcndhcmRlckV2ZW50EhkK",
"EWdhdGV3YXlfaWRfbGVnYWN5GAEgASgMEhIKCmdhdGV3YXlfaWQYBCABKAkS",
"DwoHcGF5bG9hZBgDIAEoDCJbChlSYXdQYWNrZXRGb3J3YXJkZXJDb21tYW5k",
"EhkKEWdhdGV3YXlfaWRfbGVnYWN5GAEgASgMEhIKCmdhdGV3YXlfaWQYBCAB",
"KAkSDwoHcGF5bG9hZBgDIAEoDCKAAQoJQ29ublN0YXRlEhkKEWdhdGV3YXlf",
"aWRfbGVnYWN5GAEgASgMEhIKCmdhdGV3YXlfaWQYAyABKAkSIgoFc3RhdGUY",
"AiABKA4yEy5ndy5Db25uU3RhdGUuU3RhdGUiIAoFU3RhdGUSCwoHT0ZGTElO",
"RRAAEgoKBk9OTElORRABKrUBCghDb2RlUmF0ZRIQCgxDUl9VTkRFRklORUQQ",
"ABIKCgZDUl80XzUQARIKCgZDUl80XzYQAhIKCgZDUl80XzcQAxIKCgZDUl80",
"XzgQBBIKCgZDUl8zXzgQBRIKCgZDUl8yXzYQBhIKCgZDUl8xXzQQBxIKCgZD",
"Ul8xXzYQCBIKCgZDUl81XzYQCRINCglDUl9MSV80XzUQChINCglDUl9MSV80",
"XzYQCxINCglDUl9MSV80XzgQDCo7Cg5Eb3dubGlua1RpbWluZxIPCgtJTU1F",
"RElBVEVMWRAAEgkKBURFTEFZEAESDQoJR1BTX0VQT0NIEAIqNwoRRmluZVRp",
"bWVzdGFtcFR5cGUSCAoETk9ORRAAEg0KCUVOQ1JZUFRFRBABEgkKBVBMQUlO",
"EAIqMAoJQ1JDU3RhdHVzEgoKBk5PX0NSQxAAEgsKB0JBRF9DUkMQARIKCgZD",
"UkNfT0sQAiq8AQoLVHhBY2tTdGF0dXMSCwoHSUdOT1JFRBAAEgYKAk9LEAES",
"DAoIVE9PX0xBVEUQAhINCglUT09fRUFSTFkQAxIUChBDT0xMSVNJT05fUEFD",
"S0VUEAQSFAoQQ09MTElTSU9OX0JFQUNPThAFEgsKB1RYX0ZSRVEQBhIMCghU",
"WF9QT1dFUhAHEhAKDEdQU19VTkxPQ0tFRBAIEg4KClFVRVVFX0ZVTEwQCRIS",
"Cg5JTlRFUk5BTF9FUlJPUhAKQmoKFGlvLmNoaXJwc3RhY2suYXBpLmd3QgxH",
"YXRld2F5UHJvdG9QAVotZ2l0aHViLmNvbS9jaGlycHN0YWNrL2NoaXJwc3Rh",
"Y2svYXBpL2dvL3Y0L2d3qgISQ2hpcnBzdGFjay5HYXRld2F5YgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Chirpstack.Common.CommonReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.DurationReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.StructReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Chirpstack.Gateway.CodeRate), typeof(global::Chirpstack.Gateway.DownlinkTiming), typeof(global::Chirpstack.Gateway.FineTimestampType), typeof(global::Chirpstack.Gateway.CRCStatus), typeof(global::Chirpstack.Gateway.TxAckStatus), }, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.Modulation), global::Chirpstack.Gateway.Modulation.Parser, new[]{ "Lora", "Fsk", "LrFhss" }, new[]{ "Parameters" }, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.UplinkTxInfoLegacy), global::Chirpstack.Gateway.UplinkTxInfoLegacy.Parser, new[]{ "Frequency", "Modulation", "LoraModulationInfo", "FskModulationInfo", "LrFhssModulationInfo" }, new[]{ "ModulationInfo" }, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.UplinkTxInfo), global::Chirpstack.Gateway.UplinkTxInfo.Parser, new[]{ "Frequency", "Modulation" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.LoraModulationInfo), global::Chirpstack.Gateway.LoraModulationInfo.Parser, new[]{ "Bandwidth", "SpreadingFactor", "CodeRateLegacy", "CodeRate", "PolarizationInversion" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.LoraModulationInfo), global::Chirpstack.Gateway.LoraModulationInfo.Parser, new[]{ "Bandwidth", "SpreadingFactor", "CodeRateLegacy", "CodeRate", "PolarizationInversion", "Preamble", "NoCrc" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.FskModulationInfo), global::Chirpstack.Gateway.FskModulationInfo.Parser, new[]{ "FrequencyDeviation", "Datarate" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.LrFhssModulationInfo), global::Chirpstack.Gateway.LrFhssModulationInfo.Parser, new[]{ "OperatingChannelWidth", "CodeRateLegacy", "CodeRate", "GridSteps" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.EncryptedFineTimestamp), global::Chirpstack.Gateway.EncryptedFineTimestamp.Parser, new[]{ "AesKeyIndex", "EncryptedNs", "FpgaId" }, null, null, null, null),
@ -196,7 +197,7 @@ namespace Chirpstack.Gateway {
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.GatewayStats), global::Chirpstack.Gateway.GatewayStats.Parser, new[]{ "GatewayIdLegacy", "GatewayId", "Time", "Location", "ConfigVersion", "RxPacketsReceived", "RxPacketsReceivedOk", "TxPacketsReceived", "TxPacketsEmitted", "Metadata", "TxPacketsPerFrequency", "RxPacketsPerFrequency", "TxPacketsPerModulation", "RxPacketsPerModulation", "TxPacketsPerStatus" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, null, null, null, }),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.PerModulationCount), global::Chirpstack.Gateway.PerModulationCount.Parser, new[]{ "Modulation", "Count" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.UplinkRxInfoLegacy), global::Chirpstack.Gateway.UplinkRxInfoLegacy.Parser, new[]{ "GatewayId", "Time", "TimeSinceGpsEpoch", "Rssi", "LoraSnr", "Channel", "RfChain", "Board", "Antenna", "Location", "FineTimestampType", "EncryptedFineTimestamp", "PlainFineTimestamp", "Context", "UplinkId", "CrcStatus", "Metadata" }, new[]{ "FineTimestamp" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.UplinkRxInfo), global::Chirpstack.Gateway.UplinkRxInfo.Parser, new[]{ "GatewayId", "UplinkId", "Time", "TimeSinceGpsEpoch", "FineTimeSinceGpsEpoch", "Rssi", "Snr", "Channel", "RfChain", "Board", "Antenna", "Location", "Context", "Metadata", "CrcStatus" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.UplinkRxInfo), global::Chirpstack.Gateway.UplinkRxInfo.Parser, new[]{ "GatewayId", "UplinkId", "GwTime", "NsTime", "TimeSinceGpsEpoch", "FineTimeSinceGpsEpoch", "Rssi", "Snr", "Channel", "RfChain", "Board", "Antenna", "Location", "Context", "Metadata", "CrcStatus" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.DownlinkTxInfoLegacy), global::Chirpstack.Gateway.DownlinkTxInfoLegacy.Parser, new[]{ "GatewayId", "Frequency", "Power", "Modulation", "LoraModulationInfo", "FskModulationInfo", "Board", "Antenna", "Timing", "ImmediatelyTimingInfo", "DelayTimingInfo", "GpsEpochTimingInfo", "Context" }, new[]{ "ModulationInfo", "TimingInfo" }, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.DownlinkTxInfo), global::Chirpstack.Gateway.DownlinkTxInfo.Parser, new[]{ "Frequency", "Power", "Modulation", "Board", "Antenna", "Timing", "Context" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::Chirpstack.Gateway.Timing), global::Chirpstack.Gateway.Timing.Parser, new[]{ "Immediately", "Delay", "GpsEpoch" }, new[]{ "Parameters" }, null, null, null),
@ -304,7 +305,8 @@ namespace Chirpstack.Gateway {
/// </summary>
[pbr::OriginalName("OK")] Ok = 1,
/// <summary>
/// Rejected because it was already too late to program this packet for downlink.
/// Rejected because it was already too late to program this packet for
/// downlink.
/// </summary>
[pbr::OriginalName("TOO_LATE")] TooLate = 2,
/// <summary>
@ -312,7 +314,8 @@ namespace Chirpstack.Gateway {
/// </summary>
[pbr::OriginalName("TOO_EARLY")] TooEarly = 3,
/// <summary>
/// Rejected because there was already a packet programmed in requested timeframe.
/// Rejected because there was already a packet programmed in requested
/// timeframe.
/// </summary>
[pbr::OriginalName("COLLISION_PACKET")] CollisionPacket = 4,
/// <summary>
@ -1398,6 +1401,8 @@ namespace Chirpstack.Gateway {
codeRateLegacy_ = other.codeRateLegacy_;
codeRate_ = other.codeRate_;
polarizationInversion_ = other.polarizationInversion_;
preamble_ = other.preamble_;
noCrc_ = other.noCrc_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
@ -1482,6 +1487,37 @@ namespace Chirpstack.Gateway {
}
}
/// <summary>Field number for the "preamble" field.</summary>
public const int PreambleFieldNumber = 6;
private uint preamble_;
/// <summary>
/// Preamble length (for TX).
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public uint Preamble {
get { return preamble_; }
set {
preamble_ = value;
}
}
/// <summary>Field number for the "no_crc" field.</summary>
public const int NoCrcFieldNumber = 7;
private bool noCrc_;
/// <summary>
/// No CRC (for TX).
/// If true, do not send a CRC in the packet.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool NoCrc {
get { return noCrc_; }
set {
noCrc_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
@ -1502,6 +1538,8 @@ namespace Chirpstack.Gateway {
if (CodeRateLegacy != other.CodeRateLegacy) return false;
if (CodeRate != other.CodeRate) return false;
if (PolarizationInversion != other.PolarizationInversion) return false;
if (Preamble != other.Preamble) return false;
if (NoCrc != other.NoCrc) return false;
return Equals(_unknownFields, other._unknownFields);
}
@ -1514,6 +1552,8 @@ namespace Chirpstack.Gateway {
if (CodeRateLegacy.Length != 0) hash ^= CodeRateLegacy.GetHashCode();
if (CodeRate != global::Chirpstack.Gateway.CodeRate.CrUndefined) hash ^= CodeRate.GetHashCode();
if (PolarizationInversion != false) hash ^= PolarizationInversion.GetHashCode();
if (Preamble != 0) hash ^= Preamble.GetHashCode();
if (NoCrc != false) hash ^= NoCrc.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
@ -1552,6 +1592,14 @@ namespace Chirpstack.Gateway {
output.WriteRawTag(40);
output.WriteEnum((int) CodeRate);
}
if (Preamble != 0) {
output.WriteRawTag(48);
output.WriteUInt32(Preamble);
}
if (NoCrc != false) {
output.WriteRawTag(56);
output.WriteBool(NoCrc);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
@ -1582,6 +1630,14 @@ namespace Chirpstack.Gateway {
output.WriteRawTag(40);
output.WriteEnum((int) CodeRate);
}
if (Preamble != 0) {
output.WriteRawTag(48);
output.WriteUInt32(Preamble);
}
if (NoCrc != false) {
output.WriteRawTag(56);
output.WriteBool(NoCrc);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
@ -1607,6 +1663,12 @@ namespace Chirpstack.Gateway {
if (PolarizationInversion != false) {
size += 1 + 1;
}
if (Preamble != 0) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Preamble);
}
if (NoCrc != false) {
size += 1 + 1;
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
@ -1634,6 +1696,12 @@ namespace Chirpstack.Gateway {
if (other.PolarizationInversion != false) {
PolarizationInversion = other.PolarizationInversion;
}
if (other.Preamble != 0) {
Preamble = other.Preamble;
}
if (other.NoCrc != false) {
NoCrc = other.NoCrc;
}
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
@ -1669,6 +1737,14 @@ namespace Chirpstack.Gateway {
CodeRate = (global::Chirpstack.Gateway.CodeRate) input.ReadEnum();
break;
}
case 48: {
Preamble = input.ReadUInt32();
break;
}
case 56: {
NoCrc = input.ReadBool();
break;
}
}
}
#endif
@ -1704,6 +1780,14 @@ namespace Chirpstack.Gateway {
CodeRate = (global::Chirpstack.Gateway.CodeRate) input.ReadEnum();
break;
}
case 48: {
Preamble = input.ReadUInt32();
break;
}
case 56: {
NoCrc = input.ReadBool();
break;
}
}
}
}
@ -3958,7 +4042,8 @@ namespace Chirpstack.Gateway {
private pb::ByteString uplinkId_ = pb::ByteString.Empty;
/// <summary>
/// Uplink ID (UUID bytes).
/// Unique and random ID which can be used to correlate the uplink across multiple logs.
/// Unique and random ID which can be used to correlate the uplink across
/// multiple logs.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
@ -4620,7 +4705,8 @@ namespace Chirpstack.Gateway {
public UplinkRxInfo(UplinkRxInfo other) : this() {
gatewayId_ = other.gatewayId_;
uplinkId_ = other.uplinkId_;
time_ = other.time_ != null ? other.time_.Clone() : null;
gwTime_ = other.gwTime_ != null ? other.gwTime_.Clone() : null;
nsTime_ = other.nsTime_ != null ? other.nsTime_.Clone() : null;
timeSinceGpsEpoch_ = other.timeSinceGpsEpoch_ != null ? other.timeSinceGpsEpoch_.Clone() : null;
fineTimeSinceGpsEpoch_ = other.fineTimeSinceGpsEpoch_ != null ? other.fineTimeSinceGpsEpoch_.Clone() : null;
rssi_ = other.rssi_;
@ -4672,18 +4758,33 @@ namespace Chirpstack.Gateway {
}
}
/// <summary>Field number for the "time" field.</summary>
public const int TimeFieldNumber = 3;
private global::Google.Protobuf.WellKnownTypes.Timestamp time_;
/// <summary>Field number for the "gw_time" field.</summary>
public const int GwTimeFieldNumber = 3;
private global::Google.Protobuf.WellKnownTypes.Timestamp gwTime_;
/// <summary>
/// RX time (only set when the gateway has a GPS module).
/// Gateway RX time (set if the gateway has a GNSS module).
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::Google.Protobuf.WellKnownTypes.Timestamp Time {
get { return time_; }
public global::Google.Protobuf.WellKnownTypes.Timestamp GwTime {
get { return gwTime_; }
set {
time_ = value;
gwTime_ = value;
}
}
/// <summary>Field number for the "ns_time" field.</summary>
public const int NsTimeFieldNumber = 17;
private global::Google.Protobuf.WellKnownTypes.Timestamp nsTime_;
/// <summary>
/// Network Server RX time (set by the NS on receiving the uplink).
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::Google.Protobuf.WellKnownTypes.Timestamp NsTime {
get { return nsTime_; }
set {
nsTime_ = value;
}
}
@ -4691,7 +4792,7 @@ namespace Chirpstack.Gateway {
public const int TimeSinceGpsEpochFieldNumber = 4;
private global::Google.Protobuf.WellKnownTypes.Duration timeSinceGpsEpoch_;
/// <summary>
/// RX time since GPS epoch (only set when the gateway has a GPS module).
/// RX time as time since GPS epoch (set if the gateway has a GNSS module).
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
@ -4886,7 +4987,8 @@ namespace Chirpstack.Gateway {
}
if (GatewayId != other.GatewayId) return false;
if (UplinkId != other.UplinkId) return false;
if (!object.Equals(Time, other.Time)) return false;
if (!object.Equals(GwTime, other.GwTime)) return false;
if (!object.Equals(NsTime, other.NsTime)) return false;
if (!object.Equals(TimeSinceGpsEpoch, other.TimeSinceGpsEpoch)) return false;
if (!object.Equals(FineTimeSinceGpsEpoch, other.FineTimeSinceGpsEpoch)) return false;
if (Rssi != other.Rssi) return false;
@ -4908,7 +5010,8 @@ namespace Chirpstack.Gateway {
int hash = 1;
if (GatewayId.Length != 0) hash ^= GatewayId.GetHashCode();
if (UplinkId != 0) hash ^= UplinkId.GetHashCode();
if (time_ != null) hash ^= Time.GetHashCode();
if (gwTime_ != null) hash ^= GwTime.GetHashCode();
if (nsTime_ != null) hash ^= NsTime.GetHashCode();
if (timeSinceGpsEpoch_ != null) hash ^= TimeSinceGpsEpoch.GetHashCode();
if (fineTimeSinceGpsEpoch_ != null) hash ^= FineTimeSinceGpsEpoch.GetHashCode();
if (Rssi != 0) hash ^= Rssi.GetHashCode();
@ -4947,9 +5050,9 @@ namespace Chirpstack.Gateway {
output.WriteRawTag(16);
output.WriteUInt32(UplinkId);
}
if (time_ != null) {
if (gwTime_ != null) {
output.WriteRawTag(26);
output.WriteMessage(Time);
output.WriteMessage(GwTime);
}
if (timeSinceGpsEpoch_ != null) {
output.WriteRawTag(34);
@ -4996,6 +5099,10 @@ namespace Chirpstack.Gateway {
output.WriteRawTag(128, 1);
output.WriteEnum((int) CrcStatus);
}
if (nsTime_ != null) {
output.WriteRawTag(138, 1);
output.WriteMessage(NsTime);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
@ -5014,9 +5121,9 @@ namespace Chirpstack.Gateway {
output.WriteRawTag(16);
output.WriteUInt32(UplinkId);
}
if (time_ != null) {
if (gwTime_ != null) {
output.WriteRawTag(26);
output.WriteMessage(Time);
output.WriteMessage(GwTime);
}
if (timeSinceGpsEpoch_ != null) {
output.WriteRawTag(34);
@ -5063,6 +5170,10 @@ namespace Chirpstack.Gateway {
output.WriteRawTag(128, 1);
output.WriteEnum((int) CrcStatus);
}
if (nsTime_ != null) {
output.WriteRawTag(138, 1);
output.WriteMessage(NsTime);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
@ -5079,8 +5190,11 @@ namespace Chirpstack.Gateway {
if (UplinkId != 0) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(UplinkId);
}
if (time_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Time);
if (gwTime_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(GwTime);
}
if (nsTime_ != null) {
size += 2 + pb::CodedOutputStream.ComputeMessageSize(NsTime);
}
if (timeSinceGpsEpoch_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(TimeSinceGpsEpoch);
@ -5134,11 +5248,17 @@ namespace Chirpstack.Gateway {
if (other.UplinkId != 0) {
UplinkId = other.UplinkId;
}
if (other.time_ != null) {
if (time_ == null) {
Time = new global::Google.Protobuf.WellKnownTypes.Timestamp();
if (other.gwTime_ != null) {
if (gwTime_ == null) {
GwTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
Time.MergeFrom(other.Time);
GwTime.MergeFrom(other.GwTime);
}
if (other.nsTime_ != null) {
if (nsTime_ == null) {
NsTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
NsTime.MergeFrom(other.NsTime);
}
if (other.timeSinceGpsEpoch_ != null) {
if (timeSinceGpsEpoch_ == null) {
@ -5207,10 +5327,10 @@ namespace Chirpstack.Gateway {
break;
}
case 26: {
if (time_ == null) {
Time = new global::Google.Protobuf.WellKnownTypes.Timestamp();
if (gwTime_ == null) {
GwTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
input.ReadMessage(Time);
input.ReadMessage(GwTime);
break;
}
case 34: {
@ -5270,6 +5390,13 @@ namespace Chirpstack.Gateway {
CrcStatus = (global::Chirpstack.Gateway.CRCStatus) input.ReadEnum();
break;
}
case 138: {
if (nsTime_ == null) {
NsTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
input.ReadMessage(NsTime);
break;
}
}
}
#endif
@ -5294,10 +5421,10 @@ namespace Chirpstack.Gateway {
break;
}
case 26: {
if (time_ == null) {
Time = new global::Google.Protobuf.WellKnownTypes.Timestamp();
if (gwTime_ == null) {
GwTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
input.ReadMessage(Time);
input.ReadMessage(GwTime);
break;
}
case 34: {
@ -5357,6 +5484,13 @@ namespace Chirpstack.Gateway {
CrcStatus = (global::Chirpstack.Gateway.CRCStatus) input.ReadEnum();
break;
}
case 138: {
if (nsTime_ == null) {
NsTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
input.ReadMessage(NsTime);
break;
}
}
}
}
@ -5471,7 +5605,7 @@ namespace Chirpstack.Gateway {
public const int PowerFieldNumber = 6;
private int power_;
/// <summary>
/// TX power (in dBm).
/// TX power (in dBm EIRP).
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
@ -6241,7 +6375,7 @@ namespace Chirpstack.Gateway {
public const int PowerFieldNumber = 2;
private int power_;
/// <summary>
/// TX power (in dBm).
/// TX power (in dBm EIRP).
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
@ -7174,7 +7308,8 @@ namespace Chirpstack.Gateway {
private global::Google.Protobuf.WellKnownTypes.Duration delay_;
/// <summary>
/// Delay (duration).
/// The delay will be added to the gateway internal timing, provided by the context object.
/// The delay will be added to the gateway internal timing, provided by the
/// context object.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
@ -10783,7 +10918,8 @@ namespace Chirpstack.Gateway {
private string command_ = "";
/// <summary>
/// Command to execute.
/// This command must be pre-configured in the LoRa Gateway Bridge configuration.
/// This command must be pre-configured in the LoRa Gateway Bridge
/// configuration.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]

File diff suppressed because it is too large Load Diff

1
api/go/Makefile vendored
View File

@ -27,6 +27,7 @@ api:
protoc ${PROTOC_ARGS} api/frame_log.proto
protoc ${PROTOC_ARGS} api/multicast_group.proto
protoc ${PROTOC_ARGS} api/request_log.proto
protoc ${PROTOC_ARGS} api/relay.proto
integration:
protoc ${PROTOC_ARGS} integration/integration.proto

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/application.proto
@ -19,6 +19,56 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
ApplicationService_Create_FullMethodName = "/api.ApplicationService/Create"
ApplicationService_Get_FullMethodName = "/api.ApplicationService/Get"
ApplicationService_Update_FullMethodName = "/api.ApplicationService/Update"
ApplicationService_Delete_FullMethodName = "/api.ApplicationService/Delete"
ApplicationService_List_FullMethodName = "/api.ApplicationService/List"
ApplicationService_ListIntegrations_FullMethodName = "/api.ApplicationService/ListIntegrations"
ApplicationService_CreateHttpIntegration_FullMethodName = "/api.ApplicationService/CreateHttpIntegration"
ApplicationService_GetHttpIntegration_FullMethodName = "/api.ApplicationService/GetHttpIntegration"
ApplicationService_UpdateHttpIntegration_FullMethodName = "/api.ApplicationService/UpdateHttpIntegration"
ApplicationService_DeleteHttpIntegration_FullMethodName = "/api.ApplicationService/DeleteHttpIntegration"
ApplicationService_CreateInfluxDbIntegration_FullMethodName = "/api.ApplicationService/CreateInfluxDbIntegration"
ApplicationService_GetInfluxDbIntegration_FullMethodName = "/api.ApplicationService/GetInfluxDbIntegration"
ApplicationService_UpdateInfluxDbIntegration_FullMethodName = "/api.ApplicationService/UpdateInfluxDbIntegration"
ApplicationService_DeleteInfluxDbIntegration_FullMethodName = "/api.ApplicationService/DeleteInfluxDbIntegration"
ApplicationService_CreateThingsBoardIntegration_FullMethodName = "/api.ApplicationService/CreateThingsBoardIntegration"
ApplicationService_GetThingsBoardIntegration_FullMethodName = "/api.ApplicationService/GetThingsBoardIntegration"
ApplicationService_UpdateThingsBoardIntegration_FullMethodName = "/api.ApplicationService/UpdateThingsBoardIntegration"
ApplicationService_DeleteThingsBoardIntegration_FullMethodName = "/api.ApplicationService/DeleteThingsBoardIntegration"
ApplicationService_CreateMyDevicesIntegration_FullMethodName = "/api.ApplicationService/CreateMyDevicesIntegration"
ApplicationService_GetMyDevicesIntegration_FullMethodName = "/api.ApplicationService/GetMyDevicesIntegration"
ApplicationService_UpdateMyDevicesIntegration_FullMethodName = "/api.ApplicationService/UpdateMyDevicesIntegration"
ApplicationService_DeleteMyDevicesIntegration_FullMethodName = "/api.ApplicationService/DeleteMyDevicesIntegration"
ApplicationService_CreateLoraCloudIntegration_FullMethodName = "/api.ApplicationService/CreateLoraCloudIntegration"
ApplicationService_GetLoraCloudIntegration_FullMethodName = "/api.ApplicationService/GetLoraCloudIntegration"
ApplicationService_UpdateLoraCloudIntegration_FullMethodName = "/api.ApplicationService/UpdateLoraCloudIntegration"
ApplicationService_DeleteLoraCloudIntegration_FullMethodName = "/api.ApplicationService/DeleteLoraCloudIntegration"
ApplicationService_CreateGcpPubSubIntegration_FullMethodName = "/api.ApplicationService/CreateGcpPubSubIntegration"
ApplicationService_GetGcpPubSubIntegration_FullMethodName = "/api.ApplicationService/GetGcpPubSubIntegration"
ApplicationService_UpdateGcpPubSubIntegration_FullMethodName = "/api.ApplicationService/UpdateGcpPubSubIntegration"
ApplicationService_DeleteGcpPubSubIntegration_FullMethodName = "/api.ApplicationService/DeleteGcpPubSubIntegration"
ApplicationService_CreateAwsSnsIntegration_FullMethodName = "/api.ApplicationService/CreateAwsSnsIntegration"
ApplicationService_GetAwsSnsIntegration_FullMethodName = "/api.ApplicationService/GetAwsSnsIntegration"
ApplicationService_UpdateAwsSnsIntegration_FullMethodName = "/api.ApplicationService/UpdateAwsSnsIntegration"
ApplicationService_DeleteAwsSnsIntegration_FullMethodName = "/api.ApplicationService/DeleteAwsSnsIntegration"
ApplicationService_CreateAzureServiceBusIntegration_FullMethodName = "/api.ApplicationService/CreateAzureServiceBusIntegration"
ApplicationService_GetAzureServiceBusIntegration_FullMethodName = "/api.ApplicationService/GetAzureServiceBusIntegration"
ApplicationService_UpdateAzureServiceBusIntegration_FullMethodName = "/api.ApplicationService/UpdateAzureServiceBusIntegration"
ApplicationService_DeleteAzureServiceBusIntegration_FullMethodName = "/api.ApplicationService/DeleteAzureServiceBusIntegration"
ApplicationService_CreatePilotThingsIntegration_FullMethodName = "/api.ApplicationService/CreatePilotThingsIntegration"
ApplicationService_GetPilotThingsIntegration_FullMethodName = "/api.ApplicationService/GetPilotThingsIntegration"
ApplicationService_UpdatePilotThingsIntegration_FullMethodName = "/api.ApplicationService/UpdatePilotThingsIntegration"
ApplicationService_DeletePilotThingsIntegration_FullMethodName = "/api.ApplicationService/DeletePilotThingsIntegration"
ApplicationService_CreateIftttIntegration_FullMethodName = "/api.ApplicationService/CreateIftttIntegration"
ApplicationService_GetIftttIntegration_FullMethodName = "/api.ApplicationService/GetIftttIntegration"
ApplicationService_UpdateIftttIntegration_FullMethodName = "/api.ApplicationService/UpdateIftttIntegration"
ApplicationService_DeleteIftttIntegration_FullMethodName = "/api.ApplicationService/DeleteIftttIntegration"
ApplicationService_GenerateMqttIntegrationClientCertificate_FullMethodName = "/api.ApplicationService/GenerateMqttIntegrationClientCertificate"
)
// ApplicationServiceClient is the client API for ApplicationService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -129,7 +179,7 @@ func NewApplicationServiceClient(cc grpc.ClientConnInterface) ApplicationService
func (c *applicationServiceClient) Create(ctx context.Context, in *CreateApplicationRequest, opts ...grpc.CallOption) (*CreateApplicationResponse, error) {
out := new(CreateApplicationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -138,7 +188,7 @@ func (c *applicationServiceClient) Create(ctx context.Context, in *CreateApplica
func (c *applicationServiceClient) Get(ctx context.Context, in *GetApplicationRequest, opts ...grpc.CallOption) (*GetApplicationResponse, error) {
out := new(GetApplicationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -147,7 +197,7 @@ func (c *applicationServiceClient) Get(ctx context.Context, in *GetApplicationRe
func (c *applicationServiceClient) Update(ctx context.Context, in *UpdateApplicationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -156,7 +206,7 @@ func (c *applicationServiceClient) Update(ctx context.Context, in *UpdateApplica
func (c *applicationServiceClient) Delete(ctx context.Context, in *DeleteApplicationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -165,7 +215,7 @@ func (c *applicationServiceClient) Delete(ctx context.Context, in *DeleteApplica
func (c *applicationServiceClient) List(ctx context.Context, in *ListApplicationsRequest, opts ...grpc.CallOption) (*ListApplicationsResponse, error) {
out := new(ListApplicationsResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/List", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -174,7 +224,7 @@ func (c *applicationServiceClient) List(ctx context.Context, in *ListApplication
func (c *applicationServiceClient) ListIntegrations(ctx context.Context, in *ListIntegrationsRequest, opts ...grpc.CallOption) (*ListIntegrationsResponse, error) {
out := new(ListIntegrationsResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/ListIntegrations", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_ListIntegrations_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -183,7 +233,7 @@ func (c *applicationServiceClient) ListIntegrations(ctx context.Context, in *Lis
func (c *applicationServiceClient) CreateHttpIntegration(ctx context.Context, in *CreateHttpIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateHttpIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateHttpIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -192,7 +242,7 @@ func (c *applicationServiceClient) CreateHttpIntegration(ctx context.Context, in
func (c *applicationServiceClient) GetHttpIntegration(ctx context.Context, in *GetHttpIntegrationRequest, opts ...grpc.CallOption) (*GetHttpIntegrationResponse, error) {
out := new(GetHttpIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetHttpIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetHttpIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -201,7 +251,7 @@ func (c *applicationServiceClient) GetHttpIntegration(ctx context.Context, in *G
func (c *applicationServiceClient) UpdateHttpIntegration(ctx context.Context, in *UpdateHttpIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateHttpIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateHttpIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -210,7 +260,7 @@ func (c *applicationServiceClient) UpdateHttpIntegration(ctx context.Context, in
func (c *applicationServiceClient) DeleteHttpIntegration(ctx context.Context, in *DeleteHttpIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteHttpIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteHttpIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -219,7 +269,7 @@ func (c *applicationServiceClient) DeleteHttpIntegration(ctx context.Context, in
func (c *applicationServiceClient) CreateInfluxDbIntegration(ctx context.Context, in *CreateInfluxDbIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateInfluxDbIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateInfluxDbIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -228,7 +278,7 @@ func (c *applicationServiceClient) CreateInfluxDbIntegration(ctx context.Context
func (c *applicationServiceClient) GetInfluxDbIntegration(ctx context.Context, in *GetInfluxDbIntegrationRequest, opts ...grpc.CallOption) (*GetInfluxDbIntegrationResponse, error) {
out := new(GetInfluxDbIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetInfluxDbIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetInfluxDbIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -237,7 +287,7 @@ func (c *applicationServiceClient) GetInfluxDbIntegration(ctx context.Context, i
func (c *applicationServiceClient) UpdateInfluxDbIntegration(ctx context.Context, in *UpdateInfluxDbIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateInfluxDbIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateInfluxDbIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -246,7 +296,7 @@ func (c *applicationServiceClient) UpdateInfluxDbIntegration(ctx context.Context
func (c *applicationServiceClient) DeleteInfluxDbIntegration(ctx context.Context, in *DeleteInfluxDbIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteInfluxDbIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteInfluxDbIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -255,7 +305,7 @@ func (c *applicationServiceClient) DeleteInfluxDbIntegration(ctx context.Context
func (c *applicationServiceClient) CreateThingsBoardIntegration(ctx context.Context, in *CreateThingsBoardIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateThingsBoardIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateThingsBoardIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -264,7 +314,7 @@ func (c *applicationServiceClient) CreateThingsBoardIntegration(ctx context.Cont
func (c *applicationServiceClient) GetThingsBoardIntegration(ctx context.Context, in *GetThingsBoardIntegrationRequest, opts ...grpc.CallOption) (*GetThingsBoardIntegrationResponse, error) {
out := new(GetThingsBoardIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetThingsBoardIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetThingsBoardIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -273,7 +323,7 @@ func (c *applicationServiceClient) GetThingsBoardIntegration(ctx context.Context
func (c *applicationServiceClient) UpdateThingsBoardIntegration(ctx context.Context, in *UpdateThingsBoardIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateThingsBoardIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateThingsBoardIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -282,7 +332,7 @@ func (c *applicationServiceClient) UpdateThingsBoardIntegration(ctx context.Cont
func (c *applicationServiceClient) DeleteThingsBoardIntegration(ctx context.Context, in *DeleteThingsBoardIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteThingsBoardIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteThingsBoardIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -291,7 +341,7 @@ func (c *applicationServiceClient) DeleteThingsBoardIntegration(ctx context.Cont
func (c *applicationServiceClient) CreateMyDevicesIntegration(ctx context.Context, in *CreateMyDevicesIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateMyDevicesIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateMyDevicesIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -300,7 +350,7 @@ func (c *applicationServiceClient) CreateMyDevicesIntegration(ctx context.Contex
func (c *applicationServiceClient) GetMyDevicesIntegration(ctx context.Context, in *GetMyDevicesIntegrationRequest, opts ...grpc.CallOption) (*GetMyDevicesIntegrationResponse, error) {
out := new(GetMyDevicesIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetMyDevicesIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetMyDevicesIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -309,7 +359,7 @@ func (c *applicationServiceClient) GetMyDevicesIntegration(ctx context.Context,
func (c *applicationServiceClient) UpdateMyDevicesIntegration(ctx context.Context, in *UpdateMyDevicesIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateMyDevicesIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateMyDevicesIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -318,7 +368,7 @@ func (c *applicationServiceClient) UpdateMyDevicesIntegration(ctx context.Contex
func (c *applicationServiceClient) DeleteMyDevicesIntegration(ctx context.Context, in *DeleteMyDevicesIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteMyDevicesIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteMyDevicesIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -327,7 +377,7 @@ func (c *applicationServiceClient) DeleteMyDevicesIntegration(ctx context.Contex
func (c *applicationServiceClient) CreateLoraCloudIntegration(ctx context.Context, in *CreateLoraCloudIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateLoraCloudIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateLoraCloudIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -336,7 +386,7 @@ func (c *applicationServiceClient) CreateLoraCloudIntegration(ctx context.Contex
func (c *applicationServiceClient) GetLoraCloudIntegration(ctx context.Context, in *GetLoraCloudIntegrationRequest, opts ...grpc.CallOption) (*GetLoraCloudIntegrationResponse, error) {
out := new(GetLoraCloudIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetLoraCloudIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetLoraCloudIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -345,7 +395,7 @@ func (c *applicationServiceClient) GetLoraCloudIntegration(ctx context.Context,
func (c *applicationServiceClient) UpdateLoraCloudIntegration(ctx context.Context, in *UpdateLoraCloudIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateLoraCloudIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateLoraCloudIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -354,7 +404,7 @@ func (c *applicationServiceClient) UpdateLoraCloudIntegration(ctx context.Contex
func (c *applicationServiceClient) DeleteLoraCloudIntegration(ctx context.Context, in *DeleteLoraCloudIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteLoraCloudIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteLoraCloudIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -363,7 +413,7 @@ func (c *applicationServiceClient) DeleteLoraCloudIntegration(ctx context.Contex
func (c *applicationServiceClient) CreateGcpPubSubIntegration(ctx context.Context, in *CreateGcpPubSubIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateGcpPubSubIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateGcpPubSubIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -372,7 +422,7 @@ func (c *applicationServiceClient) CreateGcpPubSubIntegration(ctx context.Contex
func (c *applicationServiceClient) GetGcpPubSubIntegration(ctx context.Context, in *GetGcpPubSubIntegrationRequest, opts ...grpc.CallOption) (*GetGcpPubSubIntegrationResponse, error) {
out := new(GetGcpPubSubIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetGcpPubSubIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetGcpPubSubIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -381,7 +431,7 @@ func (c *applicationServiceClient) GetGcpPubSubIntegration(ctx context.Context,
func (c *applicationServiceClient) UpdateGcpPubSubIntegration(ctx context.Context, in *UpdateGcpPubSubIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateGcpPubSubIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateGcpPubSubIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -390,7 +440,7 @@ func (c *applicationServiceClient) UpdateGcpPubSubIntegration(ctx context.Contex
func (c *applicationServiceClient) DeleteGcpPubSubIntegration(ctx context.Context, in *DeleteGcpPubSubIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteGcpPubSubIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteGcpPubSubIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -399,7 +449,7 @@ func (c *applicationServiceClient) DeleteGcpPubSubIntegration(ctx context.Contex
func (c *applicationServiceClient) CreateAwsSnsIntegration(ctx context.Context, in *CreateAwsSnsIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateAwsSnsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateAwsSnsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -408,7 +458,7 @@ func (c *applicationServiceClient) CreateAwsSnsIntegration(ctx context.Context,
func (c *applicationServiceClient) GetAwsSnsIntegration(ctx context.Context, in *GetAwsSnsIntegrationRequest, opts ...grpc.CallOption) (*GetAwsSnsIntegrationResponse, error) {
out := new(GetAwsSnsIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetAwsSnsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetAwsSnsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -417,7 +467,7 @@ func (c *applicationServiceClient) GetAwsSnsIntegration(ctx context.Context, in
func (c *applicationServiceClient) UpdateAwsSnsIntegration(ctx context.Context, in *UpdateAwsSnsIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateAwsSnsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateAwsSnsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -426,7 +476,7 @@ func (c *applicationServiceClient) UpdateAwsSnsIntegration(ctx context.Context,
func (c *applicationServiceClient) DeleteAwsSnsIntegration(ctx context.Context, in *DeleteAwsSnsIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteAwsSnsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteAwsSnsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -435,7 +485,7 @@ func (c *applicationServiceClient) DeleteAwsSnsIntegration(ctx context.Context,
func (c *applicationServiceClient) CreateAzureServiceBusIntegration(ctx context.Context, in *CreateAzureServiceBusIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateAzureServiceBusIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateAzureServiceBusIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -444,7 +494,7 @@ func (c *applicationServiceClient) CreateAzureServiceBusIntegration(ctx context.
func (c *applicationServiceClient) GetAzureServiceBusIntegration(ctx context.Context, in *GetAzureServiceBusIntegrationRequest, opts ...grpc.CallOption) (*GetAzureServiceBusIntegrationResponse, error) {
out := new(GetAzureServiceBusIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetAzureServiceBusIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetAzureServiceBusIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -453,7 +503,7 @@ func (c *applicationServiceClient) GetAzureServiceBusIntegration(ctx context.Con
func (c *applicationServiceClient) UpdateAzureServiceBusIntegration(ctx context.Context, in *UpdateAzureServiceBusIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateAzureServiceBusIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateAzureServiceBusIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -462,7 +512,7 @@ func (c *applicationServiceClient) UpdateAzureServiceBusIntegration(ctx context.
func (c *applicationServiceClient) DeleteAzureServiceBusIntegration(ctx context.Context, in *DeleteAzureServiceBusIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteAzureServiceBusIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteAzureServiceBusIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -471,7 +521,7 @@ func (c *applicationServiceClient) DeleteAzureServiceBusIntegration(ctx context.
func (c *applicationServiceClient) CreatePilotThingsIntegration(ctx context.Context, in *CreatePilotThingsIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreatePilotThingsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreatePilotThingsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -480,7 +530,7 @@ func (c *applicationServiceClient) CreatePilotThingsIntegration(ctx context.Cont
func (c *applicationServiceClient) GetPilotThingsIntegration(ctx context.Context, in *GetPilotThingsIntegrationRequest, opts ...grpc.CallOption) (*GetPilotThingsIntegrationResponse, error) {
out := new(GetPilotThingsIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetPilotThingsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetPilotThingsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -489,7 +539,7 @@ func (c *applicationServiceClient) GetPilotThingsIntegration(ctx context.Context
func (c *applicationServiceClient) UpdatePilotThingsIntegration(ctx context.Context, in *UpdatePilotThingsIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdatePilotThingsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdatePilotThingsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -498,7 +548,7 @@ func (c *applicationServiceClient) UpdatePilotThingsIntegration(ctx context.Cont
func (c *applicationServiceClient) DeletePilotThingsIntegration(ctx context.Context, in *DeletePilotThingsIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeletePilotThingsIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeletePilotThingsIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -507,7 +557,7 @@ func (c *applicationServiceClient) DeletePilotThingsIntegration(ctx context.Cont
func (c *applicationServiceClient) CreateIftttIntegration(ctx context.Context, in *CreateIftttIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/CreateIftttIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_CreateIftttIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -516,7 +566,7 @@ func (c *applicationServiceClient) CreateIftttIntegration(ctx context.Context, i
func (c *applicationServiceClient) GetIftttIntegration(ctx context.Context, in *GetIftttIntegrationRequest, opts ...grpc.CallOption) (*GetIftttIntegrationResponse, error) {
out := new(GetIftttIntegrationResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GetIftttIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GetIftttIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -525,7 +575,7 @@ func (c *applicationServiceClient) GetIftttIntegration(ctx context.Context, in *
func (c *applicationServiceClient) UpdateIftttIntegration(ctx context.Context, in *UpdateIftttIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/UpdateIftttIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_UpdateIftttIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -534,7 +584,7 @@ func (c *applicationServiceClient) UpdateIftttIntegration(ctx context.Context, i
func (c *applicationServiceClient) DeleteIftttIntegration(ctx context.Context, in *DeleteIftttIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.ApplicationService/DeleteIftttIntegration", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_DeleteIftttIntegration_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -543,7 +593,7 @@ func (c *applicationServiceClient) DeleteIftttIntegration(ctx context.Context, i
func (c *applicationServiceClient) GenerateMqttIntegrationClientCertificate(ctx context.Context, in *GenerateMqttIntegrationClientCertificateRequest, opts ...grpc.CallOption) (*GenerateMqttIntegrationClientCertificateResponse, error) {
out := new(GenerateMqttIntegrationClientCertificateResponse)
err := c.cc.Invoke(ctx, "/api.ApplicationService/GenerateMqttIntegrationClientCertificate", in, out, opts...)
err := c.cc.Invoke(ctx, ApplicationService_GenerateMqttIntegrationClientCertificate_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -819,7 +869,7 @@ func _ApplicationService_Create_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/Create",
FullMethod: ApplicationService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).Create(ctx, req.(*CreateApplicationRequest))
@ -837,7 +887,7 @@ func _ApplicationService_Get_Handler(srv interface{}, ctx context.Context, dec f
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/Get",
FullMethod: ApplicationService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).Get(ctx, req.(*GetApplicationRequest))
@ -855,7 +905,7 @@ func _ApplicationService_Update_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/Update",
FullMethod: ApplicationService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).Update(ctx, req.(*UpdateApplicationRequest))
@ -873,7 +923,7 @@ func _ApplicationService_Delete_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/Delete",
FullMethod: ApplicationService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).Delete(ctx, req.(*DeleteApplicationRequest))
@ -891,7 +941,7 @@ func _ApplicationService_List_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/List",
FullMethod: ApplicationService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).List(ctx, req.(*ListApplicationsRequest))
@ -909,7 +959,7 @@ func _ApplicationService_ListIntegrations_Handler(srv interface{}, ctx context.C
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/ListIntegrations",
FullMethod: ApplicationService_ListIntegrations_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).ListIntegrations(ctx, req.(*ListIntegrationsRequest))
@ -927,7 +977,7 @@ func _ApplicationService_CreateHttpIntegration_Handler(srv interface{}, ctx cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateHttpIntegration",
FullMethod: ApplicationService_CreateHttpIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateHttpIntegration(ctx, req.(*CreateHttpIntegrationRequest))
@ -945,7 +995,7 @@ func _ApplicationService_GetHttpIntegration_Handler(srv interface{}, ctx context
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetHttpIntegration",
FullMethod: ApplicationService_GetHttpIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetHttpIntegration(ctx, req.(*GetHttpIntegrationRequest))
@ -963,7 +1013,7 @@ func _ApplicationService_UpdateHttpIntegration_Handler(srv interface{}, ctx cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateHttpIntegration",
FullMethod: ApplicationService_UpdateHttpIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateHttpIntegration(ctx, req.(*UpdateHttpIntegrationRequest))
@ -981,7 +1031,7 @@ func _ApplicationService_DeleteHttpIntegration_Handler(srv interface{}, ctx cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteHttpIntegration",
FullMethod: ApplicationService_DeleteHttpIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteHttpIntegration(ctx, req.(*DeleteHttpIntegrationRequest))
@ -999,7 +1049,7 @@ func _ApplicationService_CreateInfluxDbIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateInfluxDbIntegration",
FullMethod: ApplicationService_CreateInfluxDbIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateInfluxDbIntegration(ctx, req.(*CreateInfluxDbIntegrationRequest))
@ -1017,7 +1067,7 @@ func _ApplicationService_GetInfluxDbIntegration_Handler(srv interface{}, ctx con
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetInfluxDbIntegration",
FullMethod: ApplicationService_GetInfluxDbIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetInfluxDbIntegration(ctx, req.(*GetInfluxDbIntegrationRequest))
@ -1035,7 +1085,7 @@ func _ApplicationService_UpdateInfluxDbIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateInfluxDbIntegration",
FullMethod: ApplicationService_UpdateInfluxDbIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateInfluxDbIntegration(ctx, req.(*UpdateInfluxDbIntegrationRequest))
@ -1053,7 +1103,7 @@ func _ApplicationService_DeleteInfluxDbIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteInfluxDbIntegration",
FullMethod: ApplicationService_DeleteInfluxDbIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteInfluxDbIntegration(ctx, req.(*DeleteInfluxDbIntegrationRequest))
@ -1071,7 +1121,7 @@ func _ApplicationService_CreateThingsBoardIntegration_Handler(srv interface{}, c
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateThingsBoardIntegration",
FullMethod: ApplicationService_CreateThingsBoardIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateThingsBoardIntegration(ctx, req.(*CreateThingsBoardIntegrationRequest))
@ -1089,7 +1139,7 @@ func _ApplicationService_GetThingsBoardIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetThingsBoardIntegration",
FullMethod: ApplicationService_GetThingsBoardIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetThingsBoardIntegration(ctx, req.(*GetThingsBoardIntegrationRequest))
@ -1107,7 +1157,7 @@ func _ApplicationService_UpdateThingsBoardIntegration_Handler(srv interface{}, c
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateThingsBoardIntegration",
FullMethod: ApplicationService_UpdateThingsBoardIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateThingsBoardIntegration(ctx, req.(*UpdateThingsBoardIntegrationRequest))
@ -1125,7 +1175,7 @@ func _ApplicationService_DeleteThingsBoardIntegration_Handler(srv interface{}, c
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteThingsBoardIntegration",
FullMethod: ApplicationService_DeleteThingsBoardIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteThingsBoardIntegration(ctx, req.(*DeleteThingsBoardIntegrationRequest))
@ -1143,7 +1193,7 @@ func _ApplicationService_CreateMyDevicesIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateMyDevicesIntegration",
FullMethod: ApplicationService_CreateMyDevicesIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateMyDevicesIntegration(ctx, req.(*CreateMyDevicesIntegrationRequest))
@ -1161,7 +1211,7 @@ func _ApplicationService_GetMyDevicesIntegration_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetMyDevicesIntegration",
FullMethod: ApplicationService_GetMyDevicesIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetMyDevicesIntegration(ctx, req.(*GetMyDevicesIntegrationRequest))
@ -1179,7 +1229,7 @@ func _ApplicationService_UpdateMyDevicesIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateMyDevicesIntegration",
FullMethod: ApplicationService_UpdateMyDevicesIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateMyDevicesIntegration(ctx, req.(*UpdateMyDevicesIntegrationRequest))
@ -1197,7 +1247,7 @@ func _ApplicationService_DeleteMyDevicesIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteMyDevicesIntegration",
FullMethod: ApplicationService_DeleteMyDevicesIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteMyDevicesIntegration(ctx, req.(*DeleteMyDevicesIntegrationRequest))
@ -1215,7 +1265,7 @@ func _ApplicationService_CreateLoraCloudIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateLoraCloudIntegration",
FullMethod: ApplicationService_CreateLoraCloudIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateLoraCloudIntegration(ctx, req.(*CreateLoraCloudIntegrationRequest))
@ -1233,7 +1283,7 @@ func _ApplicationService_GetLoraCloudIntegration_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetLoraCloudIntegration",
FullMethod: ApplicationService_GetLoraCloudIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetLoraCloudIntegration(ctx, req.(*GetLoraCloudIntegrationRequest))
@ -1251,7 +1301,7 @@ func _ApplicationService_UpdateLoraCloudIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateLoraCloudIntegration",
FullMethod: ApplicationService_UpdateLoraCloudIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateLoraCloudIntegration(ctx, req.(*UpdateLoraCloudIntegrationRequest))
@ -1269,7 +1319,7 @@ func _ApplicationService_DeleteLoraCloudIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteLoraCloudIntegration",
FullMethod: ApplicationService_DeleteLoraCloudIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteLoraCloudIntegration(ctx, req.(*DeleteLoraCloudIntegrationRequest))
@ -1287,7 +1337,7 @@ func _ApplicationService_CreateGcpPubSubIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateGcpPubSubIntegration",
FullMethod: ApplicationService_CreateGcpPubSubIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateGcpPubSubIntegration(ctx, req.(*CreateGcpPubSubIntegrationRequest))
@ -1305,7 +1355,7 @@ func _ApplicationService_GetGcpPubSubIntegration_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetGcpPubSubIntegration",
FullMethod: ApplicationService_GetGcpPubSubIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetGcpPubSubIntegration(ctx, req.(*GetGcpPubSubIntegrationRequest))
@ -1323,7 +1373,7 @@ func _ApplicationService_UpdateGcpPubSubIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateGcpPubSubIntegration",
FullMethod: ApplicationService_UpdateGcpPubSubIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateGcpPubSubIntegration(ctx, req.(*UpdateGcpPubSubIntegrationRequest))
@ -1341,7 +1391,7 @@ func _ApplicationService_DeleteGcpPubSubIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteGcpPubSubIntegration",
FullMethod: ApplicationService_DeleteGcpPubSubIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteGcpPubSubIntegration(ctx, req.(*DeleteGcpPubSubIntegrationRequest))
@ -1359,7 +1409,7 @@ func _ApplicationService_CreateAwsSnsIntegration_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateAwsSnsIntegration",
FullMethod: ApplicationService_CreateAwsSnsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateAwsSnsIntegration(ctx, req.(*CreateAwsSnsIntegrationRequest))
@ -1377,7 +1427,7 @@ func _ApplicationService_GetAwsSnsIntegration_Handler(srv interface{}, ctx conte
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetAwsSnsIntegration",
FullMethod: ApplicationService_GetAwsSnsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetAwsSnsIntegration(ctx, req.(*GetAwsSnsIntegrationRequest))
@ -1395,7 +1445,7 @@ func _ApplicationService_UpdateAwsSnsIntegration_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateAwsSnsIntegration",
FullMethod: ApplicationService_UpdateAwsSnsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateAwsSnsIntegration(ctx, req.(*UpdateAwsSnsIntegrationRequest))
@ -1413,7 +1463,7 @@ func _ApplicationService_DeleteAwsSnsIntegration_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteAwsSnsIntegration",
FullMethod: ApplicationService_DeleteAwsSnsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteAwsSnsIntegration(ctx, req.(*DeleteAwsSnsIntegrationRequest))
@ -1431,7 +1481,7 @@ func _ApplicationService_CreateAzureServiceBusIntegration_Handler(srv interface{
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateAzureServiceBusIntegration",
FullMethod: ApplicationService_CreateAzureServiceBusIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateAzureServiceBusIntegration(ctx, req.(*CreateAzureServiceBusIntegrationRequest))
@ -1449,7 +1499,7 @@ func _ApplicationService_GetAzureServiceBusIntegration_Handler(srv interface{},
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetAzureServiceBusIntegration",
FullMethod: ApplicationService_GetAzureServiceBusIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetAzureServiceBusIntegration(ctx, req.(*GetAzureServiceBusIntegrationRequest))
@ -1467,7 +1517,7 @@ func _ApplicationService_UpdateAzureServiceBusIntegration_Handler(srv interface{
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateAzureServiceBusIntegration",
FullMethod: ApplicationService_UpdateAzureServiceBusIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateAzureServiceBusIntegration(ctx, req.(*UpdateAzureServiceBusIntegrationRequest))
@ -1485,7 +1535,7 @@ func _ApplicationService_DeleteAzureServiceBusIntegration_Handler(srv interface{
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteAzureServiceBusIntegration",
FullMethod: ApplicationService_DeleteAzureServiceBusIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteAzureServiceBusIntegration(ctx, req.(*DeleteAzureServiceBusIntegrationRequest))
@ -1503,7 +1553,7 @@ func _ApplicationService_CreatePilotThingsIntegration_Handler(srv interface{}, c
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreatePilotThingsIntegration",
FullMethod: ApplicationService_CreatePilotThingsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreatePilotThingsIntegration(ctx, req.(*CreatePilotThingsIntegrationRequest))
@ -1521,7 +1571,7 @@ func _ApplicationService_GetPilotThingsIntegration_Handler(srv interface{}, ctx
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetPilotThingsIntegration",
FullMethod: ApplicationService_GetPilotThingsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetPilotThingsIntegration(ctx, req.(*GetPilotThingsIntegrationRequest))
@ -1539,7 +1589,7 @@ func _ApplicationService_UpdatePilotThingsIntegration_Handler(srv interface{}, c
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdatePilotThingsIntegration",
FullMethod: ApplicationService_UpdatePilotThingsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdatePilotThingsIntegration(ctx, req.(*UpdatePilotThingsIntegrationRequest))
@ -1557,7 +1607,7 @@ func _ApplicationService_DeletePilotThingsIntegration_Handler(srv interface{}, c
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeletePilotThingsIntegration",
FullMethod: ApplicationService_DeletePilotThingsIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeletePilotThingsIntegration(ctx, req.(*DeletePilotThingsIntegrationRequest))
@ -1575,7 +1625,7 @@ func _ApplicationService_CreateIftttIntegration_Handler(srv interface{}, ctx con
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/CreateIftttIntegration",
FullMethod: ApplicationService_CreateIftttIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).CreateIftttIntegration(ctx, req.(*CreateIftttIntegrationRequest))
@ -1593,7 +1643,7 @@ func _ApplicationService_GetIftttIntegration_Handler(srv interface{}, ctx contex
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GetIftttIntegration",
FullMethod: ApplicationService_GetIftttIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GetIftttIntegration(ctx, req.(*GetIftttIntegrationRequest))
@ -1611,7 +1661,7 @@ func _ApplicationService_UpdateIftttIntegration_Handler(srv interface{}, ctx con
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/UpdateIftttIntegration",
FullMethod: ApplicationService_UpdateIftttIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).UpdateIftttIntegration(ctx, req.(*UpdateIftttIntegrationRequest))
@ -1629,7 +1679,7 @@ func _ApplicationService_DeleteIftttIntegration_Handler(srv interface{}, ctx con
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/DeleteIftttIntegration",
FullMethod: ApplicationService_DeleteIftttIntegration_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).DeleteIftttIntegration(ctx, req.(*DeleteIftttIntegrationRequest))
@ -1647,7 +1697,7 @@ func _ApplicationService_GenerateMqttIntegrationClientCertificate_Handler(srv in
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.ApplicationService/GenerateMqttIntegrationClientCertificate",
FullMethod: ApplicationService_GenerateMqttIntegrationClientCertificate_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).GenerateMqttIntegrationClientCertificate(ctx, req.(*GenerateMqttIntegrationClientCertificateRequest))

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/device.proto
@ -19,6 +19,29 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
DeviceService_Create_FullMethodName = "/api.DeviceService/Create"
DeviceService_Get_FullMethodName = "/api.DeviceService/Get"
DeviceService_Update_FullMethodName = "/api.DeviceService/Update"
DeviceService_Delete_FullMethodName = "/api.DeviceService/Delete"
DeviceService_List_FullMethodName = "/api.DeviceService/List"
DeviceService_CreateKeys_FullMethodName = "/api.DeviceService/CreateKeys"
DeviceService_GetKeys_FullMethodName = "/api.DeviceService/GetKeys"
DeviceService_UpdateKeys_FullMethodName = "/api.DeviceService/UpdateKeys"
DeviceService_DeleteKeys_FullMethodName = "/api.DeviceService/DeleteKeys"
DeviceService_FlushDevNonces_FullMethodName = "/api.DeviceService/FlushDevNonces"
DeviceService_Activate_FullMethodName = "/api.DeviceService/Activate"
DeviceService_Deactivate_FullMethodName = "/api.DeviceService/Deactivate"
DeviceService_GetActivation_FullMethodName = "/api.DeviceService/GetActivation"
DeviceService_GetRandomDevAddr_FullMethodName = "/api.DeviceService/GetRandomDevAddr"
DeviceService_GetMetrics_FullMethodName = "/api.DeviceService/GetMetrics"
DeviceService_GetLinkMetrics_FullMethodName = "/api.DeviceService/GetLinkMetrics"
DeviceService_Enqueue_FullMethodName = "/api.DeviceService/Enqueue"
DeviceService_FlushQueue_FullMethodName = "/api.DeviceService/FlushQueue"
DeviceService_GetQueue_FullMethodName = "/api.DeviceService/GetQueue"
DeviceService_GetNextFCntDown_FullMethodName = "/api.DeviceService/GetNextFCntDown"
)
// DeviceServiceClient is the client API for DeviceService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -43,16 +66,20 @@ type DeviceServiceClient interface {
DeleteKeys(ctx context.Context, in *DeleteDeviceKeysRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// FlushDevNonces flushes the OTAA device nonces.
FlushDevNonces(ctx context.Context, in *FlushDevNoncesRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
// Activate (re)activates the device with the given parameters (for ABP or for
// importing OTAA activations).
Activate(ctx context.Context, in *ActivateDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// Deactivate de-activates the device.
Deactivate(ctx context.Context, in *DeactivateDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// GetActivation returns the current activation details of the device (OTAA or ABP).
// GetActivation returns the current activation details of the device (OTAA or
// ABP).
GetActivation(ctx context.Context, in *GetDeviceActivationRequest, opts ...grpc.CallOption) (*GetDeviceActivationResponse, error)
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
// account.
GetRandomDevAddr(ctx context.Context, in *GetRandomDevAddrRequest, opts ...grpc.CallOption) (*GetRandomDevAddrResponse, error)
// GetMetrics returns the device metrics.
// Note that this requires a device-profile with codec and measurements configured.
// Note that this requires a device-profile with codec and measurements
// configured.
GetMetrics(ctx context.Context, in *GetDeviceMetricsRequest, opts ...grpc.CallOption) (*GetDeviceMetricsResponse, error)
// GetLinkMetrics returns the device link metrics.
// This includes uplinks, downlinks, RSSI, SNR, etc...
@ -63,6 +90,10 @@ type DeviceServiceClient interface {
FlushQueue(ctx context.Context, in *FlushDeviceQueueRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// GetQueue returns the downlink device-queue.
GetQueue(ctx context.Context, in *GetDeviceQueueItemsRequest, opts ...grpc.CallOption) (*GetDeviceQueueItemsResponse, error)
// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
// downlinks. The difference with the DeviceActivation f_cont_down is that
// this method takes potential existing queue-items into account.
GetNextFCntDown(ctx context.Context, in *GetDeviceNextFCntDownRequest, opts ...grpc.CallOption) (*GetDeviceNextFCntDownResponse, error)
}
type deviceServiceClient struct {
@ -75,7 +106,7 @@ func NewDeviceServiceClient(cc grpc.ClientConnInterface) DeviceServiceClient {
func (c *deviceServiceClient) Create(ctx context.Context, in *CreateDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -84,7 +115,7 @@ func (c *deviceServiceClient) Create(ctx context.Context, in *CreateDeviceReques
func (c *deviceServiceClient) Get(ctx context.Context, in *GetDeviceRequest, opts ...grpc.CallOption) (*GetDeviceResponse, error) {
out := new(GetDeviceResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -93,7 +124,7 @@ func (c *deviceServiceClient) Get(ctx context.Context, in *GetDeviceRequest, opt
func (c *deviceServiceClient) Update(ctx context.Context, in *UpdateDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -102,7 +133,7 @@ func (c *deviceServiceClient) Update(ctx context.Context, in *UpdateDeviceReques
func (c *deviceServiceClient) Delete(ctx context.Context, in *DeleteDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -111,7 +142,7 @@ func (c *deviceServiceClient) Delete(ctx context.Context, in *DeleteDeviceReques
func (c *deviceServiceClient) List(ctx context.Context, in *ListDevicesRequest, opts ...grpc.CallOption) (*ListDevicesResponse, error) {
out := new(ListDevicesResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/List", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -120,7 +151,7 @@ func (c *deviceServiceClient) List(ctx context.Context, in *ListDevicesRequest,
func (c *deviceServiceClient) CreateKeys(ctx context.Context, in *CreateDeviceKeysRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/CreateKeys", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_CreateKeys_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -129,7 +160,7 @@ func (c *deviceServiceClient) CreateKeys(ctx context.Context, in *CreateDeviceKe
func (c *deviceServiceClient) GetKeys(ctx context.Context, in *GetDeviceKeysRequest, opts ...grpc.CallOption) (*GetDeviceKeysResponse, error) {
out := new(GetDeviceKeysResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/GetKeys", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_GetKeys_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -138,7 +169,7 @@ func (c *deviceServiceClient) GetKeys(ctx context.Context, in *GetDeviceKeysRequ
func (c *deviceServiceClient) UpdateKeys(ctx context.Context, in *UpdateDeviceKeysRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/UpdateKeys", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_UpdateKeys_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -147,7 +178,7 @@ func (c *deviceServiceClient) UpdateKeys(ctx context.Context, in *UpdateDeviceKe
func (c *deviceServiceClient) DeleteKeys(ctx context.Context, in *DeleteDeviceKeysRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/DeleteKeys", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_DeleteKeys_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -156,7 +187,7 @@ func (c *deviceServiceClient) DeleteKeys(ctx context.Context, in *DeleteDeviceKe
func (c *deviceServiceClient) FlushDevNonces(ctx context.Context, in *FlushDevNoncesRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/FlushDevNonces", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_FlushDevNonces_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -165,7 +196,7 @@ func (c *deviceServiceClient) FlushDevNonces(ctx context.Context, in *FlushDevNo
func (c *deviceServiceClient) Activate(ctx context.Context, in *ActivateDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/Activate", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Activate_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -174,7 +205,7 @@ func (c *deviceServiceClient) Activate(ctx context.Context, in *ActivateDeviceRe
func (c *deviceServiceClient) Deactivate(ctx context.Context, in *DeactivateDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/Deactivate", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Deactivate_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -183,7 +214,7 @@ func (c *deviceServiceClient) Deactivate(ctx context.Context, in *DeactivateDevi
func (c *deviceServiceClient) GetActivation(ctx context.Context, in *GetDeviceActivationRequest, opts ...grpc.CallOption) (*GetDeviceActivationResponse, error) {
out := new(GetDeviceActivationResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/GetActivation", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_GetActivation_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -192,7 +223,7 @@ func (c *deviceServiceClient) GetActivation(ctx context.Context, in *GetDeviceAc
func (c *deviceServiceClient) GetRandomDevAddr(ctx context.Context, in *GetRandomDevAddrRequest, opts ...grpc.CallOption) (*GetRandomDevAddrResponse, error) {
out := new(GetRandomDevAddrResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/GetRandomDevAddr", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_GetRandomDevAddr_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -201,7 +232,7 @@ func (c *deviceServiceClient) GetRandomDevAddr(ctx context.Context, in *GetRando
func (c *deviceServiceClient) GetMetrics(ctx context.Context, in *GetDeviceMetricsRequest, opts ...grpc.CallOption) (*GetDeviceMetricsResponse, error) {
out := new(GetDeviceMetricsResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/GetMetrics", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_GetMetrics_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -210,7 +241,7 @@ func (c *deviceServiceClient) GetMetrics(ctx context.Context, in *GetDeviceMetri
func (c *deviceServiceClient) GetLinkMetrics(ctx context.Context, in *GetDeviceLinkMetricsRequest, opts ...grpc.CallOption) (*GetDeviceLinkMetricsResponse, error) {
out := new(GetDeviceLinkMetricsResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/GetLinkMetrics", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_GetLinkMetrics_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -219,7 +250,7 @@ func (c *deviceServiceClient) GetLinkMetrics(ctx context.Context, in *GetDeviceL
func (c *deviceServiceClient) Enqueue(ctx context.Context, in *EnqueueDeviceQueueItemRequest, opts ...grpc.CallOption) (*EnqueueDeviceQueueItemResponse, error) {
out := new(EnqueueDeviceQueueItemResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/Enqueue", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_Enqueue_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -228,7 +259,7 @@ func (c *deviceServiceClient) Enqueue(ctx context.Context, in *EnqueueDeviceQueu
func (c *deviceServiceClient) FlushQueue(ctx context.Context, in *FlushDeviceQueueRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceService/FlushQueue", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_FlushQueue_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -237,7 +268,16 @@ func (c *deviceServiceClient) FlushQueue(ctx context.Context, in *FlushDeviceQue
func (c *deviceServiceClient) GetQueue(ctx context.Context, in *GetDeviceQueueItemsRequest, opts ...grpc.CallOption) (*GetDeviceQueueItemsResponse, error) {
out := new(GetDeviceQueueItemsResponse)
err := c.cc.Invoke(ctx, "/api.DeviceService/GetQueue", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceService_GetQueue_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *deviceServiceClient) GetNextFCntDown(ctx context.Context, in *GetDeviceNextFCntDownRequest, opts ...grpc.CallOption) (*GetDeviceNextFCntDownResponse, error) {
out := new(GetDeviceNextFCntDownResponse)
err := c.cc.Invoke(ctx, DeviceService_GetNextFCntDown_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -268,16 +308,20 @@ type DeviceServiceServer interface {
DeleteKeys(context.Context, *DeleteDeviceKeysRequest) (*emptypb.Empty, error)
// FlushDevNonces flushes the OTAA device nonces.
FlushDevNonces(context.Context, *FlushDevNoncesRequest) (*emptypb.Empty, error)
// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
// Activate (re)activates the device with the given parameters (for ABP or for
// importing OTAA activations).
Activate(context.Context, *ActivateDeviceRequest) (*emptypb.Empty, error)
// Deactivate de-activates the device.
Deactivate(context.Context, *DeactivateDeviceRequest) (*emptypb.Empty, error)
// GetActivation returns the current activation details of the device (OTAA or ABP).
// GetActivation returns the current activation details of the device (OTAA or
// ABP).
GetActivation(context.Context, *GetDeviceActivationRequest) (*GetDeviceActivationResponse, error)
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
// account.
GetRandomDevAddr(context.Context, *GetRandomDevAddrRequest) (*GetRandomDevAddrResponse, error)
// GetMetrics returns the device metrics.
// Note that this requires a device-profile with codec and measurements configured.
// Note that this requires a device-profile with codec and measurements
// configured.
GetMetrics(context.Context, *GetDeviceMetricsRequest) (*GetDeviceMetricsResponse, error)
// GetLinkMetrics returns the device link metrics.
// This includes uplinks, downlinks, RSSI, SNR, etc...
@ -288,6 +332,10 @@ type DeviceServiceServer interface {
FlushQueue(context.Context, *FlushDeviceQueueRequest) (*emptypb.Empty, error)
// GetQueue returns the downlink device-queue.
GetQueue(context.Context, *GetDeviceQueueItemsRequest) (*GetDeviceQueueItemsResponse, error)
// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
// downlinks. The difference with the DeviceActivation f_cont_down is that
// this method takes potential existing queue-items into account.
GetNextFCntDown(context.Context, *GetDeviceNextFCntDownRequest) (*GetDeviceNextFCntDownResponse, error)
mustEmbedUnimplementedDeviceServiceServer()
}
@ -352,6 +400,9 @@ func (UnimplementedDeviceServiceServer) FlushQueue(context.Context, *FlushDevice
func (UnimplementedDeviceServiceServer) GetQueue(context.Context, *GetDeviceQueueItemsRequest) (*GetDeviceQueueItemsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetQueue not implemented")
}
func (UnimplementedDeviceServiceServer) GetNextFCntDown(context.Context, *GetDeviceNextFCntDownRequest) (*GetDeviceNextFCntDownResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetNextFCntDown not implemented")
}
func (UnimplementedDeviceServiceServer) mustEmbedUnimplementedDeviceServiceServer() {}
// UnsafeDeviceServiceServer may be embedded to opt out of forward compatibility for this service.
@ -375,7 +426,7 @@ func _DeviceService_Create_Handler(srv interface{}, ctx context.Context, dec fun
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Create",
FullMethod: DeviceService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Create(ctx, req.(*CreateDeviceRequest))
@ -393,7 +444,7 @@ func _DeviceService_Get_Handler(srv interface{}, ctx context.Context, dec func(i
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Get",
FullMethod: DeviceService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Get(ctx, req.(*GetDeviceRequest))
@ -411,7 +462,7 @@ func _DeviceService_Update_Handler(srv interface{}, ctx context.Context, dec fun
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Update",
FullMethod: DeviceService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Update(ctx, req.(*UpdateDeviceRequest))
@ -429,7 +480,7 @@ func _DeviceService_Delete_Handler(srv interface{}, ctx context.Context, dec fun
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Delete",
FullMethod: DeviceService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Delete(ctx, req.(*DeleteDeviceRequest))
@ -447,7 +498,7 @@ func _DeviceService_List_Handler(srv interface{}, ctx context.Context, dec func(
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/List",
FullMethod: DeviceService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).List(ctx, req.(*ListDevicesRequest))
@ -465,7 +516,7 @@ func _DeviceService_CreateKeys_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/CreateKeys",
FullMethod: DeviceService_CreateKeys_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).CreateKeys(ctx, req.(*CreateDeviceKeysRequest))
@ -483,7 +534,7 @@ func _DeviceService_GetKeys_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/GetKeys",
FullMethod: DeviceService_GetKeys_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetKeys(ctx, req.(*GetDeviceKeysRequest))
@ -501,7 +552,7 @@ func _DeviceService_UpdateKeys_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/UpdateKeys",
FullMethod: DeviceService_UpdateKeys_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).UpdateKeys(ctx, req.(*UpdateDeviceKeysRequest))
@ -519,7 +570,7 @@ func _DeviceService_DeleteKeys_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/DeleteKeys",
FullMethod: DeviceService_DeleteKeys_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).DeleteKeys(ctx, req.(*DeleteDeviceKeysRequest))
@ -537,7 +588,7 @@ func _DeviceService_FlushDevNonces_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/FlushDevNonces",
FullMethod: DeviceService_FlushDevNonces_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).FlushDevNonces(ctx, req.(*FlushDevNoncesRequest))
@ -555,7 +606,7 @@ func _DeviceService_Activate_Handler(srv interface{}, ctx context.Context, dec f
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Activate",
FullMethod: DeviceService_Activate_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Activate(ctx, req.(*ActivateDeviceRequest))
@ -573,7 +624,7 @@ func _DeviceService_Deactivate_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Deactivate",
FullMethod: DeviceService_Deactivate_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Deactivate(ctx, req.(*DeactivateDeviceRequest))
@ -591,7 +642,7 @@ func _DeviceService_GetActivation_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/GetActivation",
FullMethod: DeviceService_GetActivation_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetActivation(ctx, req.(*GetDeviceActivationRequest))
@ -609,7 +660,7 @@ func _DeviceService_GetRandomDevAddr_Handler(srv interface{}, ctx context.Contex
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/GetRandomDevAddr",
FullMethod: DeviceService_GetRandomDevAddr_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetRandomDevAddr(ctx, req.(*GetRandomDevAddrRequest))
@ -627,7 +678,7 @@ func _DeviceService_GetMetrics_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/GetMetrics",
FullMethod: DeviceService_GetMetrics_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetMetrics(ctx, req.(*GetDeviceMetricsRequest))
@ -645,7 +696,7 @@ func _DeviceService_GetLinkMetrics_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/GetLinkMetrics",
FullMethod: DeviceService_GetLinkMetrics_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetLinkMetrics(ctx, req.(*GetDeviceLinkMetricsRequest))
@ -663,7 +714,7 @@ func _DeviceService_Enqueue_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/Enqueue",
FullMethod: DeviceService_Enqueue_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).Enqueue(ctx, req.(*EnqueueDeviceQueueItemRequest))
@ -681,7 +732,7 @@ func _DeviceService_FlushQueue_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/FlushQueue",
FullMethod: DeviceService_FlushQueue_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).FlushQueue(ctx, req.(*FlushDeviceQueueRequest))
@ -699,7 +750,7 @@ func _DeviceService_GetQueue_Handler(srv interface{}, ctx context.Context, dec f
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceService/GetQueue",
FullMethod: DeviceService_GetQueue_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetQueue(ctx, req.(*GetDeviceQueueItemsRequest))
@ -707,6 +758,24 @@ func _DeviceService_GetQueue_Handler(srv interface{}, ctx context.Context, dec f
return interceptor(ctx, in, info, handler)
}
func _DeviceService_GetNextFCntDown_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetDeviceNextFCntDownRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(DeviceServiceServer).GetNextFCntDown(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: DeviceService_GetNextFCntDown_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceServiceServer).GetNextFCntDown(ctx, req.(*GetDeviceNextFCntDownRequest))
}
return interceptor(ctx, in, info, handler)
}
// DeviceService_ServiceDesc is the grpc.ServiceDesc for DeviceService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@ -790,6 +859,10 @@ var DeviceService_ServiceDesc = grpc.ServiceDesc{
MethodName: "GetQueue",
Handler: _DeviceService_GetQueue_Handler,
},
{
MethodName: "GetNextFCntDown",
Handler: _DeviceService_GetNextFCntDown_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "api/device.proto",

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/device_profile.proto
@ -19,6 +19,15 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
DeviceProfileService_Create_FullMethodName = "/api.DeviceProfileService/Create"
DeviceProfileService_Get_FullMethodName = "/api.DeviceProfileService/Get"
DeviceProfileService_Update_FullMethodName = "/api.DeviceProfileService/Update"
DeviceProfileService_Delete_FullMethodName = "/api.DeviceProfileService/Delete"
DeviceProfileService_List_FullMethodName = "/api.DeviceProfileService/List"
DeviceProfileService_ListAdrAlgorithms_FullMethodName = "/api.DeviceProfileService/ListAdrAlgorithms"
)
// DeviceProfileServiceClient is the client API for DeviceProfileService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -47,7 +56,7 @@ func NewDeviceProfileServiceClient(cc grpc.ClientConnInterface) DeviceProfileSer
func (c *deviceProfileServiceClient) Create(ctx context.Context, in *CreateDeviceProfileRequest, opts ...grpc.CallOption) (*CreateDeviceProfileResponse, error) {
out := new(CreateDeviceProfileResponse)
err := c.cc.Invoke(ctx, "/api.DeviceProfileService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -56,7 +65,7 @@ func (c *deviceProfileServiceClient) Create(ctx context.Context, in *CreateDevic
func (c *deviceProfileServiceClient) Get(ctx context.Context, in *GetDeviceProfileRequest, opts ...grpc.CallOption) (*GetDeviceProfileResponse, error) {
out := new(GetDeviceProfileResponse)
err := c.cc.Invoke(ctx, "/api.DeviceProfileService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -65,7 +74,7 @@ func (c *deviceProfileServiceClient) Get(ctx context.Context, in *GetDeviceProfi
func (c *deviceProfileServiceClient) Update(ctx context.Context, in *UpdateDeviceProfileRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceProfileService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -74,7 +83,7 @@ func (c *deviceProfileServiceClient) Update(ctx context.Context, in *UpdateDevic
func (c *deviceProfileServiceClient) Delete(ctx context.Context, in *DeleteDeviceProfileRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceProfileService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -83,7 +92,7 @@ func (c *deviceProfileServiceClient) Delete(ctx context.Context, in *DeleteDevic
func (c *deviceProfileServiceClient) List(ctx context.Context, in *ListDeviceProfilesRequest, opts ...grpc.CallOption) (*ListDeviceProfilesResponse, error) {
out := new(ListDeviceProfilesResponse)
err := c.cc.Invoke(ctx, "/api.DeviceProfileService/List", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -92,7 +101,7 @@ func (c *deviceProfileServiceClient) List(ctx context.Context, in *ListDevicePro
func (c *deviceProfileServiceClient) ListAdrAlgorithms(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ListDeviceProfileAdrAlgorithmsResponse, error) {
out := new(ListDeviceProfileAdrAlgorithmsResponse)
err := c.cc.Invoke(ctx, "/api.DeviceProfileService/ListAdrAlgorithms", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileService_ListAdrAlgorithms_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -163,7 +172,7 @@ func _DeviceProfileService_Create_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileService/Create",
FullMethod: DeviceProfileService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileServiceServer).Create(ctx, req.(*CreateDeviceProfileRequest))
@ -181,7 +190,7 @@ func _DeviceProfileService_Get_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileService/Get",
FullMethod: DeviceProfileService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileServiceServer).Get(ctx, req.(*GetDeviceProfileRequest))
@ -199,7 +208,7 @@ func _DeviceProfileService_Update_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileService/Update",
FullMethod: DeviceProfileService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileServiceServer).Update(ctx, req.(*UpdateDeviceProfileRequest))
@ -217,7 +226,7 @@ func _DeviceProfileService_Delete_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileService/Delete",
FullMethod: DeviceProfileService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileServiceServer).Delete(ctx, req.(*DeleteDeviceProfileRequest))
@ -235,7 +244,7 @@ func _DeviceProfileService_List_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileService/List",
FullMethod: DeviceProfileService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileServiceServer).List(ctx, req.(*ListDeviceProfilesRequest))
@ -253,7 +262,7 @@ func _DeviceProfileService_ListAdrAlgorithms_Handler(srv interface{}, ctx contex
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileService/ListAdrAlgorithms",
FullMethod: DeviceProfileService_ListAdrAlgorithms_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileServiceServer).ListAdrAlgorithms(ctx, req.(*emptypb.Empty))

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/device_profile_template.proto
@ -1053,9 +1053,9 @@ var file_api_device_profile_template_proto_rawDesc = []byte{
0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x22, 0x1d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64,
0x65, 0x76, 0x69, 0x63, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2d, 0x74, 0x65,
0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x7e, 0x0a, 0x03, 0x47, 0x65,
0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x22, 0x1d, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x12, 0x7e, 0x0a, 0x03, 0x47, 0x65,
0x74, 0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63,
0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65,
@ -1068,11 +1068,11 @@ var file_api_device_profile_template_proto_rawDesc = []byte{
0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54,
0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x1a, 0x3a,
0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x66,
0x69, 0x6c, 0x65, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x2f, 0x7b, 0x64,
0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x74, 0x65,
0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x75, 0x0a,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x3a, 0x01,
0x2a, 0x1a, 0x3a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2d, 0x70,
0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2d, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73,
0x2f, 0x7b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x64, 0x7d, 0x12, 0x75, 0x0a,
0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x27, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
0x65, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/device_profile_template.proto
@ -19,6 +19,14 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
DeviceProfileTemplateService_Create_FullMethodName = "/api.DeviceProfileTemplateService/Create"
DeviceProfileTemplateService_Get_FullMethodName = "/api.DeviceProfileTemplateService/Get"
DeviceProfileTemplateService_Update_FullMethodName = "/api.DeviceProfileTemplateService/Update"
DeviceProfileTemplateService_Delete_FullMethodName = "/api.DeviceProfileTemplateService/Delete"
DeviceProfileTemplateService_List_FullMethodName = "/api.DeviceProfileTemplateService/List"
)
// DeviceProfileTemplateServiceClient is the client API for DeviceProfileTemplateService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -45,7 +53,7 @@ func NewDeviceProfileTemplateServiceClient(cc grpc.ClientConnInterface) DevicePr
func (c *deviceProfileTemplateServiceClient) Create(ctx context.Context, in *CreateDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileTemplateService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -54,7 +62,7 @@ func (c *deviceProfileTemplateServiceClient) Create(ctx context.Context, in *Cre
func (c *deviceProfileTemplateServiceClient) Get(ctx context.Context, in *GetDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*GetDeviceProfileTemplateResponse, error) {
out := new(GetDeviceProfileTemplateResponse)
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileTemplateService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -63,7 +71,7 @@ func (c *deviceProfileTemplateServiceClient) Get(ctx context.Context, in *GetDev
func (c *deviceProfileTemplateServiceClient) Update(ctx context.Context, in *UpdateDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileTemplateService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -72,7 +80,7 @@ func (c *deviceProfileTemplateServiceClient) Update(ctx context.Context, in *Upd
func (c *deviceProfileTemplateServiceClient) Delete(ctx context.Context, in *DeleteDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileTemplateService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -81,7 +89,7 @@ func (c *deviceProfileTemplateServiceClient) Delete(ctx context.Context, in *Del
func (c *deviceProfileTemplateServiceClient) List(ctx context.Context, in *ListDeviceProfileTemplatesRequest, opts ...grpc.CallOption) (*ListDeviceProfileTemplatesResponse, error) {
out := new(ListDeviceProfileTemplatesResponse)
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/List", in, out, opts...)
err := c.cc.Invoke(ctx, DeviceProfileTemplateService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -148,7 +156,7 @@ func _DeviceProfileTemplateService_Create_Handler(srv interface{}, ctx context.C
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileTemplateService/Create",
FullMethod: DeviceProfileTemplateService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileTemplateServiceServer).Create(ctx, req.(*CreateDeviceProfileTemplateRequest))
@ -166,7 +174,7 @@ func _DeviceProfileTemplateService_Get_Handler(srv interface{}, ctx context.Cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileTemplateService/Get",
FullMethod: DeviceProfileTemplateService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileTemplateServiceServer).Get(ctx, req.(*GetDeviceProfileTemplateRequest))
@ -184,7 +192,7 @@ func _DeviceProfileTemplateService_Update_Handler(srv interface{}, ctx context.C
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileTemplateService/Update",
FullMethod: DeviceProfileTemplateService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileTemplateServiceServer).Update(ctx, req.(*UpdateDeviceProfileTemplateRequest))
@ -202,7 +210,7 @@ func _DeviceProfileTemplateService_Delete_Handler(srv interface{}, ctx context.C
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileTemplateService/Delete",
FullMethod: DeviceProfileTemplateService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileTemplateServiceServer).Delete(ctx, req.(*DeleteDeviceProfileTemplateRequest))
@ -220,7 +228,7 @@ func _DeviceProfileTemplateService_List_Handler(srv interface{}, ctx context.Con
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.DeviceProfileTemplateService/List",
FullMethod: DeviceProfileTemplateService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(DeviceProfileTemplateServiceServer).List(ctx, req.(*ListDeviceProfileTemplatesRequest))

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/frame_log.proto
@ -42,8 +42,10 @@ type UplinkFrameLog struct {
DevEui string `protobuf:"bytes,6,opt,name=dev_eui,json=devEui,proto3" json:"dev_eui,omitempty"`
// Time.
Time *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=time,proto3" json:"time,omitempty"`
// Plaintext mac-commands.
PlaintextMacCommands bool `protobuf:"varint,8,opt,name=plaintext_mac_commands,json=plaintextMacCommands,proto3" json:"plaintext_mac_commands,omitempty"`
// Plaintext f_opts mac-commands.
PlaintextFOpts bool `protobuf:"varint,8,opt,name=plaintext_f_opts,json=plaintextFOpts,proto3" json:"plaintext_f_opts,omitempty"`
// Plaintext frm_payload.
PlaintextFrmPayload bool `protobuf:"varint,9,opt,name=plaintext_frm_payload,json=plaintextFrmPayload,proto3" json:"plaintext_frm_payload,omitempty"`
}
func (x *UplinkFrameLog) Reset() {
@ -127,9 +129,16 @@ func (x *UplinkFrameLog) GetTime() *timestamppb.Timestamp {
return nil
}
func (x *UplinkFrameLog) GetPlaintextMacCommands() bool {
func (x *UplinkFrameLog) GetPlaintextFOpts() bool {
if x != nil {
return x.PlaintextMacCommands
return x.PlaintextFOpts
}
return false
}
func (x *UplinkFrameLog) GetPlaintextFrmPayload() bool {
if x != nil {
return x.PlaintextFrmPayload
}
return false
}
@ -155,8 +164,10 @@ type DownlinkFrameLog struct {
DevAddr string `protobuf:"bytes,7,opt,name=dev_addr,json=devAddr,proto3" json:"dev_addr,omitempty"`
// Device EUI (optional).
DevEui string `protobuf:"bytes,8,opt,name=dev_eui,json=devEui,proto3" json:"dev_eui,omitempty"`
// Plaintext mac-commands.
PlaintextMacCommands bool `protobuf:"varint,9,opt,name=plaintext_mac_commands,json=plaintextMacCommands,proto3" json:"plaintext_mac_commands,omitempty"`
// Plaintext f_opts mac-commands.
PlaintextFOpts bool `protobuf:"varint,9,opt,name=plaintext_f_opts,json=plaintextFOpts,proto3" json:"plaintext_f_opts,omitempty"`
// Plaintext frm_payload.
PlaintextFrmPayload bool `protobuf:"varint,10,opt,name=plaintext_frm_payload,json=plaintextFrmPayload,proto3" json:"plaintext_frm_payload,omitempty"`
}
func (x *DownlinkFrameLog) Reset() {
@ -247,9 +258,16 @@ func (x *DownlinkFrameLog) GetDevEui() string {
return ""
}
func (x *DownlinkFrameLog) GetPlaintextMacCommands() bool {
func (x *DownlinkFrameLog) GetPlaintextFOpts() bool {
if x != nil {
return x.PlaintextMacCommands
return x.PlaintextFOpts
}
return false
}
func (x *DownlinkFrameLog) GetPlaintextFrmPayload() bool {
if x != nil {
return x.PlaintextFrmPayload
}
return false
}
@ -262,7 +280,7 @@ var file_api_frame_log_proto_rawDesc = []byte{
0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x13, 0x63, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x0b, 0x67, 0x77, 0x2f, 0x67, 0x77, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc7, 0x02,
0x1a, 0x0b, 0x67, 0x77, 0x2f, 0x67, 0x77, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xef, 0x02,
0x0a, 0x0e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67,
0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x68, 0x79, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x68, 0x79, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
@ -280,32 +298,37 @@ var file_api_frame_log_proto_rawDesc = []byte{
0x69, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04, 0x74, 0x69, 0x6d,
0x65, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d,
0x61, 0x63, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28,
0x08, 0x52, 0x14, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x4d, 0x61, 0x63, 0x43,
0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x22, 0xe0, 0x02, 0x0a, 0x10, 0x44, 0x6f, 0x77, 0x6e,
0x6c, 0x69, 0x6e, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x2e, 0x0a, 0x04,
0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b,
0x70, 0x68, 0x79, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x0a, 0x70, 0x68, 0x79, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2b, 0x0a,
0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
0x2e, 0x67, 0x77, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x78, 0x49, 0x6e,
0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x6f,
0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x0a, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x67,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x6d, 0x5f,
0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x63, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x6d, 0x54, 0x79, 0x70, 0x65,
0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x07, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x76, 0x41, 0x64, 0x64, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x64,
0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65,
0x76, 0x45, 0x75, 0x69, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78,
0x74, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x09,
0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x4d,
0x61, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x42, 0x65, 0x0a, 0x11, 0x69, 0x6f,
0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x66,
0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x6c, 0x61,
0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x46, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x70,
0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x72, 0x6d, 0x5f, 0x70, 0x61, 0x79,
0x6c, 0x6f, 0x61, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6c, 0x61, 0x69,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x46, 0x72, 0x6d, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22,
0x88, 0x03, 0x0a, 0x10, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x46, 0x72, 0x61, 0x6d,
0x65, 0x4c, 0x6f, 0x67, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04,
0x74, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x68, 0x79, 0x5f, 0x70, 0x61, 0x79, 0x6c,
0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x68, 0x79, 0x50, 0x61,
0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2b, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x77, 0x2e, 0x44, 0x6f, 0x77, 0x6e,
0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x69,
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e,
0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69,
0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
0x49, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x54, 0x79, 0x70,
0x65, 0x52, 0x05, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x5f,
0x61, 0x64, 0x64, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x76, 0x41,
0x64, 0x64, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x08,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x45, 0x75, 0x69, 0x12, 0x28, 0x0a, 0x10,
0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x5f, 0x6f, 0x70, 0x74, 0x73,
0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78,
0x74, 0x46, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x5f, 0x66, 0x72, 0x6d, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x46, 0x72, 0x6d, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x65, 0x0a, 0x11, 0x69, 0x6f,
0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42,
0x0d, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69,

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/gateway.proto
@ -1213,8 +1213,8 @@ var file_api_gateway_proto_rawDesc = []byte{
0x74, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12,
0x22, 0x0d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x3a,
0x01, 0x2a, 0x12, 0x5a, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x3a, 0x01, 0x2a, 0x22, 0x0d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
0x79, 0x73, 0x12, 0x5a, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x77,
0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93,
@ -1224,9 +1224,9 @@ var file_api_gateway_proto_rawDesc = []byte{
0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x2d, 0x82, 0xd3, 0xe4,
0x93, 0x02, 0x27, 0x1a, 0x22, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
0x79, 0x73, 0x2f, 0x7b, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x67, 0x61, 0x74, 0x65,
0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x5f, 0x0a, 0x06, 0x44, 0x65,
0x93, 0x02, 0x27, 0x3a, 0x01, 0x2a, 0x1a, 0x22, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x61, 0x74,
0x65, 0x77, 0x61, 0x79, 0x73, 0x2f, 0x7b, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x67,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0x5f, 0x0a, 0x06, 0x44, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x12, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/gateway.proto
@ -19,6 +19,16 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
GatewayService_Create_FullMethodName = "/api.GatewayService/Create"
GatewayService_Get_FullMethodName = "/api.GatewayService/Get"
GatewayService_Update_FullMethodName = "/api.GatewayService/Update"
GatewayService_Delete_FullMethodName = "/api.GatewayService/Delete"
GatewayService_List_FullMethodName = "/api.GatewayService/List"
GatewayService_GenerateClientCertificate_FullMethodName = "/api.GatewayService/GenerateClientCertificate"
GatewayService_GetMetrics_FullMethodName = "/api.GatewayService/GetMetrics"
)
// GatewayServiceClient is the client API for GatewayService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -49,7 +59,7 @@ func NewGatewayServiceClient(cc grpc.ClientConnInterface) GatewayServiceClient {
func (c *gatewayServiceClient) Create(ctx context.Context, in *CreateGatewayRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.GatewayService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -58,7 +68,7 @@ func (c *gatewayServiceClient) Create(ctx context.Context, in *CreateGatewayRequ
func (c *gatewayServiceClient) Get(ctx context.Context, in *GetGatewayRequest, opts ...grpc.CallOption) (*GetGatewayResponse, error) {
out := new(GetGatewayResponse)
err := c.cc.Invoke(ctx, "/api.GatewayService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -67,7 +77,7 @@ func (c *gatewayServiceClient) Get(ctx context.Context, in *GetGatewayRequest, o
func (c *gatewayServiceClient) Update(ctx context.Context, in *UpdateGatewayRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.GatewayService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -76,7 +86,7 @@ func (c *gatewayServiceClient) Update(ctx context.Context, in *UpdateGatewayRequ
func (c *gatewayServiceClient) Delete(ctx context.Context, in *DeleteGatewayRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.GatewayService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -85,7 +95,7 @@ func (c *gatewayServiceClient) Delete(ctx context.Context, in *DeleteGatewayRequ
func (c *gatewayServiceClient) List(ctx context.Context, in *ListGatewaysRequest, opts ...grpc.CallOption) (*ListGatewaysResponse, error) {
out := new(ListGatewaysResponse)
err := c.cc.Invoke(ctx, "/api.GatewayService/List", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -94,7 +104,7 @@ func (c *gatewayServiceClient) List(ctx context.Context, in *ListGatewaysRequest
func (c *gatewayServiceClient) GenerateClientCertificate(ctx context.Context, in *GenerateGatewayClientCertificateRequest, opts ...grpc.CallOption) (*GenerateGatewayClientCertificateResponse, error) {
out := new(GenerateGatewayClientCertificateResponse)
err := c.cc.Invoke(ctx, "/api.GatewayService/GenerateClientCertificate", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_GenerateClientCertificate_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -103,7 +113,7 @@ func (c *gatewayServiceClient) GenerateClientCertificate(ctx context.Context, in
func (c *gatewayServiceClient) GetMetrics(ctx context.Context, in *GetGatewayMetricsRequest, opts ...grpc.CallOption) (*GetGatewayMetricsResponse, error) {
out := new(GetGatewayMetricsResponse)
err := c.cc.Invoke(ctx, "/api.GatewayService/GetMetrics", in, out, opts...)
err := c.cc.Invoke(ctx, GatewayService_GetMetrics_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -179,7 +189,7 @@ func _GatewayService_Create_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/Create",
FullMethod: GatewayService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).Create(ctx, req.(*CreateGatewayRequest))
@ -197,7 +207,7 @@ func _GatewayService_Get_Handler(srv interface{}, ctx context.Context, dec func(
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/Get",
FullMethod: GatewayService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).Get(ctx, req.(*GetGatewayRequest))
@ -215,7 +225,7 @@ func _GatewayService_Update_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/Update",
FullMethod: GatewayService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).Update(ctx, req.(*UpdateGatewayRequest))
@ -233,7 +243,7 @@ func _GatewayService_Delete_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/Delete",
FullMethod: GatewayService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).Delete(ctx, req.(*DeleteGatewayRequest))
@ -251,7 +261,7 @@ func _GatewayService_List_Handler(srv interface{}, ctx context.Context, dec func
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/List",
FullMethod: GatewayService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).List(ctx, req.(*ListGatewaysRequest))
@ -269,7 +279,7 @@ func _GatewayService_GenerateClientCertificate_Handler(srv interface{}, ctx cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/GenerateClientCertificate",
FullMethod: GatewayService_GenerateClientCertificate_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).GenerateClientCertificate(ctx, req.(*GenerateGatewayClientCertificateRequest))
@ -287,7 +297,7 @@ func _GatewayService_GetMetrics_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.GatewayService/GetMetrics",
FullMethod: GatewayService_GetMetrics_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(GatewayServiceServer).GetMetrics(ctx, req.(*GetGatewayMetricsRequest))

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/internal.proto

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/internal.proto
@ -19,6 +19,24 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
InternalService_Login_FullMethodName = "/api.InternalService/Login"
InternalService_Profile_FullMethodName = "/api.InternalService/Profile"
InternalService_GlobalSearch_FullMethodName = "/api.InternalService/GlobalSearch"
InternalService_CreateApiKey_FullMethodName = "/api.InternalService/CreateApiKey"
InternalService_DeleteApiKey_FullMethodName = "/api.InternalService/DeleteApiKey"
InternalService_ListApiKeys_FullMethodName = "/api.InternalService/ListApiKeys"
InternalService_Settings_FullMethodName = "/api.InternalService/Settings"
InternalService_OpenIdConnectLogin_FullMethodName = "/api.InternalService/OpenIdConnectLogin"
InternalService_GetDevicesSummary_FullMethodName = "/api.InternalService/GetDevicesSummary"
InternalService_GetGatewaysSummary_FullMethodName = "/api.InternalService/GetGatewaysSummary"
InternalService_StreamGatewayFrames_FullMethodName = "/api.InternalService/StreamGatewayFrames"
InternalService_StreamDeviceFrames_FullMethodName = "/api.InternalService/StreamDeviceFrames"
InternalService_StreamDeviceEvents_FullMethodName = "/api.InternalService/StreamDeviceEvents"
InternalService_ListRegions_FullMethodName = "/api.InternalService/ListRegions"
InternalService_GetRegion_FullMethodName = "/api.InternalService/GetRegion"
)
// InternalServiceClient is the client API for InternalService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -65,7 +83,7 @@ func NewInternalServiceClient(cc grpc.ClientConnInterface) InternalServiceClient
func (c *internalServiceClient) Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*LoginResponse, error) {
out := new(LoginResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/Login", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_Login_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -74,7 +92,7 @@ func (c *internalServiceClient) Login(ctx context.Context, in *LoginRequest, opt
func (c *internalServiceClient) Profile(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ProfileResponse, error) {
out := new(ProfileResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/Profile", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_Profile_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -83,7 +101,7 @@ func (c *internalServiceClient) Profile(ctx context.Context, in *emptypb.Empty,
func (c *internalServiceClient) GlobalSearch(ctx context.Context, in *GlobalSearchRequest, opts ...grpc.CallOption) (*GlobalSearchResponse, error) {
out := new(GlobalSearchResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/GlobalSearch", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_GlobalSearch_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -92,7 +110,7 @@ func (c *internalServiceClient) GlobalSearch(ctx context.Context, in *GlobalSear
func (c *internalServiceClient) CreateApiKey(ctx context.Context, in *CreateApiKeyRequest, opts ...grpc.CallOption) (*CreateApiKeyResponse, error) {
out := new(CreateApiKeyResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/CreateApiKey", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_CreateApiKey_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -101,7 +119,7 @@ func (c *internalServiceClient) CreateApiKey(ctx context.Context, in *CreateApiK
func (c *internalServiceClient) DeleteApiKey(ctx context.Context, in *DeleteApiKeyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.InternalService/DeleteApiKey", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_DeleteApiKey_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -110,7 +128,7 @@ func (c *internalServiceClient) DeleteApiKey(ctx context.Context, in *DeleteApiK
func (c *internalServiceClient) ListApiKeys(ctx context.Context, in *ListApiKeysRequest, opts ...grpc.CallOption) (*ListApiKeysResponse, error) {
out := new(ListApiKeysResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/ListApiKeys", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_ListApiKeys_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -119,7 +137,7 @@ func (c *internalServiceClient) ListApiKeys(ctx context.Context, in *ListApiKeys
func (c *internalServiceClient) Settings(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*SettingsResponse, error) {
out := new(SettingsResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/Settings", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_Settings_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -128,7 +146,7 @@ func (c *internalServiceClient) Settings(ctx context.Context, in *emptypb.Empty,
func (c *internalServiceClient) OpenIdConnectLogin(ctx context.Context, in *OpenIdConnectLoginRequest, opts ...grpc.CallOption) (*OpenIdConnectLoginResponse, error) {
out := new(OpenIdConnectLoginResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/OpenIdConnectLogin", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_OpenIdConnectLogin_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -137,7 +155,7 @@ func (c *internalServiceClient) OpenIdConnectLogin(ctx context.Context, in *Open
func (c *internalServiceClient) GetDevicesSummary(ctx context.Context, in *GetDevicesSummaryRequest, opts ...grpc.CallOption) (*GetDevicesSummaryResponse, error) {
out := new(GetDevicesSummaryResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/GetDevicesSummary", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_GetDevicesSummary_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -146,7 +164,7 @@ func (c *internalServiceClient) GetDevicesSummary(ctx context.Context, in *GetDe
func (c *internalServiceClient) GetGatewaysSummary(ctx context.Context, in *GetGatewaysSummaryRequest, opts ...grpc.CallOption) (*GetGatewaysSummaryResponse, error) {
out := new(GetGatewaysSummaryResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/GetGatewaysSummary", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_GetGatewaysSummary_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -154,7 +172,7 @@ func (c *internalServiceClient) GetGatewaysSummary(ctx context.Context, in *GetG
}
func (c *internalServiceClient) StreamGatewayFrames(ctx context.Context, in *StreamGatewayFramesRequest, opts ...grpc.CallOption) (InternalService_StreamGatewayFramesClient, error) {
stream, err := c.cc.NewStream(ctx, &InternalService_ServiceDesc.Streams[0], "/api.InternalService/StreamGatewayFrames", opts...)
stream, err := c.cc.NewStream(ctx, &InternalService_ServiceDesc.Streams[0], InternalService_StreamGatewayFrames_FullMethodName, opts...)
if err != nil {
return nil, err
}
@ -186,7 +204,7 @@ func (x *internalServiceStreamGatewayFramesClient) Recv() (*LogItem, error) {
}
func (c *internalServiceClient) StreamDeviceFrames(ctx context.Context, in *StreamDeviceFramesRequest, opts ...grpc.CallOption) (InternalService_StreamDeviceFramesClient, error) {
stream, err := c.cc.NewStream(ctx, &InternalService_ServiceDesc.Streams[1], "/api.InternalService/StreamDeviceFrames", opts...)
stream, err := c.cc.NewStream(ctx, &InternalService_ServiceDesc.Streams[1], InternalService_StreamDeviceFrames_FullMethodName, opts...)
if err != nil {
return nil, err
}
@ -218,7 +236,7 @@ func (x *internalServiceStreamDeviceFramesClient) Recv() (*LogItem, error) {
}
func (c *internalServiceClient) StreamDeviceEvents(ctx context.Context, in *StreamDeviceEventsRequest, opts ...grpc.CallOption) (InternalService_StreamDeviceEventsClient, error) {
stream, err := c.cc.NewStream(ctx, &InternalService_ServiceDesc.Streams[2], "/api.InternalService/StreamDeviceEvents", opts...)
stream, err := c.cc.NewStream(ctx, &InternalService_ServiceDesc.Streams[2], InternalService_StreamDeviceEvents_FullMethodName, opts...)
if err != nil {
return nil, err
}
@ -251,7 +269,7 @@ func (x *internalServiceStreamDeviceEventsClient) Recv() (*LogItem, error) {
func (c *internalServiceClient) ListRegions(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ListRegionsResponse, error) {
out := new(ListRegionsResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/ListRegions", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_ListRegions_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -260,7 +278,7 @@ func (c *internalServiceClient) ListRegions(ctx context.Context, in *emptypb.Emp
func (c *internalServiceClient) GetRegion(ctx context.Context, in *GetRegionRequest, opts ...grpc.CallOption) (*GetRegionResponse, error) {
out := new(GetRegionResponse)
err := c.cc.Invoke(ctx, "/api.InternalService/GetRegion", in, out, opts...)
err := c.cc.Invoke(ctx, InternalService_GetRegion_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -376,7 +394,7 @@ func _InternalService_Login_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/Login",
FullMethod: InternalService_Login_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).Login(ctx, req.(*LoginRequest))
@ -394,7 +412,7 @@ func _InternalService_Profile_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/Profile",
FullMethod: InternalService_Profile_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).Profile(ctx, req.(*emptypb.Empty))
@ -412,7 +430,7 @@ func _InternalService_GlobalSearch_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/GlobalSearch",
FullMethod: InternalService_GlobalSearch_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).GlobalSearch(ctx, req.(*GlobalSearchRequest))
@ -430,7 +448,7 @@ func _InternalService_CreateApiKey_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/CreateApiKey",
FullMethod: InternalService_CreateApiKey_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).CreateApiKey(ctx, req.(*CreateApiKeyRequest))
@ -448,7 +466,7 @@ func _InternalService_DeleteApiKey_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/DeleteApiKey",
FullMethod: InternalService_DeleteApiKey_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).DeleteApiKey(ctx, req.(*DeleteApiKeyRequest))
@ -466,7 +484,7 @@ func _InternalService_ListApiKeys_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/ListApiKeys",
FullMethod: InternalService_ListApiKeys_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).ListApiKeys(ctx, req.(*ListApiKeysRequest))
@ -484,7 +502,7 @@ func _InternalService_Settings_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/Settings",
FullMethod: InternalService_Settings_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).Settings(ctx, req.(*emptypb.Empty))
@ -502,7 +520,7 @@ func _InternalService_OpenIdConnectLogin_Handler(srv interface{}, ctx context.Co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/OpenIdConnectLogin",
FullMethod: InternalService_OpenIdConnectLogin_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).OpenIdConnectLogin(ctx, req.(*OpenIdConnectLoginRequest))
@ -520,7 +538,7 @@ func _InternalService_GetDevicesSummary_Handler(srv interface{}, ctx context.Con
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/GetDevicesSummary",
FullMethod: InternalService_GetDevicesSummary_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).GetDevicesSummary(ctx, req.(*GetDevicesSummaryRequest))
@ -538,7 +556,7 @@ func _InternalService_GetGatewaysSummary_Handler(srv interface{}, ctx context.Co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/GetGatewaysSummary",
FullMethod: InternalService_GetGatewaysSummary_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).GetGatewaysSummary(ctx, req.(*GetGatewaysSummaryRequest))
@ -619,7 +637,7 @@ func _InternalService_ListRegions_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/ListRegions",
FullMethod: InternalService_ListRegions_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).ListRegions(ctx, req.(*emptypb.Empty))
@ -637,7 +655,7 @@ func _InternalService_GetRegion_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.InternalService/GetRegion",
FullMethod: InternalService_GetRegion_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(InternalServiceServer).GetRegion(ctx, req.(*GetRegionRequest))

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/multicast_group.proto
@ -1543,8 +1543,8 @@ var file_api_multicast_group_proto_rawDesc = []byte{
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75,
0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02,
0x1a, 0x22, 0x15, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73,
0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x68, 0x0a, 0x03, 0x47,
0x1a, 0x3a, 0x01, 0x2a, 0x22, 0x15, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x63, 0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x68, 0x0a, 0x03, 0x47,
0x65, 0x74, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x75, 0x6c, 0x74,
0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1e, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x75, 0x6c, 0x74, 0x69,
@ -1556,9 +1556,9 @@ var file_api_multicast_group_proto_rawDesc = []byte{
0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x35, 0x82, 0xd3, 0xe4, 0x93, 0x02,
0x2f, 0x1a, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73,
0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63,
0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a,
0x2f, 0x3a, 0x01, 0x2a, 0x1a, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x63, 0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x6d, 0x75, 0x6c,
0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x69, 0x64, 0x7d,
0x12, 0x66, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74,
0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
@ -1577,10 +1577,10 @@ var file_api_multicast_group_proto_rawDesc = []byte{
0x54, 0x6f, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22,
0x3d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x22, 0x32, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75,
0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b,
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
0x69, 0x64, 0x7d, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x98,
0x3d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x3a, 0x01, 0x2a, 0x22, 0x32, 0x2f, 0x61, 0x70, 0x69,
0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70,
0x73, 0x2f, 0x7b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f,
0x75, 0x70, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x98,
0x01, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12,
0x2a, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47,
@ -1596,10 +1596,10 @@ var file_api_multicast_group_proto_rawDesc = []byte{
0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x3e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38,
0x22, 0x33, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74,
0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61,
0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x67, 0x61, 0x74,
0x65, 0x77, 0x61, 0x79, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x9e, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x6d,
0x3a, 0x01, 0x2a, 0x22, 0x33, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63,
0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x6d, 0x75, 0x6c, 0x74,
0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x7d, 0x2f,
0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x12, 0x9e, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x6d,
0x6f, 0x76, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x2b, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x46, 0x72,
0x6f, 0x6d, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70,
@ -1616,11 +1616,11 @@ var file_api_multicast_group_proto_rawDesc = []byte{
0x74, 0x1a, 0x2b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x45, 0x6e, 0x71, 0x75, 0x65, 0x75, 0x65, 0x4d,
0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x51, 0x75, 0x65,
0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x40, 0x22, 0x3b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x75, 0x6c,
0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2f, 0x7b, 0x71,
0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x2e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63,
0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x71, 0x75,
0x65, 0x75, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x84, 0x01, 0x0a, 0x0a, 0x46, 0x6c, 0x75, 0x73, 0x68,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x40, 0x3a, 0x01, 0x2a, 0x22, 0x3b, 0x2f, 0x61, 0x70, 0x69, 0x2f,
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73,
0x2f, 0x7b, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x2e, 0x6d, 0x75, 0x6c,
0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x7d,
0x2f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x0a, 0x46, 0x6c, 0x75, 0x73, 0x68,
0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x46, 0x6c, 0x75, 0x73,
0x68, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x51,
0x75, 0x65, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/multicast_group.proto
@ -19,6 +19,21 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
MulticastGroupService_Create_FullMethodName = "/api.MulticastGroupService/Create"
MulticastGroupService_Get_FullMethodName = "/api.MulticastGroupService/Get"
MulticastGroupService_Update_FullMethodName = "/api.MulticastGroupService/Update"
MulticastGroupService_Delete_FullMethodName = "/api.MulticastGroupService/Delete"
MulticastGroupService_List_FullMethodName = "/api.MulticastGroupService/List"
MulticastGroupService_AddDevice_FullMethodName = "/api.MulticastGroupService/AddDevice"
MulticastGroupService_RemoveDevice_FullMethodName = "/api.MulticastGroupService/RemoveDevice"
MulticastGroupService_AddGateway_FullMethodName = "/api.MulticastGroupService/AddGateway"
MulticastGroupService_RemoveGateway_FullMethodName = "/api.MulticastGroupService/RemoveGateway"
MulticastGroupService_Enqueue_FullMethodName = "/api.MulticastGroupService/Enqueue"
MulticastGroupService_FlushQueue_FullMethodName = "/api.MulticastGroupService/FlushQueue"
MulticastGroupService_ListQueue_FullMethodName = "/api.MulticastGroupService/ListQueue"
)
// MulticastGroupServiceClient is the client API for MulticastGroupService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -59,7 +74,7 @@ func NewMulticastGroupServiceClient(cc grpc.ClientConnInterface) MulticastGroupS
func (c *multicastGroupServiceClient) Create(ctx context.Context, in *CreateMulticastGroupRequest, opts ...grpc.CallOption) (*CreateMulticastGroupResponse, error) {
out := new(CreateMulticastGroupResponse)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -68,7 +83,7 @@ func (c *multicastGroupServiceClient) Create(ctx context.Context, in *CreateMult
func (c *multicastGroupServiceClient) Get(ctx context.Context, in *GetMulticastGroupRequest, opts ...grpc.CallOption) (*GetMulticastGroupResponse, error) {
out := new(GetMulticastGroupResponse)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -77,7 +92,7 @@ func (c *multicastGroupServiceClient) Get(ctx context.Context, in *GetMulticastG
func (c *multicastGroupServiceClient) Update(ctx context.Context, in *UpdateMulticastGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -86,7 +101,7 @@ func (c *multicastGroupServiceClient) Update(ctx context.Context, in *UpdateMult
func (c *multicastGroupServiceClient) Delete(ctx context.Context, in *DeleteMulticastGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -95,7 +110,7 @@ func (c *multicastGroupServiceClient) Delete(ctx context.Context, in *DeleteMult
func (c *multicastGroupServiceClient) List(ctx context.Context, in *ListMulticastGroupsRequest, opts ...grpc.CallOption) (*ListMulticastGroupsResponse, error) {
out := new(ListMulticastGroupsResponse)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/List", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -104,7 +119,7 @@ func (c *multicastGroupServiceClient) List(ctx context.Context, in *ListMulticas
func (c *multicastGroupServiceClient) AddDevice(ctx context.Context, in *AddDeviceToMulticastGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/AddDevice", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_AddDevice_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -113,7 +128,7 @@ func (c *multicastGroupServiceClient) AddDevice(ctx context.Context, in *AddDevi
func (c *multicastGroupServiceClient) RemoveDevice(ctx context.Context, in *RemoveDeviceFromMulticastGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/RemoveDevice", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_RemoveDevice_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -122,7 +137,7 @@ func (c *multicastGroupServiceClient) RemoveDevice(ctx context.Context, in *Remo
func (c *multicastGroupServiceClient) AddGateway(ctx context.Context, in *AddGatewayToMulticastGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/AddGateway", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_AddGateway_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -131,7 +146,7 @@ func (c *multicastGroupServiceClient) AddGateway(ctx context.Context, in *AddGat
func (c *multicastGroupServiceClient) RemoveGateway(ctx context.Context, in *RemoveGatewayFromMulticastGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/RemoveGateway", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_RemoveGateway_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -140,7 +155,7 @@ func (c *multicastGroupServiceClient) RemoveGateway(ctx context.Context, in *Rem
func (c *multicastGroupServiceClient) Enqueue(ctx context.Context, in *EnqueueMulticastGroupQueueItemRequest, opts ...grpc.CallOption) (*EnqueueMulticastGroupQueueItemResponse, error) {
out := new(EnqueueMulticastGroupQueueItemResponse)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/Enqueue", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_Enqueue_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -149,7 +164,7 @@ func (c *multicastGroupServiceClient) Enqueue(ctx context.Context, in *EnqueueMu
func (c *multicastGroupServiceClient) FlushQueue(ctx context.Context, in *FlushMulticastGroupQueueRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/FlushQueue", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_FlushQueue_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -158,7 +173,7 @@ func (c *multicastGroupServiceClient) FlushQueue(ctx context.Context, in *FlushM
func (c *multicastGroupServiceClient) ListQueue(ctx context.Context, in *ListMulticastGroupQueueRequest, opts ...grpc.CallOption) (*ListMulticastGroupQueueResponse, error) {
out := new(ListMulticastGroupQueueResponse)
err := c.cc.Invoke(ctx, "/api.MulticastGroupService/ListQueue", in, out, opts...)
err := c.cc.Invoke(ctx, MulticastGroupService_ListQueue_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -259,7 +274,7 @@ func _MulticastGroupService_Create_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/Create",
FullMethod: MulticastGroupService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).Create(ctx, req.(*CreateMulticastGroupRequest))
@ -277,7 +292,7 @@ func _MulticastGroupService_Get_Handler(srv interface{}, ctx context.Context, de
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/Get",
FullMethod: MulticastGroupService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).Get(ctx, req.(*GetMulticastGroupRequest))
@ -295,7 +310,7 @@ func _MulticastGroupService_Update_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/Update",
FullMethod: MulticastGroupService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).Update(ctx, req.(*UpdateMulticastGroupRequest))
@ -313,7 +328,7 @@ func _MulticastGroupService_Delete_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/Delete",
FullMethod: MulticastGroupService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).Delete(ctx, req.(*DeleteMulticastGroupRequest))
@ -331,7 +346,7 @@ func _MulticastGroupService_List_Handler(srv interface{}, ctx context.Context, d
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/List",
FullMethod: MulticastGroupService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).List(ctx, req.(*ListMulticastGroupsRequest))
@ -349,7 +364,7 @@ func _MulticastGroupService_AddDevice_Handler(srv interface{}, ctx context.Conte
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/AddDevice",
FullMethod: MulticastGroupService_AddDevice_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).AddDevice(ctx, req.(*AddDeviceToMulticastGroupRequest))
@ -367,7 +382,7 @@ func _MulticastGroupService_RemoveDevice_Handler(srv interface{}, ctx context.Co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/RemoveDevice",
FullMethod: MulticastGroupService_RemoveDevice_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).RemoveDevice(ctx, req.(*RemoveDeviceFromMulticastGroupRequest))
@ -385,7 +400,7 @@ func _MulticastGroupService_AddGateway_Handler(srv interface{}, ctx context.Cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/AddGateway",
FullMethod: MulticastGroupService_AddGateway_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).AddGateway(ctx, req.(*AddGatewayToMulticastGroupRequest))
@ -403,7 +418,7 @@ func _MulticastGroupService_RemoveGateway_Handler(srv interface{}, ctx context.C
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/RemoveGateway",
FullMethod: MulticastGroupService_RemoveGateway_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).RemoveGateway(ctx, req.(*RemoveGatewayFromMulticastGroupRequest))
@ -421,7 +436,7 @@ func _MulticastGroupService_Enqueue_Handler(srv interface{}, ctx context.Context
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/Enqueue",
FullMethod: MulticastGroupService_Enqueue_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).Enqueue(ctx, req.(*EnqueueMulticastGroupQueueItemRequest))
@ -439,7 +454,7 @@ func _MulticastGroupService_FlushQueue_Handler(srv interface{}, ctx context.Cont
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/FlushQueue",
FullMethod: MulticastGroupService_FlushQueue_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).FlushQueue(ctx, req.(*FlushMulticastGroupQueueRequest))
@ -457,7 +472,7 @@ func _MulticastGroupService_ListQueue_Handler(srv interface{}, ctx context.Conte
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.MulticastGroupService/ListQueue",
FullMethod: MulticastGroupService_ListQueue_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MulticastGroupServiceServer).ListQueue(ctx, req.(*ListMulticastGroupQueueRequest))

773
api/go/api/relay.pb.go vendored Normal file
View File

@ -0,0 +1,773 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/relay.proto
package api
import (
_ "google.golang.org/genproto/googleapis/api/annotations"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
emptypb "google.golang.org/protobuf/types/known/emptypb"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type RelayListItem struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// DevEUI (EUI64).
DevEui string `protobuf:"bytes,1,opt,name=dev_eui,json=devEui,proto3" json:"dev_eui,omitempty"`
// Name.
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *RelayListItem) Reset() {
*x = RelayListItem{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RelayListItem) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RelayListItem) ProtoMessage() {}
func (x *RelayListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RelayListItem.ProtoReflect.Descriptor instead.
func (*RelayListItem) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{0}
}
func (x *RelayListItem) GetDevEui() string {
if x != nil {
return x.DevEui
}
return ""
}
func (x *RelayListItem) GetName() string {
if x != nil {
return x.Name
}
return ""
}
type ListRelaysRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Max number of devices to return in the result-set.
Limit uint32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`
// Offset in the result-set (for pagination).
Offset uint32 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
// Application ID (UUID).
ApplicationId string `protobuf:"bytes,3,opt,name=application_id,json=applicationId,proto3" json:"application_id,omitempty"`
}
func (x *ListRelaysRequest) Reset() {
*x = ListRelaysRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListRelaysRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRelaysRequest) ProtoMessage() {}
func (x *ListRelaysRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListRelaysRequest.ProtoReflect.Descriptor instead.
func (*ListRelaysRequest) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{1}
}
func (x *ListRelaysRequest) GetLimit() uint32 {
if x != nil {
return x.Limit
}
return 0
}
func (x *ListRelaysRequest) GetOffset() uint32 {
if x != nil {
return x.Offset
}
return 0
}
func (x *ListRelaysRequest) GetApplicationId() string {
if x != nil {
return x.ApplicationId
}
return ""
}
type ListRelaysResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Total number of relays.
TotalCount uint32 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"`
// Result-set.
Result []*RelayListItem `protobuf:"bytes,2,rep,name=result,proto3" json:"result,omitempty"`
}
func (x *ListRelaysResponse) Reset() {
*x = ListRelaysResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListRelaysResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRelaysResponse) ProtoMessage() {}
func (x *ListRelaysResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListRelaysResponse.ProtoReflect.Descriptor instead.
func (*ListRelaysResponse) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{2}
}
func (x *ListRelaysResponse) GetTotalCount() uint32 {
if x != nil {
return x.TotalCount
}
return 0
}
func (x *ListRelaysResponse) GetResult() []*RelayListItem {
if x != nil {
return x.Result
}
return nil
}
type AddRelayDeviceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Relay DevEUI (EUI64).
RelayDevEui string `protobuf:"bytes,1,opt,name=relay_dev_eui,json=relayDevEui,proto3" json:"relay_dev_eui,omitempty"`
// Device DevEUI (EUI64).
DeviceDevEui string `protobuf:"bytes,2,opt,name=device_dev_eui,json=deviceDevEui,proto3" json:"device_dev_eui,omitempty"`
}
func (x *AddRelayDeviceRequest) Reset() {
*x = AddRelayDeviceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddRelayDeviceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddRelayDeviceRequest) ProtoMessage() {}
func (x *AddRelayDeviceRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AddRelayDeviceRequest.ProtoReflect.Descriptor instead.
func (*AddRelayDeviceRequest) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{3}
}
func (x *AddRelayDeviceRequest) GetRelayDevEui() string {
if x != nil {
return x.RelayDevEui
}
return ""
}
func (x *AddRelayDeviceRequest) GetDeviceDevEui() string {
if x != nil {
return x.DeviceDevEui
}
return ""
}
type RemoveRelayDeviceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Relay DevEUI (EUI64).
RelayDevEui string `protobuf:"bytes,1,opt,name=relay_dev_eui,json=relayDevEui,proto3" json:"relay_dev_eui,omitempty"`
// Device DevEUI (EUI64).
DeviceDevEui string `protobuf:"bytes,2,opt,name=device_dev_eui,json=deviceDevEui,proto3" json:"device_dev_eui,omitempty"`
}
func (x *RemoveRelayDeviceRequest) Reset() {
*x = RemoveRelayDeviceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RemoveRelayDeviceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RemoveRelayDeviceRequest) ProtoMessage() {}
func (x *RemoveRelayDeviceRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RemoveRelayDeviceRequest.ProtoReflect.Descriptor instead.
func (*RemoveRelayDeviceRequest) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{4}
}
func (x *RemoveRelayDeviceRequest) GetRelayDevEui() string {
if x != nil {
return x.RelayDevEui
}
return ""
}
func (x *RemoveRelayDeviceRequest) GetDeviceDevEui() string {
if x != nil {
return x.DeviceDevEui
}
return ""
}
type ListRelayDevicesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Max number of multicast groups to return in the result-set.
Limit uint32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`
// Offset in the result-set (for pagination).
Offset uint32 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
// Relay DevEUI (EUI64).
RelayDevEui string `protobuf:"bytes,3,opt,name=relay_dev_eui,json=relayDevEui,proto3" json:"relay_dev_eui,omitempty"`
}
func (x *ListRelayDevicesRequest) Reset() {
*x = ListRelayDevicesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListRelayDevicesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRelayDevicesRequest) ProtoMessage() {}
func (x *ListRelayDevicesRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListRelayDevicesRequest.ProtoReflect.Descriptor instead.
func (*ListRelayDevicesRequest) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{5}
}
func (x *ListRelayDevicesRequest) GetLimit() uint32 {
if x != nil {
return x.Limit
}
return 0
}
func (x *ListRelayDevicesRequest) GetOffset() uint32 {
if x != nil {
return x.Offset
}
return 0
}
func (x *ListRelayDevicesRequest) GetRelayDevEui() string {
if x != nil {
return x.RelayDevEui
}
return ""
}
type RelayDeviceListItem struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// DevEUI (EUI64).
DevEui string `protobuf:"bytes,1,opt,name=dev_eui,json=devEui,proto3" json:"dev_eui,omitempty"`
// Created at timestamp.
CreatedAt *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
// Device name.
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *RelayDeviceListItem) Reset() {
*x = RelayDeviceListItem{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RelayDeviceListItem) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RelayDeviceListItem) ProtoMessage() {}
func (x *RelayDeviceListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RelayDeviceListItem.ProtoReflect.Descriptor instead.
func (*RelayDeviceListItem) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{6}
}
func (x *RelayDeviceListItem) GetDevEui() string {
if x != nil {
return x.DevEui
}
return ""
}
func (x *RelayDeviceListItem) GetCreatedAt() *timestamppb.Timestamp {
if x != nil {
return x.CreatedAt
}
return nil
}
func (x *RelayDeviceListItem) GetName() string {
if x != nil {
return x.Name
}
return ""
}
type ListRelayDevicesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Total number of devices.
TotalCount uint32 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"`
// Result-set.
Result []*RelayDeviceListItem `protobuf:"bytes,2,rep,name=result,proto3" json:"result,omitempty"`
}
func (x *ListRelayDevicesResponse) Reset() {
*x = ListRelayDevicesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_relay_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListRelayDevicesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRelayDevicesResponse) ProtoMessage() {}
func (x *ListRelayDevicesResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListRelayDevicesResponse.ProtoReflect.Descriptor instead.
func (*ListRelayDevicesResponse) Descriptor() ([]byte, []int) {
return file_api_relay_proto_rawDescGZIP(), []int{7}
}
func (x *ListRelayDevicesResponse) GetTotalCount() uint32 {
if x != nil {
return x.TotalCount
}
return 0
}
func (x *ListRelayDevicesResponse) GetResult() []*RelayDeviceListItem {
if x != nil {
return x.Result
}
return nil
}
var File_api_relay_proto protoreflect.FileDescriptor
var file_api_relay_proto_rawDesc = []byte{
0x0a, 0x0f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x03, 0x61, 0x70, 0x69, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61,
0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x22, 0x3c, 0x0a, 0x0d, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x49,
0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x45, 0x75, 0x69, 0x12, 0x12, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x22, 0x68, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f,
0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66,
0x73, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x61, 0x0a, 0x12, 0x4c, 0x69,
0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x12, 0x2a, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x12, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4c, 0x69, 0x73,
0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x61, 0x0a,
0x15, 0x41, 0x64, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f,
0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72,
0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x45, 0x75, 0x69, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x65,
0x76, 0x69, 0x63, 0x65, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x76, 0x45, 0x75, 0x69,
0x22, 0x64, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44,
0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0d,
0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x45, 0x75, 0x69,
0x12, 0x24, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65,
0x75, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
0x44, 0x65, 0x76, 0x45, 0x75, 0x69, 0x22, 0x6b, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12,
0x22, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76,
0x45, 0x75, 0x69, 0x22, 0x7d, 0x0a, 0x13, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x65,
0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76,
0x45, 0x75, 0x69, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12,
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x22, 0x6d, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44,
0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f,
0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12,
0x30, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63,
0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
0x74, 0x32, 0xc4, 0x03, 0x0a, 0x0c, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69,
0x63, 0x65, 0x12, 0x4c, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c,
0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x13, 0x82, 0xd3, 0xe4,
0x93, 0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x73,
0x12, 0x6f, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
0x79, 0x22, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x3a, 0x01, 0x2a, 0x22, 0x23, 0x2f, 0x61,
0x70, 0x69, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x2f, 0x7b, 0x72, 0x65, 0x6c, 0x61, 0x79,
0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x7d, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
0x73, 0x12, 0x7c, 0x0a, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63,
0x65, 0x12, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65,
0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x35, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f,
0x2a, 0x2d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x73, 0x2f, 0x7b, 0x72,
0x65, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x7d, 0x2f, 0x64, 0x65,
0x76, 0x69, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x7d, 0x12,
0x77, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1c,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65,
0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4,
0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x73,
0x2f, 0x7b, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x7d,
0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x42, 0x62, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63,
0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0a, 0x52,
0x65, 0x6c, 0x61, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74,
0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61,
0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x61, 0x70, 0x69, 0xaa, 0x02, 0x0e, 0x43, 0x68,
0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x41, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
}
var (
file_api_relay_proto_rawDescOnce sync.Once
file_api_relay_proto_rawDescData = file_api_relay_proto_rawDesc
)
func file_api_relay_proto_rawDescGZIP() []byte {
file_api_relay_proto_rawDescOnce.Do(func() {
file_api_relay_proto_rawDescData = protoimpl.X.CompressGZIP(file_api_relay_proto_rawDescData)
})
return file_api_relay_proto_rawDescData
}
var file_api_relay_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_api_relay_proto_goTypes = []interface{}{
(*RelayListItem)(nil), // 0: api.RelayListItem
(*ListRelaysRequest)(nil), // 1: api.ListRelaysRequest
(*ListRelaysResponse)(nil), // 2: api.ListRelaysResponse
(*AddRelayDeviceRequest)(nil), // 3: api.AddRelayDeviceRequest
(*RemoveRelayDeviceRequest)(nil), // 4: api.RemoveRelayDeviceRequest
(*ListRelayDevicesRequest)(nil), // 5: api.ListRelayDevicesRequest
(*RelayDeviceListItem)(nil), // 6: api.RelayDeviceListItem
(*ListRelayDevicesResponse)(nil), // 7: api.ListRelayDevicesResponse
(*timestamppb.Timestamp)(nil), // 8: google.protobuf.Timestamp
(*emptypb.Empty)(nil), // 9: google.protobuf.Empty
}
var file_api_relay_proto_depIdxs = []int32{
0, // 0: api.ListRelaysResponse.result:type_name -> api.RelayListItem
8, // 1: api.RelayDeviceListItem.created_at:type_name -> google.protobuf.Timestamp
6, // 2: api.ListRelayDevicesResponse.result:type_name -> api.RelayDeviceListItem
1, // 3: api.RelayService.List:input_type -> api.ListRelaysRequest
3, // 4: api.RelayService.AddDevice:input_type -> api.AddRelayDeviceRequest
4, // 5: api.RelayService.RemoveDevice:input_type -> api.RemoveRelayDeviceRequest
5, // 6: api.RelayService.ListDevices:input_type -> api.ListRelayDevicesRequest
2, // 7: api.RelayService.List:output_type -> api.ListRelaysResponse
9, // 8: api.RelayService.AddDevice:output_type -> google.protobuf.Empty
9, // 9: api.RelayService.RemoveDevice:output_type -> google.protobuf.Empty
7, // 10: api.RelayService.ListDevices:output_type -> api.ListRelayDevicesResponse
7, // [7:11] is the sub-list for method output_type
3, // [3:7] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] is the sub-list for field type_name
}
func init() { file_api_relay_proto_init() }
func file_api_relay_proto_init() {
if File_api_relay_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_api_relay_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RelayListItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRelaysRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRelaysResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddRelayDeviceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RemoveRelayDeviceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRelayDevicesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RelayDeviceListItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_relay_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRelayDevicesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_api_relay_proto_rawDesc,
NumEnums: 0,
NumMessages: 8,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_api_relay_proto_goTypes,
DependencyIndexes: file_api_relay_proto_depIdxs,
MessageInfos: file_api_relay_proto_msgTypes,
}.Build()
File_api_relay_proto = out.File
file_api_relay_proto_rawDesc = nil
file_api_relay_proto_goTypes = nil
file_api_relay_proto_depIdxs = nil
}

229
api/go/api/relay_grpc.pb.go vendored Normal file
View File

@ -0,0 +1,229 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/relay.proto
package api
import (
context "context"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
emptypb "google.golang.org/protobuf/types/known/emptypb"
)
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
RelayService_List_FullMethodName = "/api.RelayService/List"
RelayService_AddDevice_FullMethodName = "/api.RelayService/AddDevice"
RelayService_RemoveDevice_FullMethodName = "/api.RelayService/RemoveDevice"
RelayService_ListDevices_FullMethodName = "/api.RelayService/ListDevices"
)
// RelayServiceClient is the client API for RelayService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type RelayServiceClient interface {
// List lists the relays for the given application id.
List(ctx context.Context, in *ListRelaysRequest, opts ...grpc.CallOption) (*ListRelaysResponse, error)
// AddDevice adds the given device to the relay.
AddDevice(ctx context.Context, in *AddRelayDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// RemoveDevice removes the given device from the relay.
RemoveDevice(ctx context.Context, in *RemoveRelayDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// ListDevices lists the devices for the given relay.
ListDevices(ctx context.Context, in *ListRelayDevicesRequest, opts ...grpc.CallOption) (*ListRelayDevicesResponse, error)
}
type relayServiceClient struct {
cc grpc.ClientConnInterface
}
func NewRelayServiceClient(cc grpc.ClientConnInterface) RelayServiceClient {
return &relayServiceClient{cc}
}
func (c *relayServiceClient) List(ctx context.Context, in *ListRelaysRequest, opts ...grpc.CallOption) (*ListRelaysResponse, error) {
out := new(ListRelaysResponse)
err := c.cc.Invoke(ctx, RelayService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *relayServiceClient) AddDevice(ctx context.Context, in *AddRelayDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, RelayService_AddDevice_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *relayServiceClient) RemoveDevice(ctx context.Context, in *RemoveRelayDeviceRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, RelayService_RemoveDevice_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *relayServiceClient) ListDevices(ctx context.Context, in *ListRelayDevicesRequest, opts ...grpc.CallOption) (*ListRelayDevicesResponse, error) {
out := new(ListRelayDevicesResponse)
err := c.cc.Invoke(ctx, RelayService_ListDevices_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// RelayServiceServer is the server API for RelayService service.
// All implementations must embed UnimplementedRelayServiceServer
// for forward compatibility
type RelayServiceServer interface {
// List lists the relays for the given application id.
List(context.Context, *ListRelaysRequest) (*ListRelaysResponse, error)
// AddDevice adds the given device to the relay.
AddDevice(context.Context, *AddRelayDeviceRequest) (*emptypb.Empty, error)
// RemoveDevice removes the given device from the relay.
RemoveDevice(context.Context, *RemoveRelayDeviceRequest) (*emptypb.Empty, error)
// ListDevices lists the devices for the given relay.
ListDevices(context.Context, *ListRelayDevicesRequest) (*ListRelayDevicesResponse, error)
mustEmbedUnimplementedRelayServiceServer()
}
// UnimplementedRelayServiceServer must be embedded to have forward compatible implementations.
type UnimplementedRelayServiceServer struct {
}
func (UnimplementedRelayServiceServer) List(context.Context, *ListRelaysRequest) (*ListRelaysResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method List not implemented")
}
func (UnimplementedRelayServiceServer) AddDevice(context.Context, *AddRelayDeviceRequest) (*emptypb.Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method AddDevice not implemented")
}
func (UnimplementedRelayServiceServer) RemoveDevice(context.Context, *RemoveRelayDeviceRequest) (*emptypb.Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method RemoveDevice not implemented")
}
func (UnimplementedRelayServiceServer) ListDevices(context.Context, *ListRelayDevicesRequest) (*ListRelayDevicesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListDevices not implemented")
}
func (UnimplementedRelayServiceServer) mustEmbedUnimplementedRelayServiceServer() {}
// UnsafeRelayServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to RelayServiceServer will
// result in compilation errors.
type UnsafeRelayServiceServer interface {
mustEmbedUnimplementedRelayServiceServer()
}
func RegisterRelayServiceServer(s grpc.ServiceRegistrar, srv RelayServiceServer) {
s.RegisterService(&RelayService_ServiceDesc, srv)
}
func _RelayService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListRelaysRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(RelayServiceServer).List(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: RelayService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(RelayServiceServer).List(ctx, req.(*ListRelaysRequest))
}
return interceptor(ctx, in, info, handler)
}
func _RelayService_AddDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(AddRelayDeviceRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(RelayServiceServer).AddDevice(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: RelayService_AddDevice_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(RelayServiceServer).AddDevice(ctx, req.(*AddRelayDeviceRequest))
}
return interceptor(ctx, in, info, handler)
}
func _RelayService_RemoveDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(RemoveRelayDeviceRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(RelayServiceServer).RemoveDevice(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: RelayService_RemoveDevice_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(RelayServiceServer).RemoveDevice(ctx, req.(*RemoveRelayDeviceRequest))
}
return interceptor(ctx, in, info, handler)
}
func _RelayService_ListDevices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListRelayDevicesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(RelayServiceServer).ListDevices(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: RelayService_ListDevices_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(RelayServiceServer).ListDevices(ctx, req.(*ListRelayDevicesRequest))
}
return interceptor(ctx, in, info, handler)
}
// RelayService_ServiceDesc is the grpc.ServiceDesc for RelayService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var RelayService_ServiceDesc = grpc.ServiceDesc{
ServiceName: "api.RelayService",
HandlerType: (*RelayServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "List",
Handler: _RelayService_List_Handler,
},
{
MethodName: "AddDevice",
Handler: _RelayService_AddDevice_Handler,
},
{
MethodName: "RemoveDevice",
Handler: _RelayService_RemoveDevice_Handler,
},
{
MethodName: "ListDevices",
Handler: _RelayService_ListDevices_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "api/relay.proto",
}

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/request_log.proto

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/tenant.proto
@ -52,6 +52,10 @@ type Tenant struct {
// do want to share uplinks with other tenants (private_gateways_up=false),
// but you want to prevent other tenants from using gateway airtime.
PrivateGatewaysDown bool `protobuf:"varint,8,opt,name=private_gateways_down,json=privateGatewaysDown,proto3" json:"private_gateways_down,omitempty"`
// Tags (user defined).
// These tags can be used to add additional information to the tenant. These
// tags are NOT exposed in the integration events.
Tags map[string]string `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *Tenant) Reset() {
@ -142,6 +146,13 @@ func (x *Tenant) GetPrivateGatewaysDown() bool {
return false
}
func (x *Tenant) GetTags() map[string]string {
if x != nil {
return x.Tags
}
return nil
}
type TenantListItem struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@ -1320,7 +1331,7 @@ var file_api_tenant_proto_rawDesc = []byte{
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x22, 0xb4, 0x02, 0x0a, 0x06, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x0e,
0x6f, 0x74, 0x6f, 0x22, 0x98, 0x03, 0x0a, 0x06, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x0e,
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12,
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
@ -1339,222 +1350,229 @@ var file_api_tenant_proto_rawDesc = []byte{
0x77, 0x61, 0x79, 0x73, 0x55, 0x70, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
0x65, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18,
0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x47, 0x61,
0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0x90, 0x03, 0x0a, 0x0e, 0x54,
0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x39, 0x0a,
0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63,
0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61,
0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
0x64, 0x41, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x61, 0x6e, 0x5f, 0x68,
0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x18, 0x05, 0x20, 0x01,
0x28, 0x08, 0x52, 0x0f, 0x63, 0x61, 0x6e, 0x48, 0x61, 0x76, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77,
0x61, 0x79, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x67,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
0x52, 0x11, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
0x73, 0x55, 0x70, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x67,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x09, 0x20, 0x01,
0x28, 0x08, 0x52, 0x13, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x47, 0x61, 0x74, 0x65, 0x77,
0x61, 0x79, 0x73, 0x44, 0x6f, 0x77, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x67,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f,
0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63,
0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d,
0x61, 0x78, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3a, 0x0a,
0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x26, 0x0a, 0x14, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
0x64, 0x22, 0x22, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xae, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x06, 0x74,
0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x61, 0x70,
0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75,
0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64,
0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x3a, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a,
0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x22, 0x25, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61,
0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x44, 0x6f, 0x77, 0x6e, 0x12, 0x29, 0x0a, 0x04, 0x74, 0x61,
0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54,
0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x90,
0x03, 0x0a, 0x0e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65,
0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
0x64, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a,
0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70,
0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x63,
0x61, 0x6e, 0x5f, 0x68, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73,
0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x61, 0x6e, 0x48, 0x61, 0x76, 0x65, 0x47,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x72, 0x69, 0x76, 0x61,
0x74, 0x65, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x70, 0x18, 0x06,
0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x47, 0x61, 0x74,
0x65, 0x77, 0x61, 0x79, 0x73, 0x55, 0x70, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x72, 0x69, 0x76, 0x61,
0x74, 0x65, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x64, 0x6f, 0x77, 0x6e,
0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x47,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x44, 0x6f, 0x77, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x6d,
0x61, 0x78, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x47, 0x61, 0x74, 0x65, 0x77,
0x61, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x64,
0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x22, 0x3a, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54,
0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x26, 0x0a,
0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x22, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x73, 0x0a, 0x12, 0x4c, 0x69, 0x73,
0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a,
0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x63,
0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61,
0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73,
0x75, 0x6c, 0x74, 0x22, 0xc5, 0x01, 0x0a, 0x0a, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73,
0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12,
0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73,
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x69,
0x73, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18,
0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x06,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0xc3, 0x02, 0x0a, 0x12,
0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74,
0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12,
0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x14,
0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65,
0x6d, 0x61, 0x69, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e,
0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12,
0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x6d,
0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x67, 0x61,
0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28,
0x08, 0x52, 0x0e, 0x69, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x22, 0x48, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73,
0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x74, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x22, 0x4c, 0x0a, 0x14, 0x47,
0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0xbf, 0x01, 0x0a, 0x15, 0x47, 0x65,
0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73,
0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54,
0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x4b, 0x0a, 0x17, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x61, 0x70,
0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x0a, 0x74, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x22, 0x4f, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65,
0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x16, 0x4c, 0x69, 0x73,
0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64,
0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x6b,
0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xae, 0x01, 0x0a, 0x11, 0x47, 0x65,
0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x23, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x0b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52,
0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x3a, 0x0a, 0x13, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x23, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x0b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06,
0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x25, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x73, 0x0a,
0x12, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66,
0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65,
0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
0x49, 0x64, 0x22, 0x63, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74,
0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x49,
0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x32, 0xa2, 0x08, 0x0a, 0x0d,
0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x56, 0x0a,
0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72,
0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x17, 0x82, 0xd3,
0xe4, 0x93, 0x02, 0x11, 0x22, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x4f, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x15, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x19, 0x82, 0xd3, 0xe4,
0x93, 0x02, 0x13, 0x12, 0x11, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x5f, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x06, 0x72, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52,
0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xc5, 0x01, 0x0a, 0x0a, 0x54, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08,
0x69, 0x73, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
0x69, 0x73, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x64, 0x65,
0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
0x52, 0x0d, 0x69, 0x73, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12,
0x28, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x61, 0x64,
0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x73, 0x47, 0x61, 0x74,
0x65, 0x77, 0x61, 0x79, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61,
0x69, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22,
0xc3, 0x02, 0x0a, 0x12, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69,
0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73,
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x69,
0x73, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18,
0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x22, 0x48, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x54, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a,
0x0b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55,
0x73, 0x65, 0x72, 0x52, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x22,
0x4c, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0xbf, 0x01,
0x0a, 0x15, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x0a, 0x74,
0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65,
0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22,
0x4b, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55,
0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x74, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72,
0x52, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x22, 0x4f, 0x0a, 0x17,
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x63, 0x0a,
0x16, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66,
0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73,
0x65, 0x74, 0x22, 0x6b, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a,
0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f,
0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c,
0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x32,
0xa2, 0x08, 0x0a, 0x0d, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x12, 0x56, 0x0a, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x61, 0x70,
0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x22, 0x17, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x11, 0x3a, 0x01, 0x2a, 0x22, 0x0c, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x4f, 0x0a, 0x03, 0x47, 0x65, 0x74,
0x12, 0x15, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65,
0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x5f, 0x0a, 0x06, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x3a, 0x01,
0x2a, 0x1a, 0x18, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f,
0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x69, 0x64, 0x7d, 0x12, 0x55, 0x0a, 0x06, 0x44,
0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65, 0x6c, 0x65,
0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x2a,
0x11, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69,
0x64, 0x7d, 0x12, 0x4f, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x82,
0xd3, 0xe4, 0x93, 0x02, 0x0e, 0x12, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x73, 0x12, 0x73, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x19,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x41, 0x64, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73,
0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
0x79, 0x22, 0x35, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x3a, 0x01, 0x2a, 0x22, 0x2a, 0x2f, 0x61,
0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69,
0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x72, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55,
0x73, 0x65, 0x72, 0x12, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73,
0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93,
0x02, 0x2a, 0x12, 0x28, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73,
0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65,
0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0x8f, 0x01, 0x0a,
0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x61, 0x70,
0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73,
0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
0x79, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x45, 0x3a, 0x01, 0x2a, 0x1a, 0x40, 0x2f, 0x61,
0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69,
0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0x74,
0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55,
0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x1a, 0x18, 0x2f, 0x61, 0x70, 0x69,
0x74, 0x79, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x2a, 0x28, 0x2f, 0x61, 0x70, 0x69,
0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x2e, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x55, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74,
0x65, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x2a, 0x11, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x64, 0x7d, 0x12, 0x4f,
0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73,
0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x82, 0xd3, 0xe4, 0x93, 0x02,
0x0e, 0x12, 0x0c, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x12,
0x73, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x19, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x41, 0x64, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x35, 0x82,
0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x22, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72,
0x2e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72,
0x73, 0x3a, 0x01, 0x2a, 0x12, 0x72, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12,
0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55,
0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28,
0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65,
0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b,
0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0x8f, 0x01, 0x0a, 0x0a, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x4b, 0x82,
0xd3, 0xe4, 0x93, 0x02, 0x45, 0x1a, 0x40, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72,
0x2e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72,
0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75,
0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x74, 0x0a, 0x0a, 0x44, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44,
0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x30,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x2a, 0x28, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e,
0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d,
0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x7d,
0x12, 0x6e, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73,
0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x70, 0x69,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20,
0x12, 0x1e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b,
0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73,
0x42, 0x63, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63,
0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0b, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72,
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34,
0x2f, 0x61, 0x70, 0x69, 0xaa, 0x02, 0x0e, 0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63,
0x6b, 0x2e, 0x41, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72,
0x5f, 0x69, 0x64, 0x7d, 0x12, 0x6e, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72,
0x73, 0x12, 0x1b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61,
0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c,
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55,
0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3,
0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x73, 0x2f, 0x7b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x75,
0x73, 0x65, 0x72, 0x73, 0x42, 0x63, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70,
0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0b, 0x54, 0x65, 0x6e, 0x61, 0x6e,
0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f,
0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67,
0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x61, 0x70, 0x69, 0xaa, 0x02, 0x0e, 0x43, 0x68, 0x69, 0x72, 0x70,
0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x41, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
@ -1569,7 +1587,7 @@ func file_api_tenant_proto_rawDescGZIP() []byte {
return file_api_tenant_proto_rawDescData
}
var file_api_tenant_proto_msgTypes = make([]protoimpl.MessageInfo, 19)
var file_api_tenant_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
var file_api_tenant_proto_goTypes = []interface{}{
(*Tenant)(nil), // 0: api.Tenant
(*TenantListItem)(nil), // 1: api.TenantListItem
@ -1590,51 +1608,53 @@ var file_api_tenant_proto_goTypes = []interface{}{
(*DeleteTenantUserRequest)(nil), // 16: api.DeleteTenantUserRequest
(*ListTenantUsersRequest)(nil), // 17: api.ListTenantUsersRequest
(*ListTenantUsersResponse)(nil), // 18: api.ListTenantUsersResponse
(*timestamppb.Timestamp)(nil), // 19: google.protobuf.Timestamp
(*emptypb.Empty)(nil), // 20: google.protobuf.Empty
nil, // 19: api.Tenant.TagsEntry
(*timestamppb.Timestamp)(nil), // 20: google.protobuf.Timestamp
(*emptypb.Empty)(nil), // 21: google.protobuf.Empty
}
var file_api_tenant_proto_depIdxs = []int32{
19, // 0: api.TenantListItem.created_at:type_name -> google.protobuf.Timestamp
19, // 1: api.TenantListItem.updated_at:type_name -> google.protobuf.Timestamp
0, // 2: api.CreateTenantRequest.tenant:type_name -> api.Tenant
0, // 3: api.GetTenantResponse.tenant:type_name -> api.Tenant
19, // 4: api.GetTenantResponse.created_at:type_name -> google.protobuf.Timestamp
19, // 5: api.GetTenantResponse.updated_at:type_name -> google.protobuf.Timestamp
0, // 6: api.UpdateTenantRequest.tenant:type_name -> api.Tenant
1, // 7: api.ListTenantsResponse.result:type_name -> api.TenantListItem
19, // 8: api.TenantUserListItem.created_at:type_name -> google.protobuf.Timestamp
19, // 9: api.TenantUserListItem.updated_at:type_name -> google.protobuf.Timestamp
10, // 10: api.AddTenantUserRequest.tenant_user:type_name -> api.TenantUser
10, // 11: api.GetTenantUserResponse.tenant_user:type_name -> api.TenantUser
19, // 12: api.GetTenantUserResponse.created_at:type_name -> google.protobuf.Timestamp
19, // 13: api.GetTenantUserResponse.updated_at:type_name -> google.protobuf.Timestamp
10, // 14: api.UpdateTenantUserRequest.tenant_user:type_name -> api.TenantUser
11, // 15: api.ListTenantUsersResponse.result:type_name -> api.TenantUserListItem
2, // 16: api.TenantService.Create:input_type -> api.CreateTenantRequest
4, // 17: api.TenantService.Get:input_type -> api.GetTenantRequest
6, // 18: api.TenantService.Update:input_type -> api.UpdateTenantRequest
7, // 19: api.TenantService.Delete:input_type -> api.DeleteTenantRequest
8, // 20: api.TenantService.List:input_type -> api.ListTenantsRequest
12, // 21: api.TenantService.AddUser:input_type -> api.AddTenantUserRequest
13, // 22: api.TenantService.GetUser:input_type -> api.GetTenantUserRequest
15, // 23: api.TenantService.UpdateUser:input_type -> api.UpdateTenantUserRequest
16, // 24: api.TenantService.DeleteUser:input_type -> api.DeleteTenantUserRequest
17, // 25: api.TenantService.ListUsers:input_type -> api.ListTenantUsersRequest
3, // 26: api.TenantService.Create:output_type -> api.CreateTenantResponse
5, // 27: api.TenantService.Get:output_type -> api.GetTenantResponse
20, // 28: api.TenantService.Update:output_type -> google.protobuf.Empty
20, // 29: api.TenantService.Delete:output_type -> google.protobuf.Empty
9, // 30: api.TenantService.List:output_type -> api.ListTenantsResponse
20, // 31: api.TenantService.AddUser:output_type -> google.protobuf.Empty
14, // 32: api.TenantService.GetUser:output_type -> api.GetTenantUserResponse
20, // 33: api.TenantService.UpdateUser:output_type -> google.protobuf.Empty
20, // 34: api.TenantService.DeleteUser:output_type -> google.protobuf.Empty
18, // 35: api.TenantService.ListUsers:output_type -> api.ListTenantUsersResponse
26, // [26:36] is the sub-list for method output_type
16, // [16:26] is the sub-list for method input_type
16, // [16:16] is the sub-list for extension type_name
16, // [16:16] is the sub-list for extension extendee
0, // [0:16] is the sub-list for field type_name
19, // 0: api.Tenant.tags:type_name -> api.Tenant.TagsEntry
20, // 1: api.TenantListItem.created_at:type_name -> google.protobuf.Timestamp
20, // 2: api.TenantListItem.updated_at:type_name -> google.protobuf.Timestamp
0, // 3: api.CreateTenantRequest.tenant:type_name -> api.Tenant
0, // 4: api.GetTenantResponse.tenant:type_name -> api.Tenant
20, // 5: api.GetTenantResponse.created_at:type_name -> google.protobuf.Timestamp
20, // 6: api.GetTenantResponse.updated_at:type_name -> google.protobuf.Timestamp
0, // 7: api.UpdateTenantRequest.tenant:type_name -> api.Tenant
1, // 8: api.ListTenantsResponse.result:type_name -> api.TenantListItem
20, // 9: api.TenantUserListItem.created_at:type_name -> google.protobuf.Timestamp
20, // 10: api.TenantUserListItem.updated_at:type_name -> google.protobuf.Timestamp
10, // 11: api.AddTenantUserRequest.tenant_user:type_name -> api.TenantUser
10, // 12: api.GetTenantUserResponse.tenant_user:type_name -> api.TenantUser
20, // 13: api.GetTenantUserResponse.created_at:type_name -> google.protobuf.Timestamp
20, // 14: api.GetTenantUserResponse.updated_at:type_name -> google.protobuf.Timestamp
10, // 15: api.UpdateTenantUserRequest.tenant_user:type_name -> api.TenantUser
11, // 16: api.ListTenantUsersResponse.result:type_name -> api.TenantUserListItem
2, // 17: api.TenantService.Create:input_type -> api.CreateTenantRequest
4, // 18: api.TenantService.Get:input_type -> api.GetTenantRequest
6, // 19: api.TenantService.Update:input_type -> api.UpdateTenantRequest
7, // 20: api.TenantService.Delete:input_type -> api.DeleteTenantRequest
8, // 21: api.TenantService.List:input_type -> api.ListTenantsRequest
12, // 22: api.TenantService.AddUser:input_type -> api.AddTenantUserRequest
13, // 23: api.TenantService.GetUser:input_type -> api.GetTenantUserRequest
15, // 24: api.TenantService.UpdateUser:input_type -> api.UpdateTenantUserRequest
16, // 25: api.TenantService.DeleteUser:input_type -> api.DeleteTenantUserRequest
17, // 26: api.TenantService.ListUsers:input_type -> api.ListTenantUsersRequest
3, // 27: api.TenantService.Create:output_type -> api.CreateTenantResponse
5, // 28: api.TenantService.Get:output_type -> api.GetTenantResponse
21, // 29: api.TenantService.Update:output_type -> google.protobuf.Empty
21, // 30: api.TenantService.Delete:output_type -> google.protobuf.Empty
9, // 31: api.TenantService.List:output_type -> api.ListTenantsResponse
21, // 32: api.TenantService.AddUser:output_type -> google.protobuf.Empty
14, // 33: api.TenantService.GetUser:output_type -> api.GetTenantUserResponse
21, // 34: api.TenantService.UpdateUser:output_type -> google.protobuf.Empty
21, // 35: api.TenantService.DeleteUser:output_type -> google.protobuf.Empty
18, // 36: api.TenantService.ListUsers:output_type -> api.ListTenantUsersResponse
27, // [27:37] is the sub-list for method output_type
17, // [17:27] is the sub-list for method input_type
17, // [17:17] is the sub-list for extension type_name
17, // [17:17] is the sub-list for extension extendee
0, // [0:17] is the sub-list for field type_name
}
func init() { file_api_tenant_proto_init() }
@ -1878,7 +1898,7 @@ func file_api_tenant_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_api_tenant_proto_rawDesc,
NumEnums: 0,
NumMessages: 19,
NumMessages: 20,
NumExtensions: 0,
NumServices: 1,
},

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/tenant.proto
@ -19,6 +19,19 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
TenantService_Create_FullMethodName = "/api.TenantService/Create"
TenantService_Get_FullMethodName = "/api.TenantService/Get"
TenantService_Update_FullMethodName = "/api.TenantService/Update"
TenantService_Delete_FullMethodName = "/api.TenantService/Delete"
TenantService_List_FullMethodName = "/api.TenantService/List"
TenantService_AddUser_FullMethodName = "/api.TenantService/AddUser"
TenantService_GetUser_FullMethodName = "/api.TenantService/GetUser"
TenantService_UpdateUser_FullMethodName = "/api.TenantService/UpdateUser"
TenantService_DeleteUser_FullMethodName = "/api.TenantService/DeleteUser"
TenantService_ListUsers_FullMethodName = "/api.TenantService/ListUsers"
)
// TenantServiceClient is the client API for TenantService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -56,7 +69,7 @@ func NewTenantServiceClient(cc grpc.ClientConnInterface) TenantServiceClient {
func (c *tenantServiceClient) Create(ctx context.Context, in *CreateTenantRequest, opts ...grpc.CallOption) (*CreateTenantResponse, error) {
out := new(CreateTenantResponse)
err := c.cc.Invoke(ctx, "/api.TenantService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -65,7 +78,7 @@ func (c *tenantServiceClient) Create(ctx context.Context, in *CreateTenantReques
func (c *tenantServiceClient) Get(ctx context.Context, in *GetTenantRequest, opts ...grpc.CallOption) (*GetTenantResponse, error) {
out := new(GetTenantResponse)
err := c.cc.Invoke(ctx, "/api.TenantService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -74,7 +87,7 @@ func (c *tenantServiceClient) Get(ctx context.Context, in *GetTenantRequest, opt
func (c *tenantServiceClient) Update(ctx context.Context, in *UpdateTenantRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.TenantService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -83,7 +96,7 @@ func (c *tenantServiceClient) Update(ctx context.Context, in *UpdateTenantReques
func (c *tenantServiceClient) Delete(ctx context.Context, in *DeleteTenantRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.TenantService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -92,7 +105,7 @@ func (c *tenantServiceClient) Delete(ctx context.Context, in *DeleteTenantReques
func (c *tenantServiceClient) List(ctx context.Context, in *ListTenantsRequest, opts ...grpc.CallOption) (*ListTenantsResponse, error) {
out := new(ListTenantsResponse)
err := c.cc.Invoke(ctx, "/api.TenantService/List", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -101,7 +114,7 @@ func (c *tenantServiceClient) List(ctx context.Context, in *ListTenantsRequest,
func (c *tenantServiceClient) AddUser(ctx context.Context, in *AddTenantUserRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.TenantService/AddUser", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_AddUser_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -110,7 +123,7 @@ func (c *tenantServiceClient) AddUser(ctx context.Context, in *AddTenantUserRequ
func (c *tenantServiceClient) GetUser(ctx context.Context, in *GetTenantUserRequest, opts ...grpc.CallOption) (*GetTenantUserResponse, error) {
out := new(GetTenantUserResponse)
err := c.cc.Invoke(ctx, "/api.TenantService/GetUser", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_GetUser_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -119,7 +132,7 @@ func (c *tenantServiceClient) GetUser(ctx context.Context, in *GetTenantUserRequ
func (c *tenantServiceClient) UpdateUser(ctx context.Context, in *UpdateTenantUserRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.TenantService/UpdateUser", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_UpdateUser_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -128,7 +141,7 @@ func (c *tenantServiceClient) UpdateUser(ctx context.Context, in *UpdateTenantUs
func (c *tenantServiceClient) DeleteUser(ctx context.Context, in *DeleteTenantUserRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.TenantService/DeleteUser", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_DeleteUser_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -137,7 +150,7 @@ func (c *tenantServiceClient) DeleteUser(ctx context.Context, in *DeleteTenantUs
func (c *tenantServiceClient) ListUsers(ctx context.Context, in *ListTenantUsersRequest, opts ...grpc.CallOption) (*ListTenantUsersResponse, error) {
out := new(ListTenantUsersResponse)
err := c.cc.Invoke(ctx, "/api.TenantService/ListUsers", in, out, opts...)
err := c.cc.Invoke(ctx, TenantService_ListUsers_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -229,7 +242,7 @@ func _TenantService_Create_Handler(srv interface{}, ctx context.Context, dec fun
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/Create",
FullMethod: TenantService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).Create(ctx, req.(*CreateTenantRequest))
@ -247,7 +260,7 @@ func _TenantService_Get_Handler(srv interface{}, ctx context.Context, dec func(i
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/Get",
FullMethod: TenantService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).Get(ctx, req.(*GetTenantRequest))
@ -265,7 +278,7 @@ func _TenantService_Update_Handler(srv interface{}, ctx context.Context, dec fun
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/Update",
FullMethod: TenantService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).Update(ctx, req.(*UpdateTenantRequest))
@ -283,7 +296,7 @@ func _TenantService_Delete_Handler(srv interface{}, ctx context.Context, dec fun
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/Delete",
FullMethod: TenantService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).Delete(ctx, req.(*DeleteTenantRequest))
@ -301,7 +314,7 @@ func _TenantService_List_Handler(srv interface{}, ctx context.Context, dec func(
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/List",
FullMethod: TenantService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).List(ctx, req.(*ListTenantsRequest))
@ -319,7 +332,7 @@ func _TenantService_AddUser_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/AddUser",
FullMethod: TenantService_AddUser_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).AddUser(ctx, req.(*AddTenantUserRequest))
@ -337,7 +350,7 @@ func _TenantService_GetUser_Handler(srv interface{}, ctx context.Context, dec fu
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/GetUser",
FullMethod: TenantService_GetUser_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).GetUser(ctx, req.(*GetTenantUserRequest))
@ -355,7 +368,7 @@ func _TenantService_UpdateUser_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/UpdateUser",
FullMethod: TenantService_UpdateUser_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).UpdateUser(ctx, req.(*UpdateTenantUserRequest))
@ -373,7 +386,7 @@ func _TenantService_DeleteUser_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/DeleteUser",
FullMethod: TenantService_DeleteUser_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).DeleteUser(ctx, req.(*DeleteTenantUserRequest))
@ -391,7 +404,7 @@ func _TenantService_ListUsers_Handler(srv interface{}, ctx context.Context, dec
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.TenantService/ListUsers",
FullMethod: TenantService_ListUsers_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(TenantServiceServer).ListUsers(ctx, req.(*ListTenantUsersRequest))

16
api/go/api/user.pb.go vendored
View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: api/user.proto
@ -863,8 +863,8 @@ var file_api_user_proto_rawDesc = []byte{
0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x15,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0f, 0x22, 0x0a, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65,
0x72, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x49, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x13, 0x2e, 0x61,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0f, 0x3a, 0x01, 0x2a, 0x22, 0x0a, 0x2f, 0x61, 0x70, 0x69, 0x2f,
0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x49, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x13, 0x2e, 0x61,
0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x14, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x17, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x11, 0x12,
@ -873,8 +873,8 @@ var file_api_user_proto_rawDesc = []byte{
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93,
0x02, 0x19, 0x1a, 0x14, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b,
0x75, 0x73, 0x65, 0x72, 0x2e, 0x69, 0x64, 0x7d, 0x3a, 0x01, 0x2a, 0x12, 0x51, 0x0a, 0x06, 0x44,
0x02, 0x19, 0x3a, 0x01, 0x2a, 0x1a, 0x14, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72,
0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x69, 0x64, 0x7d, 0x12, 0x51, 0x0a, 0x06, 0x44,
0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x16, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65, 0x6c, 0x65,
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
@ -889,9 +889,9 @@ var file_api_user_proto_rawDesc = []byte{
0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73,
0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d,
0x70, 0x74, 0x79, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x22, 0x1d, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64,
0x7d, 0x2f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x3a, 0x01, 0x2a, 0x42, 0x61, 0x0a,
0x70, 0x74, 0x79, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x22, 0x1d,
0x2f, 0x61, 0x70, 0x69, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72,
0x5f, 0x69, 0x64, 0x7d, 0x2f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x0a,
0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61,
0x70, 0x69, 0x42, 0x09, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72,

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.21.9
// source: api/user.proto
@ -19,6 +19,15 @@ import (
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
UserService_Create_FullMethodName = "/api.UserService/Create"
UserService_Get_FullMethodName = "/api.UserService/Get"
UserService_Update_FullMethodName = "/api.UserService/Update"
UserService_Delete_FullMethodName = "/api.UserService/Delete"
UserService_List_FullMethodName = "/api.UserService/List"
UserService_UpdatePassword_FullMethodName = "/api.UserService/UpdatePassword"
)
// UserServiceClient is the client API for UserService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
@ -47,7 +56,7 @@ func NewUserServiceClient(cc grpc.ClientConnInterface) UserServiceClient {
func (c *userServiceClient) Create(ctx context.Context, in *CreateUserRequest, opts ...grpc.CallOption) (*CreateUserResponse, error) {
out := new(CreateUserResponse)
err := c.cc.Invoke(ctx, "/api.UserService/Create", in, out, opts...)
err := c.cc.Invoke(ctx, UserService_Create_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -56,7 +65,7 @@ func (c *userServiceClient) Create(ctx context.Context, in *CreateUserRequest, o
func (c *userServiceClient) Get(ctx context.Context, in *GetUserRequest, opts ...grpc.CallOption) (*GetUserResponse, error) {
out := new(GetUserResponse)
err := c.cc.Invoke(ctx, "/api.UserService/Get", in, out, opts...)
err := c.cc.Invoke(ctx, UserService_Get_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -65,7 +74,7 @@ func (c *userServiceClient) Get(ctx context.Context, in *GetUserRequest, opts ..
func (c *userServiceClient) Update(ctx context.Context, in *UpdateUserRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.UserService/Update", in, out, opts...)
err := c.cc.Invoke(ctx, UserService_Update_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -74,7 +83,7 @@ func (c *userServiceClient) Update(ctx context.Context, in *UpdateUserRequest, o
func (c *userServiceClient) Delete(ctx context.Context, in *DeleteUserRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.UserService/Delete", in, out, opts...)
err := c.cc.Invoke(ctx, UserService_Delete_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -83,7 +92,7 @@ func (c *userServiceClient) Delete(ctx context.Context, in *DeleteUserRequest, o
func (c *userServiceClient) List(ctx context.Context, in *ListUsersRequest, opts ...grpc.CallOption) (*ListUsersResponse, error) {
out := new(ListUsersResponse)
err := c.cc.Invoke(ctx, "/api.UserService/List", in, out, opts...)
err := c.cc.Invoke(ctx, UserService_List_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -92,7 +101,7 @@ func (c *userServiceClient) List(ctx context.Context, in *ListUsersRequest, opts
func (c *userServiceClient) UpdatePassword(ctx context.Context, in *UpdateUserPasswordRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
out := new(emptypb.Empty)
err := c.cc.Invoke(ctx, "/api.UserService/UpdatePassword", in, out, opts...)
err := c.cc.Invoke(ctx, UserService_UpdatePassword_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
@ -163,7 +172,7 @@ func _UserService_Create_Handler(srv interface{}, ctx context.Context, dec func(
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.UserService/Create",
FullMethod: UserService_Create_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(UserServiceServer).Create(ctx, req.(*CreateUserRequest))
@ -181,7 +190,7 @@ func _UserService_Get_Handler(srv interface{}, ctx context.Context, dec func(int
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.UserService/Get",
FullMethod: UserService_Get_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(UserServiceServer).Get(ctx, req.(*GetUserRequest))
@ -199,7 +208,7 @@ func _UserService_Update_Handler(srv interface{}, ctx context.Context, dec func(
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.UserService/Update",
FullMethod: UserService_Update_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(UserServiceServer).Update(ctx, req.(*UpdateUserRequest))
@ -217,7 +226,7 @@ func _UserService_Delete_Handler(srv interface{}, ctx context.Context, dec func(
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.UserService/Delete",
FullMethod: UserService_Delete_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(UserServiceServer).Delete(ctx, req.(*DeleteUserRequest))
@ -235,7 +244,7 @@ func _UserService_List_Handler(srv interface{}, ctx context.Context, dec func(in
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.UserService/List",
FullMethod: UserService_List_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(UserServiceServer).List(ctx, req.(*ListUsersRequest))
@ -253,7 +262,7 @@ func _UserService_UpdatePassword_Handler(srv interface{}, ctx context.Context, d
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/api.UserService/UpdatePassword",
FullMethod: UserService_UpdatePassword_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(UserServiceServer).UpdatePassword(ctx, req.(*UpdateUserPasswordRequest))

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: common/common.proto
@ -480,7 +480,8 @@ func (Aggregation) EnumDescriptor() ([]byte, []int) {
type MetricKind int32
const (
// Incrementing counters that never decrease (these are not reset on each reading).
// Incrementing counters that never decrease (these are not reset on each
// reading).
MetricKind_COUNTER MetricKind = 0
// Counters that do get reset upon reading.
MetricKind_ABSOLUTE MetricKind = 1
@ -529,6 +530,58 @@ func (MetricKind) EnumDescriptor() ([]byte, []int) {
return file_common_common_proto_rawDescGZIP(), []int{7}
}
type DeviceClass int32
const (
// Class-A.
DeviceClass_CLASS_A DeviceClass = 0
// Class-B.
DeviceClass_CLASS_B DeviceClass = 1
// Class-C.
DeviceClass_CLASS_C DeviceClass = 2
)
// Enum value maps for DeviceClass.
var (
DeviceClass_name = map[int32]string{
0: "CLASS_A",
1: "CLASS_B",
2: "CLASS_C",
}
DeviceClass_value = map[string]int32{
"CLASS_A": 0,
"CLASS_B": 1,
"CLASS_C": 2,
}
)
func (x DeviceClass) Enum() *DeviceClass {
p := new(DeviceClass)
*p = x
return p
}
func (x DeviceClass) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DeviceClass) Descriptor() protoreflect.EnumDescriptor {
return file_common_common_proto_enumTypes[8].Descriptor()
}
func (DeviceClass) Type() protoreflect.EnumType {
return &file_common_common_proto_enumTypes[8]
}
func (x DeviceClass) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DeviceClass.Descriptor instead.
func (DeviceClass) EnumDescriptor() ([]byte, []int) {
return file_common_common_proto_rawDescGZIP(), []int{8}
}
type Location struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@ -894,14 +947,18 @@ var file_common_common_proto_rawDesc = []byte{
0x0a, 0x05, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x10, 0x02, 0x2a, 0x32, 0x0a, 0x0a, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x55, 0x4e, 0x54,
0x45, 0x52, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x42, 0x53, 0x4f, 0x4c, 0x55, 0x54, 0x45,
0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x41, 0x55, 0x47, 0x45, 0x10, 0x02, 0x42, 0x69, 0x0a,
0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61,
0x70, 0x69, 0x42, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
0x01, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68,
0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74,
0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x63, 0x6f,
0x6d, 0x6d, 0x6f, 0x6e, 0xaa, 0x02, 0x11, 0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63,
0x6b, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x41, 0x55, 0x47, 0x45, 0x10, 0x02, 0x2a, 0x34, 0x0a,
0x0b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x0b, 0x0a, 0x07,
0x43, 0x4c, 0x41, 0x53, 0x53, 0x5f, 0x41, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4c, 0x41,
0x53, 0x53, 0x5f, 0x42, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x5f,
0x43, 0x10, 0x02, 0x42, 0x69, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73,
0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63,
0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f,
0x2f, 0x76, 0x34, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0xaa, 0x02, 0x11, 0x43, 0x68, 0x69,
0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -916,7 +973,7 @@ func file_common_common_proto_rawDescGZIP() []byte {
return file_common_common_proto_rawDescData
}
var file_common_common_proto_enumTypes = make([]protoimpl.EnumInfo, 8)
var file_common_common_proto_enumTypes = make([]protoimpl.EnumInfo, 9)
var file_common_common_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_common_common_proto_goTypes = []interface{}{
(Modulation)(0), // 0: common.Modulation
@ -927,16 +984,17 @@ var file_common_common_proto_goTypes = []interface{}{
(LocationSource)(0), // 5: common.LocationSource
(Aggregation)(0), // 6: common.Aggregation
(MetricKind)(0), // 7: common.MetricKind
(*Location)(nil), // 8: common.Location
(*KeyEnvelope)(nil), // 9: common.KeyEnvelope
(*Metric)(nil), // 10: common.Metric
(*MetricDataset)(nil), // 11: common.MetricDataset
(*timestamppb.Timestamp)(nil), // 12: google.protobuf.Timestamp
(DeviceClass)(0), // 8: common.DeviceClass
(*Location)(nil), // 9: common.Location
(*KeyEnvelope)(nil), // 10: common.KeyEnvelope
(*Metric)(nil), // 11: common.Metric
(*MetricDataset)(nil), // 12: common.MetricDataset
(*timestamppb.Timestamp)(nil), // 13: google.protobuf.Timestamp
}
var file_common_common_proto_depIdxs = []int32{
5, // 0: common.Location.source:type_name -> common.LocationSource
12, // 1: common.Metric.timestamps:type_name -> google.protobuf.Timestamp
11, // 2: common.Metric.datasets:type_name -> common.MetricDataset
13, // 1: common.Metric.timestamps:type_name -> google.protobuf.Timestamp
12, // 2: common.Metric.datasets:type_name -> common.MetricDataset
7, // 3: common.Metric.kind:type_name -> common.MetricKind
4, // [4:4] is the sub-list for method output_type
4, // [4:4] is the sub-list for method input_type
@ -1005,7 +1063,7 @@ func file_common_common_proto_init() {
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_common_common_proto_rawDesc,
NumEnums: 8,
NumEnums: 9,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,

6
api/go/go.mod vendored
View File

@ -3,7 +3,7 @@ module github.com/chirpstack/chirpstack/api/go/v4
go 1.16
require (
google.golang.org/grpc v1.45.0 // indirect
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.2.0 // indirect
google.golang.org/protobuf v1.28.0 // indirect
google.golang.org/grpc v1.53.0 // indirect
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.3.0 // indirect
google.golang.org/protobuf v1.31.0 // indirect
)

1009
api/go/go.sum vendored

File diff suppressed because it is too large Load Diff

1134
api/go/gw/gw.pb.go vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc-gen-go v1.31.0
// protoc v3.21.9
// source: meta/meta.proto

View File

@ -28,6 +28,7 @@ api:
protoc $(PROTOC_ARGS) ../proto/api/frame_log.proto
protoc $(PROTOC_ARGS) ../proto/api/multicast_group.proto
protoc $(PROTOC_ARGS) ../proto/api/request_log.proto
protoc $(PROTOC_ARGS) ../proto/api/relay.proto
integration:
mkdir -p integration

View File

@ -18,6 +18,9 @@ export class Application extends jspb.Message {
getTenantId(): string;
setTenantId(value: string): Application;
getTagsMap(): jspb.Map<string, string>;
clearTagsMap(): Application;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Application.AsObject;
static toObject(includeInstance: boolean, msg: Application): Application.AsObject;
@ -32,6 +35,7 @@ export namespace Application {
name: string,
description: string,
tenantId: string,
tagsMap: Array<[string, string]>,
}
}
@ -866,15 +870,17 @@ export class LoraCloudModemGeolocationServices extends jspb.Message {
getModemEnabled(): boolean;
setModemEnabled(value: boolean): LoraCloudModemGeolocationServices;
getModemPort(): number;
setModemPort(value: number): LoraCloudModemGeolocationServices;
getGnssPort(): number;
setGnssPort(value: number): LoraCloudModemGeolocationServices;
getForwardFPortsList(): Array<number>;
setForwardFPortsList(value: Array<number>): LoraCloudModemGeolocationServices;
clearForwardFPortsList(): LoraCloudModemGeolocationServices;
addForwardFPorts(value: number, index?: number): LoraCloudModemGeolocationServices;
getGnssUseRxTime(): boolean;
setGnssUseRxTime(value: boolean): LoraCloudModemGeolocationServices;
getGnssUseGatewayLocation(): boolean;
setGnssUseGatewayLocation(value: boolean): LoraCloudModemGeolocationServices;
getParseTlv(): boolean;
setParseTlv(value: boolean): LoraCloudModemGeolocationServices;
@ -917,9 +923,9 @@ export namespace LoraCloudModemGeolocationServices {
export type AsObject = {
token: string,
modemEnabled: boolean,
modemPort: number,
gnssPort: number,
forwardFPortsList: Array<number>,
gnssUseRxTime: boolean,
gnssUseGatewayLocation: boolean,
parseTlv: boolean,
geolocationBufferTtl: number,
geolocationMinBufferSize: number,
@ -1553,6 +1559,12 @@ export class IftttIntegration extends jspb.Message {
clearUplinkValuesList(): IftttIntegration;
addUplinkValues(value: string, index?: number): IftttIntegration;
getArbitraryJson(): boolean;
setArbitraryJson(value: boolean): IftttIntegration;
getEventPrefix(): string;
setEventPrefix(value: string): IftttIntegration;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): IftttIntegration.AsObject;
static toObject(includeInstance: boolean, msg: IftttIntegration): IftttIntegration.AsObject;
@ -1566,6 +1578,8 @@ export namespace IftttIntegration {
applicationId: string,
key: string,
uplinkValuesList: Array<string>,
arbitraryJson: boolean,
eventPrefix: string,
}
}

View File

@ -907,7 +907,7 @@ if (goog.DEBUG && !COMPILED) {
* @constructor
*/
proto.api.LoraCloudModemGeolocationServices = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
jspb.Message.initialize(this, opt_data, 0, -1, proto.api.LoraCloudModemGeolocationServices.repeatedFields_, null);
};
goog.inherits(proto.api.LoraCloudModemGeolocationServices, jspb.Message);
if (goog.DEBUG && !COMPILED) {
@ -1729,7 +1729,8 @@ proto.api.Application.toObject = function(includeInstance, msg) {
id: jspb.Message.getFieldWithDefault(msg, 1, ""),
name: jspb.Message.getFieldWithDefault(msg, 2, ""),
description: jspb.Message.getFieldWithDefault(msg, 3, ""),
tenantId: jspb.Message.getFieldWithDefault(msg, 4, "")
tenantId: jspb.Message.getFieldWithDefault(msg, 4, ""),
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : []
};
if (includeInstance) {
@ -1782,6 +1783,12 @@ proto.api.Application.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.setTenantId(value);
break;
case 5:
var value = msg.getTagsMap();
reader.readMessage(value, function(message, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
default:
reader.skipField();
break;
@ -1839,6 +1846,10 @@ proto.api.Application.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getTagsMap(true);
if (f && f.getLength() > 0) {
f.serializeBinary(5, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
};
@ -1914,6 +1925,28 @@ proto.api.Application.prototype.setTenantId = function(value) {
};
/**
* map<string, string> tags = 5;
* @param {boolean=} opt_noLazyCreate Do not create the map if
* empty, instead returning `undefined`
* @return {!jspb.Map<string,string>}
*/
proto.api.Application.prototype.getTagsMap = function(opt_noLazyCreate) {
return /** @type {!jspb.Map<string,string>} */ (
jspb.Message.getMapField(this, 5, opt_noLazyCreate,
null));
};
/**
* Clears values from the map. The map will be non-null.
* @return {!proto.api.Application} returns this
*/
proto.api.Application.prototype.clearTagsMap = function() {
this.getTagsMap().clear();
return this;};
@ -8074,6 +8107,13 @@ proto.api.LoraCloudIntegration.prototype.hasModemGeolocationServices = function(
/**
* List of repeated fields within this message type.
* @private {!Array<number>}
* @const
*/
proto.api.LoraCloudModemGeolocationServices.repeatedFields_ = [16];
if (jspb.Message.GENERATE_TO_OBJECT) {
@ -8107,9 +8147,9 @@ proto.api.LoraCloudModemGeolocationServices.toObject = function(includeInstance,
var f, obj = {
token: jspb.Message.getFieldWithDefault(msg, 1, ""),
modemEnabled: jspb.Message.getBooleanFieldWithDefault(msg, 2, false),
modemPort: jspb.Message.getFieldWithDefault(msg, 3, 0),
gnssPort: jspb.Message.getFieldWithDefault(msg, 4, 0),
forwardFPortsList: (f = jspb.Message.getRepeatedField(msg, 16)) == null ? undefined : f,
gnssUseRxTime: jspb.Message.getBooleanFieldWithDefault(msg, 5, false),
gnssUseGatewayLocation: jspb.Message.getBooleanFieldWithDefault(msg, 17, false),
parseTlv: jspb.Message.getBooleanFieldWithDefault(msg, 6, false),
geolocationBufferTtl: jspb.Message.getFieldWithDefault(msg, 7, 0),
geolocationMinBufferSize: jspb.Message.getFieldWithDefault(msg, 8, 0),
@ -8164,18 +8204,18 @@ proto.api.LoraCloudModemGeolocationServices.deserializeBinaryFromReader = functi
var value = /** @type {boolean} */ (reader.readBool());
msg.setModemEnabled(value);
break;
case 3:
var value = /** @type {number} */ (reader.readUint32());
msg.setModemPort(value);
break;
case 4:
var value = /** @type {number} */ (reader.readUint32());
msg.setGnssPort(value);
case 16:
var value = /** @type {!Array<number>} */ (reader.readPackedUint32());
msg.setForwardFPortsList(value);
break;
case 5:
var value = /** @type {boolean} */ (reader.readBool());
msg.setGnssUseRxTime(value);
break;
case 17:
var value = /** @type {boolean} */ (reader.readBool());
msg.setGnssUseGatewayLocation(value);
break;
case 6:
var value = /** @type {boolean} */ (reader.readBool());
msg.setParseTlv(value);
@ -8259,17 +8299,10 @@ proto.api.LoraCloudModemGeolocationServices.serializeBinaryToWriter = function(m
f
);
}
f = message.getModemPort();
if (f !== 0) {
writer.writeUint32(
3,
f
);
}
f = message.getGnssPort();
if (f !== 0) {
writer.writeUint32(
4,
f = message.getForwardFPortsList();
if (f.length > 0) {
writer.writePackedUint32(
16,
f
);
}
@ -8280,6 +8313,13 @@ proto.api.LoraCloudModemGeolocationServices.serializeBinaryToWriter = function(m
f
);
}
f = message.getGnssUseGatewayLocation();
if (f) {
writer.writeBool(
17,
f
);
}
f = message.getParseTlv();
if (f) {
writer.writeBool(
@ -8390,38 +8430,39 @@ proto.api.LoraCloudModemGeolocationServices.prototype.setModemEnabled = function
/**
* optional uint32 modem_port = 3;
* @return {number}
* repeated uint32 forward_f_ports = 16;
* @return {!Array<number>}
*/
proto.api.LoraCloudModemGeolocationServices.prototype.getModemPort = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
proto.api.LoraCloudModemGeolocationServices.prototype.getForwardFPortsList = function() {
return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 16));
};
/**
* @param {!Array<number>} value
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setForwardFPortsList = function(value) {
return jspb.Message.setField(this, 16, value || []);
};
/**
* @param {number} value
* @param {number=} opt_index
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setModemPort = function(value) {
return jspb.Message.setProto3IntField(this, 3, value);
proto.api.LoraCloudModemGeolocationServices.prototype.addForwardFPorts = function(value, opt_index) {
return jspb.Message.addToRepeatedField(this, 16, value, opt_index);
};
/**
* optional uint32 gnss_port = 4;
* @return {number}
*/
proto.api.LoraCloudModemGeolocationServices.prototype.getGnssPort = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
};
/**
* @param {number} value
* Clears the list making it empty but non-null.
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setGnssPort = function(value) {
return jspb.Message.setProto3IntField(this, 4, value);
proto.api.LoraCloudModemGeolocationServices.prototype.clearForwardFPortsList = function() {
return this.setForwardFPortsList([]);
};
@ -8443,6 +8484,24 @@ proto.api.LoraCloudModemGeolocationServices.prototype.setGnssUseRxTime = functio
};
/**
* optional bool gnss_use_gateway_location = 17;
* @return {boolean}
*/
proto.api.LoraCloudModemGeolocationServices.prototype.getGnssUseGatewayLocation = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 17, false));
};
/**
* @param {boolean} value
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setGnssUseGatewayLocation = function(value) {
return jspb.Message.setProto3BooleanField(this, 17, value);
};
/**
* optional bool parse_tlv = 6;
* @return {boolean}
@ -13169,7 +13228,9 @@ proto.api.IftttIntegration.toObject = function(includeInstance, msg) {
var f, obj = {
applicationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
key: jspb.Message.getFieldWithDefault(msg, 2, ""),
uplinkValuesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f
uplinkValuesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f,
arbitraryJson: jspb.Message.getBooleanFieldWithDefault(msg, 4, false),
eventPrefix: jspb.Message.getFieldWithDefault(msg, 5, "")
};
if (includeInstance) {
@ -13218,6 +13279,14 @@ proto.api.IftttIntegration.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.addUplinkValues(value);
break;
case 4:
var value = /** @type {boolean} */ (reader.readBool());
msg.setArbitraryJson(value);
break;
case 5:
var value = /** @type {string} */ (reader.readString());
msg.setEventPrefix(value);
break;
default:
reader.skipField();
break;
@ -13268,6 +13337,20 @@ proto.api.IftttIntegration.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getArbitraryJson();
if (f) {
writer.writeBool(
4,
f
);
}
f = message.getEventPrefix();
if (f.length > 0) {
writer.writeString(
5,
f
);
}
};
@ -13344,6 +13427,42 @@ proto.api.IftttIntegration.prototype.clearUplinkValuesList = function() {
};
/**
* optional bool arbitrary_json = 4;
* @return {boolean}
*/
proto.api.IftttIntegration.prototype.getArbitraryJson = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false));
};
/**
* @param {boolean} value
* @return {!proto.api.IftttIntegration} returns this
*/
proto.api.IftttIntegration.prototype.setArbitraryJson = function(value) {
return jspb.Message.setProto3BooleanField(this, 4, value);
};
/**
* optional string event_prefix = 5;
* @return {string}
*/
proto.api.IftttIntegration.prototype.getEventPrefix = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, ""));
};
/**
* @param {string} value
* @return {!proto.api.IftttIntegration} returns this
*/
proto.api.IftttIntegration.prototype.setEventPrefix = function(value) {
return jspb.Message.setProto3StringField(this, 5, value);
};

View File

@ -142,6 +142,13 @@ export class DeviceServiceClient {
response: api_device_pb.GetDeviceQueueItemsResponse) => void
): grpcWeb.ClientReadableStream<api_device_pb.GetDeviceQueueItemsResponse>;
getNextFCntDown(
request: api_device_pb.GetDeviceNextFCntDownRequest,
metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.RpcError,
response: api_device_pb.GetDeviceNextFCntDownResponse) => void
): grpcWeb.ClientReadableStream<api_device_pb.GetDeviceNextFCntDownResponse>;
}
export class DeviceServicePromiseClient {
@ -244,5 +251,10 @@ export class DeviceServicePromiseClient {
metadata?: grpcWeb.Metadata
): Promise<api_device_pb.GetDeviceQueueItemsResponse>;
getNextFCntDown(
request: api_device_pb.GetDeviceNextFCntDownRequest,
metadata?: grpcWeb.Metadata
): Promise<api_device_pb.GetDeviceNextFCntDownResponse>;
}

View File

@ -1243,5 +1243,66 @@ proto.api.DeviceServicePromiseClient.prototype.getQueue =
};
/**
* @const
* @type {!grpc.web.MethodDescriptor<
* !proto.api.GetDeviceNextFCntDownRequest,
* !proto.api.GetDeviceNextFCntDownResponse>}
*/
const methodDescriptor_DeviceService_GetNextFCntDown = new grpc.web.MethodDescriptor(
'/api.DeviceService/GetNextFCntDown',
grpc.web.MethodType.UNARY,
proto.api.GetDeviceNextFCntDownRequest,
proto.api.GetDeviceNextFCntDownResponse,
/**
* @param {!proto.api.GetDeviceNextFCntDownRequest} request
* @return {!Uint8Array}
*/
function(request) {
return request.serializeBinary();
},
proto.api.GetDeviceNextFCntDownResponse.deserializeBinary
);
/**
* @param {!proto.api.GetDeviceNextFCntDownRequest} request The
* request proto
* @param {?Object<string, string>} metadata User defined
* call metadata
* @param {function(?grpc.web.RpcError, ?proto.api.GetDeviceNextFCntDownResponse)}
* callback The callback function(error, response)
* @return {!grpc.web.ClientReadableStream<!proto.api.GetDeviceNextFCntDownResponse>|undefined}
* The XHR Node Readable Stream
*/
proto.api.DeviceServiceClient.prototype.getNextFCntDown =
function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ +
'/api.DeviceService/GetNextFCntDown',
request,
metadata || {},
methodDescriptor_DeviceService_GetNextFCntDown,
callback);
};
/**
* @param {!proto.api.GetDeviceNextFCntDownRequest} request The
* request proto
* @param {?Object<string, string>=} metadata User defined
* call metadata
* @return {!Promise<!proto.api.GetDeviceNextFCntDownResponse>}
* Promise that resolves to the response
*/
proto.api.DeviceServicePromiseClient.prototype.getNextFCntDown =
function(request, metadata) {
return this.client_.unaryCall(this.hostname_ +
'/api.DeviceService/GetNextFCntDown',
request,
metadata || {},
methodDescriptor_DeviceService_GetNextFCntDown);
};
module.exports = proto.api;

View File

@ -35,6 +35,9 @@ export class Device extends jspb.Message {
getTagsMap(): jspb.Map<string, string>;
clearTagsMap(): Device;
getJoinEui(): string;
setJoinEui(value: string): Device;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Device.AsObject;
static toObject(includeInstance: boolean, msg: Device): Device.AsObject;
@ -54,6 +57,7 @@ export namespace Device {
isDisabled: boolean,
variablesMap: Array<[string, string]>,
tagsMap: Array<[string, string]>,
joinEui: string,
}
}
@ -231,6 +235,9 @@ export class GetDeviceResponse extends jspb.Message {
hasDeviceStatus(): boolean;
clearDeviceStatus(): GetDeviceResponse;
getClassEnabled(): common_common_pb.DeviceClass;
setClassEnabled(value: common_common_pb.DeviceClass): GetDeviceResponse;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): GetDeviceResponse.AsObject;
static toObject(includeInstance: boolean, msg: GetDeviceResponse): GetDeviceResponse.AsObject;
@ -246,6 +253,7 @@ export namespace GetDeviceResponse {
updatedAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
lastSeenAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
deviceStatus?: DeviceStatus.AsObject,
classEnabled: common_common_pb.DeviceClass,
}
}
@ -806,6 +814,9 @@ export class DeviceQueueItem extends jspb.Message {
getFCntDown(): number;
setFCntDown(value: number): DeviceQueueItem;
getIsEncrypted(): boolean;
setIsEncrypted(value: boolean): DeviceQueueItem;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DeviceQueueItem.AsObject;
static toObject(includeInstance: boolean, msg: DeviceQueueItem): DeviceQueueItem.AsObject;
@ -824,6 +835,7 @@ export namespace DeviceQueueItem {
object?: google_protobuf_struct_pb.Struct.AsObject,
isPending: boolean,
fCntDown: number,
isEncrypted: boolean,
}
}
@ -947,3 +959,39 @@ export namespace FlushDevNoncesRequest {
}
}
export class GetDeviceNextFCntDownRequest extends jspb.Message {
getDevEui(): string;
setDevEui(value: string): GetDeviceNextFCntDownRequest;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): GetDeviceNextFCntDownRequest.AsObject;
static toObject(includeInstance: boolean, msg: GetDeviceNextFCntDownRequest): GetDeviceNextFCntDownRequest.AsObject;
static serializeBinaryToWriter(message: GetDeviceNextFCntDownRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): GetDeviceNextFCntDownRequest;
static deserializeBinaryFromReader(message: GetDeviceNextFCntDownRequest, reader: jspb.BinaryReader): GetDeviceNextFCntDownRequest;
}
export namespace GetDeviceNextFCntDownRequest {
export type AsObject = {
devEui: string,
}
}
export class GetDeviceNextFCntDownResponse extends jspb.Message {
getFCntDown(): number;
setFCntDown(value: number): GetDeviceNextFCntDownResponse;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): GetDeviceNextFCntDownResponse.AsObject;
static toObject(includeInstance: boolean, msg: GetDeviceNextFCntDownResponse): GetDeviceNextFCntDownResponse.AsObject;
static serializeBinaryToWriter(message: GetDeviceNextFCntDownResponse, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): GetDeviceNextFCntDownResponse;
static deserializeBinaryFromReader(message: GetDeviceNextFCntDownResponse, reader: jspb.BinaryReader): GetDeviceNextFCntDownResponse;
}
export namespace GetDeviceNextFCntDownResponse {
export type AsObject = {
fCntDown: number,
}
}

View File

@ -47,6 +47,8 @@ goog.exportSymbol('proto.api.GetDeviceLinkMetricsRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceLinkMetricsResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceMetricsRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceMetricsResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceNextFCntDownRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceNextFCntDownResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceQueueItemsRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceQueueItemsResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceRequest', null, global);
@ -792,6 +794,48 @@ if (goog.DEBUG && !COMPILED) {
*/
proto.api.FlushDevNoncesRequest.displayName = 'proto.api.FlushDevNoncesRequest';
}
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.api.GetDeviceNextFCntDownRequest = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.api.GetDeviceNextFCntDownRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
/**
* @public
* @override
*/
proto.api.GetDeviceNextFCntDownRequest.displayName = 'proto.api.GetDeviceNextFCntDownRequest';
}
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.api.GetDeviceNextFCntDownResponse = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.api.GetDeviceNextFCntDownResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
/**
* @public
* @override
*/
proto.api.GetDeviceNextFCntDownResponse.displayName = 'proto.api.GetDeviceNextFCntDownResponse';
}
@ -832,7 +876,8 @@ proto.api.Device.toObject = function(includeInstance, msg) {
skipFcntCheck: jspb.Message.getBooleanFieldWithDefault(msg, 6, false),
isDisabled: jspb.Message.getBooleanFieldWithDefault(msg, 7, false),
variablesMap: (f = msg.getVariablesMap()) ? f.toObject(includeInstance, undefined) : [],
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : []
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : [],
joinEui: jspb.Message.getFieldWithDefault(msg, 10, "")
};
if (includeInstance) {
@ -909,6 +954,10 @@ proto.api.Device.deserializeBinaryFromReader = function(msg, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
case 10:
var value = /** @type {string} */ (reader.readString());
msg.setJoinEui(value);
break;
default:
reader.skipField();
break;
@ -995,6 +1044,13 @@ proto.api.Device.serializeBinaryToWriter = function(message, writer) {
if (f && f.getLength() > 0) {
f.serializeBinary(9, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
f = message.getJoinEui();
if (f.length > 0) {
writer.writeString(
10,
f
);
}
};
@ -1168,6 +1224,24 @@ proto.api.Device.prototype.clearTagsMap = function() {
return this;};
/**
* optional string join_eui = 10;
* @return {string}
*/
proto.api.Device.prototype.getJoinEui = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, ""));
};
/**
* @param {string} value
* @return {!proto.api.Device} returns this
*/
proto.api.Device.prototype.setJoinEui = function(value) {
return jspb.Message.setProto3StringField(this, 10, value);
};
@ -2319,7 +2393,8 @@ proto.api.GetDeviceResponse.toObject = function(includeInstance, msg) {
createdAt: (f = msg.getCreatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
updatedAt: (f = msg.getUpdatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
lastSeenAt: (f = msg.getLastSeenAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
deviceStatus: (f = msg.getDeviceStatus()) && proto.api.DeviceStatus.toObject(includeInstance, f)
deviceStatus: (f = msg.getDeviceStatus()) && proto.api.DeviceStatus.toObject(includeInstance, f),
classEnabled: jspb.Message.getFieldWithDefault(msg, 6, 0)
};
if (includeInstance) {
@ -2381,6 +2456,10 @@ proto.api.GetDeviceResponse.deserializeBinaryFromReader = function(msg, reader)
reader.readMessage(value,proto.api.DeviceStatus.deserializeBinaryFromReader);
msg.setDeviceStatus(value);
break;
case 6:
var value = /** @type {!proto.common.DeviceClass} */ (reader.readEnum());
msg.setClassEnabled(value);
break;
default:
reader.skipField();
break;
@ -2450,6 +2529,13 @@ proto.api.GetDeviceResponse.serializeBinaryToWriter = function(message, writer)
proto.api.DeviceStatus.serializeBinaryToWriter
);
}
f = message.getClassEnabled();
if (f !== 0.0) {
writer.writeEnum(
6,
f
);
}
};
@ -2638,6 +2724,24 @@ proto.api.GetDeviceResponse.prototype.hasDeviceStatus = function() {
};
/**
* optional common.DeviceClass class_enabled = 6;
* @return {!proto.common.DeviceClass}
*/
proto.api.GetDeviceResponse.prototype.getClassEnabled = function() {
return /** @type {!proto.common.DeviceClass} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
};
/**
* @param {!proto.common.DeviceClass} value
* @return {!proto.api.GetDeviceResponse} returns this
*/
proto.api.GetDeviceResponse.prototype.setClassEnabled = function(value) {
return jspb.Message.setProto3EnumField(this, 6, value);
};
@ -6661,7 +6765,8 @@ proto.api.DeviceQueueItem.toObject = function(includeInstance, msg) {
data: msg.getData_asB64(),
object: (f = msg.getObject()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f),
isPending: jspb.Message.getBooleanFieldWithDefault(msg, 7, false),
fCntDown: jspb.Message.getFieldWithDefault(msg, 8, 0)
fCntDown: jspb.Message.getFieldWithDefault(msg, 8, 0),
isEncrypted: jspb.Message.getBooleanFieldWithDefault(msg, 9, false)
};
if (includeInstance) {
@ -6731,6 +6836,10 @@ proto.api.DeviceQueueItem.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {number} */ (reader.readUint32());
msg.setFCntDown(value);
break;
case 9:
var value = /** @type {boolean} */ (reader.readBool());
msg.setIsEncrypted(value);
break;
default:
reader.skipField();
break;
@ -6817,6 +6926,13 @@ proto.api.DeviceQueueItem.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getIsEncrypted();
if (f) {
writer.writeBool(
9,
f
);
}
};
@ -7007,6 +7123,24 @@ proto.api.DeviceQueueItem.prototype.setFCntDown = function(value) {
};
/**
* optional bool is_encrypted = 9;
* @return {boolean}
*/
proto.api.DeviceQueueItem.prototype.getIsEncrypted = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 9, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceQueueItem} returns this
*/
proto.api.DeviceQueueItem.prototype.setIsEncrypted = function(value) {
return jspb.Message.setProto3BooleanField(this, 9, value);
};
@ -7898,4 +8032,264 @@ proto.api.FlushDevNoncesRequest.prototype.setDevEui = function(value) {
};
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* Optional fields that are not set will be set to undefined.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* net/proto2/compiler/js/internal/generator.cc#kKeyword.
* @param {boolean=} opt_includeInstance Deprecated. whether to include the
* JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @return {!Object}
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.toObject = function(opt_includeInstance) {
return proto.api.GetDeviceNextFCntDownRequest.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Deprecated. Whether to include
* the JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.api.GetDeviceNextFCntDownRequest} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownRequest.toObject = function(includeInstance, msg) {
var f, obj = {
devEui: jspb.Message.getFieldWithDefault(msg, 1, "")
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.api.GetDeviceNextFCntDownRequest}
*/
proto.api.GetDeviceNextFCntDownRequest.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.api.GetDeviceNextFCntDownRequest;
return proto.api.GetDeviceNextFCntDownRequest.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.api.GetDeviceNextFCntDownRequest} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.api.GetDeviceNextFCntDownRequest}
*/
proto.api.GetDeviceNextFCntDownRequest.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {string} */ (reader.readString());
msg.setDevEui(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.api.GetDeviceNextFCntDownRequest.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.api.GetDeviceNextFCntDownRequest} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownRequest.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getDevEui();
if (f.length > 0) {
writer.writeString(
1,
f
);
}
};
/**
* optional string dev_eui = 1;
* @return {string}
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.getDevEui = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};
/**
* @param {string} value
* @return {!proto.api.GetDeviceNextFCntDownRequest} returns this
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.setDevEui = function(value) {
return jspb.Message.setProto3StringField(this, 1, value);
};
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* Optional fields that are not set will be set to undefined.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* net/proto2/compiler/js/internal/generator.cc#kKeyword.
* @param {boolean=} opt_includeInstance Deprecated. whether to include the
* JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @return {!Object}
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.toObject = function(opt_includeInstance) {
return proto.api.GetDeviceNextFCntDownResponse.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Deprecated. Whether to include
* the JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.api.GetDeviceNextFCntDownResponse} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownResponse.toObject = function(includeInstance, msg) {
var f, obj = {
fCntDown: jspb.Message.getFieldWithDefault(msg, 1, 0)
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.api.GetDeviceNextFCntDownResponse}
*/
proto.api.GetDeviceNextFCntDownResponse.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.api.GetDeviceNextFCntDownResponse;
return proto.api.GetDeviceNextFCntDownResponse.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.api.GetDeviceNextFCntDownResponse} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.api.GetDeviceNextFCntDownResponse}
*/
proto.api.GetDeviceNextFCntDownResponse.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {number} */ (reader.readUint32());
msg.setFCntDown(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.api.GetDeviceNextFCntDownResponse.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.api.GetDeviceNextFCntDownResponse} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownResponse.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getFCntDown();
if (f !== 0) {
writer.writeUint32(
1,
f
);
}
};
/**
* optional uint32 f_cnt_down = 1;
* @return {number}
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.getFCntDown = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
};
/**
* @param {number} value
* @return {!proto.api.GetDeviceNextFCntDownResponse} returns this
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.setFCntDown = function(value) {
return jspb.Message.setProto3IntField(this, 1, value);
};
goog.object.extend(exports, proto.api);

View File

@ -94,6 +94,72 @@ export class DeviceProfile extends jspb.Message {
getRegionConfigId(): string;
setRegionConfigId(value: string): DeviceProfile;
getIsRelay(): boolean;
setIsRelay(value: boolean): DeviceProfile;
getIsRelayEd(): boolean;
setIsRelayEd(value: boolean): DeviceProfile;
getRelayEdRelayOnly(): boolean;
setRelayEdRelayOnly(value: boolean): DeviceProfile;
getRelayEnabled(): boolean;
setRelayEnabled(value: boolean): DeviceProfile;
getRelayCadPeriodicity(): CadPeriodicity;
setRelayCadPeriodicity(value: CadPeriodicity): DeviceProfile;
getRelayDefaultChannelIndex(): number;
setRelayDefaultChannelIndex(value: number): DeviceProfile;
getRelaySecondChannelFreq(): number;
setRelaySecondChannelFreq(value: number): DeviceProfile;
getRelaySecondChannelDr(): number;
setRelaySecondChannelDr(value: number): DeviceProfile;
getRelaySecondChannelAckOffset(): SecondChAckOffset;
setRelaySecondChannelAckOffset(value: SecondChAckOffset): DeviceProfile;
getRelayEdActivationMode(): RelayModeActivation;
setRelayEdActivationMode(value: RelayModeActivation): DeviceProfile;
getRelayEdSmartEnableLevel(): number;
setRelayEdSmartEnableLevel(value: number): DeviceProfile;
getRelayEdBackOff(): number;
setRelayEdBackOff(value: number): DeviceProfile;
getRelayEdUplinkLimitBucketSize(): number;
setRelayEdUplinkLimitBucketSize(value: number): DeviceProfile;
getRelayEdUplinkLimitReloadRate(): number;
setRelayEdUplinkLimitReloadRate(value: number): DeviceProfile;
getRelayJoinReqLimitReloadRate(): number;
setRelayJoinReqLimitReloadRate(value: number): DeviceProfile;
getRelayNotifyLimitReloadRate(): number;
setRelayNotifyLimitReloadRate(value: number): DeviceProfile;
getRelayGlobalUplinkLimitReloadRate(): number;
setRelayGlobalUplinkLimitReloadRate(value: number): DeviceProfile;
getRelayOverallLimitReloadRate(): number;
setRelayOverallLimitReloadRate(value: number): DeviceProfile;
getRelayJoinReqLimitBucketSize(): number;
setRelayJoinReqLimitBucketSize(value: number): DeviceProfile;
getRelayNotifyLimitBucketSize(): number;
setRelayNotifyLimitBucketSize(value: number): DeviceProfile;
getRelayGlobalUplinkLimitBucketSize(): number;
setRelayGlobalUplinkLimitBucketSize(value: number): DeviceProfile;
getRelayOverallLimitBucketSize(): number;
setRelayOverallLimitBucketSize(value: number): DeviceProfile;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DeviceProfile.AsObject;
static toObject(includeInstance: boolean, msg: DeviceProfile): DeviceProfile.AsObject;
@ -133,6 +199,28 @@ export namespace DeviceProfile {
measurementsMap: Array<[string, Measurement.AsObject]>,
autoDetectMeasurements: boolean,
regionConfigId: string,
isRelay: boolean,
isRelayEd: boolean,
relayEdRelayOnly: boolean,
relayEnabled: boolean,
relayCadPeriodicity: CadPeriodicity,
relayDefaultChannelIndex: number,
relaySecondChannelFreq: number,
relaySecondChannelDr: number,
relaySecondChannelAckOffset: SecondChAckOffset,
relayEdActivationMode: RelayModeActivation,
relayEdSmartEnableLevel: number,
relayEdBackOff: number,
relayEdUplinkLimitBucketSize: number,
relayEdUplinkLimitReloadRate: number,
relayJoinReqLimitReloadRate: number,
relayNotifyLimitReloadRate: number,
relayGlobalUplinkLimitReloadRate: number,
relayOverallLimitReloadRate: number,
relayJoinReqLimitBucketSize: number,
relayNotifyLimitBucketSize: number,
relayGlobalUplinkLimitBucketSize: number,
relayOverallLimitBucketSize: number,
}
}
@ -454,3 +542,25 @@ export enum MeasurementKind {
GAUGE = 3,
STRING = 4,
}
export enum CadPeriodicity {
SEC_1 = 0,
MS_500 = 1,
MS_250 = 2,
MS_100 = 3,
MS_50 = 4,
MS_20 = 5,
}
export enum SecondChAckOffset {
KHZ_0 = 0,
KHZ_200 = 1,
KHZ_400 = 2,
KHZ_800 = 3,
KHZ_1600 = 4,
KHZ_3200 = 5,
}
export enum RelayModeActivation {
DISABLE_RELAY_MODE = 0,
ENABLE_RELAY_MODE = 1,
DYNAMIC = 2,
END_DEVICE_CONTROLLED = 3,
}

View File

@ -21,6 +21,7 @@ goog.object.extend(proto, google_protobuf_empty_pb);
var common_common_pb = require('../common/common_pb.js');
goog.object.extend(proto, common_common_pb);
goog.exportSymbol('proto.api.AdrAlgorithmListItem', null, global);
goog.exportSymbol('proto.api.CadPeriodicity', null, global);
goog.exportSymbol('proto.api.CodecRuntime', null, global);
goog.exportSymbol('proto.api.CreateDeviceProfileRequest', null, global);
goog.exportSymbol('proto.api.CreateDeviceProfileResponse', null, global);
@ -34,6 +35,8 @@ goog.exportSymbol('proto.api.ListDeviceProfilesRequest', null, global);
goog.exportSymbol('proto.api.ListDeviceProfilesResponse', null, global);
goog.exportSymbol('proto.api.Measurement', null, global);
goog.exportSymbol('proto.api.MeasurementKind', null, global);
goog.exportSymbol('proto.api.RelayModeActivation', null, global);
goog.exportSymbol('proto.api.SecondChAckOffset', null, global);
goog.exportSymbol('proto.api.UpdateDeviceProfileRequest', null, global);
/**
* Generated by JsPbCodeGenerator.
@ -368,7 +371,29 @@ proto.api.DeviceProfile.toObject = function(includeInstance, msg) {
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : [],
measurementsMap: (f = msg.getMeasurementsMap()) ? f.toObject(includeInstance, proto.api.Measurement.toObject) : [],
autoDetectMeasurements: jspb.Message.getBooleanFieldWithDefault(msg, 28, false),
regionConfigId: jspb.Message.getFieldWithDefault(msg, 29, "")
regionConfigId: jspb.Message.getFieldWithDefault(msg, 29, ""),
isRelay: jspb.Message.getBooleanFieldWithDefault(msg, 30, false),
isRelayEd: jspb.Message.getBooleanFieldWithDefault(msg, 31, false),
relayEdRelayOnly: jspb.Message.getBooleanFieldWithDefault(msg, 32, false),
relayEnabled: jspb.Message.getBooleanFieldWithDefault(msg, 33, false),
relayCadPeriodicity: jspb.Message.getFieldWithDefault(msg, 34, 0),
relayDefaultChannelIndex: jspb.Message.getFieldWithDefault(msg, 35, 0),
relaySecondChannelFreq: jspb.Message.getFieldWithDefault(msg, 36, 0),
relaySecondChannelDr: jspb.Message.getFieldWithDefault(msg, 37, 0),
relaySecondChannelAckOffset: jspb.Message.getFieldWithDefault(msg, 38, 0),
relayEdActivationMode: jspb.Message.getFieldWithDefault(msg, 39, 0),
relayEdSmartEnableLevel: jspb.Message.getFieldWithDefault(msg, 40, 0),
relayEdBackOff: jspb.Message.getFieldWithDefault(msg, 41, 0),
relayEdUplinkLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 42, 0),
relayEdUplinkLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 43, 0),
relayJoinReqLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 44, 0),
relayNotifyLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 45, 0),
relayGlobalUplinkLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 46, 0),
relayOverallLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 47, 0),
relayJoinReqLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 48, 0),
relayNotifyLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 49, 0),
relayGlobalUplinkLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 50, 0),
relayOverallLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 51, 0)
};
if (includeInstance) {
@ -525,6 +550,94 @@ proto.api.DeviceProfile.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.setRegionConfigId(value);
break;
case 30:
var value = /** @type {boolean} */ (reader.readBool());
msg.setIsRelay(value);
break;
case 31:
var value = /** @type {boolean} */ (reader.readBool());
msg.setIsRelayEd(value);
break;
case 32:
var value = /** @type {boolean} */ (reader.readBool());
msg.setRelayEdRelayOnly(value);
break;
case 33:
var value = /** @type {boolean} */ (reader.readBool());
msg.setRelayEnabled(value);
break;
case 34:
var value = /** @type {!proto.api.CadPeriodicity} */ (reader.readEnum());
msg.setRelayCadPeriodicity(value);
break;
case 35:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayDefaultChannelIndex(value);
break;
case 36:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelaySecondChannelFreq(value);
break;
case 37:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelaySecondChannelDr(value);
break;
case 38:
var value = /** @type {!proto.api.SecondChAckOffset} */ (reader.readEnum());
msg.setRelaySecondChannelAckOffset(value);
break;
case 39:
var value = /** @type {!proto.api.RelayModeActivation} */ (reader.readEnum());
msg.setRelayEdActivationMode(value);
break;
case 40:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdSmartEnableLevel(value);
break;
case 41:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdBackOff(value);
break;
case 42:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdUplinkLimitBucketSize(value);
break;
case 43:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdUplinkLimitReloadRate(value);
break;
case 44:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayJoinReqLimitReloadRate(value);
break;
case 45:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayNotifyLimitReloadRate(value);
break;
case 46:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayGlobalUplinkLimitReloadRate(value);
break;
case 47:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayOverallLimitReloadRate(value);
break;
case 48:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayJoinReqLimitBucketSize(value);
break;
case 49:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayNotifyLimitBucketSize(value);
break;
case 50:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayGlobalUplinkLimitBucketSize(value);
break;
case 51:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayOverallLimitBucketSize(value);
break;
default:
reader.skipField();
break;
@ -751,6 +864,160 @@ proto.api.DeviceProfile.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getIsRelay();
if (f) {
writer.writeBool(
30,
f
);
}
f = message.getIsRelayEd();
if (f) {
writer.writeBool(
31,
f
);
}
f = message.getRelayEdRelayOnly();
if (f) {
writer.writeBool(
32,
f
);
}
f = message.getRelayEnabled();
if (f) {
writer.writeBool(
33,
f
);
}
f = message.getRelayCadPeriodicity();
if (f !== 0.0) {
writer.writeEnum(
34,
f
);
}
f = message.getRelayDefaultChannelIndex();
if (f !== 0) {
writer.writeUint32(
35,
f
);
}
f = message.getRelaySecondChannelFreq();
if (f !== 0) {
writer.writeUint32(
36,
f
);
}
f = message.getRelaySecondChannelDr();
if (f !== 0) {
writer.writeUint32(
37,
f
);
}
f = message.getRelaySecondChannelAckOffset();
if (f !== 0.0) {
writer.writeEnum(
38,
f
);
}
f = message.getRelayEdActivationMode();
if (f !== 0.0) {
writer.writeEnum(
39,
f
);
}
f = message.getRelayEdSmartEnableLevel();
if (f !== 0) {
writer.writeUint32(
40,
f
);
}
f = message.getRelayEdBackOff();
if (f !== 0) {
writer.writeUint32(
41,
f
);
}
f = message.getRelayEdUplinkLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
42,
f
);
}
f = message.getRelayEdUplinkLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
43,
f
);
}
f = message.getRelayJoinReqLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
44,
f
);
}
f = message.getRelayNotifyLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
45,
f
);
}
f = message.getRelayGlobalUplinkLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
46,
f
);
}
f = message.getRelayOverallLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
47,
f
);
}
f = message.getRelayJoinReqLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
48,
f
);
}
f = message.getRelayNotifyLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
49,
f
);
}
f = message.getRelayGlobalUplinkLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
50,
f
);
}
f = message.getRelayOverallLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
51,
f
);
}
};
@ -1284,6 +1551,402 @@ proto.api.DeviceProfile.prototype.setRegionConfigId = function(value) {
};
/**
* optional bool is_relay = 30;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getIsRelay = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 30, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setIsRelay = function(value) {
return jspb.Message.setProto3BooleanField(this, 30, value);
};
/**
* optional bool is_relay_ed = 31;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getIsRelayEd = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 31, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setIsRelayEd = function(value) {
return jspb.Message.setProto3BooleanField(this, 31, value);
};
/**
* optional bool relay_ed_relay_only = 32;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getRelayEdRelayOnly = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 32, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdRelayOnly = function(value) {
return jspb.Message.setProto3BooleanField(this, 32, value);
};
/**
* optional bool relay_enabled = 33;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getRelayEnabled = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 33, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEnabled = function(value) {
return jspb.Message.setProto3BooleanField(this, 33, value);
};
/**
* optional CadPeriodicity relay_cad_periodicity = 34;
* @return {!proto.api.CadPeriodicity}
*/
proto.api.DeviceProfile.prototype.getRelayCadPeriodicity = function() {
return /** @type {!proto.api.CadPeriodicity} */ (jspb.Message.getFieldWithDefault(this, 34, 0));
};
/**
* @param {!proto.api.CadPeriodicity} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayCadPeriodicity = function(value) {
return jspb.Message.setProto3EnumField(this, 34, value);
};
/**
* optional uint32 relay_default_channel_index = 35;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayDefaultChannelIndex = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 35, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayDefaultChannelIndex = function(value) {
return jspb.Message.setProto3IntField(this, 35, value);
};
/**
* optional uint32 relay_second_channel_freq = 36;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelaySecondChannelFreq = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 36, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelaySecondChannelFreq = function(value) {
return jspb.Message.setProto3IntField(this, 36, value);
};
/**
* optional uint32 relay_second_channel_dr = 37;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelaySecondChannelDr = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 37, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelaySecondChannelDr = function(value) {
return jspb.Message.setProto3IntField(this, 37, value);
};
/**
* optional SecondChAckOffset relay_second_channel_ack_offset = 38;
* @return {!proto.api.SecondChAckOffset}
*/
proto.api.DeviceProfile.prototype.getRelaySecondChannelAckOffset = function() {
return /** @type {!proto.api.SecondChAckOffset} */ (jspb.Message.getFieldWithDefault(this, 38, 0));
};
/**
* @param {!proto.api.SecondChAckOffset} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelaySecondChannelAckOffset = function(value) {
return jspb.Message.setProto3EnumField(this, 38, value);
};
/**
* optional RelayModeActivation relay_ed_activation_mode = 39;
* @return {!proto.api.RelayModeActivation}
*/
proto.api.DeviceProfile.prototype.getRelayEdActivationMode = function() {
return /** @type {!proto.api.RelayModeActivation} */ (jspb.Message.getFieldWithDefault(this, 39, 0));
};
/**
* @param {!proto.api.RelayModeActivation} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdActivationMode = function(value) {
return jspb.Message.setProto3EnumField(this, 39, value);
};
/**
* optional uint32 relay_ed_smart_enable_level = 40;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdSmartEnableLevel = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 40, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdSmartEnableLevel = function(value) {
return jspb.Message.setProto3IntField(this, 40, value);
};
/**
* optional uint32 relay_ed_back_off = 41;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdBackOff = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 41, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdBackOff = function(value) {
return jspb.Message.setProto3IntField(this, 41, value);
};
/**
* optional uint32 relay_ed_uplink_limit_bucket_size = 42;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdUplinkLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 42, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdUplinkLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 42, value);
};
/**
* optional uint32 relay_ed_uplink_limit_reload_rate = 43;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdUplinkLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 43, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdUplinkLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 43, value);
};
/**
* optional uint32 relay_join_req_limit_reload_rate = 44;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayJoinReqLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 44, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayJoinReqLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 44, value);
};
/**
* optional uint32 relay_notify_limit_reload_rate = 45;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayNotifyLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 45, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayNotifyLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 45, value);
};
/**
* optional uint32 relay_global_uplink_limit_reload_rate = 46;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayGlobalUplinkLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 46, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayGlobalUplinkLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 46, value);
};
/**
* optional uint32 relay_overall_limit_reload_rate = 47;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayOverallLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 47, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayOverallLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 47, value);
};
/**
* optional uint32 relay_join_req_limit_bucket_size = 48;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayJoinReqLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 48, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayJoinReqLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 48, value);
};
/**
* optional uint32 relay_notify_limit_bucket_size = 49;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayNotifyLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 49, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayNotifyLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 49, value);
};
/**
* optional uint32 relay_global_uplink_limit_bucket_size = 50;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayGlobalUplinkLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 50, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayGlobalUplinkLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 50, value);
};
/**
* optional uint32 relay_overall_limit_bucket_size = 51;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayOverallLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 51, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayOverallLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 51, value);
};
@ -3611,4 +4274,38 @@ proto.api.MeasurementKind = {
STRING: 4
};
/**
* @enum {number}
*/
proto.api.CadPeriodicity = {
SEC_1: 0,
MS_500: 1,
MS_250: 2,
MS_100: 3,
MS_50: 4,
MS_20: 5
};
/**
* @enum {number}
*/
proto.api.SecondChAckOffset = {
KHZ_0: 0,
KHZ_200: 1,
KHZ_400: 2,
KHZ_800: 3,
KHZ_1600: 4,
KHZ_3200: 5
};
/**
* @enum {number}
*/
proto.api.RelayModeActivation = {
DISABLE_RELAY_MODE: 0,
ENABLE_RELAY_MODE: 1,
DYNAMIC: 2,
END_DEVICE_CONTROLLED: 3
};
goog.object.extend(exports, proto.api);

View File

@ -35,8 +35,11 @@ export class UplinkFrameLog extends jspb.Message {
hasTime(): boolean;
clearTime(): UplinkFrameLog;
getPlaintextMacCommands(): boolean;
setPlaintextMacCommands(value: boolean): UplinkFrameLog;
getPlaintextFOpts(): boolean;
setPlaintextFOpts(value: boolean): UplinkFrameLog;
getPlaintextFrmPayload(): boolean;
setPlaintextFrmPayload(value: boolean): UplinkFrameLog;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): UplinkFrameLog.AsObject;
@ -55,7 +58,8 @@ export namespace UplinkFrameLog {
devAddr: string,
devEui: string,
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
plaintextMacCommands: boolean,
plaintextFOpts: boolean,
plaintextFrmPayload: boolean,
}
}
@ -90,8 +94,11 @@ export class DownlinkFrameLog extends jspb.Message {
getDevEui(): string;
setDevEui(value: string): DownlinkFrameLog;
getPlaintextMacCommands(): boolean;
setPlaintextMacCommands(value: boolean): DownlinkFrameLog;
getPlaintextFOpts(): boolean;
setPlaintextFOpts(value: boolean): DownlinkFrameLog;
getPlaintextFrmPayload(): boolean;
setPlaintextFrmPayload(value: boolean): DownlinkFrameLog;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DownlinkFrameLog.AsObject;
@ -111,7 +118,8 @@ export namespace DownlinkFrameLog {
mType: common_common_pb.MType,
devAddr: string,
devEui: string,
plaintextMacCommands: boolean,
plaintextFOpts: boolean,
plaintextFrmPayload: boolean,
}
}

View File

@ -109,7 +109,8 @@ proto.api.UplinkFrameLog.toObject = function(includeInstance, msg) {
devAddr: jspb.Message.getFieldWithDefault(msg, 5, ""),
devEui: jspb.Message.getFieldWithDefault(msg, 6, ""),
time: (f = msg.getTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
plaintextMacCommands: jspb.Message.getBooleanFieldWithDefault(msg, 8, false)
plaintextFOpts: jspb.Message.getBooleanFieldWithDefault(msg, 8, false),
plaintextFrmPayload: jspb.Message.getBooleanFieldWithDefault(msg, 9, false)
};
if (includeInstance) {
@ -179,7 +180,11 @@ proto.api.UplinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
break;
case 8:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextMacCommands(value);
msg.setPlaintextFOpts(value);
break;
case 9:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextFrmPayload(value);
break;
default:
reader.skipField();
@ -262,13 +267,20 @@ proto.api.UplinkFrameLog.serializeBinaryToWriter = function(message, writer) {
google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
);
}
f = message.getPlaintextMacCommands();
f = message.getPlaintextFOpts();
if (f) {
writer.writeBool(
8,
f
);
}
f = message.getPlaintextFrmPayload();
if (f) {
writer.writeBool(
9,
f
);
}
};
@ -481,10 +493,10 @@ proto.api.UplinkFrameLog.prototype.hasTime = function() {
/**
* optional bool plaintext_mac_commands = 8;
* optional bool plaintext_f_opts = 8;
* @return {boolean}
*/
proto.api.UplinkFrameLog.prototype.getPlaintextMacCommands = function() {
proto.api.UplinkFrameLog.prototype.getPlaintextFOpts = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 8, false));
};
@ -493,11 +505,29 @@ proto.api.UplinkFrameLog.prototype.getPlaintextMacCommands = function() {
* @param {boolean} value
* @return {!proto.api.UplinkFrameLog} returns this
*/
proto.api.UplinkFrameLog.prototype.setPlaintextMacCommands = function(value) {
proto.api.UplinkFrameLog.prototype.setPlaintextFOpts = function(value) {
return jspb.Message.setProto3BooleanField(this, 8, value);
};
/**
* optional bool plaintext_frm_payload = 9;
* @return {boolean}
*/
proto.api.UplinkFrameLog.prototype.getPlaintextFrmPayload = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 9, false));
};
/**
* @param {boolean} value
* @return {!proto.api.UplinkFrameLog} returns this
*/
proto.api.UplinkFrameLog.prototype.setPlaintextFrmPayload = function(value) {
return jspb.Message.setProto3BooleanField(this, 9, value);
};
@ -538,7 +568,8 @@ proto.api.DownlinkFrameLog.toObject = function(includeInstance, msg) {
mType: jspb.Message.getFieldWithDefault(msg, 6, 0),
devAddr: jspb.Message.getFieldWithDefault(msg, 7, ""),
devEui: jspb.Message.getFieldWithDefault(msg, 8, ""),
plaintextMacCommands: jspb.Message.getBooleanFieldWithDefault(msg, 9, false)
plaintextFOpts: jspb.Message.getBooleanFieldWithDefault(msg, 9, false),
plaintextFrmPayload: jspb.Message.getBooleanFieldWithDefault(msg, 10, false)
};
if (includeInstance) {
@ -611,7 +642,11 @@ proto.api.DownlinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
break;
case 9:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextMacCommands(value);
msg.setPlaintextFOpts(value);
break;
case 10:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextFrmPayload(value);
break;
default:
reader.skipField();
@ -700,13 +735,20 @@ proto.api.DownlinkFrameLog.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getPlaintextMacCommands();
f = message.getPlaintextFOpts();
if (f) {
writer.writeBool(
9,
f
);
}
f = message.getPlaintextFrmPayload();
if (f) {
writer.writeBool(
10,
f
);
}
};
@ -917,10 +959,10 @@ proto.api.DownlinkFrameLog.prototype.setDevEui = function(value) {
/**
* optional bool plaintext_mac_commands = 9;
* optional bool plaintext_f_opts = 9;
* @return {boolean}
*/
proto.api.DownlinkFrameLog.prototype.getPlaintextMacCommands = function() {
proto.api.DownlinkFrameLog.prototype.getPlaintextFOpts = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 9, false));
};
@ -929,9 +971,27 @@ proto.api.DownlinkFrameLog.prototype.getPlaintextMacCommands = function() {
* @param {boolean} value
* @return {!proto.api.DownlinkFrameLog} returns this
*/
proto.api.DownlinkFrameLog.prototype.setPlaintextMacCommands = function(value) {
proto.api.DownlinkFrameLog.prototype.setPlaintextFOpts = function(value) {
return jspb.Message.setProto3BooleanField(this, 9, value);
};
/**
* optional bool plaintext_frm_payload = 10;
* @return {boolean}
*/
proto.api.DownlinkFrameLog.prototype.getPlaintextFrmPayload = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 10, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DownlinkFrameLog} returns this
*/
proto.api.DownlinkFrameLog.prototype.setPlaintextFrmPayload = function(value) {
return jspb.Message.setProto3BooleanField(this, 10, value);
};
goog.object.extend(exports, proto.api);

68
api/grpc-web/api/relay_grpc_web_pb.d.ts vendored Normal file
View File

@ -0,0 +1,68 @@
import * as grpcWeb from 'grpc-web';
import * as api_relay_pb from '../api/relay_pb';
import * as google_protobuf_empty_pb from 'google-protobuf/google/protobuf/empty_pb';
export class RelayServiceClient {
constructor (hostname: string,
credentials?: null | { [index: string]: string; },
options?: null | { [index: string]: any; });
list(
request: api_relay_pb.ListRelaysRequest,
metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.RpcError,
response: api_relay_pb.ListRelaysResponse) => void
): grpcWeb.ClientReadableStream<api_relay_pb.ListRelaysResponse>;
addDevice(
request: api_relay_pb.AddRelayDeviceRequest,
metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.RpcError,
response: google_protobuf_empty_pb.Empty) => void
): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>;
removeDevice(
request: api_relay_pb.RemoveRelayDeviceRequest,
metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.RpcError,
response: google_protobuf_empty_pb.Empty) => void
): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>;
listDevices(
request: api_relay_pb.ListRelayDevicesRequest,
metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.RpcError,
response: api_relay_pb.ListRelayDevicesResponse) => void
): grpcWeb.ClientReadableStream<api_relay_pb.ListRelayDevicesResponse>;
}
export class RelayServicePromiseClient {
constructor (hostname: string,
credentials?: null | { [index: string]: string; },
options?: null | { [index: string]: any; });
list(
request: api_relay_pb.ListRelaysRequest,
metadata?: grpcWeb.Metadata
): Promise<api_relay_pb.ListRelaysResponse>;
addDevice(
request: api_relay_pb.AddRelayDeviceRequest,
metadata?: grpcWeb.Metadata
): Promise<google_protobuf_empty_pb.Empty>;
removeDevice(
request: api_relay_pb.RemoveRelayDeviceRequest,
metadata?: grpcWeb.Metadata
): Promise<google_protobuf_empty_pb.Empty>;
listDevices(
request: api_relay_pb.ListRelayDevicesRequest,
metadata?: grpcWeb.Metadata
): Promise<api_relay_pb.ListRelayDevicesResponse>;
}

328
api/grpc-web/api/relay_grpc_web_pb.js vendored Normal file
View File

@ -0,0 +1,328 @@
/**
* @fileoverview gRPC-Web generated client stub for api
* @enhanceable
* @public
*/
// Code generated by protoc-gen-grpc-web. DO NOT EDIT.
// versions:
// protoc-gen-grpc-web v1.4.2
// protoc v3.12.4
// source: api/relay.proto
/* eslint-disable */
// @ts-nocheck
const grpc = {};
grpc.web = require('grpc-web');
var google_api_annotations_pb = require('../google/api/annotations_pb.js')
var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js')
var google_protobuf_empty_pb = require('google-protobuf/google/protobuf/empty_pb.js')
const proto = {};
proto.api = require('./relay_pb.js');
/**
* @param {string} hostname
* @param {?Object} credentials
* @param {?grpc.web.ClientOptions} options
* @constructor
* @struct
* @final
*/
proto.api.RelayServiceClient =
function(hostname, credentials, options) {
if (!options) options = {};
options.format = 'text';
/**
* @private @const {!grpc.web.GrpcWebClientBase} The client
*/
this.client_ = new grpc.web.GrpcWebClientBase(options);
/**
* @private @const {string} The hostname
*/
this.hostname_ = hostname.replace(/\/+$/, '');
};
/**
* @param {string} hostname
* @param {?Object} credentials
* @param {?grpc.web.ClientOptions} options
* @constructor
* @struct
* @final
*/
proto.api.RelayServicePromiseClient =
function(hostname, credentials, options) {
if (!options) options = {};
options.format = 'text';
/**
* @private @const {!grpc.web.GrpcWebClientBase} The client
*/
this.client_ = new grpc.web.GrpcWebClientBase(options);
/**
* @private @const {string} The hostname
*/
this.hostname_ = hostname.replace(/\/+$/, '');
};
/**
* @const
* @type {!grpc.web.MethodDescriptor<
* !proto.api.ListRelaysRequest,
* !proto.api.ListRelaysResponse>}
*/
const methodDescriptor_RelayService_List = new grpc.web.MethodDescriptor(
'/api.RelayService/List',
grpc.web.MethodType.UNARY,
proto.api.ListRelaysRequest,
proto.api.ListRelaysResponse,
/**
* @param {!proto.api.ListRelaysRequest} request
* @return {!Uint8Array}
*/
function(request) {
return request.serializeBinary();
},
proto.api.ListRelaysResponse.deserializeBinary
);
/**
* @param {!proto.api.ListRelaysRequest} request The
* request proto
* @param {?Object<string, string>} metadata User defined
* call metadata
* @param {function(?grpc.web.RpcError, ?proto.api.ListRelaysResponse)}
* callback The callback function(error, response)
* @return {!grpc.web.ClientReadableStream<!proto.api.ListRelaysResponse>|undefined}
* The XHR Node Readable Stream
*/
proto.api.RelayServiceClient.prototype.list =
function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ +
'/api.RelayService/List',
request,
metadata || {},
methodDescriptor_RelayService_List,
callback);
};
/**
* @param {!proto.api.ListRelaysRequest} request The
* request proto
* @param {?Object<string, string>=} metadata User defined
* call metadata
* @return {!Promise<!proto.api.ListRelaysResponse>}
* Promise that resolves to the response
*/
proto.api.RelayServicePromiseClient.prototype.list =
function(request, metadata) {
return this.client_.unaryCall(this.hostname_ +
'/api.RelayService/List',
request,
metadata || {},
methodDescriptor_RelayService_List);
};
/**
* @const
* @type {!grpc.web.MethodDescriptor<
* !proto.api.AddRelayDeviceRequest,
* !proto.google.protobuf.Empty>}
*/
const methodDescriptor_RelayService_AddDevice = new grpc.web.MethodDescriptor(
'/api.RelayService/AddDevice',
grpc.web.MethodType.UNARY,
proto.api.AddRelayDeviceRequest,
google_protobuf_empty_pb.Empty,
/**
* @param {!proto.api.AddRelayDeviceRequest} request
* @return {!Uint8Array}
*/
function(request) {
return request.serializeBinary();
},
google_protobuf_empty_pb.Empty.deserializeBinary
);
/**
* @param {!proto.api.AddRelayDeviceRequest} request The
* request proto
* @param {?Object<string, string>} metadata User defined
* call metadata
* @param {function(?grpc.web.RpcError, ?proto.google.protobuf.Empty)}
* callback The callback function(error, response)
* @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined}
* The XHR Node Readable Stream
*/
proto.api.RelayServiceClient.prototype.addDevice =
function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ +
'/api.RelayService/AddDevice',
request,
metadata || {},
methodDescriptor_RelayService_AddDevice,
callback);
};
/**
* @param {!proto.api.AddRelayDeviceRequest} request The
* request proto
* @param {?Object<string, string>=} metadata User defined
* call metadata
* @return {!Promise<!proto.google.protobuf.Empty>}
* Promise that resolves to the response
*/
proto.api.RelayServicePromiseClient.prototype.addDevice =
function(request, metadata) {
return this.client_.unaryCall(this.hostname_ +
'/api.RelayService/AddDevice',
request,
metadata || {},
methodDescriptor_RelayService_AddDevice);
};
/**
* @const
* @type {!grpc.web.MethodDescriptor<
* !proto.api.RemoveRelayDeviceRequest,
* !proto.google.protobuf.Empty>}
*/
const methodDescriptor_RelayService_RemoveDevice = new grpc.web.MethodDescriptor(
'/api.RelayService/RemoveDevice',
grpc.web.MethodType.UNARY,
proto.api.RemoveRelayDeviceRequest,
google_protobuf_empty_pb.Empty,
/**
* @param {!proto.api.RemoveRelayDeviceRequest} request
* @return {!Uint8Array}
*/
function(request) {
return request.serializeBinary();
},
google_protobuf_empty_pb.Empty.deserializeBinary
);
/**
* @param {!proto.api.RemoveRelayDeviceRequest} request The
* request proto
* @param {?Object<string, string>} metadata User defined
* call metadata
* @param {function(?grpc.web.RpcError, ?proto.google.protobuf.Empty)}
* callback The callback function(error, response)
* @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined}
* The XHR Node Readable Stream
*/
proto.api.RelayServiceClient.prototype.removeDevice =
function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ +
'/api.RelayService/RemoveDevice',
request,
metadata || {},
methodDescriptor_RelayService_RemoveDevice,
callback);
};
/**
* @param {!proto.api.RemoveRelayDeviceRequest} request The
* request proto
* @param {?Object<string, string>=} metadata User defined
* call metadata
* @return {!Promise<!proto.google.protobuf.Empty>}
* Promise that resolves to the response
*/
proto.api.RelayServicePromiseClient.prototype.removeDevice =
function(request, metadata) {
return this.client_.unaryCall(this.hostname_ +
'/api.RelayService/RemoveDevice',
request,
metadata || {},
methodDescriptor_RelayService_RemoveDevice);
};
/**
* @const
* @type {!grpc.web.MethodDescriptor<
* !proto.api.ListRelayDevicesRequest,
* !proto.api.ListRelayDevicesResponse>}
*/
const methodDescriptor_RelayService_ListDevices = new grpc.web.MethodDescriptor(
'/api.RelayService/ListDevices',
grpc.web.MethodType.UNARY,
proto.api.ListRelayDevicesRequest,
proto.api.ListRelayDevicesResponse,
/**
* @param {!proto.api.ListRelayDevicesRequest} request
* @return {!Uint8Array}
*/
function(request) {
return request.serializeBinary();
},
proto.api.ListRelayDevicesResponse.deserializeBinary
);
/**
* @param {!proto.api.ListRelayDevicesRequest} request The
* request proto
* @param {?Object<string, string>} metadata User defined
* call metadata
* @param {function(?grpc.web.RpcError, ?proto.api.ListRelayDevicesResponse)}
* callback The callback function(error, response)
* @return {!grpc.web.ClientReadableStream<!proto.api.ListRelayDevicesResponse>|undefined}
* The XHR Node Readable Stream
*/
proto.api.RelayServiceClient.prototype.listDevices =
function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ +
'/api.RelayService/ListDevices',
request,
metadata || {},
methodDescriptor_RelayService_ListDevices,
callback);
};
/**
* @param {!proto.api.ListRelayDevicesRequest} request The
* request proto
* @param {?Object<string, string>=} metadata User defined
* call metadata
* @return {!Promise<!proto.api.ListRelayDevicesResponse>}
* Promise that resolves to the response
*/
proto.api.RelayServicePromiseClient.prototype.listDevices =
function(request, metadata) {
return this.client_.unaryCall(this.hostname_ +
'/api.RelayService/ListDevices',
request,
metadata || {},
methodDescriptor_RelayService_ListDevices);
};
module.exports = proto.api;

201
api/grpc-web/api/relay_pb.d.ts vendored Normal file
View File

@ -0,0 +1,201 @@
import * as jspb from 'google-protobuf'
import * as google_api_annotations_pb from '../google/api/annotations_pb';
import * as google_protobuf_timestamp_pb from 'google-protobuf/google/protobuf/timestamp_pb';
import * as google_protobuf_empty_pb from 'google-protobuf/google/protobuf/empty_pb';
export class RelayListItem extends jspb.Message {
getDevEui(): string;
setDevEui(value: string): RelayListItem;
getName(): string;
setName(value: string): RelayListItem;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): RelayListItem.AsObject;
static toObject(includeInstance: boolean, msg: RelayListItem): RelayListItem.AsObject;
static serializeBinaryToWriter(message: RelayListItem, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): RelayListItem;
static deserializeBinaryFromReader(message: RelayListItem, reader: jspb.BinaryReader): RelayListItem;
}
export namespace RelayListItem {
export type AsObject = {
devEui: string,
name: string,
}
}
export class ListRelaysRequest extends jspb.Message {
getLimit(): number;
setLimit(value: number): ListRelaysRequest;
getOffset(): number;
setOffset(value: number): ListRelaysRequest;
getApplicationId(): string;
setApplicationId(value: string): ListRelaysRequest;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ListRelaysRequest.AsObject;
static toObject(includeInstance: boolean, msg: ListRelaysRequest): ListRelaysRequest.AsObject;
static serializeBinaryToWriter(message: ListRelaysRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): ListRelaysRequest;
static deserializeBinaryFromReader(message: ListRelaysRequest, reader: jspb.BinaryReader): ListRelaysRequest;
}
export namespace ListRelaysRequest {
export type AsObject = {
limit: number,
offset: number,
applicationId: string,
}
}
export class ListRelaysResponse extends jspb.Message {
getTotalCount(): number;
setTotalCount(value: number): ListRelaysResponse;
getResultList(): Array<RelayListItem>;
setResultList(value: Array<RelayListItem>): ListRelaysResponse;
clearResultList(): ListRelaysResponse;
addResult(value?: RelayListItem, index?: number): RelayListItem;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ListRelaysResponse.AsObject;
static toObject(includeInstance: boolean, msg: ListRelaysResponse): ListRelaysResponse.AsObject;
static serializeBinaryToWriter(message: ListRelaysResponse, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): ListRelaysResponse;
static deserializeBinaryFromReader(message: ListRelaysResponse, reader: jspb.BinaryReader): ListRelaysResponse;
}
export namespace ListRelaysResponse {
export type AsObject = {
totalCount: number,
resultList: Array<RelayListItem.AsObject>,
}
}
export class AddRelayDeviceRequest extends jspb.Message {
getRelayDevEui(): string;
setRelayDevEui(value: string): AddRelayDeviceRequest;
getDeviceDevEui(): string;
setDeviceDevEui(value: string): AddRelayDeviceRequest;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): AddRelayDeviceRequest.AsObject;
static toObject(includeInstance: boolean, msg: AddRelayDeviceRequest): AddRelayDeviceRequest.AsObject;
static serializeBinaryToWriter(message: AddRelayDeviceRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): AddRelayDeviceRequest;
static deserializeBinaryFromReader(message: AddRelayDeviceRequest, reader: jspb.BinaryReader): AddRelayDeviceRequest;
}
export namespace AddRelayDeviceRequest {
export type AsObject = {
relayDevEui: string,
deviceDevEui: string,
}
}
export class RemoveRelayDeviceRequest extends jspb.Message {
getRelayDevEui(): string;
setRelayDevEui(value: string): RemoveRelayDeviceRequest;
getDeviceDevEui(): string;
setDeviceDevEui(value: string): RemoveRelayDeviceRequest;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): RemoveRelayDeviceRequest.AsObject;
static toObject(includeInstance: boolean, msg: RemoveRelayDeviceRequest): RemoveRelayDeviceRequest.AsObject;
static serializeBinaryToWriter(message: RemoveRelayDeviceRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): RemoveRelayDeviceRequest;
static deserializeBinaryFromReader(message: RemoveRelayDeviceRequest, reader: jspb.BinaryReader): RemoveRelayDeviceRequest;
}
export namespace RemoveRelayDeviceRequest {
export type AsObject = {
relayDevEui: string,
deviceDevEui: string,
}
}
export class ListRelayDevicesRequest extends jspb.Message {
getLimit(): number;
setLimit(value: number): ListRelayDevicesRequest;
getOffset(): number;
setOffset(value: number): ListRelayDevicesRequest;
getRelayDevEui(): string;
setRelayDevEui(value: string): ListRelayDevicesRequest;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ListRelayDevicesRequest.AsObject;
static toObject(includeInstance: boolean, msg: ListRelayDevicesRequest): ListRelayDevicesRequest.AsObject;
static serializeBinaryToWriter(message: ListRelayDevicesRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): ListRelayDevicesRequest;
static deserializeBinaryFromReader(message: ListRelayDevicesRequest, reader: jspb.BinaryReader): ListRelayDevicesRequest;
}
export namespace ListRelayDevicesRequest {
export type AsObject = {
limit: number,
offset: number,
relayDevEui: string,
}
}
export class RelayDeviceListItem extends jspb.Message {
getDevEui(): string;
setDevEui(value: string): RelayDeviceListItem;
getCreatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
setCreatedAt(value?: google_protobuf_timestamp_pb.Timestamp): RelayDeviceListItem;
hasCreatedAt(): boolean;
clearCreatedAt(): RelayDeviceListItem;
getName(): string;
setName(value: string): RelayDeviceListItem;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): RelayDeviceListItem.AsObject;
static toObject(includeInstance: boolean, msg: RelayDeviceListItem): RelayDeviceListItem.AsObject;
static serializeBinaryToWriter(message: RelayDeviceListItem, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): RelayDeviceListItem;
static deserializeBinaryFromReader(message: RelayDeviceListItem, reader: jspb.BinaryReader): RelayDeviceListItem;
}
export namespace RelayDeviceListItem {
export type AsObject = {
devEui: string,
createdAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
name: string,
}
}
export class ListRelayDevicesResponse extends jspb.Message {
getTotalCount(): number;
setTotalCount(value: number): ListRelayDevicesResponse;
getResultList(): Array<RelayDeviceListItem>;
setResultList(value: Array<RelayDeviceListItem>): ListRelayDevicesResponse;
clearResultList(): ListRelayDevicesResponse;
addResult(value?: RelayDeviceListItem, index?: number): RelayDeviceListItem;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ListRelayDevicesResponse.AsObject;
static toObject(includeInstance: boolean, msg: ListRelayDevicesResponse): ListRelayDevicesResponse.AsObject;
static serializeBinaryToWriter(message: ListRelayDevicesResponse, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): ListRelayDevicesResponse;
static deserializeBinaryFromReader(message: ListRelayDevicesResponse, reader: jspb.BinaryReader): ListRelayDevicesResponse;
}
export namespace ListRelayDevicesResponse {
export type AsObject = {
totalCount: number,
resultList: Array<RelayDeviceListItem.AsObject>,
}
}

1648
api/grpc-web/api/relay_pb.js vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@ -30,6 +30,9 @@ export class Tenant extends jspb.Message {
getPrivateGatewaysDown(): boolean;
setPrivateGatewaysDown(value: boolean): Tenant;
getTagsMap(): jspb.Map<string, string>;
clearTagsMap(): Tenant;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Tenant.AsObject;
static toObject(includeInstance: boolean, msg: Tenant): Tenant.AsObject;
@ -48,6 +51,7 @@ export namespace Tenant {
maxDeviceCount: number,
privateGatewaysUp: boolean,
privateGatewaysDown: boolean,
tagsMap: Array<[string, string]>,
}
}

View File

@ -475,7 +475,8 @@ proto.api.Tenant.toObject = function(includeInstance, msg) {
maxGatewayCount: jspb.Message.getFieldWithDefault(msg, 5, 0),
maxDeviceCount: jspb.Message.getFieldWithDefault(msg, 6, 0),
privateGatewaysUp: jspb.Message.getBooleanFieldWithDefault(msg, 7, false),
privateGatewaysDown: jspb.Message.getBooleanFieldWithDefault(msg, 8, false)
privateGatewaysDown: jspb.Message.getBooleanFieldWithDefault(msg, 8, false),
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : []
};
if (includeInstance) {
@ -544,6 +545,12 @@ proto.api.Tenant.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {boolean} */ (reader.readBool());
msg.setPrivateGatewaysDown(value);
break;
case 9:
var value = msg.getTagsMap();
reader.readMessage(value, function(message, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
default:
reader.skipField();
break;
@ -629,6 +636,10 @@ proto.api.Tenant.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getTagsMap(true);
if (f && f.getLength() > 0) {
f.serializeBinary(9, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
};
@ -776,6 +787,28 @@ proto.api.Tenant.prototype.setPrivateGatewaysDown = function(value) {
};
/**
* map<string, string> tags = 9;
* @param {boolean=} opt_noLazyCreate Do not create the map if
* empty, instead returning `undefined`
* @return {!jspb.Map<string,string>}
*/
proto.api.Tenant.prototype.getTagsMap = function(opt_noLazyCreate) {
return /** @type {!jspb.Map<string,string>} */ (
jspb.Message.getMapField(this, 9, opt_noLazyCreate,
null));
};
/**
* Clears values from the map. The map will be non-null.
* @return {!proto.api.Tenant} returns this
*/
proto.api.Tenant.prototype.clearTagsMap = function() {
this.getTagsMap().clear();
return this;};

View File

@ -185,3 +185,8 @@ export enum MetricKind {
ABSOLUTE = 1,
GAUGE = 2,
}
export enum DeviceClass {
CLASS_A = 0,
CLASS_B = 1,
CLASS_C = 2,
}

View File

@ -15,6 +15,7 @@ var global = Function('return this')();
var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js');
goog.object.extend(proto, google_protobuf_timestamp_pb);
goog.exportSymbol('proto.common.Aggregation', null, global);
goog.exportSymbol('proto.common.DeviceClass', null, global);
goog.exportSymbol('proto.common.KeyEnvelope', null, global);
goog.exportSymbol('proto.common.Location', null, global);
goog.exportSymbol('proto.common.LocationSource', null, global);
@ -1101,4 +1102,13 @@ proto.common.MetricKind = {
GAUGE: 2
};
/**
* @enum {number}
*/
proto.common.DeviceClass = {
CLASS_A: 0,
CLASS_B: 1,
CLASS_C: 2
};
goog.object.extend(exports, proto.common);

View File

@ -50,6 +50,9 @@ export class BackendRule extends jspb.Message {
getProtocol(): string;
setProtocol(value: string): BackendRule;
getOverridesByRequestProtocolMap(): jspb.Map<string, BackendRule>;
clearOverridesByRequestProtocolMap(): BackendRule;
getAuthenticationCase(): BackendRule.AuthenticationCase;
serializeBinary(): Uint8Array;
@ -71,6 +74,7 @@ export namespace BackendRule {
jwtAudience: string,
disableAuth: boolean,
protocol: string,
overridesByRequestProtocolMap: Array<[string, BackendRule.AsObject]>,
}
export enum PathTranslation {

View File

@ -284,7 +284,8 @@ proto.google.api.BackendRule.toObject = function(includeInstance, msg) {
pathTranslation: jspb.Message.getFieldWithDefault(msg, 6, 0),
jwtAudience: jspb.Message.getFieldWithDefault(msg, 7, ""),
disableAuth: jspb.Message.getBooleanFieldWithDefault(msg, 8, false),
protocol: jspb.Message.getFieldWithDefault(msg, 9, "")
protocol: jspb.Message.getFieldWithDefault(msg, 9, ""),
overridesByRequestProtocolMap: (f = msg.getOverridesByRequestProtocolMap()) ? f.toObject(includeInstance, proto.google.api.BackendRule.toObject) : []
};
if (includeInstance) {
@ -357,6 +358,12 @@ proto.google.api.BackendRule.deserializeBinaryFromReader = function(msg, reader)
var value = /** @type {string} */ (reader.readString());
msg.setProtocol(value);
break;
case 10:
var value = msg.getOverridesByRequestProtocolMap();
reader.readMessage(value, function(message, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readMessage, proto.google.api.BackendRule.deserializeBinaryFromReader, "", new proto.google.api.BackendRule());
});
break;
default:
reader.skipField();
break;
@ -449,6 +456,10 @@ proto.google.api.BackendRule.serializeBinaryToWriter = function(message, writer)
f
);
}
f = message.getOverridesByRequestProtocolMap(true);
if (f && f.getLength() > 0) {
f.serializeBinary(10, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeMessage, proto.google.api.BackendRule.serializeBinaryToWriter);
}
};
@ -659,4 +670,26 @@ proto.google.api.BackendRule.prototype.setProtocol = function(value) {
};
/**
* map<string, BackendRule> overrides_by_request_protocol = 10;
* @param {boolean=} opt_noLazyCreate Do not create the map if
* empty, instead returning `undefined`
* @return {!jspb.Map<string,!proto.google.api.BackendRule>}
*/
proto.google.api.BackendRule.prototype.getOverridesByRequestProtocolMap = function(opt_noLazyCreate) {
return /** @type {!jspb.Map<string,!proto.google.api.BackendRule>} */ (
jspb.Message.getMapField(this, 10, opt_noLazyCreate,
proto.google.api.BackendRule));
};
/**
* Clears values from the map. The map will be non-null.
* @return {!proto.google.api.BackendRule} returns this
*/
proto.google.api.BackendRule.prototype.clearOverridesByRequestProtocolMap = function() {
this.getOverridesByRequestProtocolMap().clear();
return this;};
goog.object.extend(exports, proto.google.api);

View File

@ -137,6 +137,9 @@ export class Publishing extends jspb.Message {
clearLibrarySettingsList(): Publishing;
addLibrarySettings(value?: ClientLibrarySettings, index?: number): ClientLibrarySettings;
getProtoReferenceDocumentationUri(): string;
setProtoReferenceDocumentationUri(value: string): Publishing;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Publishing.AsObject;
static toObject(includeInstance: boolean, msg: Publishing): Publishing.AsObject;
@ -156,6 +159,7 @@ export namespace Publishing {
docTagPrefix: string,
organization: ClientLibraryOrganization,
librarySettingsList: Array<ClientLibrarySettings.AsObject>,
protoReferenceDocumentationUri: string,
}
}
@ -273,6 +277,27 @@ export class DotnetSettings extends jspb.Message {
hasCommon(): boolean;
clearCommon(): DotnetSettings;
getRenamedServicesMap(): jspb.Map<string, string>;
clearRenamedServicesMap(): DotnetSettings;
getRenamedResourcesMap(): jspb.Map<string, string>;
clearRenamedResourcesMap(): DotnetSettings;
getIgnoredResourcesList(): Array<string>;
setIgnoredResourcesList(value: Array<string>): DotnetSettings;
clearIgnoredResourcesList(): DotnetSettings;
addIgnoredResources(value: string, index?: number): DotnetSettings;
getForcedNamespaceAliasesList(): Array<string>;
setForcedNamespaceAliasesList(value: Array<string>): DotnetSettings;
clearForcedNamespaceAliasesList(): DotnetSettings;
addForcedNamespaceAliases(value: string, index?: number): DotnetSettings;
getHandwrittenSignaturesList(): Array<string>;
setHandwrittenSignaturesList(value: Array<string>): DotnetSettings;
clearHandwrittenSignaturesList(): DotnetSettings;
addHandwrittenSignatures(value: string, index?: number): DotnetSettings;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DotnetSettings.AsObject;
static toObject(includeInstance: boolean, msg: DotnetSettings): DotnetSettings.AsObject;
@ -284,6 +309,11 @@ export class DotnetSettings extends jspb.Message {
export namespace DotnetSettings {
export type AsObject = {
common?: CommonLanguageSettings.AsObject,
renamedServicesMap: Array<[string, string]>,
renamedResourcesMap: Array<[string, string]>,
ignoredResourcesList: Array<string>,
forcedNamespaceAliasesList: Array<string>,
handwrittenSignaturesList: Array<string>,
}
}
@ -394,6 +424,9 @@ export enum ClientLibraryOrganization {
ADS = 2,
PHOTOS = 3,
STREET_VIEW = 4,
SHOPPING = 5,
GEO = 6,
GENERATIVE_AI = 7,
}
export enum ClientLibraryDestination {
CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0,

View File

@ -215,7 +215,7 @@ if (goog.DEBUG && !COMPILED) {
* @constructor
*/
proto.google.api.DotnetSettings = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
jspb.Message.initialize(this, opt_data, 0, -1, proto.google.api.DotnetSettings.repeatedFields_, null);
};
goog.inherits(proto.google.api.DotnetSettings, jspb.Message);
if (goog.DEBUG && !COMPILED) {
@ -1142,7 +1142,8 @@ proto.google.api.Publishing.toObject = function(includeInstance, msg) {
docTagPrefix: jspb.Message.getFieldWithDefault(msg, 106, ""),
organization: jspb.Message.getFieldWithDefault(msg, 107, 0),
librarySettingsList: jspb.Message.toObjectList(msg.getLibrarySettingsList(),
proto.google.api.ClientLibrarySettings.toObject, includeInstance)
proto.google.api.ClientLibrarySettings.toObject, includeInstance),
protoReferenceDocumentationUri: jspb.Message.getFieldWithDefault(msg, 110, "")
};
if (includeInstance) {
@ -1217,6 +1218,10 @@ proto.google.api.Publishing.deserializeBinaryFromReader = function(msg, reader)
reader.readMessage(value,proto.google.api.ClientLibrarySettings.deserializeBinaryFromReader);
msg.addLibrarySettings(value);
break;
case 110:
var value = /** @type {string} */ (reader.readString());
msg.setProtoReferenceDocumentationUri(value);
break;
default:
reader.skipField();
break;
@ -1311,6 +1316,13 @@ proto.google.api.Publishing.serializeBinaryToWriter = function(message, writer)
proto.google.api.ClientLibrarySettings.serializeBinaryToWriter
);
}
f = message.getProtoReferenceDocumentationUri();
if (f.length > 0) {
writer.writeString(
110,
f
);
}
};
@ -1535,6 +1547,24 @@ proto.google.api.Publishing.prototype.clearLibrarySettingsList = function() {
};
/**
* optional string proto_reference_documentation_uri = 110;
* @return {string}
*/
proto.google.api.Publishing.prototype.getProtoReferenceDocumentationUri = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 110, ""));
};
/**
* @param {string} value
* @return {!proto.google.api.Publishing} returns this
*/
proto.google.api.Publishing.prototype.setProtoReferenceDocumentationUri = function(value) {
return jspb.Message.setProto3StringField(this, 110, value);
};
@ -2354,6 +2384,13 @@ proto.google.api.NodeSettings.prototype.hasCommon = function() {
/**
* List of repeated fields within this message type.
* @private {!Array<number>}
* @const
*/
proto.google.api.DotnetSettings.repeatedFields_ = [4,5,6];
if (jspb.Message.GENERATE_TO_OBJECT) {
@ -2385,7 +2422,12 @@ proto.google.api.DotnetSettings.prototype.toObject = function(opt_includeInstanc
*/
proto.google.api.DotnetSettings.toObject = function(includeInstance, msg) {
var f, obj = {
common: (f = msg.getCommon()) && proto.google.api.CommonLanguageSettings.toObject(includeInstance, f)
common: (f = msg.getCommon()) && proto.google.api.CommonLanguageSettings.toObject(includeInstance, f),
renamedServicesMap: (f = msg.getRenamedServicesMap()) ? f.toObject(includeInstance, undefined) : [],
renamedResourcesMap: (f = msg.getRenamedResourcesMap()) ? f.toObject(includeInstance, undefined) : [],
ignoredResourcesList: (f = jspb.Message.getRepeatedField(msg, 4)) == null ? undefined : f,
forcedNamespaceAliasesList: (f = jspb.Message.getRepeatedField(msg, 5)) == null ? undefined : f,
handwrittenSignaturesList: (f = jspb.Message.getRepeatedField(msg, 6)) == null ? undefined : f
};
if (includeInstance) {
@ -2427,6 +2469,30 @@ proto.google.api.DotnetSettings.deserializeBinaryFromReader = function(msg, read
reader.readMessage(value,proto.google.api.CommonLanguageSettings.deserializeBinaryFromReader);
msg.setCommon(value);
break;
case 2:
var value = msg.getRenamedServicesMap();
reader.readMessage(value, function(message, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
case 3:
var value = msg.getRenamedResourcesMap();
reader.readMessage(value, function(message, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
case 4:
var value = /** @type {string} */ (reader.readString());
msg.addIgnoredResources(value);
break;
case 5:
var value = /** @type {string} */ (reader.readString());
msg.addForcedNamespaceAliases(value);
break;
case 6:
var value = /** @type {string} */ (reader.readString());
msg.addHandwrittenSignatures(value);
break;
default:
reader.skipField();
break;
@ -2464,6 +2530,35 @@ proto.google.api.DotnetSettings.serializeBinaryToWriter = function(message, writ
proto.google.api.CommonLanguageSettings.serializeBinaryToWriter
);
}
f = message.getRenamedServicesMap(true);
if (f && f.getLength() > 0) {
f.serializeBinary(2, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
f = message.getRenamedResourcesMap(true);
if (f && f.getLength() > 0) {
f.serializeBinary(3, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
f = message.getIgnoredResourcesList();
if (f.length > 0) {
writer.writeRepeatedString(
4,
f
);
}
f = message.getForcedNamespaceAliasesList();
if (f.length > 0) {
writer.writeRepeatedString(
5,
f
);
}
f = message.getHandwrittenSignaturesList();
if (f.length > 0) {
writer.writeRepeatedString(
6,
f
);
}
};
@ -2504,6 +2599,161 @@ proto.google.api.DotnetSettings.prototype.hasCommon = function() {
};
/**
* map<string, string> renamed_services = 2;
* @param {boolean=} opt_noLazyCreate Do not create the map if
* empty, instead returning `undefined`
* @return {!jspb.Map<string,string>}
*/
proto.google.api.DotnetSettings.prototype.getRenamedServicesMap = function(opt_noLazyCreate) {
return /** @type {!jspb.Map<string,string>} */ (
jspb.Message.getMapField(this, 2, opt_noLazyCreate,
null));
};
/**
* Clears values from the map. The map will be non-null.
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.clearRenamedServicesMap = function() {
this.getRenamedServicesMap().clear();
return this;};
/**
* map<string, string> renamed_resources = 3;
* @param {boolean=} opt_noLazyCreate Do not create the map if
* empty, instead returning `undefined`
* @return {!jspb.Map<string,string>}
*/
proto.google.api.DotnetSettings.prototype.getRenamedResourcesMap = function(opt_noLazyCreate) {
return /** @type {!jspb.Map<string,string>} */ (
jspb.Message.getMapField(this, 3, opt_noLazyCreate,
null));
};
/**
* Clears values from the map. The map will be non-null.
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.clearRenamedResourcesMap = function() {
this.getRenamedResourcesMap().clear();
return this;};
/**
* repeated string ignored_resources = 4;
* @return {!Array<string>}
*/
proto.google.api.DotnetSettings.prototype.getIgnoredResourcesList = function() {
return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 4));
};
/**
* @param {!Array<string>} value
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.setIgnoredResourcesList = function(value) {
return jspb.Message.setField(this, 4, value || []);
};
/**
* @param {string} value
* @param {number=} opt_index
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.addIgnoredResources = function(value, opt_index) {
return jspb.Message.addToRepeatedField(this, 4, value, opt_index);
};
/**
* Clears the list making it empty but non-null.
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.clearIgnoredResourcesList = function() {
return this.setIgnoredResourcesList([]);
};
/**
* repeated string forced_namespace_aliases = 5;
* @return {!Array<string>}
*/
proto.google.api.DotnetSettings.prototype.getForcedNamespaceAliasesList = function() {
return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 5));
};
/**
* @param {!Array<string>} value
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.setForcedNamespaceAliasesList = function(value) {
return jspb.Message.setField(this, 5, value || []);
};
/**
* @param {string} value
* @param {number=} opt_index
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.addForcedNamespaceAliases = function(value, opt_index) {
return jspb.Message.addToRepeatedField(this, 5, value, opt_index);
};
/**
* Clears the list making it empty but non-null.
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.clearForcedNamespaceAliasesList = function() {
return this.setForcedNamespaceAliasesList([]);
};
/**
* repeated string handwritten_signatures = 6;
* @return {!Array<string>}
*/
proto.google.api.DotnetSettings.prototype.getHandwrittenSignaturesList = function() {
return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 6));
};
/**
* @param {!Array<string>} value
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.setHandwrittenSignaturesList = function(value) {
return jspb.Message.setField(this, 6, value || []);
};
/**
* @param {string} value
* @param {number=} opt_index
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.addHandwrittenSignatures = function(value, opt_index) {
return jspb.Message.addToRepeatedField(this, 6, value, opt_index);
};
/**
* Clears the list making it empty but non-null.
* @return {!proto.google.api.DotnetSettings} returns this
*/
proto.google.api.DotnetSettings.prototype.clearHandwrittenSignaturesList = function() {
return this.setHandwrittenSignaturesList([]);
};
@ -3278,7 +3528,10 @@ proto.google.api.ClientLibraryOrganization = {
CLOUD: 1,
ADS: 2,
PHOTOS: 3,
STREET_VIEW: 4
STREET_VIEW: 4,
SHOPPING: 5,
GEO: 6,
GENERATIVE_AI: 7
};
/**

View File

@ -31,4 +31,6 @@ export enum ErrorReason {
SYSTEM_PARAMETER_UNSUPPORTED = 26,
ORG_RESTRICTION_VIOLATION = 27,
ORG_RESTRICTION_HEADER_INVALID = 28,
SERVICE_NOT_VISIBLE = 29,
GCP_SUSPENDED = 30,
}

View File

@ -44,7 +44,9 @@ proto.google.api.ErrorReason = {
RESOURCE_USAGE_RESTRICTION_VIOLATED: 25,
SYSTEM_PARAMETER_UNSUPPORTED: 26,
ORG_RESTRICTION_VIOLATION: 27,
ORG_RESTRICTION_HEADER_INVALID: 28
ORG_RESTRICTION_HEADER_INVALID: 28,
SERVICE_NOT_VISIBLE: 29,
GCP_SUSPENDED: 30
};
goog.object.extend(exports, proto.google.api);

View File

@ -1,12 +1,12 @@
{
"name": "@chirpstack/chirpstack-api-grpc-web",
"version": "4.3.0-test.2",
"version": "4.6.0-test.1",
"description": "Chirpstack gRPC-web API",
"license": "MIT",
"devDependencies": {
"grpc-tools": "^1.12.3",
"grpc-tools": "^1.12.4",
"ts-protoc-gen": "^0.15.0",
"typescript": "^4.9.4"
"typescript": "^5.1.6"
},
"dependencies": {
"@types/google-protobuf": "^3.15.6",

View File

@ -3,9 +3,9 @@
"@mapbox/node-pre-gyp@^1.0.5":
version "1.0.10"
resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz#8e6735ccebbb1581e5a7e652244cadc8a844d03c"
integrity sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA==
version "1.0.11"
resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz#417db42b7f5323d79e93b34a6d7a2a12c0df43fa"
integrity sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==
dependencies:
detect-libc "^2.0.0"
https-proxy-agent "^5.0.0"
@ -98,9 +98,9 @@ delegates@^1.0.0:
integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==
detect-libc@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd"
integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==
version "2.0.2"
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d"
integrity sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==
emoji-regex@^8.0.0:
version "8.0.0"
@ -151,10 +151,10 @@ google-protobuf@^3.15.5, google-protobuf@^3.21.2:
resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.21.2.tgz#4580a2bea8bbb291ee579d1fefb14d6fa3070ea4"
integrity sha512-3MSOYFO5U9mPGikIYCzK0SaThypfGgS6bHqrUGXG3DPHCrb+txNqeEcns1W0lkGfk0rCyNXm7xB9rMxnCiZOoA==
grpc-tools@^1.12.3:
version "1.12.3"
resolved "https://registry.yarnpkg.com/grpc-tools/-/grpc-tools-1.12.3.tgz#bedbb880e564a52b192d693300280ed7ab45e61d"
integrity sha512-KJgk65dbGqkMuj0xiuT5uk45GcqrFfWTSqpk6Ktd0Ds2cEe9QtPQG/uWCGk185ShXCdgYFLRwfh+FyjQ3nlBNw==
grpc-tools@^1.12.4:
version "1.12.4"
resolved "https://registry.yarnpkg.com/grpc-tools/-/grpc-tools-1.12.4.tgz#a044c9e8157941033ea7a5f144c2dc9dc4501de4"
integrity sha512-5+mLAJJma3BjnW/KQp6JBjUMgvu7Mu3dBvBPd1dcbNIb+qiR0817zDpgPjS7gRb+l/8EVNIa3cB02xI9JLToKg==
dependencies:
"@mapbox/node-pre-gyp" "^1.0.5"
@ -222,12 +222,10 @@ minipass@^3.0.0:
dependencies:
yallist "^4.0.0"
minipass@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.0.0.tgz#7cebb0f9fa7d56f0c5b17853cbe28838a8dbbd3b"
integrity sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==
dependencies:
yallist "^4.0.0"
minipass@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d"
integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==
minizlib@^2.1.1:
version "2.1.2"
@ -248,9 +246,9 @@ ms@2.1.2:
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
node-fetch@^2.6.7:
version "2.6.7"
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"
integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==
version "2.6.12"
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.12.tgz#02eb8e22074018e3d5a83016649d04df0e348fba"
integrity sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==
dependencies:
whatwg-url "^5.0.0"
@ -289,9 +287,9 @@ path-is-absolute@^1.0.0:
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
readable-stream@^3.6.0:
version "3.6.0"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
version "3.6.2"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
dependencies:
inherits "^2.0.3"
string_decoder "^1.1.1"
@ -310,14 +308,14 @@ safe-buffer@~5.2.0:
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
semver@^6.0.0:
version "6.3.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
version "6.3.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
semver@^7.3.5:
version "7.3.8"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798"
integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==
version "7.5.4"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
dependencies:
lru-cache "^6.0.0"
@ -355,13 +353,13 @@ strip-ansi@^6.0.1:
ansi-regex "^5.0.1"
tar@^6.1.11:
version "6.1.13"
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b"
integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==
version "6.1.15"
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.15.tgz#c9738b0b98845a3b344d334b8fa3041aaba53a69"
integrity sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==
dependencies:
chownr "^2.0.0"
fs-minipass "^2.0.0"
minipass "^4.0.0"
minipass "^5.0.0"
minizlib "^2.1.1"
mkdirp "^1.0.3"
yallist "^4.0.0"
@ -378,10 +376,10 @@ ts-protoc-gen@^0.15.0:
dependencies:
google-protobuf "^3.15.5"
typescript@^4.9.4:
version "4.9.4"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.4.tgz#a2a3d2756c079abda241d75f149df9d561091e78"
integrity sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==
typescript@^5.1.6:
version "5.1.6"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274"
integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
util-deprecate@^1.0.1:
version "1.0.2"

View File

@ -8,7 +8,7 @@ plugins {
}
group = "io.chirpstack"
version = "4.3.0-test.2"
version = "4.6.0-test.1"
repositories {
mavenCentral()

1
api/js/Makefile vendored
View File

@ -29,6 +29,7 @@ api:
protoc ${PROTOC_GRPC_ARGS} ../proto/api/frame_log.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/multicast_group.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/request_log.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/relay.proto
integration:
protoc ${PROTOC_ARGS} ../proto/integration/integration.proto

2
api/js/README.md vendored
View File

@ -19,5 +19,5 @@ yarn add @chirpstack/chirpstack-api
## Usage
Please refer to [https://www.chirpstack.io/chirpstack/api/js-examples.html](https://www.chirpstack.io/chirpstack/api/js-examples.html)
Please refer to [https://www.chirpstack.io/docs/chirpstack/api/js-examples.html](https://www.chirpstack.io/docs/chirpstack/api/js-examples.html)
for code examples.

View File

@ -701,7 +701,8 @@ function deserialize_google_protobuf_Empty(buffer_arg) {
}
// ApplicationService is the service providing API methods for managing applications.
// ApplicationService is the service providing API methods for managing
// applications.
var ApplicationServiceService = exports.ApplicationServiceService = {
// Create creates the given application.
create: {

View File

@ -19,6 +19,8 @@ export class Application extends jspb.Message {
getTenantId(): string;
setTenantId(value: string): void;
getTagsMap(): jspb.Map<string, string>;
clearTagsMap(): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Application.AsObject;
static toObject(includeInstance: boolean, msg: Application): Application.AsObject;
@ -35,6 +37,7 @@ export namespace Application {
name: string,
description: string,
tenantId: string,
tagsMap: Array<[string, string]>,
}
}
@ -942,15 +945,17 @@ export class LoraCloudModemGeolocationServices extends jspb.Message {
getModemEnabled(): boolean;
setModemEnabled(value: boolean): void;
getModemPort(): number;
setModemPort(value: number): void;
getGnssPort(): number;
setGnssPort(value: number): void;
clearForwardFPortsList(): void;
getForwardFPortsList(): Array<number>;
setForwardFPortsList(value: Array<number>): void;
addForwardFPorts(value: number, index?: number): number;
getGnssUseRxTime(): boolean;
setGnssUseRxTime(value: boolean): void;
getGnssUseGatewayLocation(): boolean;
setGnssUseGatewayLocation(value: boolean): void;
getParseTlv(): boolean;
setParseTlv(value: boolean): void;
@ -995,9 +1000,9 @@ export namespace LoraCloudModemGeolocationServices {
export type AsObject = {
token: string,
modemEnabled: boolean,
modemPort: number,
gnssPort: number,
forwardFPortsList: Array<number>,
gnssUseRxTime: boolean,
gnssUseGatewayLocation: boolean,
parseTlv: boolean,
geolocationBufferTtl: number,
geolocationMinBufferSize: number,
@ -1689,6 +1694,12 @@ export class IftttIntegration extends jspb.Message {
setUplinkValuesList(value: Array<string>): void;
addUplinkValues(value: string, index?: number): string;
getArbitraryJson(): boolean;
setArbitraryJson(value: boolean): void;
getEventPrefix(): string;
setEventPrefix(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): IftttIntegration.AsObject;
static toObject(includeInstance: boolean, msg: IftttIntegration): IftttIntegration.AsObject;
@ -1704,6 +1715,8 @@ export namespace IftttIntegration {
applicationId: string,
key: string,
uplinkValuesList: Array<string>,
arbitraryJson: boolean,
eventPrefix: string,
}
}

View File

@ -907,7 +907,7 @@ if (goog.DEBUG && !COMPILED) {
* @constructor
*/
proto.api.LoraCloudModemGeolocationServices = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
jspb.Message.initialize(this, opt_data, 0, -1, proto.api.LoraCloudModemGeolocationServices.repeatedFields_, null);
};
goog.inherits(proto.api.LoraCloudModemGeolocationServices, jspb.Message);
if (goog.DEBUG && !COMPILED) {
@ -1729,7 +1729,8 @@ proto.api.Application.toObject = function(includeInstance, msg) {
id: jspb.Message.getFieldWithDefault(msg, 1, ""),
name: jspb.Message.getFieldWithDefault(msg, 2, ""),
description: jspb.Message.getFieldWithDefault(msg, 3, ""),
tenantId: jspb.Message.getFieldWithDefault(msg, 4, "")
tenantId: jspb.Message.getFieldWithDefault(msg, 4, ""),
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : []
};
if (includeInstance) {
@ -1782,6 +1783,12 @@ proto.api.Application.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.setTenantId(value);
break;
case 5:
var value = msg.getTagsMap();
reader.readMessage(value, function(message, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
default:
reader.skipField();
break;
@ -1839,6 +1846,10 @@ proto.api.Application.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getTagsMap(true);
if (f && f.getLength() > 0) {
f.serializeBinary(5, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
};
@ -1914,6 +1925,28 @@ proto.api.Application.prototype.setTenantId = function(value) {
};
/**
* map<string, string> tags = 5;
* @param {boolean=} opt_noLazyCreate Do not create the map if
* empty, instead returning `undefined`
* @return {!jspb.Map<string,string>}
*/
proto.api.Application.prototype.getTagsMap = function(opt_noLazyCreate) {
return /** @type {!jspb.Map<string,string>} */ (
jspb.Message.getMapField(this, 5, opt_noLazyCreate,
null));
};
/**
* Clears values from the map. The map will be non-null.
* @return {!proto.api.Application} returns this
*/
proto.api.Application.prototype.clearTagsMap = function() {
this.getTagsMap().clear();
return this;};
@ -8074,6 +8107,13 @@ proto.api.LoraCloudIntegration.prototype.hasModemGeolocationServices = function(
/**
* List of repeated fields within this message type.
* @private {!Array<number>}
* @const
*/
proto.api.LoraCloudModemGeolocationServices.repeatedFields_ = [16];
if (jspb.Message.GENERATE_TO_OBJECT) {
@ -8107,9 +8147,9 @@ proto.api.LoraCloudModemGeolocationServices.toObject = function(includeInstance,
var f, obj = {
token: jspb.Message.getFieldWithDefault(msg, 1, ""),
modemEnabled: jspb.Message.getBooleanFieldWithDefault(msg, 2, false),
modemPort: jspb.Message.getFieldWithDefault(msg, 3, 0),
gnssPort: jspb.Message.getFieldWithDefault(msg, 4, 0),
forwardFPortsList: (f = jspb.Message.getRepeatedField(msg, 16)) == null ? undefined : f,
gnssUseRxTime: jspb.Message.getBooleanFieldWithDefault(msg, 5, false),
gnssUseGatewayLocation: jspb.Message.getBooleanFieldWithDefault(msg, 17, false),
parseTlv: jspb.Message.getBooleanFieldWithDefault(msg, 6, false),
geolocationBufferTtl: jspb.Message.getFieldWithDefault(msg, 7, 0),
geolocationMinBufferSize: jspb.Message.getFieldWithDefault(msg, 8, 0),
@ -8164,18 +8204,18 @@ proto.api.LoraCloudModemGeolocationServices.deserializeBinaryFromReader = functi
var value = /** @type {boolean} */ (reader.readBool());
msg.setModemEnabled(value);
break;
case 3:
var value = /** @type {number} */ (reader.readUint32());
msg.setModemPort(value);
break;
case 4:
var value = /** @type {number} */ (reader.readUint32());
msg.setGnssPort(value);
case 16:
var value = /** @type {!Array<number>} */ (reader.readPackedUint32());
msg.setForwardFPortsList(value);
break;
case 5:
var value = /** @type {boolean} */ (reader.readBool());
msg.setGnssUseRxTime(value);
break;
case 17:
var value = /** @type {boolean} */ (reader.readBool());
msg.setGnssUseGatewayLocation(value);
break;
case 6:
var value = /** @type {boolean} */ (reader.readBool());
msg.setParseTlv(value);
@ -8259,17 +8299,10 @@ proto.api.LoraCloudModemGeolocationServices.serializeBinaryToWriter = function(m
f
);
}
f = message.getModemPort();
if (f !== 0) {
writer.writeUint32(
3,
f
);
}
f = message.getGnssPort();
if (f !== 0) {
writer.writeUint32(
4,
f = message.getForwardFPortsList();
if (f.length > 0) {
writer.writePackedUint32(
16,
f
);
}
@ -8280,6 +8313,13 @@ proto.api.LoraCloudModemGeolocationServices.serializeBinaryToWriter = function(m
f
);
}
f = message.getGnssUseGatewayLocation();
if (f) {
writer.writeBool(
17,
f
);
}
f = message.getParseTlv();
if (f) {
writer.writeBool(
@ -8390,38 +8430,39 @@ proto.api.LoraCloudModemGeolocationServices.prototype.setModemEnabled = function
/**
* optional uint32 modem_port = 3;
* @return {number}
* repeated uint32 forward_f_ports = 16;
* @return {!Array<number>}
*/
proto.api.LoraCloudModemGeolocationServices.prototype.getModemPort = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
proto.api.LoraCloudModemGeolocationServices.prototype.getForwardFPortsList = function() {
return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 16));
};
/**
* @param {!Array<number>} value
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setForwardFPortsList = function(value) {
return jspb.Message.setField(this, 16, value || []);
};
/**
* @param {number} value
* @param {number=} opt_index
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setModemPort = function(value) {
return jspb.Message.setProto3IntField(this, 3, value);
proto.api.LoraCloudModemGeolocationServices.prototype.addForwardFPorts = function(value, opt_index) {
return jspb.Message.addToRepeatedField(this, 16, value, opt_index);
};
/**
* optional uint32 gnss_port = 4;
* @return {number}
*/
proto.api.LoraCloudModemGeolocationServices.prototype.getGnssPort = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
};
/**
* @param {number} value
* Clears the list making it empty but non-null.
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setGnssPort = function(value) {
return jspb.Message.setProto3IntField(this, 4, value);
proto.api.LoraCloudModemGeolocationServices.prototype.clearForwardFPortsList = function() {
return this.setForwardFPortsList([]);
};
@ -8443,6 +8484,24 @@ proto.api.LoraCloudModemGeolocationServices.prototype.setGnssUseRxTime = functio
};
/**
* optional bool gnss_use_gateway_location = 17;
* @return {boolean}
*/
proto.api.LoraCloudModemGeolocationServices.prototype.getGnssUseGatewayLocation = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 17, false));
};
/**
* @param {boolean} value
* @return {!proto.api.LoraCloudModemGeolocationServices} returns this
*/
proto.api.LoraCloudModemGeolocationServices.prototype.setGnssUseGatewayLocation = function(value) {
return jspb.Message.setProto3BooleanField(this, 17, value);
};
/**
* optional bool parse_tlv = 6;
* @return {boolean}
@ -13169,7 +13228,9 @@ proto.api.IftttIntegration.toObject = function(includeInstance, msg) {
var f, obj = {
applicationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
key: jspb.Message.getFieldWithDefault(msg, 2, ""),
uplinkValuesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f
uplinkValuesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f,
arbitraryJson: jspb.Message.getBooleanFieldWithDefault(msg, 4, false),
eventPrefix: jspb.Message.getFieldWithDefault(msg, 5, "")
};
if (includeInstance) {
@ -13218,6 +13279,14 @@ proto.api.IftttIntegration.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.addUplinkValues(value);
break;
case 4:
var value = /** @type {boolean} */ (reader.readBool());
msg.setArbitraryJson(value);
break;
case 5:
var value = /** @type {string} */ (reader.readString());
msg.setEventPrefix(value);
break;
default:
reader.skipField();
break;
@ -13268,6 +13337,20 @@ proto.api.IftttIntegration.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getArbitraryJson();
if (f) {
writer.writeBool(
4,
f
);
}
f = message.getEventPrefix();
if (f.length > 0) {
writer.writeString(
5,
f
);
}
};
@ -13344,6 +13427,42 @@ proto.api.IftttIntegration.prototype.clearUplinkValuesList = function() {
};
/**
* optional bool arbitrary_json = 4;
* @return {boolean}
*/
proto.api.IftttIntegration.prototype.getArbitraryJson = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false));
};
/**
* @param {boolean} value
* @return {!proto.api.IftttIntegration} returns this
*/
proto.api.IftttIntegration.prototype.setArbitraryJson = function(value) {
return jspb.Message.setProto3BooleanField(this, 4, value);
};
/**
* optional string event_prefix = 5;
* @return {string}
*/
proto.api.IftttIntegration.prototype.getEventPrefix = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, ""));
};
/**
* @param {string} value
* @return {!proto.api.IftttIntegration} returns this
*/
proto.api.IftttIntegration.prototype.setEventPrefix = function(value) {
return jspb.Message.setProto3StringField(this, 5, value);
};

View File

@ -27,6 +27,7 @@ interface IDeviceServiceService extends grpc.ServiceDefinition<grpc.UntypedServi
enqueue: grpc.MethodDefinition<api_device_pb.EnqueueDeviceQueueItemRequest, api_device_pb.EnqueueDeviceQueueItemResponse>;
flushQueue: grpc.MethodDefinition<api_device_pb.FlushDeviceQueueRequest, google_protobuf_empty_pb.Empty>;
getQueue: grpc.MethodDefinition<api_device_pb.GetDeviceQueueItemsRequest, api_device_pb.GetDeviceQueueItemsResponse>;
getNextFCntDown: grpc.MethodDefinition<api_device_pb.GetDeviceNextFCntDownRequest, api_device_pb.GetDeviceNextFCntDownResponse>;
}
export const DeviceServiceService: IDeviceServiceService;
@ -51,6 +52,7 @@ export interface IDeviceServiceServer extends grpc.UntypedServiceImplementation
enqueue: grpc.handleUnaryCall<api_device_pb.EnqueueDeviceQueueItemRequest, api_device_pb.EnqueueDeviceQueueItemResponse>;
flushQueue: grpc.handleUnaryCall<api_device_pb.FlushDeviceQueueRequest, google_protobuf_empty_pb.Empty>;
getQueue: grpc.handleUnaryCall<api_device_pb.GetDeviceQueueItemsRequest, api_device_pb.GetDeviceQueueItemsResponse>;
getNextFCntDown: grpc.handleUnaryCall<api_device_pb.GetDeviceNextFCntDownRequest, api_device_pb.GetDeviceNextFCntDownResponse>;
}
export class DeviceServiceClient extends grpc.Client {
@ -112,4 +114,7 @@ export class DeviceServiceClient extends grpc.Client {
getQueue(argument: api_device_pb.GetDeviceQueueItemsRequest, callback: grpc.requestCallback<api_device_pb.GetDeviceQueueItemsResponse>): grpc.ClientUnaryCall;
getQueue(argument: api_device_pb.GetDeviceQueueItemsRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_device_pb.GetDeviceQueueItemsResponse>): grpc.ClientUnaryCall;
getQueue(argument: api_device_pb.GetDeviceQueueItemsRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_device_pb.GetDeviceQueueItemsResponse>): grpc.ClientUnaryCall;
getNextFCntDown(argument: api_device_pb.GetDeviceNextFCntDownRequest, callback: grpc.requestCallback<api_device_pb.GetDeviceNextFCntDownResponse>): grpc.ClientUnaryCall;
getNextFCntDown(argument: api_device_pb.GetDeviceNextFCntDownRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_device_pb.GetDeviceNextFCntDownResponse>): grpc.ClientUnaryCall;
getNextFCntDown(argument: api_device_pb.GetDeviceNextFCntDownRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_device_pb.GetDeviceNextFCntDownResponse>): grpc.ClientUnaryCall;
}

View File

@ -207,6 +207,28 @@ function deserialize_api_GetDeviceMetricsResponse(buffer_arg) {
return api_device_pb.GetDeviceMetricsResponse.deserializeBinary(new Uint8Array(buffer_arg));
}
function serialize_api_GetDeviceNextFCntDownRequest(arg) {
if (!(arg instanceof api_device_pb.GetDeviceNextFCntDownRequest)) {
throw new Error('Expected argument of type api.GetDeviceNextFCntDownRequest');
}
return Buffer.from(arg.serializeBinary());
}
function deserialize_api_GetDeviceNextFCntDownRequest(buffer_arg) {
return api_device_pb.GetDeviceNextFCntDownRequest.deserializeBinary(new Uint8Array(buffer_arg));
}
function serialize_api_GetDeviceNextFCntDownResponse(arg) {
if (!(arg instanceof api_device_pb.GetDeviceNextFCntDownResponse)) {
throw new Error('Expected argument of type api.GetDeviceNextFCntDownResponse');
}
return Buffer.from(arg.serializeBinary());
}
function deserialize_api_GetDeviceNextFCntDownResponse(buffer_arg) {
return api_device_pb.GetDeviceNextFCntDownResponse.deserializeBinary(new Uint8Array(buffer_arg));
}
function serialize_api_GetDeviceQueueItemsRequest(arg) {
if (!(arg instanceof api_device_pb.GetDeviceQueueItemsRequest)) {
throw new Error('Expected argument of type api.GetDeviceQueueItemsRequest');
@ -451,7 +473,8 @@ flushDevNonces: {
responseSerialize: serialize_google_protobuf_Empty,
responseDeserialize: deserialize_google_protobuf_Empty,
},
// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
// Activate (re)activates the device with the given parameters (for ABP or for
// importing OTAA activations).
activate: {
path: '/api.DeviceService/Activate',
requestStream: false,
@ -475,7 +498,8 @@ deactivate: {
responseSerialize: serialize_google_protobuf_Empty,
responseDeserialize: deserialize_google_protobuf_Empty,
},
// GetActivation returns the current activation details of the device (OTAA or ABP).
// GetActivation returns the current activation details of the device (OTAA or
// ABP).
getActivation: {
path: '/api.DeviceService/GetActivation',
requestStream: false,
@ -487,7 +511,8 @@ getActivation: {
responseSerialize: serialize_api_GetDeviceActivationResponse,
responseDeserialize: deserialize_api_GetDeviceActivationResponse,
},
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
// account.
getRandomDevAddr: {
path: '/api.DeviceService/GetRandomDevAddr',
requestStream: false,
@ -500,7 +525,8 @@ getRandomDevAddr: {
responseDeserialize: deserialize_api_GetRandomDevAddrResponse,
},
// GetMetrics returns the device metrics.
// Note that this requires a device-profile with codec and measurements configured.
// Note that this requires a device-profile with codec and measurements
// configured.
getMetrics: {
path: '/api.DeviceService/GetMetrics',
requestStream: false,
@ -561,6 +587,20 @@ getQueue: {
responseSerialize: serialize_api_GetDeviceQueueItemsResponse,
responseDeserialize: deserialize_api_GetDeviceQueueItemsResponse,
},
// GetNextFCntDown returns the next FCntDown to use for enqueing encrypted
// downlinks. The difference with the DeviceActivation f_cont_down is that
// this method takes potential existing queue-items into account.
getNextFCntDown: {
path: '/api.DeviceService/GetNextFCntDown',
requestStream: false,
responseStream: false,
requestType: api_device_pb.GetDeviceNextFCntDownRequest,
responseType: api_device_pb.GetDeviceNextFCntDownResponse,
requestSerialize: serialize_api_GetDeviceNextFCntDownRequest,
requestDeserialize: deserialize_api_GetDeviceNextFCntDownRequest,
responseSerialize: serialize_api_GetDeviceNextFCntDownResponse,
responseDeserialize: deserialize_api_GetDeviceNextFCntDownResponse,
},
};
exports.DeviceServiceClient = grpc.makeGenericClientConstructor(DeviceServiceService);

View File

@ -34,6 +34,9 @@ export class Device extends jspb.Message {
clearVariablesMap(): void;
getTagsMap(): jspb.Map<string, string>;
clearTagsMap(): void;
getJoinEui(): string;
setJoinEui(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Device.AsObject;
static toObject(includeInstance: boolean, msg: Device): Device.AsObject;
@ -55,6 +58,7 @@ export namespace Device {
isDisabled: boolean,
variablesMap: Array<[string, string]>,
tagsMap: Array<[string, string]>,
joinEui: string,
}
}
@ -242,6 +246,9 @@ export class GetDeviceResponse extends jspb.Message {
getDeviceStatus(): DeviceStatus | undefined;
setDeviceStatus(value?: DeviceStatus): void;
getClassEnabled(): common_common_pb.DeviceClassMap[keyof common_common_pb.DeviceClassMap];
setClassEnabled(value: common_common_pb.DeviceClassMap[keyof common_common_pb.DeviceClassMap]): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): GetDeviceResponse.AsObject;
static toObject(includeInstance: boolean, msg: GetDeviceResponse): GetDeviceResponse.AsObject;
@ -259,6 +266,7 @@ export namespace GetDeviceResponse {
updatedAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
lastSeenAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
deviceStatus?: DeviceStatus.AsObject,
classEnabled: common_common_pb.DeviceClassMap[keyof common_common_pb.DeviceClassMap],
}
}
@ -859,6 +867,9 @@ export class DeviceQueueItem extends jspb.Message {
getFCntDown(): number;
setFCntDown(value: number): void;
getIsEncrypted(): boolean;
setIsEncrypted(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DeviceQueueItem.AsObject;
static toObject(includeInstance: boolean, msg: DeviceQueueItem): DeviceQueueItem.AsObject;
@ -879,6 +890,7 @@ export namespace DeviceQueueItem {
object?: google_protobuf_struct_pb.Struct.AsObject,
isPending: boolean,
fCntDown: number,
isEncrypted: boolean,
}
}
@ -1014,3 +1026,43 @@ export namespace FlushDevNoncesRequest {
}
}
export class GetDeviceNextFCntDownRequest extends jspb.Message {
getDevEui(): string;
setDevEui(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): GetDeviceNextFCntDownRequest.AsObject;
static toObject(includeInstance: boolean, msg: GetDeviceNextFCntDownRequest): GetDeviceNextFCntDownRequest.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: GetDeviceNextFCntDownRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): GetDeviceNextFCntDownRequest;
static deserializeBinaryFromReader(message: GetDeviceNextFCntDownRequest, reader: jspb.BinaryReader): GetDeviceNextFCntDownRequest;
}
export namespace GetDeviceNextFCntDownRequest {
export type AsObject = {
devEui: string,
}
}
export class GetDeviceNextFCntDownResponse extends jspb.Message {
getFCntDown(): number;
setFCntDown(value: number): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): GetDeviceNextFCntDownResponse.AsObject;
static toObject(includeInstance: boolean, msg: GetDeviceNextFCntDownResponse): GetDeviceNextFCntDownResponse.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: GetDeviceNextFCntDownResponse, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): GetDeviceNextFCntDownResponse;
static deserializeBinaryFromReader(message: GetDeviceNextFCntDownResponse, reader: jspb.BinaryReader): GetDeviceNextFCntDownResponse;
}
export namespace GetDeviceNextFCntDownResponse {
export type AsObject = {
fCntDown: number,
}
}

View File

@ -47,6 +47,8 @@ goog.exportSymbol('proto.api.GetDeviceLinkMetricsRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceLinkMetricsResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceMetricsRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceMetricsResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceNextFCntDownRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceNextFCntDownResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceQueueItemsRequest', null, global);
goog.exportSymbol('proto.api.GetDeviceQueueItemsResponse', null, global);
goog.exportSymbol('proto.api.GetDeviceRequest', null, global);
@ -792,6 +794,48 @@ if (goog.DEBUG && !COMPILED) {
*/
proto.api.FlushDevNoncesRequest.displayName = 'proto.api.FlushDevNoncesRequest';
}
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.api.GetDeviceNextFCntDownRequest = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.api.GetDeviceNextFCntDownRequest, jspb.Message);
if (goog.DEBUG && !COMPILED) {
/**
* @public
* @override
*/
proto.api.GetDeviceNextFCntDownRequest.displayName = 'proto.api.GetDeviceNextFCntDownRequest';
}
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.api.GetDeviceNextFCntDownResponse = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.api.GetDeviceNextFCntDownResponse, jspb.Message);
if (goog.DEBUG && !COMPILED) {
/**
* @public
* @override
*/
proto.api.GetDeviceNextFCntDownResponse.displayName = 'proto.api.GetDeviceNextFCntDownResponse';
}
@ -832,7 +876,8 @@ proto.api.Device.toObject = function(includeInstance, msg) {
skipFcntCheck: jspb.Message.getBooleanFieldWithDefault(msg, 6, false),
isDisabled: jspb.Message.getBooleanFieldWithDefault(msg, 7, false),
variablesMap: (f = msg.getVariablesMap()) ? f.toObject(includeInstance, undefined) : [],
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : []
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : [],
joinEui: jspb.Message.getFieldWithDefault(msg, 10, "")
};
if (includeInstance) {
@ -909,6 +954,10 @@ proto.api.Device.deserializeBinaryFromReader = function(msg, reader) {
jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
});
break;
case 10:
var value = /** @type {string} */ (reader.readString());
msg.setJoinEui(value);
break;
default:
reader.skipField();
break;
@ -995,6 +1044,13 @@ proto.api.Device.serializeBinaryToWriter = function(message, writer) {
if (f && f.getLength() > 0) {
f.serializeBinary(9, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
}
f = message.getJoinEui();
if (f.length > 0) {
writer.writeString(
10,
f
);
}
};
@ -1168,6 +1224,24 @@ proto.api.Device.prototype.clearTagsMap = function() {
return this;};
/**
* optional string join_eui = 10;
* @return {string}
*/
proto.api.Device.prototype.getJoinEui = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, ""));
};
/**
* @param {string} value
* @return {!proto.api.Device} returns this
*/
proto.api.Device.prototype.setJoinEui = function(value) {
return jspb.Message.setProto3StringField(this, 10, value);
};
@ -2319,7 +2393,8 @@ proto.api.GetDeviceResponse.toObject = function(includeInstance, msg) {
createdAt: (f = msg.getCreatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
updatedAt: (f = msg.getUpdatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
lastSeenAt: (f = msg.getLastSeenAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
deviceStatus: (f = msg.getDeviceStatus()) && proto.api.DeviceStatus.toObject(includeInstance, f)
deviceStatus: (f = msg.getDeviceStatus()) && proto.api.DeviceStatus.toObject(includeInstance, f),
classEnabled: jspb.Message.getFieldWithDefault(msg, 6, 0)
};
if (includeInstance) {
@ -2381,6 +2456,10 @@ proto.api.GetDeviceResponse.deserializeBinaryFromReader = function(msg, reader)
reader.readMessage(value,proto.api.DeviceStatus.deserializeBinaryFromReader);
msg.setDeviceStatus(value);
break;
case 6:
var value = /** @type {!proto.common.DeviceClass} */ (reader.readEnum());
msg.setClassEnabled(value);
break;
default:
reader.skipField();
break;
@ -2450,6 +2529,13 @@ proto.api.GetDeviceResponse.serializeBinaryToWriter = function(message, writer)
proto.api.DeviceStatus.serializeBinaryToWriter
);
}
f = message.getClassEnabled();
if (f !== 0.0) {
writer.writeEnum(
6,
f
);
}
};
@ -2638,6 +2724,24 @@ proto.api.GetDeviceResponse.prototype.hasDeviceStatus = function() {
};
/**
* optional common.DeviceClass class_enabled = 6;
* @return {!proto.common.DeviceClass}
*/
proto.api.GetDeviceResponse.prototype.getClassEnabled = function() {
return /** @type {!proto.common.DeviceClass} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
};
/**
* @param {!proto.common.DeviceClass} value
* @return {!proto.api.GetDeviceResponse} returns this
*/
proto.api.GetDeviceResponse.prototype.setClassEnabled = function(value) {
return jspb.Message.setProto3EnumField(this, 6, value);
};
@ -6661,7 +6765,8 @@ proto.api.DeviceQueueItem.toObject = function(includeInstance, msg) {
data: msg.getData_asB64(),
object: (f = msg.getObject()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f),
isPending: jspb.Message.getBooleanFieldWithDefault(msg, 7, false),
fCntDown: jspb.Message.getFieldWithDefault(msg, 8, 0)
fCntDown: jspb.Message.getFieldWithDefault(msg, 8, 0),
isEncrypted: jspb.Message.getBooleanFieldWithDefault(msg, 9, false)
};
if (includeInstance) {
@ -6731,6 +6836,10 @@ proto.api.DeviceQueueItem.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {number} */ (reader.readUint32());
msg.setFCntDown(value);
break;
case 9:
var value = /** @type {boolean} */ (reader.readBool());
msg.setIsEncrypted(value);
break;
default:
reader.skipField();
break;
@ -6817,6 +6926,13 @@ proto.api.DeviceQueueItem.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getIsEncrypted();
if (f) {
writer.writeBool(
9,
f
);
}
};
@ -7007,6 +7123,24 @@ proto.api.DeviceQueueItem.prototype.setFCntDown = function(value) {
};
/**
* optional bool is_encrypted = 9;
* @return {boolean}
*/
proto.api.DeviceQueueItem.prototype.getIsEncrypted = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 9, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceQueueItem} returns this
*/
proto.api.DeviceQueueItem.prototype.setIsEncrypted = function(value) {
return jspb.Message.setProto3BooleanField(this, 9, value);
};
@ -7898,4 +8032,264 @@ proto.api.FlushDevNoncesRequest.prototype.setDevEui = function(value) {
};
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* Optional fields that are not set will be set to undefined.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* net/proto2/compiler/js/internal/generator.cc#kKeyword.
* @param {boolean=} opt_includeInstance Deprecated. whether to include the
* JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @return {!Object}
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.toObject = function(opt_includeInstance) {
return proto.api.GetDeviceNextFCntDownRequest.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Deprecated. Whether to include
* the JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.api.GetDeviceNextFCntDownRequest} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownRequest.toObject = function(includeInstance, msg) {
var f, obj = {
devEui: jspb.Message.getFieldWithDefault(msg, 1, "")
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.api.GetDeviceNextFCntDownRequest}
*/
proto.api.GetDeviceNextFCntDownRequest.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.api.GetDeviceNextFCntDownRequest;
return proto.api.GetDeviceNextFCntDownRequest.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.api.GetDeviceNextFCntDownRequest} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.api.GetDeviceNextFCntDownRequest}
*/
proto.api.GetDeviceNextFCntDownRequest.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {string} */ (reader.readString());
msg.setDevEui(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.api.GetDeviceNextFCntDownRequest.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.api.GetDeviceNextFCntDownRequest} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownRequest.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getDevEui();
if (f.length > 0) {
writer.writeString(
1,
f
);
}
};
/**
* optional string dev_eui = 1;
* @return {string}
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.getDevEui = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};
/**
* @param {string} value
* @return {!proto.api.GetDeviceNextFCntDownRequest} returns this
*/
proto.api.GetDeviceNextFCntDownRequest.prototype.setDevEui = function(value) {
return jspb.Message.setProto3StringField(this, 1, value);
};
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* Optional fields that are not set will be set to undefined.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* net/proto2/compiler/js/internal/generator.cc#kKeyword.
* @param {boolean=} opt_includeInstance Deprecated. whether to include the
* JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @return {!Object}
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.toObject = function(opt_includeInstance) {
return proto.api.GetDeviceNextFCntDownResponse.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Deprecated. Whether to include
* the JSPB instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.api.GetDeviceNextFCntDownResponse} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownResponse.toObject = function(includeInstance, msg) {
var f, obj = {
fCntDown: jspb.Message.getFieldWithDefault(msg, 1, 0)
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.api.GetDeviceNextFCntDownResponse}
*/
proto.api.GetDeviceNextFCntDownResponse.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.api.GetDeviceNextFCntDownResponse;
return proto.api.GetDeviceNextFCntDownResponse.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.api.GetDeviceNextFCntDownResponse} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.api.GetDeviceNextFCntDownResponse}
*/
proto.api.GetDeviceNextFCntDownResponse.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {number} */ (reader.readUint32());
msg.setFCntDown(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.api.GetDeviceNextFCntDownResponse.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.api.GetDeviceNextFCntDownResponse} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.api.GetDeviceNextFCntDownResponse.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getFCntDown();
if (f !== 0) {
writer.writeUint32(
1,
f
);
}
};
/**
* optional uint32 f_cnt_down = 1;
* @return {number}
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.getFCntDown = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
};
/**
* @param {number} value
* @return {!proto.api.GetDeviceNextFCntDownResponse} returns this
*/
proto.api.GetDeviceNextFCntDownResponse.prototype.setFCntDown = function(value) {
return jspb.Message.setProto3IntField(this, 1, value);
};
goog.object.extend(exports, proto.api);

View File

@ -119,7 +119,8 @@ function deserialize_google_protobuf_Empty(buffer_arg) {
}
// DeviceProfileService is the service providing API methods for managing device-profiles.
// DeviceProfileService is the service providing API methods for managing
// device-profiles.
var DeviceProfileServiceService = exports.DeviceProfileServiceService = {
// Create the given device-profile.
create: {

View File

@ -93,6 +93,72 @@ export class DeviceProfile extends jspb.Message {
getRegionConfigId(): string;
setRegionConfigId(value: string): void;
getIsRelay(): boolean;
setIsRelay(value: boolean): void;
getIsRelayEd(): boolean;
setIsRelayEd(value: boolean): void;
getRelayEdRelayOnly(): boolean;
setRelayEdRelayOnly(value: boolean): void;
getRelayEnabled(): boolean;
setRelayEnabled(value: boolean): void;
getRelayCadPeriodicity(): CadPeriodicityMap[keyof CadPeriodicityMap];
setRelayCadPeriodicity(value: CadPeriodicityMap[keyof CadPeriodicityMap]): void;
getRelayDefaultChannelIndex(): number;
setRelayDefaultChannelIndex(value: number): void;
getRelaySecondChannelFreq(): number;
setRelaySecondChannelFreq(value: number): void;
getRelaySecondChannelDr(): number;
setRelaySecondChannelDr(value: number): void;
getRelaySecondChannelAckOffset(): SecondChAckOffsetMap[keyof SecondChAckOffsetMap];
setRelaySecondChannelAckOffset(value: SecondChAckOffsetMap[keyof SecondChAckOffsetMap]): void;
getRelayEdActivationMode(): RelayModeActivationMap[keyof RelayModeActivationMap];
setRelayEdActivationMode(value: RelayModeActivationMap[keyof RelayModeActivationMap]): void;
getRelayEdSmartEnableLevel(): number;
setRelayEdSmartEnableLevel(value: number): void;
getRelayEdBackOff(): number;
setRelayEdBackOff(value: number): void;
getRelayEdUplinkLimitBucketSize(): number;
setRelayEdUplinkLimitBucketSize(value: number): void;
getRelayEdUplinkLimitReloadRate(): number;
setRelayEdUplinkLimitReloadRate(value: number): void;
getRelayJoinReqLimitReloadRate(): number;
setRelayJoinReqLimitReloadRate(value: number): void;
getRelayNotifyLimitReloadRate(): number;
setRelayNotifyLimitReloadRate(value: number): void;
getRelayGlobalUplinkLimitReloadRate(): number;
setRelayGlobalUplinkLimitReloadRate(value: number): void;
getRelayOverallLimitReloadRate(): number;
setRelayOverallLimitReloadRate(value: number): void;
getRelayJoinReqLimitBucketSize(): number;
setRelayJoinReqLimitBucketSize(value: number): void;
getRelayNotifyLimitBucketSize(): number;
setRelayNotifyLimitBucketSize(value: number): void;
getRelayGlobalUplinkLimitBucketSize(): number;
setRelayGlobalUplinkLimitBucketSize(value: number): void;
getRelayOverallLimitBucketSize(): number;
setRelayOverallLimitBucketSize(value: number): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DeviceProfile.AsObject;
static toObject(includeInstance: boolean, msg: DeviceProfile): DeviceProfile.AsObject;
@ -134,6 +200,28 @@ export namespace DeviceProfile {
measurementsMap: Array<[string, Measurement.AsObject]>,
autoDetectMeasurements: boolean,
regionConfigId: string,
isRelay: boolean,
isRelayEd: boolean,
relayEdRelayOnly: boolean,
relayEnabled: boolean,
relayCadPeriodicity: CadPeriodicityMap[keyof CadPeriodicityMap],
relayDefaultChannelIndex: number,
relaySecondChannelFreq: number,
relaySecondChannelDr: number,
relaySecondChannelAckOffset: SecondChAckOffsetMap[keyof SecondChAckOffsetMap],
relayEdActivationMode: RelayModeActivationMap[keyof RelayModeActivationMap],
relayEdSmartEnableLevel: number,
relayEdBackOff: number,
relayEdUplinkLimitBucketSize: number,
relayEdUplinkLimitReloadRate: number,
relayJoinReqLimitReloadRate: number,
relayNotifyLimitReloadRate: number,
relayGlobalUplinkLimitReloadRate: number,
relayOverallLimitReloadRate: number,
relayJoinReqLimitBucketSize: number,
relayNotifyLimitBucketSize: number,
relayGlobalUplinkLimitBucketSize: number,
relayOverallLimitBucketSize: number,
}
}
@ -485,3 +573,34 @@ export interface MeasurementKindMap {
export const MeasurementKind: MeasurementKindMap;
export interface CadPeriodicityMap {
SEC_1: 0;
MS_500: 1;
MS_250: 2;
MS_100: 3;
MS_50: 4;
MS_20: 5;
}
export const CadPeriodicity: CadPeriodicityMap;
export interface SecondChAckOffsetMap {
KHZ_0: 0;
KHZ_200: 1;
KHZ_400: 2;
KHZ_800: 3;
KHZ_1600: 4;
KHZ_3200: 5;
}
export const SecondChAckOffset: SecondChAckOffsetMap;
export interface RelayModeActivationMap {
DISABLE_RELAY_MODE: 0;
ENABLE_RELAY_MODE: 1;
DYNAMIC: 2;
END_DEVICE_CONTROLLED: 3;
}
export const RelayModeActivation: RelayModeActivationMap;

View File

@ -21,6 +21,7 @@ goog.object.extend(proto, google_protobuf_empty_pb);
var common_common_pb = require('../common/common_pb.js');
goog.object.extend(proto, common_common_pb);
goog.exportSymbol('proto.api.AdrAlgorithmListItem', null, global);
goog.exportSymbol('proto.api.CadPeriodicity', null, global);
goog.exportSymbol('proto.api.CodecRuntime', null, global);
goog.exportSymbol('proto.api.CreateDeviceProfileRequest', null, global);
goog.exportSymbol('proto.api.CreateDeviceProfileResponse', null, global);
@ -34,6 +35,8 @@ goog.exportSymbol('proto.api.ListDeviceProfilesRequest', null, global);
goog.exportSymbol('proto.api.ListDeviceProfilesResponse', null, global);
goog.exportSymbol('proto.api.Measurement', null, global);
goog.exportSymbol('proto.api.MeasurementKind', null, global);
goog.exportSymbol('proto.api.RelayModeActivation', null, global);
goog.exportSymbol('proto.api.SecondChAckOffset', null, global);
goog.exportSymbol('proto.api.UpdateDeviceProfileRequest', null, global);
/**
* Generated by JsPbCodeGenerator.
@ -368,7 +371,29 @@ proto.api.DeviceProfile.toObject = function(includeInstance, msg) {
tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : [],
measurementsMap: (f = msg.getMeasurementsMap()) ? f.toObject(includeInstance, proto.api.Measurement.toObject) : [],
autoDetectMeasurements: jspb.Message.getBooleanFieldWithDefault(msg, 28, false),
regionConfigId: jspb.Message.getFieldWithDefault(msg, 29, "")
regionConfigId: jspb.Message.getFieldWithDefault(msg, 29, ""),
isRelay: jspb.Message.getBooleanFieldWithDefault(msg, 30, false),
isRelayEd: jspb.Message.getBooleanFieldWithDefault(msg, 31, false),
relayEdRelayOnly: jspb.Message.getBooleanFieldWithDefault(msg, 32, false),
relayEnabled: jspb.Message.getBooleanFieldWithDefault(msg, 33, false),
relayCadPeriodicity: jspb.Message.getFieldWithDefault(msg, 34, 0),
relayDefaultChannelIndex: jspb.Message.getFieldWithDefault(msg, 35, 0),
relaySecondChannelFreq: jspb.Message.getFieldWithDefault(msg, 36, 0),
relaySecondChannelDr: jspb.Message.getFieldWithDefault(msg, 37, 0),
relaySecondChannelAckOffset: jspb.Message.getFieldWithDefault(msg, 38, 0),
relayEdActivationMode: jspb.Message.getFieldWithDefault(msg, 39, 0),
relayEdSmartEnableLevel: jspb.Message.getFieldWithDefault(msg, 40, 0),
relayEdBackOff: jspb.Message.getFieldWithDefault(msg, 41, 0),
relayEdUplinkLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 42, 0),
relayEdUplinkLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 43, 0),
relayJoinReqLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 44, 0),
relayNotifyLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 45, 0),
relayGlobalUplinkLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 46, 0),
relayOverallLimitReloadRate: jspb.Message.getFieldWithDefault(msg, 47, 0),
relayJoinReqLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 48, 0),
relayNotifyLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 49, 0),
relayGlobalUplinkLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 50, 0),
relayOverallLimitBucketSize: jspb.Message.getFieldWithDefault(msg, 51, 0)
};
if (includeInstance) {
@ -525,6 +550,94 @@ proto.api.DeviceProfile.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.setRegionConfigId(value);
break;
case 30:
var value = /** @type {boolean} */ (reader.readBool());
msg.setIsRelay(value);
break;
case 31:
var value = /** @type {boolean} */ (reader.readBool());
msg.setIsRelayEd(value);
break;
case 32:
var value = /** @type {boolean} */ (reader.readBool());
msg.setRelayEdRelayOnly(value);
break;
case 33:
var value = /** @type {boolean} */ (reader.readBool());
msg.setRelayEnabled(value);
break;
case 34:
var value = /** @type {!proto.api.CadPeriodicity} */ (reader.readEnum());
msg.setRelayCadPeriodicity(value);
break;
case 35:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayDefaultChannelIndex(value);
break;
case 36:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelaySecondChannelFreq(value);
break;
case 37:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelaySecondChannelDr(value);
break;
case 38:
var value = /** @type {!proto.api.SecondChAckOffset} */ (reader.readEnum());
msg.setRelaySecondChannelAckOffset(value);
break;
case 39:
var value = /** @type {!proto.api.RelayModeActivation} */ (reader.readEnum());
msg.setRelayEdActivationMode(value);
break;
case 40:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdSmartEnableLevel(value);
break;
case 41:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdBackOff(value);
break;
case 42:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdUplinkLimitBucketSize(value);
break;
case 43:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayEdUplinkLimitReloadRate(value);
break;
case 44:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayJoinReqLimitReloadRate(value);
break;
case 45:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayNotifyLimitReloadRate(value);
break;
case 46:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayGlobalUplinkLimitReloadRate(value);
break;
case 47:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayOverallLimitReloadRate(value);
break;
case 48:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayJoinReqLimitBucketSize(value);
break;
case 49:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayNotifyLimitBucketSize(value);
break;
case 50:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayGlobalUplinkLimitBucketSize(value);
break;
case 51:
var value = /** @type {number} */ (reader.readUint32());
msg.setRelayOverallLimitBucketSize(value);
break;
default:
reader.skipField();
break;
@ -751,6 +864,160 @@ proto.api.DeviceProfile.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getIsRelay();
if (f) {
writer.writeBool(
30,
f
);
}
f = message.getIsRelayEd();
if (f) {
writer.writeBool(
31,
f
);
}
f = message.getRelayEdRelayOnly();
if (f) {
writer.writeBool(
32,
f
);
}
f = message.getRelayEnabled();
if (f) {
writer.writeBool(
33,
f
);
}
f = message.getRelayCadPeriodicity();
if (f !== 0.0) {
writer.writeEnum(
34,
f
);
}
f = message.getRelayDefaultChannelIndex();
if (f !== 0) {
writer.writeUint32(
35,
f
);
}
f = message.getRelaySecondChannelFreq();
if (f !== 0) {
writer.writeUint32(
36,
f
);
}
f = message.getRelaySecondChannelDr();
if (f !== 0) {
writer.writeUint32(
37,
f
);
}
f = message.getRelaySecondChannelAckOffset();
if (f !== 0.0) {
writer.writeEnum(
38,
f
);
}
f = message.getRelayEdActivationMode();
if (f !== 0.0) {
writer.writeEnum(
39,
f
);
}
f = message.getRelayEdSmartEnableLevel();
if (f !== 0) {
writer.writeUint32(
40,
f
);
}
f = message.getRelayEdBackOff();
if (f !== 0) {
writer.writeUint32(
41,
f
);
}
f = message.getRelayEdUplinkLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
42,
f
);
}
f = message.getRelayEdUplinkLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
43,
f
);
}
f = message.getRelayJoinReqLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
44,
f
);
}
f = message.getRelayNotifyLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
45,
f
);
}
f = message.getRelayGlobalUplinkLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
46,
f
);
}
f = message.getRelayOverallLimitReloadRate();
if (f !== 0) {
writer.writeUint32(
47,
f
);
}
f = message.getRelayJoinReqLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
48,
f
);
}
f = message.getRelayNotifyLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
49,
f
);
}
f = message.getRelayGlobalUplinkLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
50,
f
);
}
f = message.getRelayOverallLimitBucketSize();
if (f !== 0) {
writer.writeUint32(
51,
f
);
}
};
@ -1284,6 +1551,402 @@ proto.api.DeviceProfile.prototype.setRegionConfigId = function(value) {
};
/**
* optional bool is_relay = 30;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getIsRelay = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 30, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setIsRelay = function(value) {
return jspb.Message.setProto3BooleanField(this, 30, value);
};
/**
* optional bool is_relay_ed = 31;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getIsRelayEd = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 31, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setIsRelayEd = function(value) {
return jspb.Message.setProto3BooleanField(this, 31, value);
};
/**
* optional bool relay_ed_relay_only = 32;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getRelayEdRelayOnly = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 32, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdRelayOnly = function(value) {
return jspb.Message.setProto3BooleanField(this, 32, value);
};
/**
* optional bool relay_enabled = 33;
* @return {boolean}
*/
proto.api.DeviceProfile.prototype.getRelayEnabled = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 33, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEnabled = function(value) {
return jspb.Message.setProto3BooleanField(this, 33, value);
};
/**
* optional CadPeriodicity relay_cad_periodicity = 34;
* @return {!proto.api.CadPeriodicity}
*/
proto.api.DeviceProfile.prototype.getRelayCadPeriodicity = function() {
return /** @type {!proto.api.CadPeriodicity} */ (jspb.Message.getFieldWithDefault(this, 34, 0));
};
/**
* @param {!proto.api.CadPeriodicity} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayCadPeriodicity = function(value) {
return jspb.Message.setProto3EnumField(this, 34, value);
};
/**
* optional uint32 relay_default_channel_index = 35;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayDefaultChannelIndex = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 35, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayDefaultChannelIndex = function(value) {
return jspb.Message.setProto3IntField(this, 35, value);
};
/**
* optional uint32 relay_second_channel_freq = 36;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelaySecondChannelFreq = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 36, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelaySecondChannelFreq = function(value) {
return jspb.Message.setProto3IntField(this, 36, value);
};
/**
* optional uint32 relay_second_channel_dr = 37;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelaySecondChannelDr = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 37, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelaySecondChannelDr = function(value) {
return jspb.Message.setProto3IntField(this, 37, value);
};
/**
* optional SecondChAckOffset relay_second_channel_ack_offset = 38;
* @return {!proto.api.SecondChAckOffset}
*/
proto.api.DeviceProfile.prototype.getRelaySecondChannelAckOffset = function() {
return /** @type {!proto.api.SecondChAckOffset} */ (jspb.Message.getFieldWithDefault(this, 38, 0));
};
/**
* @param {!proto.api.SecondChAckOffset} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelaySecondChannelAckOffset = function(value) {
return jspb.Message.setProto3EnumField(this, 38, value);
};
/**
* optional RelayModeActivation relay_ed_activation_mode = 39;
* @return {!proto.api.RelayModeActivation}
*/
proto.api.DeviceProfile.prototype.getRelayEdActivationMode = function() {
return /** @type {!proto.api.RelayModeActivation} */ (jspb.Message.getFieldWithDefault(this, 39, 0));
};
/**
* @param {!proto.api.RelayModeActivation} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdActivationMode = function(value) {
return jspb.Message.setProto3EnumField(this, 39, value);
};
/**
* optional uint32 relay_ed_smart_enable_level = 40;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdSmartEnableLevel = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 40, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdSmartEnableLevel = function(value) {
return jspb.Message.setProto3IntField(this, 40, value);
};
/**
* optional uint32 relay_ed_back_off = 41;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdBackOff = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 41, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdBackOff = function(value) {
return jspb.Message.setProto3IntField(this, 41, value);
};
/**
* optional uint32 relay_ed_uplink_limit_bucket_size = 42;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdUplinkLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 42, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdUplinkLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 42, value);
};
/**
* optional uint32 relay_ed_uplink_limit_reload_rate = 43;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayEdUplinkLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 43, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayEdUplinkLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 43, value);
};
/**
* optional uint32 relay_join_req_limit_reload_rate = 44;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayJoinReqLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 44, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayJoinReqLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 44, value);
};
/**
* optional uint32 relay_notify_limit_reload_rate = 45;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayNotifyLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 45, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayNotifyLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 45, value);
};
/**
* optional uint32 relay_global_uplink_limit_reload_rate = 46;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayGlobalUplinkLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 46, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayGlobalUplinkLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 46, value);
};
/**
* optional uint32 relay_overall_limit_reload_rate = 47;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayOverallLimitReloadRate = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 47, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayOverallLimitReloadRate = function(value) {
return jspb.Message.setProto3IntField(this, 47, value);
};
/**
* optional uint32 relay_join_req_limit_bucket_size = 48;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayJoinReqLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 48, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayJoinReqLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 48, value);
};
/**
* optional uint32 relay_notify_limit_bucket_size = 49;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayNotifyLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 49, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayNotifyLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 49, value);
};
/**
* optional uint32 relay_global_uplink_limit_bucket_size = 50;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayGlobalUplinkLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 50, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayGlobalUplinkLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 50, value);
};
/**
* optional uint32 relay_overall_limit_bucket_size = 51;
* @return {number}
*/
proto.api.DeviceProfile.prototype.getRelayOverallLimitBucketSize = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 51, 0));
};
/**
* @param {number} value
* @return {!proto.api.DeviceProfile} returns this
*/
proto.api.DeviceProfile.prototype.setRelayOverallLimitBucketSize = function(value) {
return jspb.Message.setProto3IntField(this, 51, value);
};
@ -3611,4 +4274,38 @@ proto.api.MeasurementKind = {
STRING: 4
};
/**
* @enum {number}
*/
proto.api.CadPeriodicity = {
SEC_1: 0,
MS_500: 1,
MS_250: 2,
MS_100: 3,
MS_50: 4,
MS_20: 5
};
/**
* @enum {number}
*/
proto.api.SecondChAckOffset = {
KHZ_0: 0,
KHZ_200: 1,
KHZ_400: 2,
KHZ_800: 3,
KHZ_1600: 4,
KHZ_3200: 5
};
/**
* @enum {number}
*/
proto.api.RelayModeActivation = {
DISABLE_RELAY_MODE: 0,
ENABLE_RELAY_MODE: 1,
DYNAMIC: 2,
END_DEVICE_CONTROLLED: 3
};
goog.object.extend(exports, proto.api);

View File

@ -36,8 +36,11 @@ export class UplinkFrameLog extends jspb.Message {
getTime(): google_protobuf_timestamp_pb.Timestamp | undefined;
setTime(value?: google_protobuf_timestamp_pb.Timestamp): void;
getPlaintextMacCommands(): boolean;
setPlaintextMacCommands(value: boolean): void;
getPlaintextFOpts(): boolean;
setPlaintextFOpts(value: boolean): void;
getPlaintextFrmPayload(): boolean;
setPlaintextFrmPayload(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): UplinkFrameLog.AsObject;
@ -58,7 +61,8 @@ export namespace UplinkFrameLog {
devAddr: string,
devEui: string,
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
plaintextMacCommands: boolean,
plaintextFOpts: boolean,
plaintextFrmPayload: boolean,
}
}
@ -93,8 +97,11 @@ export class DownlinkFrameLog extends jspb.Message {
getDevEui(): string;
setDevEui(value: string): void;
getPlaintextMacCommands(): boolean;
setPlaintextMacCommands(value: boolean): void;
getPlaintextFOpts(): boolean;
setPlaintextFOpts(value: boolean): void;
getPlaintextFrmPayload(): boolean;
setPlaintextFrmPayload(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): DownlinkFrameLog.AsObject;
@ -116,7 +123,8 @@ export namespace DownlinkFrameLog {
mType: common_common_pb.MTypeMap[keyof common_common_pb.MTypeMap],
devAddr: string,
devEui: string,
plaintextMacCommands: boolean,
plaintextFOpts: boolean,
plaintextFrmPayload: boolean,
}
}

View File

@ -109,7 +109,8 @@ proto.api.UplinkFrameLog.toObject = function(includeInstance, msg) {
devAddr: jspb.Message.getFieldWithDefault(msg, 5, ""),
devEui: jspb.Message.getFieldWithDefault(msg, 6, ""),
time: (f = msg.getTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
plaintextMacCommands: jspb.Message.getBooleanFieldWithDefault(msg, 8, false)
plaintextFOpts: jspb.Message.getBooleanFieldWithDefault(msg, 8, false),
plaintextFrmPayload: jspb.Message.getBooleanFieldWithDefault(msg, 9, false)
};
if (includeInstance) {
@ -179,7 +180,11 @@ proto.api.UplinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
break;
case 8:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextMacCommands(value);
msg.setPlaintextFOpts(value);
break;
case 9:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextFrmPayload(value);
break;
default:
reader.skipField();
@ -262,13 +267,20 @@ proto.api.UplinkFrameLog.serializeBinaryToWriter = function(message, writer) {
google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
);
}
f = message.getPlaintextMacCommands();
f = message.getPlaintextFOpts();
if (f) {
writer.writeBool(
8,
f
);
}
f = message.getPlaintextFrmPayload();
if (f) {
writer.writeBool(
9,
f
);
}
};
@ -481,10 +493,10 @@ proto.api.UplinkFrameLog.prototype.hasTime = function() {
/**
* optional bool plaintext_mac_commands = 8;
* optional bool plaintext_f_opts = 8;
* @return {boolean}
*/
proto.api.UplinkFrameLog.prototype.getPlaintextMacCommands = function() {
proto.api.UplinkFrameLog.prototype.getPlaintextFOpts = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 8, false));
};
@ -493,11 +505,29 @@ proto.api.UplinkFrameLog.prototype.getPlaintextMacCommands = function() {
* @param {boolean} value
* @return {!proto.api.UplinkFrameLog} returns this
*/
proto.api.UplinkFrameLog.prototype.setPlaintextMacCommands = function(value) {
proto.api.UplinkFrameLog.prototype.setPlaintextFOpts = function(value) {
return jspb.Message.setProto3BooleanField(this, 8, value);
};
/**
* optional bool plaintext_frm_payload = 9;
* @return {boolean}
*/
proto.api.UplinkFrameLog.prototype.getPlaintextFrmPayload = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 9, false));
};
/**
* @param {boolean} value
* @return {!proto.api.UplinkFrameLog} returns this
*/
proto.api.UplinkFrameLog.prototype.setPlaintextFrmPayload = function(value) {
return jspb.Message.setProto3BooleanField(this, 9, value);
};
@ -538,7 +568,8 @@ proto.api.DownlinkFrameLog.toObject = function(includeInstance, msg) {
mType: jspb.Message.getFieldWithDefault(msg, 6, 0),
devAddr: jspb.Message.getFieldWithDefault(msg, 7, ""),
devEui: jspb.Message.getFieldWithDefault(msg, 8, ""),
plaintextMacCommands: jspb.Message.getBooleanFieldWithDefault(msg, 9, false)
plaintextFOpts: jspb.Message.getBooleanFieldWithDefault(msg, 9, false),
plaintextFrmPayload: jspb.Message.getBooleanFieldWithDefault(msg, 10, false)
};
if (includeInstance) {
@ -611,7 +642,11 @@ proto.api.DownlinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
break;
case 9:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextMacCommands(value);
msg.setPlaintextFOpts(value);
break;
case 10:
var value = /** @type {boolean} */ (reader.readBool());
msg.setPlaintextFrmPayload(value);
break;
default:
reader.skipField();
@ -700,13 +735,20 @@ proto.api.DownlinkFrameLog.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getPlaintextMacCommands();
f = message.getPlaintextFOpts();
if (f) {
writer.writeBool(
9,
f
);
}
f = message.getPlaintextFrmPayload();
if (f) {
writer.writeBool(
10,
f
);
}
};
@ -917,10 +959,10 @@ proto.api.DownlinkFrameLog.prototype.setDevEui = function(value) {
/**
* optional bool plaintext_mac_commands = 9;
* optional bool plaintext_f_opts = 9;
* @return {boolean}
*/
proto.api.DownlinkFrameLog.prototype.getPlaintextMacCommands = function() {
proto.api.DownlinkFrameLog.prototype.getPlaintextFOpts = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 9, false));
};
@ -929,9 +971,27 @@ proto.api.DownlinkFrameLog.prototype.getPlaintextMacCommands = function() {
* @param {boolean} value
* @return {!proto.api.DownlinkFrameLog} returns this
*/
proto.api.DownlinkFrameLog.prototype.setPlaintextMacCommands = function(value) {
proto.api.DownlinkFrameLog.prototype.setPlaintextFOpts = function(value) {
return jspb.Message.setProto3BooleanField(this, 9, value);
};
/**
* optional bool plaintext_frm_payload = 10;
* @return {boolean}
*/
proto.api.DownlinkFrameLog.prototype.getPlaintextFrmPayload = function() {
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 10, false));
};
/**
* @param {boolean} value
* @return {!proto.api.DownlinkFrameLog} returns this
*/
proto.api.DownlinkFrameLog.prototype.setPlaintextFrmPayload = function(value) {
return jspb.Message.setProto3BooleanField(this, 10, value);
};
goog.object.extend(exports, proto.api);

40
api/js/api/relay_grpc_pb.d.ts vendored Normal file
View File

@ -0,0 +1,40 @@
// GENERATED CODE -- DO NOT EDIT!
// package: api
// file: api/relay.proto
import * as api_relay_pb from "../api/relay_pb";
import * as google_protobuf_empty_pb from "google-protobuf/google/protobuf/empty_pb";
import * as grpc from "@grpc/grpc-js";
interface IRelayServiceService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
list: grpc.MethodDefinition<api_relay_pb.ListRelaysRequest, api_relay_pb.ListRelaysResponse>;
addDevice: grpc.MethodDefinition<api_relay_pb.AddRelayDeviceRequest, google_protobuf_empty_pb.Empty>;
removeDevice: grpc.MethodDefinition<api_relay_pb.RemoveRelayDeviceRequest, google_protobuf_empty_pb.Empty>;
listDevices: grpc.MethodDefinition<api_relay_pb.ListRelayDevicesRequest, api_relay_pb.ListRelayDevicesResponse>;
}
export const RelayServiceService: IRelayServiceService;
export interface IRelayServiceServer extends grpc.UntypedServiceImplementation {
list: grpc.handleUnaryCall<api_relay_pb.ListRelaysRequest, api_relay_pb.ListRelaysResponse>;
addDevice: grpc.handleUnaryCall<api_relay_pb.AddRelayDeviceRequest, google_protobuf_empty_pb.Empty>;
removeDevice: grpc.handleUnaryCall<api_relay_pb.RemoveRelayDeviceRequest, google_protobuf_empty_pb.Empty>;
listDevices: grpc.handleUnaryCall<api_relay_pb.ListRelayDevicesRequest, api_relay_pb.ListRelayDevicesResponse>;
}
export class RelayServiceClient extends grpc.Client {
constructor(address: string, credentials: grpc.ChannelCredentials, options?: object);
list(argument: api_relay_pb.ListRelaysRequest, callback: grpc.requestCallback<api_relay_pb.ListRelaysResponse>): grpc.ClientUnaryCall;
list(argument: api_relay_pb.ListRelaysRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_relay_pb.ListRelaysResponse>): grpc.ClientUnaryCall;
list(argument: api_relay_pb.ListRelaysRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_relay_pb.ListRelaysResponse>): grpc.ClientUnaryCall;
addDevice(argument: api_relay_pb.AddRelayDeviceRequest, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
addDevice(argument: api_relay_pb.AddRelayDeviceRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
addDevice(argument: api_relay_pb.AddRelayDeviceRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
removeDevice(argument: api_relay_pb.RemoveRelayDeviceRequest, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
removeDevice(argument: api_relay_pb.RemoveRelayDeviceRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
removeDevice(argument: api_relay_pb.RemoveRelayDeviceRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
listDevices(argument: api_relay_pb.ListRelayDevicesRequest, callback: grpc.requestCallback<api_relay_pb.ListRelayDevicesResponse>): grpc.ClientUnaryCall;
listDevices(argument: api_relay_pb.ListRelayDevicesRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_relay_pb.ListRelayDevicesResponse>): grpc.ClientUnaryCall;
listDevices(argument: api_relay_pb.ListRelayDevicesRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_relay_pb.ListRelayDevicesResponse>): grpc.ClientUnaryCall;
}

Some files were not shown because too many files have changed in this diff Show More