Compare commits

...

217 Commits

Author SHA1 Message Date
e8d001441c Bump version to 4.13.0-test.1 2025-05-23 09:36:26 +01:00
10e7907251 Generate API code. 2025-05-23 09:30:16 +01:00
39df55afb4 MeshCommand does not need a timestamp. 2025-05-23 09:14:57 +01:00
038e45e8f0 api: Rename Mesh to MeshEvent.
This is needed as we are also adding commands, thus we need MeshEvent
and MeshCommand messages.
2025-05-23 09:14:57 +01:00
5cf1120f20 Update gw proto & refactor Mesh Heartbeat event.
This refactors the gateway protobuf payloads, such that the
Concentratord can publish an Event message, containing one of the
possible events published by the Concentratord (uplink, stats or mesh
event). It also combines the possible Concentratord commands into a
single Command message. This simplifies the ZMQ interface as it is no
longer needed to match the payload type by string.

This also refactors the MeshHeartbeat message into a Mesh message, which
can contain multiple events, of which the Heartbeat is one of the
possible events.

The future goal is to make it possible to send different types of events
from the Gateway Mesh Relay gateways (e.g. battery status, ...) and to
make it possible to also send proprietary event types.
2025-05-23 09:14:57 +01:00
b8e14058f2 Geplace GETDEL by pipelined GET and DEL commands. (#682)
GETDEL was added in Redis 6.2, but is unfortunately not supported on all Azure Cache for Redis tiers.

Fixes #680.
2025-05-21 10:15:05 +01:00
10731c2be5 Make amqp integration exchange configurable (#677) 2025-05-21 09:45:19 +01:00
f1d46b1bc9 Update scheduler_run_after at device-session get.
This moves the setting of the scheduler_run_after to the function to get
the device-session based on provided PHYPayload. This way we reduce the
risk of overlapping Class-B / -C downlinks with a Class-A downlink, as
we update the scheduler_run_after during the "FOR UPDATE" transaction.
This also reduces one SQL query, as we combine it with the updating of
the device-session query (to update the uplink FCnt value).
2025-05-12 11:05:02 +01:00
c954cd3645 Store temp. mac-command state in device-session. 2025-05-09 14:27:25 +01:00
188ef3d8f3 Bump version to 4.12.1 2025-05-02 11:16:19 +01:00
0cff864f60 ui: Remove CodeEditor reloadKey.
With the migration from codemirror to ace, this workaround is no longer
needed to correctly render the UI component.
2025-05-02 11:09:59 +01:00
156f42ab82 Bump version to 4.12.1-test.1 2025-05-02 09:50:35 +01:00
c8b496d33f Update sqlite version in cross config. 2025-05-02 09:42:57 +01:00
8d2faf2d15 Update dependencies. 2025-05-02 09:42:24 +01:00
55d9ce0359 Bump vite from 6.2.6 to 6.2.7 in /ui (#668)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.6 to 6.2.7.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.7/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.7/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.7
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 08:52:27 +01:00
d002f5c97b ui: Format code. 2025-04-28 10:18:44 +01:00
9cf12a187c ui: Clear tenant id after delete.
Fixes #635.
2025-04-28 10:18:05 +01:00
1b5e5972f4 ui: Fix JSON enqueue issue / code-editor render issue.
This fixes two issues:

- An error logged to the console when enqueueing a JSON downlink payload
(Q.Va is not a function).
- The codemirror editor has been replaced by ace, to solve a potential
rendering issue within ReactJS / Antd.

Closes #658.
2025-04-28 10:09:52 +01:00
330f5dcae0 Bump version to 4.12.0 2025-04-22 09:01:31 +01:00
92b2439377 Bump version to 4.12.0-test.4 2025-04-21 15:23:08 +01:00
6d084b3b21 Add option to pass auth. header to join-server. 2025-04-16 10:55:08 +01:00
75e9106bbb Remove lazy_static dependency. 2025-04-16 09:51:49 +01:00
4ce4828a78 lrwn: Remove lazy_static dependency. 2025-04-15 16:06:03 +01:00
9ecf4fef1b ui: Update vite to v6.2.6. 2025-04-15 15:54:17 +01:00
8f9316af2c Bump golang.org/x/net from 0.33.0 to 0.36.0 in /examples/frame_log/go (#651)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.33.0 to 0.36.0.
- [Commits](https://github.com/golang/net/compare/v0.33.0...v0.36.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.36.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-15 15:28:32 +01:00
1f2a7d390a Bump vite from 5.4.12 to 5.4.18 in /ui (#652)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.12 to 5.4.18.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.18/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.18/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 5.4.18
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-15 15:28:19 +01:00
990bf57da5 Update dependencies. 2025-04-15 15:07:10 +01:00
b336690a65 Update tonic to 0.13. 2025-04-15 15:00:23 +01:00
7597bcaabf Replace tenant UUID by gen_random_uuid() in pg migration.
This should have been part of 5fd57de6ce.
2025-04-15 13:51:53 +01:00
0ae1294a63 Show origin in case of parse error.
Fixes #632.
2025-04-15 13:32:01 +01:00
8e0a29ed55 Update PostgreSQL to v13 in tests.
This is oldest version that is still supported.
2025-04-15 12:41:49 +01:00
5fd57de6ce Replace static UUID by gen_random_uuid() in pg migration.
Fixes #634.
2025-04-15 12:28:44 +01:00
d91fb77617 Install cargo-deb through shell.nix. 2025-04-15 11:29:01 +01:00
fa63c306fd Add default ADR example in JS. 2025-04-15 10:16:17 +01:00
7d1e85e575 Bump golang.org/x/net from 0.33.0 to 0.36.0 in /api/go (#639)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.33.0 to 0.36.0.
- [Commits](https://github.com/golang/net/compare/v0.33.0...v0.36.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-26 11:40:20 +00:00
e392f52444 Update prometheus-client dependency. 2025-03-26 11:34:22 +00:00
e30a2e0e77 Bump version to 4.12.0-test.3 2025-03-25 13:43:56 +00:00
b2adac5a49 Fix formatting (cargo fmt). 2025-03-25 13:13:41 +00:00
ca7b0a2e61 Fix sqlite migration typo. 2025-03-25 11:31:12 +00:00
849d27f148 Fix cargo clippy feedback. 2025-03-25 11:31:07 +00:00
5ce35eef5e ui: Disable start fuota deployment button once started. 2025-03-24 11:38:07 +00:00
236b468aa4 Store and increase TS004 session_cnt per device.
For TS004 v2.0.0, the session_cnt must be incremented for every
fragmentation-session.
2025-03-24 11:33:16 +00:00
c130be9dd0 Bump redis from 0.29.1 to 0.29.2 (#636)
Bumps [redis](https://github.com/redis-rs/redis-rs) from 0.29.1 to 0.29.2.
- [Release notes](https://github.com/redis-rs/redis-rs/releases)
- [Commits](https://github.com/redis-rs/redis-rs/compare/redis-0.29.1...redis-0.29.2)

---
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>
2025-03-24 09:53:11 +00:00
4b77fa441d Bump version to 4.12.0-test.2 2025-03-20 12:25:23 +00:00
c137136d4d Update chirpstack configfile template.
See also chirpstack/chirpstack-docs#25
2025-03-20 11:49:07 +00:00
27689d172f Bump vite from 5.3.6 to 5.4.12 in /ui (#604)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.3.6 to 5.4.12.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.12/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.12/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-20 11:26:39 +00:00
730ed09840 Update Rust toolchain version. 2025-03-20 10:58:30 +00:00
105ea2806a Remove rand_core and import re-export. 2025-03-20 10:53:14 +00:00
8f34ea2ca5 Bump golang.org/x/net from 0.23.0 to 0.33.0 in /api/go (#599)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.23.0 to 0.33.0.
- [Commits](https://github.com/golang/net/compare/v0.23.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-20 10:41:12 +00:00
447df411df Bump golang.org/x/net from 0.23.0 to 0.36.0 in /examples/request_log/go (#627)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.23.0 to 0.36.0.
- [Commits](https://github.com/golang/net/compare/v0.23.0...v0.36.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-20 10:40:58 +00:00
e228125031 Bump @babel/runtime from 7.24.7 to 7.26.10 in /ui (#633)
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.24.7 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-runtime)

---
updated-dependencies:
- dependency-name: "@babel/runtime"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-20 10:40:43 +00:00
7c134a549d Update dependencies. 2025-03-20 10:39:52 +00:00
f97af991be Generalize auto-conversion of SEC1 EC keys to PKCS#8. (#618)
Get the key curve from the params of the SEC1 certificate instead of
assuming that it is P256.
2025-03-20 10:10:57 +00:00
293cfe2664 api: Update Go generated code. 2025-03-20 09:03:47 +00:00
5bbd71ab3a Add warnings to fuota deployment job + UI.
In case some devices do not complete a job, this makes it possible
to show a warning in the UI showing the amount of devices that did
not complete the job.
2025-03-19 14:47:47 +00:00
f02256245c lrwn: Align v2 fragmentation fec with LBM stack.
This aligns the forward-error-correction code with the LoRa Basics
Modem stack, which seems to be different from the TS004 MATLAB example
code in that it only calls the matrix_line function for the redundancy
frames and thus the n argument ranges from 1 until (and including) the
number of redundancy frames.

The TS004 MATLAB example calls the matrix_line function for every
fragment, thus the n argument ranges from 1 until (and including) m +
the number of redundancy frames. While n <= m, it returns early.
2025-03-18 13:32:14 +00:00
a0f07b5303 Initial FUOTA v2 implementation.
This implements selecting the v2.0.0 app-layer package in the
device-profile and handling these payloads in the FUOTA flow.
2025-03-18 12:44:15 +00:00
60547ff973 Fix fuota device timeout filter.
We should filter on error_msg = "" instead of != NULL, as we only would
like to update the error_msg for devices that not yet have an error set.
Else we would overwrite an earlier error message.
2025-03-13 15:09:03 +00:00
351406c363 lrwn: Implement v2 app layer fragmentation structs + encoding. 2025-03-13 15:09:03 +00:00
8b59136942 lrwn: Implement v2 app layer multicast setup structs. 2025-03-13 15:09:03 +00:00
b5e562aa64 lrwn: Implement v2 app layer clock sync structs.
These are the same as the v1 struct, buts re-exporting will make the
documentation confusing + will become inconsistent with other app layer
packages that do provide different struct implementations.
2025-03-13 15:09:03 +00:00
5a7694a3a4 Bump version to 4.12.0-test.1 2025-03-13 15:09:03 +00:00
98ba2f3198 Set device tags after FUOTA complete. 2025-03-13 15:09:03 +00:00
bbdf2dd781 Error if there are no fuota devices + cleanup mc group.
In case there are no fuota devices (e.g. all devices failed the previous
step), this will log a warning and the flow will continue with multicast
cleanup and completion steps.
2025-03-13 15:09:03 +00:00
71cc1aca74 Set FUOTA deployment completed_at. 2025-03-13 15:09:03 +00:00
27f6d2cf03 Implement full FUOTA flow + UI components. 2025-03-13 15:09:03 +00:00
b8ab0182de ui: Make app-layer params configurable. 2025-03-13 15:09:03 +00:00
b1e6c97942 Add get_ and update_device to fuota storage + add return_msg.
The return_msg (text) field can be used to capture errors, e.g. when the
end-device failed to setup the multicast-group.
2025-03-13 15:09:03 +00:00
e75b62f335 lrwn: Add function for encrypting McKey. 2025-03-13 15:09:03 +00:00
cac682c245 Implement handling AppTimeReq / AppTimeAns. 2025-03-13 15:09:03 +00:00
b61a684739 Update fuota + device-keys structs / storage.
This add the gen_app_key to the device keys which is needed for FUOTA
and adds a random multicast address + key to the fuota deployment. To
the FUOTA job structure, this adds a return msg such that errors can
be captured in the database.
2025-03-13 15:09:03 +00:00
439a6b0542 lrwn: Fix clocksync time_correction type.
The correct type is i32 instead of u32, as the value can be negative.
2025-03-13 15:09:03 +00:00
f9efed2317 Rename ts00x_port to _f_port.
This is consistent with the naming in the lrwn package.
2025-03-13 15:09:03 +00:00
4984e8556d ui: First part of FUOTA UI implementation.
Currently this allows for creating FUOTA dpeloyments and adding to /
removing from devices and gateways. In its current state, it does not
show the status of the FUOTA deployment.
2025-03-13 15:09:03 +00:00
43753958ef api: List devices by device-profile + expose tags. 2025-03-13 15:09:03 +00:00
1d76fabdb0 Add APIs + functions to get app. device-profiles and tags.
These API methods can be used to given an application id, retrieve
the list of used device-profiles and device tags.
2025-03-13 15:09:03 +00:00
de7e0c619d Update fuota API. Add options for auto-calculation of params.
This adds options to auto-calculate the fragment size (based on max.
payload size available for the given data-rate) and multicast
timeout (based on server settings).
2025-03-13 15:09:03 +00:00
38386b23f2 Add start job + get schedulable jobs functions + API. 2025-03-13 15:09:03 +00:00
a3e27d8b65 Add tests + add fuota jobs functions. 2025-03-13 15:09:03 +00:00
9b735d6521 Add first fuota storage functions / API. 2025-03-13 15:09:03 +00:00
d000cd3385 Add option to filter devices by tags. 2025-03-13 15:09:03 +00:00
ac52cce7ee api: Extend 'limit' field documentation. 2025-03-13 15:09:03 +00:00
bbce25efbf Add app-layer params field to device-profile API. 2025-03-13 15:09:03 +00:00
4e7ab31714 Add app-layer params field to device-profile schema. 2025-03-13 15:09:03 +00:00
3c3c1f125d Refactor device-profile relay fields. 2025-03-13 15:09:03 +00:00
909eaed1ba Refactor device-profile class-c fields. 2025-03-13 15:09:03 +00:00
b8c02b943c Refactor device-profile class-b fields. 2025-03-13 15:09:03 +00:00
82ed66cf09 Refactor device-profile abp fields.
This this puts the ABP parameters into a single JSON(B) field, to reduce
the amount of device-profile fields that currently exist. The same work
will be done for Class-B/C and Relay parameters. Once completed, this
means we can drop the diesel '64-column-tables' feature, which will
reduce compile time.
2025-03-13 15:09:03 +00:00
f3d3262006 lrwn: Implement v1 applayer multicastsetup key functions. 2025-03-13 15:09:03 +00:00
ffe01d387c lrwn: Implement applayer v1 fragmentation encoding func. 2025-03-13 15:09:03 +00:00
d1f4f42a79 lrwn: Implement v1 applayer fragmentation structs. 2025-03-13 15:09:03 +00:00
bf21297a42 lrwn: Replace Duration with u32 in applayer timesync. 2025-03-13 15:09:03 +00:00
bcb8aaad4f lrwn: Implement v1 applayer multicast setup structs. 2025-03-13 15:09:03 +00:00
f43c9154bc lrwn: Implement v1 applayer clock sync structs. 2025-03-13 15:09:03 +00:00
3e7f09db62 Add Yandex ID OAuth provider support. (#622) 2025-03-12 13:03:35 +00:00
01246dd124 Add sorting to device and gw table. (#579)
Co-authored-by: Franka Schmid <fra.schmid@rational-online.com>
Co-authored-by: Orne Brocaar <info@brocaar.com>
2025-02-10 12:18:08 +00:00
2fc762d932 Bump version to 4.11.1 2025-02-10 11:41:05 +00:00
24333f8b5d Bump version to 4.11.1-test.2 2025-02-10 11:10:11 +00:00
99239a82d4 Revert from sqlite-interactive to sqlite. 2025-02-10 10:56:48 +00:00
317c1cb14d Update dev-dependencies to shell.nix. 2025-02-10 10:27:22 +00:00
2e0d034a6b Bump version to 4.11.1 2025-02-07 15:56:39 +00:00
fb59f541b1 Fix ns_time + setting of JSON flag.
These lines were accidentally removed by 922a83597f
when removing the metadata keys as part of the region refactor.
2025-02-03 12:46:04 +00:00
f6374f00f8 Bump version to 4.11.1-test.1 2025-01-30 19:37:17 +00:00
32a9aadbae Re-use http clients within integrations.
This reduces CPU load, especially in case when HTTPS is being used
as connections will be pooled by the http client.
2025-01-30 19:17:44 +00:00
99613014ad Return LinkCheckAns with margin=0 for non-LoRa modulations. 2025-01-22 09:09:27 +00:00
8cb2d4f383 Bump version to 4.11.0 2025-01-15 12:13:04 +00:00
96b544974e Bump version to 4.11.0-test.2 2025-01-13 15:00:37 +00:00
a71113db42 Update Rust toolchain + fix Clippy feedback. 2025-01-13 12:16:15 +00:00
2e738e1f33 Bump version to 4.11.0 2025-01-10 13:44:11 +00:00
0487d6a7f0 Bump golang.org/x/net from 0.23.0 to 0.33.0 in /examples/frame_log/go (#591)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.23.0 to 0.33.0.
- [Commits](https://github.com/golang/net/compare/v0.23.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-10 11:57:09 +00:00
6864f6ef2b Bump thiserror from 2.0.6 to 2.0.10 (#592)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 2.0.6 to 2.0.10.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/2.0.6...2.0.10)

---
updated-dependencies:
- dependency-name: thiserror
  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>
2025-01-10 11:53:56 +00:00
9c25a5d48b Bump serde_json from 1.0.134 to 1.0.135 (#593)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.134 to 1.0.135.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.134...v1.0.135)

---
updated-dependencies:
- dependency-name: serde_json
  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>
2025-01-10 11:53:43 +00:00
de492a7e30 Bump serde from 1.0.215 to 1.0.217 (#587)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.215 to 1.0.217.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.215...v1.0.217)

---
updated-dependencies:
- dependency-name: serde
  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>
2025-01-10 11:53:32 +00:00
2028ccab9a Bump nanoid from 3.3.7 to 3.3.8 in /ui (#577)
Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.7 to 3.3.8.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.7...3.3.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-10 11:38:26 +00:00
724dfb138c Bump serde_json from 1.0.133 to 1.0.134 (#584)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.133 to 1.0.134.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.133...v1.0.134)

---
updated-dependencies:
- dependency-name: serde_json
  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>
2025-01-10 11:38:00 +00:00
b6763cc951 Bump rustls from 0.23.19 to 0.23.20 (#581)
Bumps [rustls](https://github.com/rustls/rustls) from 0.23.19 to 0.23.20.
- [Release notes](https://github.com/rustls/rustls/releases)
- [Changelog](https://github.com/rustls/rustls/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustls/rustls/compare/v/0.23.19...v/0.23.20)

---
updated-dependencies:
- dependency-name: rustls
  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>
2025-01-10 11:37:51 +00:00
df3aafd1c4 Bump tower from 0.5.1 to 0.5.2 (#580)
Bumps [tower](https://github.com/tower-rs/tower) from 0.5.1 to 0.5.2.
- [Release notes](https://github.com/tower-rs/tower/releases)
- [Commits](https://github.com/tower-rs/tower/compare/tower-0.5.1...tower-0.5.2)

---
updated-dependencies:
- dependency-name: tower
  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>
2025-01-10 11:37:38 +00:00
64b2e82244 Bump version to 4.11.0-test.1 2024-12-11 09:33:27 +00:00
70e4afae54 Expose region_config_id in Uplink and Join event. 2024-12-10 14:07:59 +00:00
922a83597f Refactor handling same uplink under multiple regions. 2024-12-10 14:07:59 +00:00
e50a1e3655 Bump version to 4.10.2 2024-12-10 13:01:17 +00:00
e5397ca43a Update dependencies. 2024-12-10 12:53:16 +00:00
a70afa223b Remove old build config. 2024-12-10 12:48:52 +00:00
7936955a19 Update base image version. 2024-12-06 09:54:54 +00:00
092c119cdc Bump thiserror from 1.0.69 to 2.0.4 (#571)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.69 to 2.0.4.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.69...2.0.4)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 12:28:15 +00:00
661c4ed417 Bump cross-spawn from 7.0.3 to 7.0.6 in /ui (#562)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 12:26:31 +00:00
8aff4490f9 Update dependencies. 2024-12-05 12:25:33 +00:00
30b1e0301a Fix multicast tests for SQLite. 2024-12-05 12:02:37 +00:00
d3692144fa Update nix version to 24.11. 2024-12-05 11:20:20 +00:00
91b9077ba8 Update multicast function to return expired queue items.
In case a gateway is offline, associated queue-items would be excluded
by the get_schedulable_queue_items function. With this change when the
queue item has expired it will be returned even if the gateway is
offline. This way, the expired queue item will be deleted by the
multicast flow.
2024-12-05 11:05:21 +00:00
532392abe1 Fix dev_nonces migration. 2024-11-13 11:42:08 +00:00
41b3c6a4e4 Implement support for storing DevNonces per JoinEUI. 2024-11-13 09:33:16 +00:00
4b6391f57e Bump version to 4.10.1 2024-11-04 15:20:07 +00:00
ed11c88307 Bump version to 4.10.1-test.1 2024-11-04 12:33:08 +00:00
0ed78a1d0a Fix incorrect systemd service-name after #540.
Currently, cargo-deb does not use the variant name option as systemd
service-name, causing the postgres variant with name 'chirpstack' to
install a 'chirpstack-postgres' systemd service. See also
https://github.com/kornelski/cargo-deb/issues/150.

This also fixes the RPM systemd service-name for the sqlite variant.
2024-11-04 12:19:19 +00:00
fdf168bd09 Bump version to 4.10.0 2024-11-04 09:09:44 +00:00
dddb471878 Update dependencies. 2024-11-01 13:45:59 +00:00
f265a815a6 Bump version to 4.10.0-test.7 2024-10-30 14:20:21 +00:00
9bf78eebfd Attempt #3 to fix matrix.database Docker image suffix. 2024-10-30 11:58:35 +00:00
3d470c6a14 Update dependencies. 2024-10-29 16:21:24 +00:00
2b5b54a7b7 Bump version to 4.10.0-test.6 2024-10-29 16:04:44 +00:00
905db6e9b7 Attempt #2 to fix matrix.database Docker image suffix. 2024-10-29 15:58:54 +00:00
1245386f38 Bump version to 4.10.0-test.5 2024-10-29 12:27:29 +00:00
49e7c1ccb9 Try fix matrix.database == 'postgres'. 2024-10-29 12:16:15 +00:00
eafda74526 Bump version to 4.10.0-test.4 2024-10-29 11:06:48 +00:00
3378a81a37 Fix GitHub workflow. 2024-10-29 11:00:16 +00:00
04e676cad6 Bump version to 4.10.0-test.3 2024-10-29 10:52:37 +00:00
e3b83066b7 Build separate Docker image for SQLite. 2024-10-29 10:48:28 +00:00
dcf6ea14bd Bump version to 4.10.0-test.2 2024-10-29 09:30:29 +00:00
b1766e506d Remove debug println. 2024-10-23 13:45:02 +01:00
87c918bc35 api: Add C support (#549) 2024-10-23 13:24:07 +01:00
d5929e0523 lrwn-filters: Expose is_match method on prefix types. 2024-10-17 15:41:20 +01:00
d69f18edad Build/archive package for both Postgres and SQLite (#540) 2024-10-17 15:39:49 +01:00
6621a23652 ui: Update page-title according to page. (#539) 2024-10-15 10:48:33 +01:00
20ec2877f2 Fix fmt after clippy fixes. 2024-10-14 15:30:15 +01:00
10cbdb1e00 Fix clippy feedback. 2024-10-14 15:12:33 +01:00
d24b8241c5 api: Rename compile > compile_protos. 2024-10-14 15:12:33 +01:00
eecdeeb092 Bump rollup from 4.18.1 to 4.22.4 in /ui (#526)
Bumps [rollup](https://github.com/rollup/rollup) from 4.18.1 to 4.22.4.
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rollup/rollup/compare/v4.18.1...v4.22.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-14 14:38:14 +01:00
20e9e087ed Update dependencies. 2024-10-14 14:35:11 +01:00
c9bdea87f1 Fix validate_mic clause. 2024-10-04 08:41:00 +01:00
11fdd33139 Bump version to 4.10.0-test.1 2024-09-19 12:19:22 +01:00
07364fb05d Return with abort instead of error.
This is not an operational error, we are already logging the message as
warn, which is more appropriate as it is caused by user-input.
2024-09-19 12:06:08 +01:00
3b42b9ffdb Update dependencies. 2024-09-19 10:44:26 +01:00
af139ebabd Bump micromatch from 4.0.7 to 4.0.8 in /ui (#501)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.7 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.7...4.0.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 10:24:33 +01:00
bf74c9d91d Bump vite from 5.3.3 to 5.3.6 in /ui (#516)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.3.3 to 5.3.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.3.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.3.6/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 10:24:17 +01:00
4d7a4b22e1 ui: Implement queue-item expires-at timestamp in UI. 2024-09-19 10:17:42 +01:00
3829f591e4 Add expires_at to queue-items (unicast & multicast).
This makes it possible to automatically remove items from the queue in
case the expires_at timestamp has reached. This field is optional and
the default remains to never expire queue-items.
2024-09-17 11:54:29 +01:00
2919fb79e5 Fix escaping issue in TOML template.
Closes #486.
2024-09-13 12:59:09 +01:00
61d794b680 Remove OFF, which is not a valid tracing Level. 2024-09-12 14:42:51 +01:00
29b57fb72a Implement importer for lorawan-device-profiles repo. 2024-09-12 14:22:09 +01:00
190d977bf5 lrwn: Update Deserialize trait implementation. 2024-09-12 14:20:59 +01:00
9d04a74a94 Update dependencies. 2024-09-09 13:36:59 +01:00
5f8ddca7b7 api: Re-export pbjson_types and tonic.
Closes #504.
2024-09-09 11:59:51 +01:00
e04515f647 ui: Run make format to format ui code. 2024-08-28 14:44:22 +01:00
d69a0eee75 ui: Fix tooltip date formatting.
With the migration from moment to date-fns (#460) some of the formatting
strings were not updated accordingly.

Fixes #503.
2024-08-28 14:44:07 +01:00
e63296573b Implement support for SQLite database backend. (#418) (#500)
This feature makes it possible to select between PostgreSQL and SQLite as database backend using a compile feature-flag. It is not possible to enable both at the same time.

---------

Co-authored-by: Momo Bel <plopyomomo@gmail.com>
2024-08-26 13:22:35 +01:00
800d7d0efe api: Upgrade io.grpc dependencies in Java API. (#494)
This fixes a compatibility issue with Netty.

---
Co-authored-by: Guillaume Milani <guillaume.milani@sontex.ch>
2024-08-21 14:49:08 +01:00
489a35e0ec Bump version to 4.9.0 2024-08-15 09:06:19 +01:00
1848097e6c Fix missing last_seen_at field update of relay gateway. 2024-08-13 15:54:51 +01:00
76b7ec4881 Add signal handling.
Fixes #480.
2024-08-13 13:04:06 +01:00
3aaa114f46 Update deadpool-redis. 2024-08-08 16:53:07 +01:00
a811ec5c80 Bump version to 4.9.0-test.6 2024-08-07 15:11:09 +01:00
5794f41324 Fix clippy feedback (cargo clippy --fix). 2024-08-07 14:59:25 +01:00
7158c0c610 ui: Update codec template with JSDoc (#473) 2024-08-05 11:17:13 +01:00
eda6646b18 Update dependencies. 2024-08-05 10:15:23 +01:00
40a2b83bf5 Update redis dependency. 2024-08-05 10:06:48 +01:00
4e0106a4e8 Replace warp with axum.
The warp dependency was causing some issues with upgrading dependencies
as it depends on http v0.2, where other dependencies (e.g. tonic) have
already upgraded to http v1+.
2024-08-01 11:33:57 +01:00
98978135c4 ui: Fix formatting template after merging #460. 2024-07-30 11:18:52 +01:00
6a691c62e2 Update dependencies. 2024-07-24 14:12:50 +01:00
66ab41036b Update lapin crate.
This disables the default features (rustls), because lapin enables the
default rustls features, which pulls in the aws-lc-rs dependency besides
ring.

Most likely, the next lapin version will fix this by exposing feature
flags to either enable aws-lc-rs or ring backend for rustls.
2024-07-24 14:05:46 +01:00
dc57e6fe51 Update rustls to 0.23. 2024-07-23 14:03:09 +01:00
ebc4065ca2 Bump version to 4.9.0-test.5 2024-07-23 11:03:39 +01:00
a23797ddbb Fix updating dependencies.
The previous update dependencies commit contained a dependency that
pulled in the aws-lc-rs crate, which fails to build on ARMv7. See also
370b84cb09.

This commit reverts the updates and only updates part of the crates.

A proper fix will be to update all dependencies to rustls 0.23 such that
we can enable the ring feature flag (which is the 0.22 default).
2024-07-23 10:39:58 +01:00
8fabfd925e Bump version to 4.9.0-test.4 2024-07-22 14:40:01 +01:00
2eb17bde92 Update install-nix-action workflow step. 2024-07-22 11:51:00 +01:00
a22ed43883 Update dependencies.
There are still a few dependencies left to update, but these updates
require additional code changes.
2024-07-22 11:48:08 +01:00
de656cf885 Add user_info config to region_... + format TOML.
Closes #462.
2024-07-22 10:48:43 +01:00
2a8e49bf8d ui: Replace moment with date-fns. (#460) 2024-07-22 10:16:08 +01:00
262f51da3f Update main.yml workflow. (#461) 2024-07-22 10:14:37 +01:00
4f0d2126d8 ui: Migrate from create-react-app to vite (#459) 2024-07-16 14:10:19 +01:00
3777de706d Make OIDC and OAuth2 scopes configurable. (#445)
Co-authored-by: Orne Brocaar <info@brocaar.com>
2024-07-11 10:51:37 +01:00
f76a4b7f83 lrwn: Allow empty string for AES128Key, DevAddr, EUI64 and NetID.
In case an empty string is provided, the default "null" value will be
used.

Fixes #453.
2024-07-11 10:05:23 +01:00
920f485734 Update openidconnect dependency.
Fixes #423.
2024-07-11 09:56:13 +01:00
2737284d2d Update oauth2 dependency. 2024-07-11 09:56:13 +01:00
d39fbea7af Fix typo in gateway stats handling. (#458) 2024-07-11 09:01:20 +01:00
15461d8cc5 Improved device activation api documentation (#454) 2024-07-10 15:06:01 +01:00
ad2fecd1d2 ui: Make tileserver + attribution configurable. (#451)
Co-authored-by: Orne Brocaar <info@brocaar.com>
2024-07-10 15:05:33 +01:00
4ef0fbbd8f Bump curve25519-dalek from 4.1.2 to 4.1.3 (#442)
Bumps [curve25519-dalek](https://github.com/dalek-cryptography/curve25519-dalek) from 4.1.2 to 4.1.3.
- [Release notes](https://github.com/dalek-cryptography/curve25519-dalek/releases)
- [Commits](https://github.com/dalek-cryptography/curve25519-dalek/compare/curve25519-4.1.2...curve25519-4.1.3)

---
updated-dependencies:
- dependency-name: curve25519-dalek
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 12:22:35 +01:00
264f51a190 Bump ws from 7.5.9 to 7.5.10 in /ui (#441)
Bumps [ws](https://github.com/websockets/ws) from 7.5.9 to 7.5.10.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.5.9...7.5.10)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 12:21:54 +01:00
abde97f46d Bump braces from 3.0.2 to 3.0.3 in /ui (#436)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 12:21:35 +01:00
6c8e87f505 Bump @grpc/grpc-js from 1.10.4 to 1.10.9 in /api/js (#434)
Bumps [@grpc/grpc-js](https://github.com/grpc/grpc-node) from 1.10.4 to 1.10.9.
- [Release notes](https://github.com/grpc/grpc-node/releases)
- [Commits](https://github.com/grpc/grpc-node/compare/@grpc/grpc-js@1.10.4...@grpc/grpc-js@1.10.9)

---
updated-dependencies:
- dependency-name: "@grpc/grpc-js"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 12:21:16 +01:00
c173ace8bc api: Remove generated PHP code. (#452) 2024-07-09 12:15:16 +01:00
f153eb8ca0 lrwn: Fix typo in snr clamp. 2024-07-09 11:57:20 +01:00
4a33f67ed6 lrwn: Fix cargo clippy feedback. 2024-07-09 11:39:32 +01:00
63bc1b57de ui: Fix isGatewayAdmin build error. 2024-07-09 11:25:10 +01:00
f854236b79 Bump version to 4.9.0-test.3 2024-06-26 14:57:17 +01:00
d25cc3ca6d Update mesh heartbeat MQTT topic. 2024-06-25 13:57:13 +01:00
937 changed files with 38718 additions and 82919 deletions

View File

@ -13,18 +13,25 @@ env:
jobs:
tests:
runs-on: ubuntu-latest
strategy:
matrix:
database:
- postgres
- sqlite
env:
DATABASE: ${{ matrix.database }}
steps:
-
name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
-
name: Install Nix
uses: cachix/install-nix-action@v20
uses: cachix/install-nix-action@v27
with:
nix_path: nixpkgs=channel:nixos-22.11
nix_path: nixpkgs=channel:nixos-24.11
-
name: Cargo cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
@ -32,7 +39,7 @@ jobs:
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-test-${{ hashFiles('**/Cargo.lock') }}
key: ${{ runner.os }}-cargo-test-${{ matrix.database }}-${{ hashFiles('**/Cargo.lock') }}
-
name: Start dependency services
run: docker compose up -d
@ -47,18 +54,25 @@ jobs:
needs: tests
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/v')
strategy:
matrix:
database:
- postgres
- sqlite
env:
DATABASE: ${{ matrix.database }}
steps:
-
name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
-
name: Install Nix
uses: cachix/install-nix-action@v20
uses: cachix/install-nix-action@v27
with:
nix_path: nixpkgs=channel:nixos-22.11
nix_path: nixpkgs=channel:nixos-24.11
-
name: Cargo cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
@ -94,7 +108,7 @@ jobs:
uses: docker/metadata-action@v3
with:
images: |
chirpstack/${{ github.event.repository.name }}
chirpstack/${{ github.event.repository.name }}${{ matrix.database != 'postgres' && format('-{0}', matrix.database) || '' }}
tags: |
type=semver,pattern={{version}}
type=semver,pattern={{major}}

4
.gitignore vendored
View File

@ -11,8 +11,12 @@
# Binary packages
/dist
# SQLite databases
*.sqlite
# Rust target directory
**/target
**/target-sqlite
# Certificates
/chirpstack/configuration/certs/*

3478
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,19 +1,15 @@
[workspace]
resolver = "2"
members = [
"chirpstack",
"chirpstack-integration",
"lrwn",
"lrwn-filters",
"backend",
"api/rust",
]
resolver = "2"
members = [
"chirpstack",
"chirpstack-integration",
"lrwn",
"lrwn-filters",
"backend",
"api/rust",
]
[profile.release]
opt-level = 'z'
lto = true
codegen-units = 1
[patch.crates-io]
# Remove if diesel-async > 0.4.1
diesel-async = { git = "https://github.com/weiznich/diesel_async.git", rev = "017ebe2fb7a2709ab5db92148dea5ce812a35e09" }
opt-level = 'z'
lto = true
codegen-units = 1

View File

@ -1,5 +1,5 @@
# Copy binary stage
FROM --platform=$BUILDPLATFORM alpine:3.18.0 as binary
FROM --platform=$BUILDPLATFORM alpine:3.21.0 as binary
ARG TARGETPLATFORM
@ -20,11 +20,11 @@ RUN case "$TARGETPLATFORM" in \
esac;
# Final stage
FROM alpine:3.18.0
FROM alpine:3.21.0
RUN apk --no-cache add \
ca-certificates
COPY --from=binary /usr/bin/chirpstack /usr/bin/chirpstack
USER nobody:nogroup
ENTRYPOINT ["/usr/bin/chirpstack"]
ENTRYPOINT ["/usr/bin/chirpstack"]

View File

@ -7,10 +7,7 @@ dist:
# Install dev dependencies
dev-dependencies:
cargo install cross --version 0.2.5
cargo install diesel_cli --version 2.2.1 --no-default-features --features postgres
cargo install cargo-deb --version 1.43.1
cargo install cargo-generate-rpm --version 0.12.1
cargo install cargo-generate-rpm --version 0.12.1 --locked
# Set the versions
version:
@ -53,10 +50,6 @@ devshell:
docker-devshell:
docker compose run --rm --service-ports --name chirpstack chirpstack
# Enters the devshell for ChirpStack UI development.
docker-devshell-ui:
docker compose run --rm --service-ports --name chirpstack-ui chirpstack-ui bash
# Runs the tests
test:
cd api && make rust

View File

@ -84,7 +84,11 @@ docker compose up -d
Run the following command to run the ChirpStack tests:
```bash
# Test (with PostgresQL database backend)
make test
# Test with SQLite database backend
DATABASE=sqlite make test
```
### Building ChirpStack binaries
@ -109,6 +113,34 @@ make release-amd64
make dist
```
By default the above commands will build ChirpStack with the PostgresQL database
database backend. Set the `DATABASE=sqlite` env. variable to compile ChirpStack
with the SQLite database backend.
### Database migrations
To create a new database migration, execute:
```
make migration-generate NAME=test-migration
```
To apply migrations, execute:
```
make migration-run
```
To revert a migration, execute:
```
make migration-revert
```
By default the above commands will execute the migration commands using the
PostgresQL database backend. To execute migration commands for the SQLite
database backend, set the `DATABASE=sqlite` env. variable.
## License
ChirpStack Network Server is distributed under the MIT license. See also

16
api/Dockerfile-c vendored Normal file
View File

@ -0,0 +1,16 @@
FROM alpine:latest
ENV PROJECT_PATH=/chirpstack/api
RUN apk add --no-cache make git bash protobuf protobuf-dev pkgconfig autoconf automake libtool gcc g++
# Install protobuf implementation for C
RUN git clone --depth=1 https://github.com/protobuf-c/protobuf-c.git /protobuf-c
RUN cd /protobuf-c && ./autogen.sh && ./configure && make && make install
# Proto dependencies stuff
RUN git clone --depth=1 https://github.com/protocolbuffers/protobuf.git /protobuf
RUN git clone --depth=1 https://github.com/googleapis/googleapis.git /googleapis
RUN mkdir -p PROJECT_PATH
WORKDIR $PROJECT_PATH

9
api/Makefile vendored
View File

@ -1,6 +1,6 @@
.PHONY: rust grpc-web go js python md java kotlin csharp php
.PHONY: rust grpc-web go js python md java kotlin csharp php c
all: rust grpc-web go js python md java kotlin csharp php
all: rust grpc-web go js python md java kotlin csharp php c
rust:
cd rust && make
@ -30,4 +30,7 @@ csharp:
docker compose run --rm chirpstack-csharp
php:
docker compose run --rm chirpstack-api-php
docker compose run --rm chirpstack-api-php
c:
docker compose run --rm chirpstack-api-c

2
api/c/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
/src/
/proto/

34
api/c/Makefile vendored Normal file
View File

@ -0,0 +1,34 @@
.PHONY: all pre-build
PROTOC := protoc-c
PROTOC_ARGS := -I=proto -I=proto/chirpstack-api --c_out=./src
GOOGLE_PROTOBUF_REQUIREMENTS =
GOOGLE_PROTOBUF_REQUIREMENTS += timestamp.proto
GOOGLE_PROTOBUF_REQUIREMENTS += duration.proto
GOOGLE_PROTOBUF_REQUIREMENTS += struct.proto
GOOGLE_PROTOBUF_REQUIREMENTS += empty.proto
GOOGLE_PROTOBUF_REQUIREMENTS += descriptor.proto
GOOGLE_PROTOBUF_OUTPUT = $(patsubst %.proto, src/google/protobuf/%.pb-c.h, $(GOOGLE_PROTOBUF_REQUIREMENTS))
all: pre-build $(GOOGLE_PROTOBUF_OUTPUT) build
pre-build:
rm -rf proto src
mkdir -p proto/chirpstack-api
mkdir -p proto/google/protobuf
cp -r ../proto/* proto/chirpstack-api/
mv proto/chirpstack-api/google/api proto/google/api
mkdir -p src
sed -i \
-r 's/(\s+bytes std)(in|out|err)(\s+=.*)/\1_\2\3/' \
proto/chirpstack-api/gw/gw.proto
src/google/protobuf/%.pb-c.h: /protobuf/src/google/protobuf/%.proto
cp $< proto/google/protobuf/
build:
find proto \
-name '*.proto' \
-type f \
-exec $(PROTOC) $(PROTOC_ARGS) {} \;

View File

@ -49,3 +49,10 @@ services:
command: bash -c "cd php && make all"
volumes:
- ./:/chirpstack/api
chirpstack-api-c:
build:
context: .
dockerfile: Dockerfile-c
command: bash -c "cd c && make all"
volumes:
- ./:/chirpstack/api

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/application.proto
package api
@ -67,6 +67,8 @@ const (
ApplicationService_UpdateIftttIntegration_FullMethodName = "/api.ApplicationService/UpdateIftttIntegration"
ApplicationService_DeleteIftttIntegration_FullMethodName = "/api.ApplicationService/DeleteIftttIntegration"
ApplicationService_GenerateMqttIntegrationClientCertificate_FullMethodName = "/api.ApplicationService/GenerateMqttIntegrationClientCertificate"
ApplicationService_ListDeviceProfiles_FullMethodName = "/api.ApplicationService/ListDeviceProfiles"
ApplicationService_ListDeviceTags_FullMethodName = "/api.ApplicationService/ListDeviceTags"
)
// ApplicationServiceClient is the client API for ApplicationService service.
@ -167,6 +169,10 @@ type ApplicationServiceClient interface {
DeleteIftttIntegration(ctx context.Context, in *DeleteIftttIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
// Generates application ID specific client-certificate.
GenerateMqttIntegrationClientCertificate(ctx context.Context, in *GenerateMqttIntegrationClientCertificateRequest, opts ...grpc.CallOption) (*GenerateMqttIntegrationClientCertificateResponse, error)
// List device-profiles used within the given application.
ListDeviceProfiles(ctx context.Context, in *ListApplicationDeviceProfilesRequest, opts ...grpc.CallOption) (*ListApplicationDeviceProfilesResponse, error)
// List device tags used within the given application.
ListDeviceTags(ctx context.Context, in *ListApplicationDeviceTagsRequest, opts ...grpc.CallOption) (*ListApplicationDeviceTagsResponse, error)
}
type applicationServiceClient struct {
@ -600,6 +606,24 @@ func (c *applicationServiceClient) GenerateMqttIntegrationClientCertificate(ctx
return out, nil
}
func (c *applicationServiceClient) ListDeviceProfiles(ctx context.Context, in *ListApplicationDeviceProfilesRequest, opts ...grpc.CallOption) (*ListApplicationDeviceProfilesResponse, error) {
out := new(ListApplicationDeviceProfilesResponse)
err := c.cc.Invoke(ctx, ApplicationService_ListDeviceProfiles_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *applicationServiceClient) ListDeviceTags(ctx context.Context, in *ListApplicationDeviceTagsRequest, opts ...grpc.CallOption) (*ListApplicationDeviceTagsResponse, error) {
out := new(ListApplicationDeviceTagsResponse)
err := c.cc.Invoke(ctx, ApplicationService_ListDeviceTags_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ApplicationServiceServer is the server API for ApplicationService service.
// All implementations must embed UnimplementedApplicationServiceServer
// for forward compatibility
@ -698,6 +722,10 @@ type ApplicationServiceServer interface {
DeleteIftttIntegration(context.Context, *DeleteIftttIntegrationRequest) (*emptypb.Empty, error)
// Generates application ID specific client-certificate.
GenerateMqttIntegrationClientCertificate(context.Context, *GenerateMqttIntegrationClientCertificateRequest) (*GenerateMqttIntegrationClientCertificateResponse, error)
// List device-profiles used within the given application.
ListDeviceProfiles(context.Context, *ListApplicationDeviceProfilesRequest) (*ListApplicationDeviceProfilesResponse, error)
// List device tags used within the given application.
ListDeviceTags(context.Context, *ListApplicationDeviceTagsRequest) (*ListApplicationDeviceTagsResponse, error)
mustEmbedUnimplementedApplicationServiceServer()
}
@ -846,6 +874,12 @@ func (UnimplementedApplicationServiceServer) DeleteIftttIntegration(context.Cont
func (UnimplementedApplicationServiceServer) GenerateMqttIntegrationClientCertificate(context.Context, *GenerateMqttIntegrationClientCertificateRequest) (*GenerateMqttIntegrationClientCertificateResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GenerateMqttIntegrationClientCertificate not implemented")
}
func (UnimplementedApplicationServiceServer) ListDeviceProfiles(context.Context, *ListApplicationDeviceProfilesRequest) (*ListApplicationDeviceProfilesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListDeviceProfiles not implemented")
}
func (UnimplementedApplicationServiceServer) ListDeviceTags(context.Context, *ListApplicationDeviceTagsRequest) (*ListApplicationDeviceTagsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListDeviceTags not implemented")
}
func (UnimplementedApplicationServiceServer) mustEmbedUnimplementedApplicationServiceServer() {}
// UnsafeApplicationServiceServer may be embedded to opt out of forward compatibility for this service.
@ -1705,6 +1739,42 @@ func _ApplicationService_GenerateMqttIntegrationClientCertificate_Handler(srv in
return interceptor(ctx, in, info, handler)
}
func _ApplicationService_ListDeviceProfiles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListApplicationDeviceProfilesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ApplicationServiceServer).ListDeviceProfiles(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ApplicationService_ListDeviceProfiles_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).ListDeviceProfiles(ctx, req.(*ListApplicationDeviceProfilesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ApplicationService_ListDeviceTags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListApplicationDeviceTagsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ApplicationServiceServer).ListDeviceTags(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ApplicationService_ListDeviceTags_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ApplicationServiceServer).ListDeviceTags(ctx, req.(*ListApplicationDeviceTagsRequest))
}
return interceptor(ctx, in, info, handler)
}
// ApplicationService_ServiceDesc is the grpc.ServiceDesc for ApplicationService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@ -1900,6 +1970,14 @@ var ApplicationService_ServiceDesc = grpc.ServiceDesc{
MethodName: "GenerateMqttIntegrationClientCertificate",
Handler: _ApplicationService_GenerateMqttIntegrationClientCertificate_Handler,
},
{
MethodName: "ListDeviceProfiles",
Handler: _ApplicationService_ListDeviceProfiles_Handler,
},
{
MethodName: "ListDeviceTags",
Handler: _ApplicationService_ListDeviceTags_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "api/application.proto",

1701
api/go/api/device.pb.go vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/device.proto
package api

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/device_profile.proto
package api

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: api/device_profile_template.proto
package api
@ -105,11 +105,9 @@ type DeviceProfileTemplate struct {
func (x *DeviceProfileTemplate) Reset() {
*x = DeviceProfileTemplate{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeviceProfileTemplate) String() string {
@ -120,7 +118,7 @@ func (*DeviceProfileTemplate) ProtoMessage() {}
func (x *DeviceProfileTemplate) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -371,11 +369,9 @@ type DeviceProfileTemplateListItem struct {
func (x *DeviceProfileTemplateListItem) Reset() {
*x = DeviceProfileTemplateListItem{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeviceProfileTemplateListItem) String() string {
@ -386,7 +382,7 @@ func (*DeviceProfileTemplateListItem) ProtoMessage() {}
func (x *DeviceProfileTemplateListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -496,11 +492,9 @@ type CreateDeviceProfileTemplateRequest struct {
func (x *CreateDeviceProfileTemplateRequest) Reset() {
*x = CreateDeviceProfileTemplateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateDeviceProfileTemplateRequest) String() string {
@ -511,7 +505,7 @@ func (*CreateDeviceProfileTemplateRequest) ProtoMessage() {}
func (x *CreateDeviceProfileTemplateRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -544,11 +538,9 @@ type GetDeviceProfileTemplateRequest struct {
func (x *GetDeviceProfileTemplateRequest) Reset() {
*x = GetDeviceProfileTemplateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetDeviceProfileTemplateRequest) String() string {
@ -559,7 +551,7 @@ func (*GetDeviceProfileTemplateRequest) ProtoMessage() {}
func (x *GetDeviceProfileTemplateRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -596,11 +588,9 @@ type GetDeviceProfileTemplateResponse struct {
func (x *GetDeviceProfileTemplateResponse) Reset() {
*x = GetDeviceProfileTemplateResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetDeviceProfileTemplateResponse) String() string {
@ -611,7 +601,7 @@ func (*GetDeviceProfileTemplateResponse) ProtoMessage() {}
func (x *GetDeviceProfileTemplateResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -658,11 +648,9 @@ type UpdateDeviceProfileTemplateRequest struct {
func (x *UpdateDeviceProfileTemplateRequest) Reset() {
*x = UpdateDeviceProfileTemplateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateDeviceProfileTemplateRequest) String() string {
@ -673,7 +661,7 @@ func (*UpdateDeviceProfileTemplateRequest) ProtoMessage() {}
func (x *UpdateDeviceProfileTemplateRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -706,11 +694,9 @@ type DeleteDeviceProfileTemplateRequest struct {
func (x *DeleteDeviceProfileTemplateRequest) Reset() {
*x = DeleteDeviceProfileTemplateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteDeviceProfileTemplateRequest) String() string {
@ -721,7 +707,7 @@ func (*DeleteDeviceProfileTemplateRequest) ProtoMessage() {}
func (x *DeleteDeviceProfileTemplateRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -749,6 +735,7 @@ type ListDeviceProfileTemplatesRequest struct {
unknownFields protoimpl.UnknownFields
// Max number of device-profile templates to return in the result-set.
// If not set, it will be treated as 0, and the response will only return the total_count.
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"`
@ -756,11 +743,9 @@ type ListDeviceProfileTemplatesRequest struct {
func (x *ListDeviceProfileTemplatesRequest) Reset() {
*x = ListDeviceProfileTemplatesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListDeviceProfileTemplatesRequest) String() string {
@ -771,7 +756,7 @@ func (*ListDeviceProfileTemplatesRequest) ProtoMessage() {}
func (x *ListDeviceProfileTemplatesRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -813,11 +798,9 @@ type ListDeviceProfileTemplatesResponse struct {
func (x *ListDeviceProfileTemplatesResponse) Reset() {
*x = ListDeviceProfileTemplatesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_device_profile_template_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_device_profile_template_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListDeviceProfileTemplatesResponse) String() string {
@ -828,7 +811,7 @@ func (*ListDeviceProfileTemplatesResponse) ProtoMessage() {}
func (x *ListDeviceProfileTemplatesResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_device_profile_template_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1114,7 +1097,7 @@ func file_api_device_profile_template_proto_rawDescGZIP() []byte {
}
var file_api_device_profile_template_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
var file_api_device_profile_template_proto_goTypes = []interface{}{
var file_api_device_profile_template_proto_goTypes = []any{
(*DeviceProfileTemplate)(nil), // 0: api.DeviceProfileTemplate
(*DeviceProfileTemplateListItem)(nil), // 1: api.DeviceProfileTemplateListItem
(*CreateDeviceProfileTemplateRequest)(nil), // 2: api.CreateDeviceProfileTemplateRequest
@ -1176,116 +1159,6 @@ func file_api_device_profile_template_proto_init() {
return
}
file_api_device_profile_proto_init()
if !protoimpl.UnsafeEnabled {
file_api_device_profile_template_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeviceProfileTemplate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeviceProfileTemplateListItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateDeviceProfileTemplateRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetDeviceProfileTemplateRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetDeviceProfileTemplateResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateDeviceProfileTemplateRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteDeviceProfileTemplateRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListDeviceProfileTemplatesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_device_profile_template_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListDeviceProfileTemplatesResponse); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/device_profile_template.proto
package api

1337
api/go/api/gateway.pb.go vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/gateway.proto
package api

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/internal.proto
package api

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/multicast_group.proto
package api

186
api/go/api/relay.pb.go vendored
View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: api/relay.proto
package api
@ -36,11 +36,9 @@ type RelayListItem struct {
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)
}
mi := &file_api_relay_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RelayListItem) String() string {
@ -51,7 +49,7 @@ func (*RelayListItem) ProtoMessage() {}
func (x *RelayListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -86,6 +84,7 @@ type ListRelaysRequest struct {
unknownFields protoimpl.UnknownFields
// Max number of devices to return in the result-set.
// If not set, it will be treated as 0, and the response will only return the total_count.
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"`
@ -95,11 +94,9 @@ type ListRelaysRequest struct {
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)
}
mi := &file_api_relay_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListRelaysRequest) String() string {
@ -110,7 +107,7 @@ func (*ListRelaysRequest) ProtoMessage() {}
func (x *ListRelaysRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -159,11 +156,9 @@ type ListRelaysResponse struct {
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)
}
mi := &file_api_relay_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListRelaysResponse) String() string {
@ -174,7 +169,7 @@ func (*ListRelaysResponse) ProtoMessage() {}
func (x *ListRelaysResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -216,11 +211,9 @@ type AddRelayDeviceRequest struct {
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)
}
mi := &file_api_relay_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AddRelayDeviceRequest) String() string {
@ -231,7 +224,7 @@ func (*AddRelayDeviceRequest) ProtoMessage() {}
func (x *AddRelayDeviceRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -273,11 +266,9 @@ type RemoveRelayDeviceRequest struct {
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)
}
mi := &file_api_relay_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RemoveRelayDeviceRequest) String() string {
@ -288,7 +279,7 @@ func (*RemoveRelayDeviceRequest) ProtoMessage() {}
func (x *RemoveRelayDeviceRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -323,6 +314,7 @@ type ListRelayDevicesRequest struct {
unknownFields protoimpl.UnknownFields
// Max number of multicast groups to return in the result-set.
// If not set, it will be treated as 0, and the response will only return the total_count.
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"`
@ -332,11 +324,9 @@ type ListRelayDevicesRequest struct {
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)
}
mi := &file_api_relay_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListRelayDevicesRequest) String() string {
@ -347,7 +337,7 @@ func (*ListRelayDevicesRequest) ProtoMessage() {}
func (x *ListRelayDevicesRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -398,11 +388,9 @@ type RelayDeviceListItem struct {
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)
}
mi := &file_api_relay_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *RelayDeviceListItem) String() string {
@ -413,7 +401,7 @@ func (*RelayDeviceListItem) ProtoMessage() {}
func (x *RelayDeviceListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -462,11 +450,9 @@ type ListRelayDevicesResponse struct {
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)
}
mi := &file_api_relay_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListRelayDevicesResponse) String() string {
@ -477,7 +463,7 @@ func (*ListRelayDevicesResponse) ProtoMessage() {}
func (x *ListRelayDevicesResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_relay_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -621,7 +607,7 @@ func file_api_relay_proto_rawDescGZIP() []byte {
}
var file_api_relay_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_api_relay_proto_goTypes = []interface{}{
var file_api_relay_proto_goTypes = []any{
(*RelayListItem)(nil), // 0: api.RelayListItem
(*ListRelaysRequest)(nil), // 1: api.ListRelaysRequest
(*ListRelaysResponse)(nil), // 2: api.ListRelaysResponse
@ -657,104 +643,6 @@ 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/relay.proto
package api

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: api/tenant.proto
package api
@ -60,11 +60,9 @@ type Tenant struct {
func (x *Tenant) Reset() {
*x = Tenant{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Tenant) String() string {
@ -75,7 +73,7 @@ func (*Tenant) ProtoMessage() {}
func (x *Tenant) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -182,11 +180,9 @@ type TenantListItem struct {
func (x *TenantListItem) Reset() {
*x = TenantListItem{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TenantListItem) String() string {
@ -197,7 +193,7 @@ func (*TenantListItem) ProtoMessage() {}
func (x *TenantListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -286,11 +282,9 @@ type CreateTenantRequest struct {
func (x *CreateTenantRequest) Reset() {
*x = CreateTenantRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateTenantRequest) String() string {
@ -301,7 +295,7 @@ func (*CreateTenantRequest) ProtoMessage() {}
func (x *CreateTenantRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -334,11 +328,9 @@ type CreateTenantResponse struct {
func (x *CreateTenantResponse) Reset() {
*x = CreateTenantResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateTenantResponse) String() string {
@ -349,7 +341,7 @@ func (*CreateTenantResponse) ProtoMessage() {}
func (x *CreateTenantResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -382,11 +374,9 @@ type GetTenantRequest struct {
func (x *GetTenantRequest) Reset() {
*x = GetTenantRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetTenantRequest) String() string {
@ -397,7 +387,7 @@ func (*GetTenantRequest) ProtoMessage() {}
func (x *GetTenantRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -434,11 +424,9 @@ type GetTenantResponse struct {
func (x *GetTenantResponse) Reset() {
*x = GetTenantResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetTenantResponse) String() string {
@ -449,7 +437,7 @@ func (*GetTenantResponse) ProtoMessage() {}
func (x *GetTenantResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -496,11 +484,9 @@ type UpdateTenantRequest struct {
func (x *UpdateTenantRequest) Reset() {
*x = UpdateTenantRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateTenantRequest) String() string {
@ -511,7 +497,7 @@ func (*UpdateTenantRequest) ProtoMessage() {}
func (x *UpdateTenantRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -544,11 +530,9 @@ type DeleteTenantRequest struct {
func (x *DeleteTenantRequest) Reset() {
*x = DeleteTenantRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteTenantRequest) String() string {
@ -559,7 +543,7 @@ func (*DeleteTenantRequest) ProtoMessage() {}
func (x *DeleteTenantRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -587,6 +571,7 @@ type ListTenantsRequest struct {
unknownFields protoimpl.UnknownFields
// Max number of tenants to return in the result-set.
// If not set, it will be treated as 0, and the response will only return the total_count.
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"`
@ -599,11 +584,9 @@ type ListTenantsRequest struct {
func (x *ListTenantsRequest) Reset() {
*x = ListTenantsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListTenantsRequest) String() string {
@ -614,7 +597,7 @@ func (*ListTenantsRequest) ProtoMessage() {}
func (x *ListTenantsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -670,11 +653,9 @@ type ListTenantsResponse struct {
func (x *ListTenantsResponse) Reset() {
*x = ListTenantsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListTenantsResponse) String() string {
@ -685,7 +666,7 @@ func (*ListTenantsResponse) ProtoMessage() {}
func (x *ListTenantsResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -737,11 +718,9 @@ type TenantUser struct {
func (x *TenantUser) Reset() {
*x = TenantUser{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TenantUser) String() string {
@ -752,7 +731,7 @@ func (*TenantUser) ProtoMessage() {}
func (x *TenantUser) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -836,11 +815,9 @@ type TenantUserListItem struct {
func (x *TenantUserListItem) Reset() {
*x = TenantUserListItem{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TenantUserListItem) String() string {
@ -851,7 +828,7 @@ func (*TenantUserListItem) ProtoMessage() {}
func (x *TenantUserListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -933,11 +910,9 @@ type AddTenantUserRequest struct {
func (x *AddTenantUserRequest) Reset() {
*x = AddTenantUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AddTenantUserRequest) String() string {
@ -948,7 +923,7 @@ func (*AddTenantUserRequest) ProtoMessage() {}
func (x *AddTenantUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -983,11 +958,9 @@ type GetTenantUserRequest struct {
func (x *GetTenantUserRequest) Reset() {
*x = GetTenantUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetTenantUserRequest) String() string {
@ -998,7 +971,7 @@ func (*GetTenantUserRequest) ProtoMessage() {}
func (x *GetTenantUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1042,11 +1015,9 @@ type GetTenantUserResponse struct {
func (x *GetTenantUserResponse) Reset() {
*x = GetTenantUserResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetTenantUserResponse) String() string {
@ -1057,7 +1028,7 @@ func (*GetTenantUserResponse) ProtoMessage() {}
func (x *GetTenantUserResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1104,11 +1075,9 @@ type UpdateTenantUserRequest struct {
func (x *UpdateTenantUserRequest) Reset() {
*x = UpdateTenantUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateTenantUserRequest) String() string {
@ -1119,7 +1088,7 @@ func (*UpdateTenantUserRequest) ProtoMessage() {}
func (x *UpdateTenantUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1154,11 +1123,9 @@ type DeleteTenantUserRequest struct {
func (x *DeleteTenantUserRequest) Reset() {
*x = DeleteTenantUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteTenantUserRequest) String() string {
@ -1169,7 +1136,7 @@ func (*DeleteTenantUserRequest) ProtoMessage() {}
func (x *DeleteTenantUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1206,6 +1173,7 @@ type ListTenantUsersRequest struct {
// Tenant ID (UUID).
TenantId string `protobuf:"bytes,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
// Max number of tenants to return in the result-set.
// If not set, it will be treated as 0, and the response will only return the total_count.
Limit uint32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`
// Offset in the result-set (for pagination).
Offset uint32 `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`
@ -1213,11 +1181,9 @@ type ListTenantUsersRequest struct {
func (x *ListTenantUsersRequest) Reset() {
*x = ListTenantUsersRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListTenantUsersRequest) String() string {
@ -1228,7 +1194,7 @@ func (*ListTenantUsersRequest) ProtoMessage() {}
func (x *ListTenantUsersRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1277,11 +1243,9 @@ type ListTenantUsersResponse struct {
func (x *ListTenantUsersResponse) Reset() {
*x = ListTenantUsersResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_tenant_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_tenant_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListTenantUsersResponse) String() string {
@ -1292,7 +1256,7 @@ func (*ListTenantUsersResponse) ProtoMessage() {}
func (x *ListTenantUsersResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_tenant_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1590,7 +1554,7 @@ func file_api_tenant_proto_rawDescGZIP() []byte {
}
var file_api_tenant_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
var file_api_tenant_proto_goTypes = []interface{}{
var file_api_tenant_proto_goTypes = []any{
(*Tenant)(nil), // 0: api.Tenant
(*TenantListItem)(nil), // 1: api.TenantListItem
(*CreateTenantRequest)(nil), // 2: api.CreateTenantRequest
@ -1664,236 +1628,6 @@ func file_api_tenant_proto_init() {
if File_api_tenant_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_api_tenant_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Tenant); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TenantListItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateTenantRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateTenantResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetTenantRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetTenantResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateTenantRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteTenantRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListTenantsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListTenantsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TenantUser); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TenantUserListItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddTenantUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetTenantUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetTenantUserResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateTenantUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteTenantUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListTenantUsersRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_tenant_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListTenantUsersResponse); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/tenant.proto
package api

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

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: api/user.proto
package api
@ -43,11 +43,9 @@ type User struct {
func (x *User) Reset() {
*x = User{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *User) String() string {
@ -58,7 +56,7 @@ func (*User) ProtoMessage() {}
func (x *User) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -129,11 +127,9 @@ type UserListItem struct {
func (x *UserListItem) Reset() {
*x = UserListItem{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UserListItem) String() string {
@ -144,7 +140,7 @@ func (*UserListItem) ProtoMessage() {}
func (x *UserListItem) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -220,11 +216,9 @@ type UserTenant struct {
func (x *UserTenant) Reset() {
*x = UserTenant{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UserTenant) String() string {
@ -235,7 +229,7 @@ func (*UserTenant) ProtoMessage() {}
func (x *UserTenant) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -293,11 +287,9 @@ type CreateUserRequest struct {
func (x *CreateUserRequest) Reset() {
*x = CreateUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateUserRequest) String() string {
@ -308,7 +300,7 @@ func (*CreateUserRequest) ProtoMessage() {}
func (x *CreateUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -355,11 +347,9 @@ type CreateUserResponse struct {
func (x *CreateUserResponse) Reset() {
*x = CreateUserResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateUserResponse) String() string {
@ -370,7 +360,7 @@ func (*CreateUserResponse) ProtoMessage() {}
func (x *CreateUserResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -403,11 +393,9 @@ type GetUserRequest struct {
func (x *GetUserRequest) Reset() {
*x = GetUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetUserRequest) String() string {
@ -418,7 +406,7 @@ func (*GetUserRequest) ProtoMessage() {}
func (x *GetUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -455,11 +443,9 @@ type GetUserResponse struct {
func (x *GetUserResponse) Reset() {
*x = GetUserResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetUserResponse) String() string {
@ -470,7 +456,7 @@ func (*GetUserResponse) ProtoMessage() {}
func (x *GetUserResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -517,11 +503,9 @@ type UpdateUserRequest struct {
func (x *UpdateUserRequest) Reset() {
*x = UpdateUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateUserRequest) String() string {
@ -532,7 +516,7 @@ func (*UpdateUserRequest) ProtoMessage() {}
func (x *UpdateUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -565,11 +549,9 @@ type DeleteUserRequest struct {
func (x *DeleteUserRequest) Reset() {
*x = DeleteUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeleteUserRequest) String() string {
@ -580,7 +562,7 @@ func (*DeleteUserRequest) ProtoMessage() {}
func (x *DeleteUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -608,6 +590,7 @@ type ListUsersRequest struct {
unknownFields protoimpl.UnknownFields
// Max number of tenants to return in the result-set.
// If not set, it will be treated as 0, and the response will only return the total_count.
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"`
@ -615,11 +598,9 @@ type ListUsersRequest struct {
func (x *ListUsersRequest) Reset() {
*x = ListUsersRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListUsersRequest) String() string {
@ -630,7 +611,7 @@ func (*ListUsersRequest) ProtoMessage() {}
func (x *ListUsersRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -672,11 +653,9 @@ type ListUsersResponse struct {
func (x *ListUsersResponse) Reset() {
*x = ListUsersResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListUsersResponse) String() string {
@ -687,7 +666,7 @@ func (*ListUsersResponse) ProtoMessage() {}
func (x *ListUsersResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -729,11 +708,9 @@ type UpdateUserPasswordRequest struct {
func (x *UpdateUserPasswordRequest) Reset() {
*x = UpdateUserPasswordRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_api_user_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_api_user_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateUserPasswordRequest) String() string {
@ -744,7 +721,7 @@ func (*UpdateUserPasswordRequest) ProtoMessage() {}
func (x *UpdateUserPasswordRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_user_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -917,7 +894,7 @@ func file_api_user_proto_rawDescGZIP() []byte {
}
var file_api_user_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
var file_api_user_proto_goTypes = []interface{}{
var file_api_user_proto_goTypes = []any{
(*User)(nil), // 0: api.User
(*UserListItem)(nil), // 1: api.UserListItem
(*UserTenant)(nil), // 2: api.UserTenant
@ -967,152 +944,6 @@ func file_api_user_proto_init() {
if File_api_user_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_api_user_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*User); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserListItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserTenant); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateUserResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetUserResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListUsersRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListUsersResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_api_user_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateUserPasswordRequest); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v4.24.4
// - protoc v5.28.3
// source: api/user.proto
package api

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: common/common.proto
package common
@ -656,11 +656,9 @@ type Location struct {
func (x *Location) Reset() {
*x = Location{}
if protoimpl.UnsafeEnabled {
mi := &file_common_common_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_common_common_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Location) String() string {
@ -671,7 +669,7 @@ func (*Location) ProtoMessage() {}
func (x *Location) ProtoReflect() protoreflect.Message {
mi := &file_common_common_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -734,11 +732,9 @@ type KeyEnvelope struct {
func (x *KeyEnvelope) Reset() {
*x = KeyEnvelope{}
if protoimpl.UnsafeEnabled {
mi := &file_common_common_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_common_common_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *KeyEnvelope) String() string {
@ -749,7 +745,7 @@ func (*KeyEnvelope) ProtoMessage() {}
func (x *KeyEnvelope) ProtoReflect() protoreflect.Message {
mi := &file_common_common_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -795,11 +791,9 @@ type Metric struct {
func (x *Metric) Reset() {
*x = Metric{}
if protoimpl.UnsafeEnabled {
mi := &file_common_common_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_common_common_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Metric) String() string {
@ -810,7 +804,7 @@ func (*Metric) ProtoMessage() {}
func (x *Metric) ProtoReflect() protoreflect.Message {
mi := &file_common_common_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -867,11 +861,9 @@ type MetricDataset struct {
func (x *MetricDataset) Reset() {
*x = MetricDataset{}
if protoimpl.UnsafeEnabled {
mi := &file_common_common_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_common_common_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *MetricDataset) String() string {
@ -882,7 +874,7 @@ func (*MetricDataset) ProtoMessage() {}
func (x *MetricDataset) ProtoReflect() protoreflect.Message {
mi := &file_common_common_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -925,11 +917,9 @@ type JoinServerContext struct {
func (x *JoinServerContext) Reset() {
*x = JoinServerContext{}
if protoimpl.UnsafeEnabled {
mi := &file_common_common_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_common_common_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *JoinServerContext) String() string {
@ -940,7 +930,7 @@ func (*JoinServerContext) ProtoMessage() {}
func (x *JoinServerContext) ProtoReflect() protoreflect.Message {
mi := &file_common_common_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1103,7 +1093,7 @@ func file_common_common_proto_rawDescGZIP() []byte {
var file_common_common_proto_enumTypes = make([]protoimpl.EnumInfo, 10)
var file_common_common_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_common_common_proto_goTypes = []interface{}{
var file_common_common_proto_goTypes = []any{
(Modulation)(0), // 0: common.Modulation
(Region)(0), // 1: common.Region
(MType)(0), // 2: common.MType
@ -1139,68 +1129,6 @@ func file_common_common_proto_init() {
if File_common_common_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_common_common_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Location); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_common_common_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*KeyEnvelope); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_common_common_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Metric); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_common_common_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MetricDataset); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_common_common_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*JoinServerContext); 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{

7
api/go/go.mod vendored
View File

@ -1,6 +1,7 @@
module github.com/chirpstack/chirpstack/api/go/v4
go 1.21
toolchain go1.24.1
require (
google.golang.org/genproto/googleapis/api v0.0.0-20240325203815-454cdb8f5daa
@ -10,8 +11,8 @@ require (
require (
github.com/golang/protobuf v1.5.4 // indirect
golang.org/x/net v0.23.0 // indirect
golang.org/x/sys v0.18.0 // indirect
golang.org/x/text v0.14.0 // indirect
golang.org/x/net v0.36.0 // indirect
golang.org/x/sys v0.30.0 // indirect
golang.org/x/text v0.22.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240325203815-454cdb8f5daa // indirect
)

12
api/go/go.sum vendored
View File

@ -2,12 +2,12 @@ github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=
golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/net v0.36.0 h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA=
golang.org/x/net v0.36.0/go.mod h1:bFmbeoIPfrw4sMHNhb4J9f6+tPziuGjq7Jk/38fxi1I=
golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=
golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
google.golang.org/genproto/googleapis/api v0.0.0-20240325203815-454cdb8f5daa h1:Jt1XW5PaLXF1/ePZrznsh/aAUvI7Adfc3LY1dAKlzRs=
google.golang.org/genproto/googleapis/api v0.0.0-20240325203815-454cdb8f5daa/go.mod h1:K4kfzHtI0kqWA79gecJarFtDn/Mls+GxQcg3Zox91Ac=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240325203815-454cdb8f5daa h1:RBgMaUMP+6soRkik4VoN8ojR2nex2TqZwjSSogic+eo=

3280
api/go/gw/gw.pb.go vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: integration/integration.proto
package integration
@ -102,6 +102,8 @@ const (
LogCode_RELAY_NEW_END_DEVICE LogCode = 9
// Downlink frame-counter.
LogCode_F_CNT_DOWN LogCode = 10
// Downlink has expired.
LogCode_EXPIRED LogCode = 11
)
// Enum value maps for LogCode.
@ -118,6 +120,7 @@ var (
8: "DOWNLINK_GATEWAY",
9: "RELAY_NEW_END_DEVICE",
10: "F_CNT_DOWN",
11: "EXPIRED",
}
LogCode_value = map[string]int32{
"UNKNOWN": 0,
@ -131,6 +134,7 @@ var (
"DOWNLINK_GATEWAY": 8,
"RELAY_NEW_END_DEVICE": 9,
"F_CNT_DOWN": 10,
"EXPIRED": 11,
}
)
@ -191,11 +195,9 @@ type DeviceInfo struct {
func (x *DeviceInfo) Reset() {
*x = DeviceInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DeviceInfo) String() string {
@ -206,7 +208,7 @@ func (*DeviceInfo) ProtoMessage() {}
func (x *DeviceInfo) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -313,11 +315,9 @@ type UplinkRelayRxInfo struct {
func (x *UplinkRelayRxInfo) Reset() {
*x = UplinkRelayRxInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UplinkRelayRxInfo) String() string {
@ -328,7 +328,7 @@ func (*UplinkRelayRxInfo) ProtoMessage() {}
func (x *UplinkRelayRxInfo) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -425,15 +425,16 @@ type UplinkEvent struct {
// the AppSKey and that the encryption / decryption of the payloads is
// the responsibility of the end-application.
JoinServerContext *common.JoinServerContext `protobuf:"bytes,15,opt,name=join_server_context,json=joinServerContext,proto3" json:"join_server_context,omitempty"`
// Region config ID.
// This contains the region config ID which reported the uplink.
RegionConfigId string `protobuf:"bytes,16,opt,name=region_config_id,json=regionConfigId,proto3" json:"region_config_id,omitempty"`
}
func (x *UplinkEvent) Reset() {
*x = UplinkEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UplinkEvent) String() string {
@ -444,7 +445,7 @@ func (*UplinkEvent) ProtoMessage() {}
func (x *UplinkEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -564,6 +565,13 @@ func (x *UplinkEvent) GetJoinServerContext() *common.JoinServerContext {
return nil
}
func (x *UplinkEvent) GetRegionConfigId() string {
if x != nil {
return x.RegionConfigId
}
return ""
}
// JoinEvent is the message sent when a device joined the network.
// Note: this event is sent at the first uplink after OTAA.
type JoinEvent struct {
@ -586,15 +594,16 @@ type JoinEvent struct {
// the AppSKey and that the encryption / decryption of the payloads is
// the responsibility of the end-application.
JoinServerContext *common.JoinServerContext `protobuf:"bytes,6,opt,name=join_server_context,json=joinServerContext,proto3" json:"join_server_context,omitempty"`
// Region config ID.
// This contains the region config ID which reported the uplink.
RegionConfigId string `protobuf:"bytes,7,opt,name=region_config_id,json=regionConfigId,proto3" json:"region_config_id,omitempty"`
}
func (x *JoinEvent) Reset() {
*x = JoinEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *JoinEvent) String() string {
@ -605,7 +614,7 @@ func (*JoinEvent) ProtoMessage() {}
func (x *JoinEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -662,6 +671,13 @@ func (x *JoinEvent) GetJoinServerContext() *common.JoinServerContext {
return nil
}
func (x *JoinEvent) GetRegionConfigId() string {
if x != nil {
return x.RegionConfigId
}
return ""
}
// AckEvent is the message sent when a confirmation on a confirmed downlink
// has been received -or- when the downlink timed out.
type AckEvent struct {
@ -685,11 +701,9 @@ type AckEvent struct {
func (x *AckEvent) Reset() {
*x = AckEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AckEvent) String() string {
@ -700,7 +714,7 @@ func (*AckEvent) ProtoMessage() {}
func (x *AckEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -783,11 +797,9 @@ type TxAckEvent struct {
func (x *TxAckEvent) Reset() {
*x = TxAckEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *TxAckEvent) String() string {
@ -798,7 +810,7 @@ func (*TxAckEvent) ProtoMessage() {}
func (x *TxAckEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -884,11 +896,9 @@ type LogEvent struct {
func (x *LogEvent) Reset() {
*x = LogEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LogEvent) String() string {
@ -899,7 +909,7 @@ func (*LogEvent) ProtoMessage() {}
func (x *LogEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -982,11 +992,9 @@ type StatusEvent struct {
func (x *StatusEvent) Reset() {
*x = StatusEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *StatusEvent) String() string {
@ -997,7 +1005,7 @@ func (*StatusEvent) ProtoMessage() {}
func (x *StatusEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1079,11 +1087,9 @@ type LocationEvent struct {
func (x *LocationEvent) Reset() {
*x = LocationEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *LocationEvent) String() string {
@ -1094,7 +1100,7 @@ func (*LocationEvent) ProtoMessage() {}
func (x *LocationEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1161,11 +1167,9 @@ type IntegrationEvent struct {
func (x *IntegrationEvent) Reset() {
*x = IntegrationEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *IntegrationEvent) String() string {
@ -1176,7 +1180,7 @@ func (*IntegrationEvent) ProtoMessage() {}
func (x *IntegrationEvent) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1259,11 +1263,9 @@ type DownlinkCommand struct {
func (x *DownlinkCommand) Reset() {
*x = DownlinkCommand{}
if protoimpl.UnsafeEnabled {
mi := &file_integration_integration_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_integration_integration_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DownlinkCommand) String() string {
@ -1274,7 +1276,7 @@ func (*DownlinkCommand) ProtoMessage() {}
func (x *DownlinkCommand) ProtoReflect() protoreflect.Message {
mi := &file_integration_integration_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -1383,7 +1385,7 @@ var file_integration_integration_proto_rawDesc = []byte{
0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x6e, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x73, 0x69,
0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x72, 0x73, 0x73, 0x69, 0x12, 0x1f, 0x0a, 0x0b,
0x77, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xd3, 0x04,
0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xfd, 0x04,
0x0a, 0x0b, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a,
0x10, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69,
@ -1421,7 +1423,33 @@ var file_integration_integration_proto_rawDesc = []byte{
0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4a,
0x6f, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x52, 0x11, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x22, 0xca, 0x02, 0x0a, 0x09, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e,
0x65, 0x78, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72,
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x64, 0x22, 0xf4, 0x02,
0x0a, 0x09, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x64,
0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 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, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e,
0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f,
0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x04, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x76, 0x41, 0x64, 0x64, 0x72, 0x12, 0x42, 0x0a, 0x0d, 0x72,
0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x78, 0x49, 0x6e,
0x66, 0x6f, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12,
0x49, 0x0a, 0x13, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63,
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x11, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x65, 0x72,
0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65,
0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x07,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x49, 0x64, 0x22, 0x85, 0x02, 0x0a, 0x08, 0x41, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e,
0x74, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64,
0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04,
@ -1431,97 +1459,55 @@ var file_integration_integration_proto_rawDesc = []byte{
0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69,
0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x5f, 0x61, 0x64,
0x64, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x76, 0x41, 0x64, 0x64,
0x72, 0x12, 0x42, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x78, 0x5f, 0x69, 0x6e,
0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x6c,
0x61, 0x79, 0x52, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x52,
0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x49, 0x0a, 0x13, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x73, 0x65,
0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4a, 0x6f, 0x69, 0x6e,
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x11, 0x6a,
0x6f, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x22, 0x85, 0x02, 0x0a, 0x08, 0x41, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a,
0x10, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65,
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, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69,
0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d,
0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x75, 0x65,
0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x63, 0x6b, 0x6e, 0x6f, 0x77,
0x6c, 0x65, 0x64, 0x67, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x63,
0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x0a, 0x66, 0x5f,
0x63, 0x6e, 0x74, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
0x66, 0x43, 0x6e, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xa5, 0x02, 0x0a, 0x0a, 0x54, 0x78, 0x41,
0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c,
0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x6f,
0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65,
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, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69,
0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69,
0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d,
0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x75, 0x65,
0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x0a, 0x66, 0x5f, 0x63, 0x6e, 0x74, 0x5f,
0x64, 0x6f, 0x77, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x43, 0x6e, 0x74,
0x44, 0x6f, 0x77, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f,
0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07,
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,
0x22, 0xe7, 0x02, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 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, 0x38, 0x0a,
0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76,
0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x6c,
0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x14, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x2e, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x20,
0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x12, 0x3c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x4c, 0x6f, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x1a, 0x3a,
0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 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, 0xcf, 0x02, 0x0a, 0x0b, 0x53,
0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65,
0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 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,
0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f,
0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74,
0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12,
0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52,
0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72,
0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x62,
0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x75, 0x6e, 0x61,
0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17,
0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x55, 0x6e, 0x61, 0x76,
0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x74, 0x74, 0x65,
0x72, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c,
0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0xd2, 0x01, 0x0a,
0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29,
0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f,
0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71,
0x75, 0x65, 0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x63,
0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
0x52, 0x0c, 0x61, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x64, 0x12, 0x1c,
0x0a, 0x0a, 0x66, 0x5f, 0x63, 0x6e, 0x74, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x08, 0x66, 0x43, 0x6e, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xa5, 0x02, 0x0a,
0x0a, 0x54, 0x78, 0x41, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64,
0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
0x52, 0x0a, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04,
0x74, 0x69, 0x6d, 0x65, 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, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x0b,
0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69,
0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f,
0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71,
0x75, 0x65, 0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x0a, 0x66, 0x5f,
0x63, 0x6e, 0x74, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
0x66, 0x43, 0x6e, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65,
0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61,
0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e,
0x66, 0x6f, 0x18, 0x07, 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, 0x22, 0xe7, 0x02, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x45, 0x76, 0x65, 0x6e,
0x74, 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, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52,
0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x0a, 0x05, 0x6c,
0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x69, 0x6e, 0x74,
0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65,
0x6c, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65,
0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f,
0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18,
0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x6f, 0x6e,
0x74, 0x65, 0x78, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x78, 0x74, 0x1a, 0x3a, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 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, 0xcf,
0x02, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29,
0x0a, 0x10, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d,
@ -1531,70 +1517,92 @@ var file_integration_integration_proto_rawDesc = []byte{
0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17,
0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76,
0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x22, 0xa2, 0x02, 0x0a, 0x10, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 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, 0x04, 0x74, 0x69, 0x6d,
0x65, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52,
0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x0a, 0x10, 0x69,
0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f,
0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e,
0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18,
0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06,
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xb4, 0x01, 0x0a, 0x0f, 0x44, 0x6f, 0x77, 0x6e, 0x6c,
0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x65,
0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76,
0x45, 0x75, 0x69, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64,
0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
0x64, 0x12, 0x15, 0x0a, 0x06, 0x66, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x05, 0x66, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x06,
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53,
0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2a, 0x2c, 0x0a,
0x08, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46,
0x4f, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01,
0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x2a, 0xea, 0x01, 0x0a, 0x07,
0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
0x57, 0x4e, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x57, 0x4e, 0x4c, 0x49, 0x4e, 0x4b,
0x5f, 0x50, 0x41, 0x59, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x10, 0x01, 0x12,
0x10, 0x0a, 0x0c, 0x55, 0x50, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x10,
0x02, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x4f, 0x57, 0x4e, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x43, 0x4f,
0x44, 0x45, 0x43, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x4f, 0x54, 0x41, 0x41, 0x10, 0x04, 0x12,
0x16, 0x0a, 0x12, 0x55, 0x50, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x46, 0x5f, 0x43, 0x4e, 0x54, 0x5f,
0x52, 0x45, 0x53, 0x45, 0x54, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x50, 0x4c, 0x49, 0x4e,
0x4b, 0x5f, 0x4d, 0x49, 0x43, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x50, 0x4c, 0x49, 0x4e,
0x4b, 0x5f, 0x46, 0x5f, 0x43, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4d,
0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x57, 0x4e,
0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x47, 0x41, 0x54, 0x45, 0x57, 0x41, 0x59, 0x10, 0x08, 0x12, 0x18,
0x0a, 0x14, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x45, 0x4e, 0x44, 0x5f,
0x44, 0x45, 0x56, 0x49, 0x43, 0x45, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x5f, 0x43, 0x4e,
0x54, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x0a, 0x42, 0xbf, 0x01, 0x0a, 0x1d, 0x69, 0x6f, 0x2e,
0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x69,
0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x49, 0x6e, 0x74, 0x65,
0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x33,
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x72, 0x6f, 0x63, 0x61,
0x61, 0x72, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0xaa, 0x02, 0x16, 0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b,
0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02, 0x16, 0x43,
0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x22, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64,
0x61, 0x74, 0x61, 0x5c, 0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5c, 0x49,
0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x33,
0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x18, 0x05, 0x20,
0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x65,
0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
0x3a, 0x0a, 0x19, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c,
0x5f, 0x75, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01,
0x28, 0x08, 0x52, 0x17, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c,
0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62,
0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01,
0x28, 0x02, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c,
0x22, 0xd2, 0x01, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65,
0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65,
0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a,
0x04, 0x74, 0x69, 0x6d, 0x65, 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, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a,
0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76,
0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa2, 0x02, 0x0a, 0x10, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65,
0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 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,
0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f,
0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74,
0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12,
0x29, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x67,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76,
0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x6f, 0x62, 0x6a,
0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75,
0x63, 0x74, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xb4, 0x01, 0x0a, 0x0f, 0x44,
0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x0e,
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17,
0x0a, 0x07, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x64, 0x65, 0x76, 0x45, 0x75, 0x69, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x66, 0x69,
0x72, 0x6d, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x72, 0x6d, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x66, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
0x12, 0x2f, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63,
0x74, 0x2a, 0x2c, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x08, 0x0a,
0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, 0x52, 0x4e, 0x49,
0x4e, 0x47, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x2a,
0xf7, 0x01, 0x0a, 0x07, 0x4c, 0x6f, 0x67, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55,
0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x57, 0x4e,
0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x50, 0x41, 0x59, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x53, 0x49, 0x5a,
0x45, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x50, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x43, 0x4f,
0x44, 0x45, 0x43, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x4f, 0x57, 0x4e, 0x4c, 0x49, 0x4e,
0x4b, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x4f, 0x54, 0x41,
0x41, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x55, 0x50, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x46, 0x5f,
0x43, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x54, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x55,
0x50, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x4d, 0x49, 0x43, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x55,
0x50, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x46, 0x5f, 0x43, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x54, 0x52,
0x41, 0x4e, 0x53, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10,
0x44, 0x4f, 0x57, 0x4e, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x47, 0x41, 0x54, 0x45, 0x57, 0x41, 0x59,
0x10, 0x08, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x5f, 0x4e, 0x45, 0x57, 0x5f,
0x45, 0x4e, 0x44, 0x5f, 0x44, 0x45, 0x56, 0x49, 0x43, 0x45, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a,
0x46, 0x5f, 0x43, 0x4e, 0x54, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07,
0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x0b, 0x42, 0xbf, 0x01, 0x0a, 0x1d, 0x69, 0x6f,
0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x2e,
0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x49, 0x6e, 0x74,
0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x72, 0x6f, 0x63,
0x61, 0x61, 0x72, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61,
0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0xaa, 0x02, 0x16, 0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63,
0x6b, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xca, 0x02, 0x16,
0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5c, 0x49, 0x6e, 0x74, 0x65, 0x67,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xe2, 0x02, 0x22, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0x5c, 0x43, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5c,
0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (
@ -1611,7 +1619,7 @@ func file_integration_integration_proto_rawDescGZIP() []byte {
var file_integration_integration_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_integration_integration_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_integration_integration_proto_goTypes = []interface{}{
var file_integration_integration_proto_goTypes = []any{
(LogLevel)(0), // 0: integration.LogLevel
(LogCode)(0), // 1: integration.LogCode
(*DeviceInfo)(nil), // 2: integration.DeviceInfo
@ -1681,140 +1689,6 @@ func file_integration_integration_proto_init() {
if File_integration_integration_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_integration_integration_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeviceInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UplinkRelayRxInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UplinkEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*JoinEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AckEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TxAckEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StatusEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LocationEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IntegrationEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_integration_integration_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownlinkCommand); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: stream/api_request.proto
package stream
@ -38,11 +38,9 @@ type ApiRequestLog struct {
func (x *ApiRequestLog) Reset() {
*x = ApiRequestLog{}
if protoimpl.UnsafeEnabled {
mi := &file_stream_api_request_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_stream_api_request_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ApiRequestLog) String() string {
@ -53,7 +51,7 @@ func (*ApiRequestLog) ProtoMessage() {}
func (x *ApiRequestLog) ProtoReflect() protoreflect.Message {
mi := &file_stream_api_request_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -137,7 +135,7 @@ func file_stream_api_request_proto_rawDescGZIP() []byte {
}
var file_stream_api_request_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_stream_api_request_proto_goTypes = []interface{}{
var file_stream_api_request_proto_goTypes = []any{
(*ApiRequestLog)(nil), // 0: stream.ApiRequestLog
nil, // 1: stream.ApiRequestLog.MetadataEntry
}
@ -155,20 +153,6 @@ func file_stream_api_request_proto_init() {
if File_stream_api_request_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_stream_api_request_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ApiRequestLog); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: stream/backend_interfaces.proto
package stream
@ -48,11 +48,9 @@ type BackendInterfacesRequest struct {
func (x *BackendInterfacesRequest) Reset() {
*x = BackendInterfacesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_stream_backend_interfaces_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_stream_backend_interfaces_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *BackendInterfacesRequest) String() string {
@ -63,7 +61,7 @@ func (*BackendInterfacesRequest) ProtoMessage() {}
func (x *BackendInterfacesRequest) ProtoReflect() protoreflect.Message {
mi := &file_stream_backend_interfaces_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -198,7 +196,7 @@ func file_stream_backend_interfaces_proto_rawDescGZIP() []byte {
}
var file_stream_backend_interfaces_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_stream_backend_interfaces_proto_goTypes = []interface{}{
var file_stream_backend_interfaces_proto_goTypes = []any{
(*BackendInterfacesRequest)(nil), // 0: stream.BackendInterfacesRequest
(*timestamppb.Timestamp)(nil), // 1: google.protobuf.Timestamp
}
@ -216,20 +214,6 @@ func file_stream_backend_interfaces_proto_init() {
if File_stream_backend_interfaces_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_stream_backend_interfaces_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BackendInterfacesRequest); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: stream/frame.proto
package stream
@ -50,11 +50,9 @@ type UplinkFrameLog struct {
func (x *UplinkFrameLog) Reset() {
*x = UplinkFrameLog{}
if protoimpl.UnsafeEnabled {
mi := &file_stream_frame_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_stream_frame_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UplinkFrameLog) String() string {
@ -65,7 +63,7 @@ func (*UplinkFrameLog) ProtoMessage() {}
func (x *UplinkFrameLog) ProtoReflect() protoreflect.Message {
mi := &file_stream_frame_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -172,11 +170,9 @@ type DownlinkFrameLog struct {
func (x *DownlinkFrameLog) Reset() {
*x = DownlinkFrameLog{}
if protoimpl.UnsafeEnabled {
mi := &file_stream_frame_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_stream_frame_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DownlinkFrameLog) String() string {
@ -187,7 +183,7 @@ func (*DownlinkFrameLog) ProtoMessage() {}
func (x *DownlinkFrameLog) ProtoReflect() protoreflect.Message {
mi := &file_stream_frame_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -355,7 +351,7 @@ func file_stream_frame_proto_rawDescGZIP() []byte {
}
var file_stream_frame_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_stream_frame_proto_goTypes = []interface{}{
var file_stream_frame_proto_goTypes = []any{
(*UplinkFrameLog)(nil), // 0: stream.UplinkFrameLog
(*DownlinkFrameLog)(nil), // 1: stream.DownlinkFrameLog
(*gw.UplinkTxInfo)(nil), // 2: gw.UplinkTxInfo
@ -384,32 +380,6 @@ func file_stream_frame_proto_init() {
if File_stream_frame_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_stream_frame_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UplinkFrameLog); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_stream_frame_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownlinkFrameLog); 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{

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc v4.24.4
// protoc-gen-go v1.35.1
// protoc v5.28.3
// source: stream/meta.proto
package stream
@ -45,11 +45,9 @@ type UplinkMeta struct {
func (x *UplinkMeta) Reset() {
*x = UplinkMeta{}
if protoimpl.UnsafeEnabled {
mi := &file_stream_meta_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_stream_meta_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UplinkMeta) String() string {
@ -60,7 +58,7 @@ func (*UplinkMeta) ProtoMessage() {}
func (x *UplinkMeta) ProtoReflect() protoreflect.Message {
mi := &file_stream_meta_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -149,11 +147,9 @@ type DownlinkMeta struct {
func (x *DownlinkMeta) Reset() {
*x = DownlinkMeta{}
if protoimpl.UnsafeEnabled {
mi := &file_stream_meta_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
mi := &file_stream_meta_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *DownlinkMeta) String() string {
@ -164,7 +160,7 @@ func (*DownlinkMeta) ProtoMessage() {}
func (x *DownlinkMeta) ProtoReflect() protoreflect.Message {
mi := &file_stream_meta_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@ -314,7 +310,7 @@ func file_stream_meta_proto_rawDescGZIP() []byte {
}
var file_stream_meta_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_stream_meta_proto_goTypes = []interface{}{
var file_stream_meta_proto_goTypes = []any{
(*UplinkMeta)(nil), // 0: stream.UplinkMeta
(*DownlinkMeta)(nil), // 1: stream.DownlinkMeta
(*gw.UplinkTxInfo)(nil), // 2: gw.UplinkTxInfo
@ -340,32 +336,6 @@ func file_stream_meta_proto_init() {
if File_stream_meta_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_stream_meta_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UplinkMeta); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_stream_meta_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DownlinkMeta); 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{

View File

@ -29,6 +29,7 @@ api:
$(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/gateway.proto
$(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/multicast_group.proto
$(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/relay.proto
$(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/fuota.proto
integration:
mkdir -p integration

View File

@ -1,16 +1,16 @@
{
"name": "@chirpstack/chirpstack-api-grpc-web",
"version": "4.9.0-test.2",
"version": "4.13.0-test.1",
"description": "Chirpstack gRPC-web API",
"license": "MIT",
"devDependencies": {
"grpc-tools": "^1.12.4",
"grpc-tools": "^1.13.0",
"ts-protoc-gen": "^0.15.0",
"typescript": "^5.1.6"
"typescript": "^5.8.3"
},
"dependencies": {
"@types/google-protobuf": "^3.15.12",
"google-protobuf": "^3.21.2",
"google-protobuf": "^3.21.4",
"grpc-web": "^1.5.0"
}
}

View File

@ -146,15 +146,20 @@ glob@^7.1.3:
once "^1.3.0"
path-is-absolute "^1.0.0"
google-protobuf@^3.15.5, google-protobuf@^3.21.2:
google-protobuf@^3.15.5:
version "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.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==
google-protobuf@^3.21.4:
version "3.21.4"
resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.21.4.tgz#2f933e8b6e5e9f8edde66b7be0024b68f77da6c9"
integrity sha512-MnG7N936zcKTco4Jd2PX2U96Kf9PxygAPKBug+74LHzmHXmceN16MmRcdgZv+DGef/S9YvQAfRsNCn4cjf9yyQ==
grpc-tools@^1.13.0:
version "1.13.0"
resolved "https://registry.yarnpkg.com/grpc-tools/-/grpc-tools-1.13.0.tgz#a4fea8eebce51fb9fec00055a3e52016dfd5af89"
integrity sha512-7CbkJ1yWPfX0nHjbYG58BQThNhbICXBZynzCUxCb3LzX5X9B3hQbRY2STiRgIEiLILlK9fgl0z0QVGwPCdXf5g==
dependencies:
"@mapbox/node-pre-gyp" "^1.0.5"
@ -376,10 +381,10 @@ ts-protoc-gen@^0.15.0:
dependencies:
google-protobuf "^3.15.5"
typescript@^5.1.6:
version "5.4.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff"
integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==
typescript@^5.8.3:
version "5.8.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.3.tgz#92f8a3e5e3cf497356f4178c34cd65a7f5e8440e"
integrity sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==
util-deprecate@^1.0.1:
version "1.0.2"

View File

@ -8,7 +8,7 @@ plugins {
}
group = "io.chirpstack"
version = "4.9.0-test.2"
version = "4.13.0-test.1"
repositories {
mavenCentral()
@ -21,10 +21,10 @@ buildscript {
}
dependencies {
api("io.grpc:grpc-protobuf:1.51.0")
api("io.grpc:grpc-api:1.51.0")
api("io.grpc:grpc-stub:1.51.0")
api("io.grpc:grpc-netty:1.51.0")
api("io.grpc:grpc-protobuf:1.59.1")
api("io.grpc:grpc-api:1.59.1")
api("io.grpc:grpc-stub:1.59.1")
api("io.grpc:grpc-netty:1.59.1")
implementation("javax.annotation:javax.annotation-api:1.3.2")
}

1
api/js/Makefile vendored
View File

@ -28,6 +28,7 @@ api:
$(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/gateway.proto
$(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/multicast_group.proto
$(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/relay.proto
$(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/fuota.proto
integration:
$(PROTOC_PATH) ${PROTOC_ARGS} ../proto/integration/integration.proto

12
api/js/package.json vendored
View File

@ -1,17 +1,17 @@
{
"name": "@chirpstack/chirpstack-api",
"version": "4.9.0-test.2",
"version": "4.13.0-test.1",
"description": "Chirpstack JS and TS API",
"license": "MIT",
"devDependencies": {
"grpc-tools": "^1.12.4",
"grpc-tools": "^1.13.0",
"ts-protoc-gen": "^0.15.0",
"typescript": "^5.1.6"
"typescript": "^5.8.3"
},
"dependencies": {
"@grpc/grpc-js": "^1.10.4",
"@grpc/grpc-js": "^1.13.3",
"@mapbox/node-pre-gyp": "^1.0.11",
"@types/google-protobuf": "^3.15.6",
"google-protobuf": "^3.21.2"
"@types/google-protobuf": "^3.15.12",
"google-protobuf": "^3.21.4"
}
}

59
api/js/yarn.lock vendored
View File

@ -2,22 +2,22 @@
# yarn lockfile v1
"@grpc/grpc-js@^1.10.4":
version "1.10.4"
resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.10.4.tgz#a33f743f69ed531e917c9eafb4fd8bc3e5f2e617"
integrity sha512-MqBisuxTkYvPFnEiu+dag3xG/NBUDzSbAFAWlzfkGnQkjVZ6by3h4atbBc+Ikqup1z5BfB4BN18gKWR1YyppNw==
"@grpc/grpc-js@^1.13.3":
version "1.13.3"
resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.13.3.tgz#6ad08d186c2a8651697085f790c5c68eaca45904"
integrity sha512-FTXHdOoPbZrBjlVLHuKbDZnsTxXv2BlHF57xw6LuThXacXvtkahEPED0CKMk6obZDf65Hv4k3z62eyPNpvinIg==
dependencies:
"@grpc/proto-loader" "^0.7.10"
"@grpc/proto-loader" "^0.7.13"
"@js-sdsl/ordered-map" "^4.4.2"
"@grpc/proto-loader@^0.7.10":
version "0.7.12"
resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.12.tgz#787b58e3e3771df30b1567c057b6ab89e3a42911"
integrity sha512-DCVwMxqYzpUCiDMl7hQ384FqP4T3DbNpXU8pt681l3UWCip1WUiD5JrkImUwCB9a7f2cq4CUTmi5r/xIMRPY1Q==
"@grpc/proto-loader@^0.7.13":
version "0.7.13"
resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.13.tgz#f6a44b2b7c9f7b609f5748c6eac2d420e37670cf"
integrity sha512-AiXO/bfe9bmxBjxxtYxFAXGZvMaN5s8kO+jBHAJCON8rJoB5YS/D6X7ZNc6XQkuHNmyl4CYaMI1fJ/Gn27RGGw==
dependencies:
lodash.camelcase "^4.3.0"
long "^5.0.0"
protobufjs "^7.2.4"
protobufjs "^7.2.5"
yargs "^17.7.2"
"@js-sdsl/ordered-map@^4.4.2":
@ -93,10 +93,10 @@
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
"@types/google-protobuf@^3.15.6":
version "3.15.6"
resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.6.tgz#674a69493ef2c849b95eafe69167ea59079eb504"
integrity sha512-pYVNNJ+winC4aek+lZp93sIKxnXt5qMkuKmaqS3WGuTq0Bw1ZDYNBgzG5kkdtwcv+GmYJGo3yEg6z2cKKAiEdw==
"@types/google-protobuf@^3.15.12":
version "3.15.12"
resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.12.tgz#eb2ba0eddd65712211a2b455dc6071d665ccf49b"
integrity sha512-40um9QqwHjRS92qnOaDpL7RmDK15NuZYo9HihiJRbYkMQZlWnuH8AdvbMy8/o6lgLmKbDUKa+OALCltHdbOTpQ==
"@types/node@>=13.7.0":
version "20.4.8"
@ -265,15 +265,20 @@ glob@^7.1.3:
once "^1.3.0"
path-is-absolute "^1.0.0"
google-protobuf@^3.15.5, google-protobuf@^3.21.2:
google-protobuf@^3.15.5:
version "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.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==
google-protobuf@^3.21.4:
version "3.21.4"
resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.21.4.tgz#2f933e8b6e5e9f8edde66b7be0024b68f77da6c9"
integrity sha512-MnG7N936zcKTco4Jd2PX2U96Kf9PxygAPKBug+74LHzmHXmceN16MmRcdgZv+DGef/S9YvQAfRsNCn4cjf9yyQ==
grpc-tools@^1.13.0:
version "1.13.0"
resolved "https://registry.yarnpkg.com/grpc-tools/-/grpc-tools-1.13.0.tgz#a4fea8eebce51fb9fec00055a3e52016dfd5af89"
integrity sha512-7CbkJ1yWPfX0nHjbYG58BQThNhbICXBZynzCUxCb3LzX5X9B3hQbRY2STiRgIEiLILlK9fgl0z0QVGwPCdXf5g==
dependencies:
"@mapbox/node-pre-gyp" "^1.0.5"
@ -410,10 +415,10 @@ path-is-absolute@^1.0.0:
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
protobufjs@^7.2.4:
version "7.2.6"
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.2.6.tgz#4a0ccd79eb292717aacf07530a07e0ed20278215"
integrity sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw==
protobufjs@^7.2.5:
version "7.3.0"
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.3.0.tgz#a32ec0422c039798c41a0700306a6e305b9cb32c"
integrity sha512-YWD03n3shzV9ImZRX3ccbjqLxj7NokGN0V/ESiBV5xWqrommYHYiihuIyavq03pWSGqlyvYUFmfoMKd+1rPA/g==
dependencies:
"@protobufjs/aspromise" "^1.1.2"
"@protobufjs/base64" "^1.1.2"
@ -523,10 +528,10 @@ ts-protoc-gen@^0.15.0:
dependencies:
google-protobuf "^3.15.5"
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==
typescript@^5.8.3:
version "5.8.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.3.tgz#92f8a3e5e3cf497356f4178c34cd65a7f5e8440e"
integrity sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==
util-deprecate@^1.0.1:
version "1.0.2"

View File

@ -9,7 +9,7 @@ plugins {
}
group = "io.chirpstack"
version = "4.9.0-test.2"
version = "4.13.0-test.1"
repositories {
mavenCentral()

1
api/php/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/generated

View File

@ -3,7 +3,7 @@
"description": "Chirpstack PHP API",
"license": "MIT",
"type": "library",
"version": "4.9.0-test.2",
"version": "4.13.0-test.1",
"require": {
"php": ">=7.0.0",
"grpc/grpc": "^v1.57.0",

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.ActivateDeviceRequest</code>
*/
class ActivateDeviceRequest extends \Google\Protobuf\Internal\Message
{
/**
* Device activation object.
*
* Generated from protobuf field <code>.api.DeviceActivation device_activation = 1;</code>
*/
protected $device_activation = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\DeviceActivation $device_activation
* Device activation object.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Device::initOnce();
parent::__construct($data);
}
/**
* Device activation object.
*
* Generated from protobuf field <code>.api.DeviceActivation device_activation = 1;</code>
* @return \Chirpstack\Api\DeviceActivation|null
*/
public function getDeviceActivation()
{
return $this->device_activation;
}
public function hasDeviceActivation()
{
return isset($this->device_activation);
}
public function clearDeviceActivation()
{
unset($this->device_activation);
}
/**
* Device activation object.
*
* Generated from protobuf field <code>.api.DeviceActivation device_activation = 1;</code>
* @param \Chirpstack\Api\DeviceActivation $var
* @return $this
*/
public function setDeviceActivation($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\DeviceActivation::class);
$this->device_activation = $var;
return $this;
}
}

View File

@ -1,99 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/multicast_group.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AddDeviceToMulticastGroupRequest</code>
*/
class AddDeviceToMulticastGroupRequest extends \Google\Protobuf\Internal\Message
{
/**
* Multicast group ID.
*
* Generated from protobuf field <code>string multicast_group_id = 1;</code>
*/
protected $multicast_group_id = '';
/**
* Device EUI (HEX encoded).
*
* Generated from protobuf field <code>string dev_eui = 2;</code>
*/
protected $dev_eui = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $multicast_group_id
* Multicast group ID.
* @type string $dev_eui
* Device EUI (HEX encoded).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\MulticastGroup::initOnce();
parent::__construct($data);
}
/**
* Multicast group ID.
*
* Generated from protobuf field <code>string multicast_group_id = 1;</code>
* @return string
*/
public function getMulticastGroupId()
{
return $this->multicast_group_id;
}
/**
* Multicast group ID.
*
* Generated from protobuf field <code>string multicast_group_id = 1;</code>
* @param string $var
* @return $this
*/
public function setMulticastGroupId($var)
{
GPBUtil::checkString($var, True);
$this->multicast_group_id = $var;
return $this;
}
/**
* Device EUI (HEX encoded).
*
* Generated from protobuf field <code>string dev_eui = 2;</code>
* @return string
*/
public function getDevEui()
{
return $this->dev_eui;
}
/**
* Device EUI (HEX encoded).
*
* Generated from protobuf field <code>string dev_eui = 2;</code>
* @param string $var
* @return $this
*/
public function setDevEui($var)
{
GPBUtil::checkString($var, True);
$this->dev_eui = $var;
return $this;
}
}

View File

@ -1,99 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/multicast_group.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AddGatewayToMulticastGroupRequest</code>
*/
class AddGatewayToMulticastGroupRequest extends \Google\Protobuf\Internal\Message
{
/**
* Multicast group ID.
*
* Generated from protobuf field <code>string multicast_group_id = 1;</code>
*/
protected $multicast_group_id = '';
/**
* Gateway ID (HEX encoded).
*
* Generated from protobuf field <code>string gateway_id = 2;</code>
*/
protected $gateway_id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $multicast_group_id
* Multicast group ID.
* @type string $gateway_id
* Gateway ID (HEX encoded).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\MulticastGroup::initOnce();
parent::__construct($data);
}
/**
* Multicast group ID.
*
* Generated from protobuf field <code>string multicast_group_id = 1;</code>
* @return string
*/
public function getMulticastGroupId()
{
return $this->multicast_group_id;
}
/**
* Multicast group ID.
*
* Generated from protobuf field <code>string multicast_group_id = 1;</code>
* @param string $var
* @return $this
*/
public function setMulticastGroupId($var)
{
GPBUtil::checkString($var, True);
$this->multicast_group_id = $var;
return $this;
}
/**
* Gateway ID (HEX encoded).
*
* Generated from protobuf field <code>string gateway_id = 2;</code>
* @return string
*/
public function getGatewayId()
{
return $this->gateway_id;
}
/**
* Gateway ID (HEX encoded).
*
* Generated from protobuf field <code>string gateway_id = 2;</code>
* @param string $var
* @return $this
*/
public function setGatewayId($var)
{
GPBUtil::checkString($var, True);
$this->gateway_id = $var;
return $this;
}
}

View File

@ -1,99 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/relay.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AddRelayDeviceRequest</code>
*/
class AddRelayDeviceRequest extends \Google\Protobuf\Internal\Message
{
/**
* Relay DevEUI (EUI64).
*
* Generated from protobuf field <code>string relay_dev_eui = 1;</code>
*/
protected $relay_dev_eui = '';
/**
* Device DevEUI (EUI64).
*
* Generated from protobuf field <code>string device_dev_eui = 2;</code>
*/
protected $device_dev_eui = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $relay_dev_eui
* Relay DevEUI (EUI64).
* @type string $device_dev_eui
* Device DevEUI (EUI64).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Relay::initOnce();
parent::__construct($data);
}
/**
* Relay DevEUI (EUI64).
*
* Generated from protobuf field <code>string relay_dev_eui = 1;</code>
* @return string
*/
public function getRelayDevEui()
{
return $this->relay_dev_eui;
}
/**
* Relay DevEUI (EUI64).
*
* Generated from protobuf field <code>string relay_dev_eui = 1;</code>
* @param string $var
* @return $this
*/
public function setRelayDevEui($var)
{
GPBUtil::checkString($var, True);
$this->relay_dev_eui = $var;
return $this;
}
/**
* Device DevEUI (EUI64).
*
* Generated from protobuf field <code>string device_dev_eui = 2;</code>
* @return string
*/
public function getDeviceDevEui()
{
return $this->device_dev_eui;
}
/**
* Device DevEUI (EUI64).
*
* Generated from protobuf field <code>string device_dev_eui = 2;</code>
* @param string $var
* @return $this
*/
public function setDeviceDevEui($var)
{
GPBUtil::checkString($var, True);
$this->device_dev_eui = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/tenant.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AddTenantUserRequest</code>
*/
class AddTenantUserRequest extends \Google\Protobuf\Internal\Message
{
/**
* Tenant user object.
*
* Generated from protobuf field <code>.api.TenantUser tenant_user = 1;</code>
*/
protected $tenant_user = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\TenantUser $tenant_user
* Tenant user object.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Tenant::initOnce();
parent::__construct($data);
}
/**
* Tenant user object.
*
* Generated from protobuf field <code>.api.TenantUser tenant_user = 1;</code>
* @return \Chirpstack\Api\TenantUser|null
*/
public function getTenantUser()
{
return $this->tenant_user;
}
public function hasTenantUser()
{
return isset($this->tenant_user);
}
public function clearTenantUser()
{
unset($this->tenant_user);
}
/**
* Tenant user object.
*
* Generated from protobuf field <code>.api.TenantUser tenant_user = 1;</code>
* @param \Chirpstack\Api\TenantUser $var
* @return $this
*/
public function setTenantUser($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\TenantUser::class);
$this->tenant_user = $var;
return $this;
}
}

View File

@ -1,99 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AdrAlgorithmListItem</code>
*/
class AdrAlgorithmListItem extends \Google\Protobuf\Internal\Message
{
/**
* Algorithm ID.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Algorithm name.
*
* Generated from protobuf field <code>string name = 2;</code>
*/
protected $name = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Algorithm ID.
* @type string $name
* Algorithm name.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\DeviceProfile::initOnce();
parent::__construct($data);
}
/**
* Algorithm ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Algorithm ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
/**
* Algorithm name.
*
* Generated from protobuf field <code>string name = 2;</code>
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Algorithm name.
*
* Generated from protobuf field <code>string name = 2;</code>
* @param string $var
* @return $this
*/
public function setName($var)
{
GPBUtil::checkString($var, True);
$this->name = $var;
return $this;
}
}

View File

@ -1,175 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/internal.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.ApiKey</code>
*/
class ApiKey extends \Google\Protobuf\Internal\Message
{
/**
* API key ID.
* This value will be automatically generated on create.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Name.
*
* Generated from protobuf field <code>string name = 2;</code>
*/
protected $name = '';
/**
* Is global admin key.
*
* Generated from protobuf field <code>bool is_admin = 3;</code>
*/
protected $is_admin = false;
/**
* Tenant ID.
* In case the API key is intended to manage resources under a single tenant.
*
* Generated from protobuf field <code>string tenant_id = 4;</code>
*/
protected $tenant_id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* API key ID.
* This value will be automatically generated on create.
* @type string $name
* Name.
* @type bool $is_admin
* Is global admin key.
* @type string $tenant_id
* Tenant ID.
* In case the API key is intended to manage resources under a single tenant.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Internal::initOnce();
parent::__construct($data);
}
/**
* API key ID.
* This value will be automatically generated on create.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* API key ID.
* This value will be automatically generated on create.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
/**
* Name.
*
* Generated from protobuf field <code>string name = 2;</code>
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Name.
*
* Generated from protobuf field <code>string name = 2;</code>
* @param string $var
* @return $this
*/
public function setName($var)
{
GPBUtil::checkString($var, True);
$this->name = $var;
return $this;
}
/**
* Is global admin key.
*
* Generated from protobuf field <code>bool is_admin = 3;</code>
* @return bool
*/
public function getIsAdmin()
{
return $this->is_admin;
}
/**
* Is global admin key.
*
* Generated from protobuf field <code>bool is_admin = 3;</code>
* @param bool $var
* @return $this
*/
public function setIsAdmin($var)
{
GPBUtil::checkBool($var);
$this->is_admin = $var;
return $this;
}
/**
* Tenant ID.
* In case the API key is intended to manage resources under a single tenant.
*
* Generated from protobuf field <code>string tenant_id = 4;</code>
* @return string
*/
public function getTenantId()
{
return $this->tenant_id;
}
/**
* Tenant ID.
* In case the API key is intended to manage resources under a single tenant.
*
* Generated from protobuf field <code>string tenant_id = 4;</code>
* @param string $var
* @return $this
*/
public function setTenantId($var)
{
GPBUtil::checkString($var, True);
$this->tenant_id = $var;
return $this;
}
}

View File

@ -1,217 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.Application</code>
*/
class Application extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
* Note: on create this will be automatically generated.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Application name.
*
* Generated from protobuf field <code>string name = 2;</code>
*/
protected $name = '';
/**
* Application description.
*
* Generated from protobuf field <code>string description = 3;</code>
*/
protected $description = '';
/**
* Tenant ID (UUID).
*
* Generated from protobuf field <code>string tenant_id = 4;</code>
*/
protected $tenant_id = '';
/**
* Tags (user defined).
* These tags can be used to add additional information to the application.
* These tags are exposed in all the integration events of devices under
* this application.
*
* Generated from protobuf field <code>map<string, string> tags = 5;</code>
*/
private $tags;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Application ID (UUID).
* Note: on create this will be automatically generated.
* @type string $name
* Application name.
* @type string $description
* Application description.
* @type string $tenant_id
* Tenant ID (UUID).
* @type array|\Google\Protobuf\Internal\MapField $tags
* Tags (user defined).
* These tags can be used to add additional information to the application.
* These tags are exposed in all the integration events of devices under
* this application.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
* Note: on create this will be automatically generated.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Application ID (UUID).
* Note: on create this will be automatically generated.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
/**
* Application name.
*
* Generated from protobuf field <code>string name = 2;</code>
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Application name.
*
* Generated from protobuf field <code>string name = 2;</code>
* @param string $var
* @return $this
*/
public function setName($var)
{
GPBUtil::checkString($var, True);
$this->name = $var;
return $this;
}
/**
* Application description.
*
* Generated from protobuf field <code>string description = 3;</code>
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Application description.
*
* Generated from protobuf field <code>string description = 3;</code>
* @param string $var
* @return $this
*/
public function setDescription($var)
{
GPBUtil::checkString($var, True);
$this->description = $var;
return $this;
}
/**
* Tenant ID (UUID).
*
* Generated from protobuf field <code>string tenant_id = 4;</code>
* @return string
*/
public function getTenantId()
{
return $this->tenant_id;
}
/**
* Tenant ID (UUID).
*
* Generated from protobuf field <code>string tenant_id = 4;</code>
* @param string $var
* @return $this
*/
public function setTenantId($var)
{
GPBUtil::checkString($var, True);
$this->tenant_id = $var;
return $this;
}
/**
* Tags (user defined).
* These tags can be used to add additional information to the application.
* These tags are exposed in all the integration events of devices under
* this application.
*
* Generated from protobuf field <code>map<string, string> tags = 5;</code>
* @return \Google\Protobuf\Internal\MapField
*/
public function getTags()
{
return $this->tags;
}
/**
* Tags (user defined).
* These tags can be used to add additional information to the application.
* These tags are exposed in all the integration events of devices under
* this application.
*
* Generated from protobuf field <code>map<string, string> tags = 5;</code>
* @param array|\Google\Protobuf\Internal\MapField $var
* @return $this
*/
public function setTags($var)
{
$arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
$this->tags = $arr;
return $this;
}
}

View File

@ -1,221 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.ApplicationListItem</code>
*/
class ApplicationListItem extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Created at timestamp.
*
* Generated from protobuf field <code>.google.protobuf.Timestamp created_at = 2;</code>
*/
protected $created_at = null;
/**
* Last update timestamp.
*
* Generated from protobuf field <code>.google.protobuf.Timestamp updated_at = 3;</code>
*/
protected $updated_at = null;
/**
* Application name.
*
* Generated from protobuf field <code>string name = 4;</code>
*/
protected $name = '';
/**
* Application description.
*
* Generated from protobuf field <code>string description = 5;</code>
*/
protected $description = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Application ID (UUID).
* @type \Google\Protobuf\Timestamp $created_at
* Created at timestamp.
* @type \Google\Protobuf\Timestamp $updated_at
* Last update timestamp.
* @type string $name
* Application name.
* @type string $description
* Application description.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
/**
* Created at timestamp.
*
* Generated from protobuf field <code>.google.protobuf.Timestamp created_at = 2;</code>
* @return \Google\Protobuf\Timestamp|null
*/
public function getCreatedAt()
{
return $this->created_at;
}
public function hasCreatedAt()
{
return isset($this->created_at);
}
public function clearCreatedAt()
{
unset($this->created_at);
}
/**
* Created at timestamp.
*
* Generated from protobuf field <code>.google.protobuf.Timestamp created_at = 2;</code>
* @param \Google\Protobuf\Timestamp $var
* @return $this
*/
public function setCreatedAt($var)
{
GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
$this->created_at = $var;
return $this;
}
/**
* Last update timestamp.
*
* Generated from protobuf field <code>.google.protobuf.Timestamp updated_at = 3;</code>
* @return \Google\Protobuf\Timestamp|null
*/
public function getUpdatedAt()
{
return $this->updated_at;
}
public function hasUpdatedAt()
{
return isset($this->updated_at);
}
public function clearUpdatedAt()
{
unset($this->updated_at);
}
/**
* Last update timestamp.
*
* Generated from protobuf field <code>.google.protobuf.Timestamp updated_at = 3;</code>
* @param \Google\Protobuf\Timestamp $var
* @return $this
*/
public function setUpdatedAt($var)
{
GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
$this->updated_at = $var;
return $this;
}
/**
* Application name.
*
* Generated from protobuf field <code>string name = 4;</code>
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Application name.
*
* Generated from protobuf field <code>string name = 4;</code>
* @param string $var
* @return $this
*/
public function setName($var)
{
GPBUtil::checkString($var, True);
$this->name = $var;
return $this;
}
/**
* Application description.
*
* Generated from protobuf field <code>string description = 5;</code>
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Application description.
*
* Generated from protobuf field <code>string description = 5;</code>
* @param string $var
* @return $this
*/
public function setDescription($var)
{
GPBUtil::checkString($var, True);
$this->description = $var;
return $this;
}
}

View File

@ -1,726 +0,0 @@
<?php
// GENERATED CODE -- DO NOT EDIT!
namespace Chirpstack\Api;
/**
* ApplicationService is the service providing API methods for managing
* applications.
*/
class ApplicationServiceClient extends \Grpc\BaseStub {
/**
* @param string $hostname hostname
* @param array $opts channel options
* @param \Grpc\Channel $channel (optional) re-use channel object
*/
public function __construct($hostname, $opts, $channel = null) {
parent::__construct($hostname, $opts, $channel);
}
/**
* Create creates the given application.
* @param \Chirpstack\Api\CreateApplicationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function Create(\Chirpstack\Api\CreateApplicationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/Create',
$argument,
['\Chirpstack\Api\CreateApplicationResponse', 'decode'],
$metadata, $options);
}
/**
* Get the application for the given ID.
* @param \Chirpstack\Api\GetApplicationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function Get(\Chirpstack\Api\GetApplicationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/Get',
$argument,
['\Chirpstack\Api\GetApplicationResponse', 'decode'],
$metadata, $options);
}
/**
* Update updates the given application.
* @param \Chirpstack\Api\UpdateApplicationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function Update(\Chirpstack\Api\UpdateApplicationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/Update',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete the application for the given ID.
* @param \Chirpstack\Api\DeleteApplicationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function Delete(\Chirpstack\Api\DeleteApplicationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/Delete',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get the list of applications.
* @param \Chirpstack\Api\ListApplicationsRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function List(\Chirpstack\Api\ListApplicationsRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/List',
$argument,
['\Chirpstack\Api\ListApplicationsResponse', 'decode'],
$metadata, $options);
}
/**
* List all configured integrations.
* @param \Chirpstack\Api\ListIntegrationsRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function ListIntegrations(\Chirpstack\Api\ListIntegrationsRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/ListIntegrations',
$argument,
['\Chirpstack\Api\ListIntegrationsResponse', 'decode'],
$metadata, $options);
}
/**
* Create HTTP integration.
* @param \Chirpstack\Api\CreateHttpIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateHttpIntegration(\Chirpstack\Api\CreateHttpIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateHttpIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get the configured HTTP integration.
* @param \Chirpstack\Api\GetHttpIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetHttpIntegration(\Chirpstack\Api\GetHttpIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetHttpIntegration',
$argument,
['\Chirpstack\Api\GetHttpIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update the HTTP integration.
* @param \Chirpstack\Api\UpdateHttpIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateHttpIntegration(\Chirpstack\Api\UpdateHttpIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateHttpIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete the HTTP integration.
* @param \Chirpstack\Api\DeleteHttpIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteHttpIntegration(\Chirpstack\Api\DeleteHttpIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteHttpIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create InfluxDb integration.
* @param \Chirpstack\Api\CreateInfluxDbIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateInfluxDbIntegration(\Chirpstack\Api\CreateInfluxDbIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateInfluxDbIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get InfluxDb integration.
* @param \Chirpstack\Api\GetInfluxDbIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetInfluxDbIntegration(\Chirpstack\Api\GetInfluxDbIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetInfluxDbIntegration',
$argument,
['\Chirpstack\Api\GetInfluxDbIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update InfluxDb integration.
* @param \Chirpstack\Api\UpdateInfluxDbIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateInfluxDbIntegration(\Chirpstack\Api\UpdateInfluxDbIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateInfluxDbIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete InfluxDb integration.
* @param \Chirpstack\Api\DeleteInfluxDbIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteInfluxDbIntegration(\Chirpstack\Api\DeleteInfluxDbIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteInfluxDbIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create ThingsBoard integration.
* @param \Chirpstack\Api\CreateThingsBoardIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateThingsBoardIntegration(\Chirpstack\Api\CreateThingsBoardIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateThingsBoardIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get ThingsBoard integration.
* @param \Chirpstack\Api\GetThingsBoardIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetThingsBoardIntegration(\Chirpstack\Api\GetThingsBoardIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetThingsBoardIntegration',
$argument,
['\Chirpstack\Api\GetThingsBoardIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update ThingsBoard integration.
* @param \Chirpstack\Api\UpdateThingsBoardIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateThingsBoardIntegration(\Chirpstack\Api\UpdateThingsBoardIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateThingsBoardIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete ThingsBoard integration.
* @param \Chirpstack\Api\DeleteThingsBoardIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteThingsBoardIntegration(\Chirpstack\Api\DeleteThingsBoardIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteThingsBoardIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create myDevices integration.
* @param \Chirpstack\Api\CreateMyDevicesIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateMyDevicesIntegration(\Chirpstack\Api\CreateMyDevicesIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateMyDevicesIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get myDevices integration.
* @param \Chirpstack\Api\GetMyDevicesIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetMyDevicesIntegration(\Chirpstack\Api\GetMyDevicesIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetMyDevicesIntegration',
$argument,
['\Chirpstack\Api\GetMyDevicesIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update myDevices integration.
* @param \Chirpstack\Api\UpdateMyDevicesIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateMyDevicesIntegration(\Chirpstack\Api\UpdateMyDevicesIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateMyDevicesIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete myDevices integration.
* @param \Chirpstack\Api\DeleteMyDevicesIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteMyDevicesIntegration(\Chirpstack\Api\DeleteMyDevicesIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteMyDevicesIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create LoRaCloud integration.
* @param \Chirpstack\Api\CreateLoraCloudIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateLoraCloudIntegration(\Chirpstack\Api\CreateLoraCloudIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateLoraCloudIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get LoRaCloud integration.
* @param \Chirpstack\Api\GetLoraCloudIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetLoraCloudIntegration(\Chirpstack\Api\GetLoraCloudIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetLoraCloudIntegration',
$argument,
['\Chirpstack\Api\GetLoraCloudIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update LoRaCloud integration.
* @param \Chirpstack\Api\UpdateLoraCloudIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateLoraCloudIntegration(\Chirpstack\Api\UpdateLoraCloudIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateLoraCloudIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete LoRaCloud integration.
* @param \Chirpstack\Api\DeleteLoraCloudIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteLoraCloudIntegration(\Chirpstack\Api\DeleteLoraCloudIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteLoraCloudIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create GCP Pub/Sub integration.
* @param \Chirpstack\Api\CreateGcpPubSubIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateGcpPubSubIntegration(\Chirpstack\Api\CreateGcpPubSubIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateGcpPubSubIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get GCP Pub/Sub integration.
* @param \Chirpstack\Api\GetGcpPubSubIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetGcpPubSubIntegration(\Chirpstack\Api\GetGcpPubSubIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetGcpPubSubIntegration',
$argument,
['\Chirpstack\Api\GetGcpPubSubIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update GCP Pub/Sub integration.
* @param \Chirpstack\Api\UpdateGcpPubSubIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateGcpPubSubIntegration(\Chirpstack\Api\UpdateGcpPubSubIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateGcpPubSubIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete GCP Pub/Sub integration.
* @param \Chirpstack\Api\DeleteGcpPubSubIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteGcpPubSubIntegration(\Chirpstack\Api\DeleteGcpPubSubIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteGcpPubSubIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create AWS SNS integration.
* @param \Chirpstack\Api\CreateAwsSnsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateAwsSnsIntegration(\Chirpstack\Api\CreateAwsSnsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateAwsSnsIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get AWS SNS integration.
* @param \Chirpstack\Api\GetAwsSnsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetAwsSnsIntegration(\Chirpstack\Api\GetAwsSnsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetAwsSnsIntegration',
$argument,
['\Chirpstack\Api\GetAwsSnsIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update AWS SNS integration.
* @param \Chirpstack\Api\UpdateAwsSnsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateAwsSnsIntegration(\Chirpstack\Api\UpdateAwsSnsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateAwsSnsIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete AWS SNS integration.
* @param \Chirpstack\Api\DeleteAwsSnsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteAwsSnsIntegration(\Chirpstack\Api\DeleteAwsSnsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteAwsSnsIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create Azure Service-Bus integration.
* @param \Chirpstack\Api\CreateAzureServiceBusIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateAzureServiceBusIntegration(\Chirpstack\Api\CreateAzureServiceBusIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateAzureServiceBusIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get Azure Service-Bus integration.
* @param \Chirpstack\Api\GetAzureServiceBusIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetAzureServiceBusIntegration(\Chirpstack\Api\GetAzureServiceBusIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetAzureServiceBusIntegration',
$argument,
['\Chirpstack\Api\GetAzureServiceBusIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update Azure Service-Bus integration.
* @param \Chirpstack\Api\UpdateAzureServiceBusIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateAzureServiceBusIntegration(\Chirpstack\Api\UpdateAzureServiceBusIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateAzureServiceBusIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete Azure Service-Bus integration.
* @param \Chirpstack\Api\DeleteAzureServiceBusIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteAzureServiceBusIntegration(\Chirpstack\Api\DeleteAzureServiceBusIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteAzureServiceBusIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create Pilot Things integration.
* @param \Chirpstack\Api\CreatePilotThingsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreatePilotThingsIntegration(\Chirpstack\Api\CreatePilotThingsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreatePilotThingsIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get Pilot Things integration.
* @param \Chirpstack\Api\GetPilotThingsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetPilotThingsIntegration(\Chirpstack\Api\GetPilotThingsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetPilotThingsIntegration',
$argument,
['\Chirpstack\Api\GetPilotThingsIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update Pilot Things integration.
* @param \Chirpstack\Api\UpdatePilotThingsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdatePilotThingsIntegration(\Chirpstack\Api\UpdatePilotThingsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdatePilotThingsIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete Pilot Things integration.
* @param \Chirpstack\Api\DeletePilotThingsIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeletePilotThingsIntegration(\Chirpstack\Api\DeletePilotThingsIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeletePilotThingsIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Create IFTTT integration.
* @param \Chirpstack\Api\CreateIftttIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function CreateIftttIntegration(\Chirpstack\Api\CreateIftttIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/CreateIftttIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Get IFTTT integration.
* @param \Chirpstack\Api\GetIftttIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GetIftttIntegration(\Chirpstack\Api\GetIftttIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GetIftttIntegration',
$argument,
['\Chirpstack\Api\GetIftttIntegrationResponse', 'decode'],
$metadata, $options);
}
/**
* Update IFTTT integration.
* @param \Chirpstack\Api\UpdateIftttIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function UpdateIftttIntegration(\Chirpstack\Api\UpdateIftttIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/UpdateIftttIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Delete IFTTT integration.
* @param \Chirpstack\Api\DeleteIftttIntegrationRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function DeleteIftttIntegration(\Chirpstack\Api\DeleteIftttIntegrationRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/DeleteIftttIntegration',
$argument,
['\Google\Protobuf\GPBEmpty', 'decode'],
$metadata, $options);
}
/**
* Generates application ID specific client-certificate.
* @param \Chirpstack\Api\GenerateMqttIntegrationClientCertificateRequest $argument input argument
* @param array $metadata metadata
* @param array $options call options
* @return \Grpc\UnaryCall
*/
public function GenerateMqttIntegrationClientCertificate(\Chirpstack\Api\GenerateMqttIntegrationClientCertificateRequest $argument,
$metadata = [], $options = []) {
return $this->_simpleRequest('/api.ApplicationService/GenerateMqttIntegrationClientCertificate',
$argument,
['\Chirpstack\Api\GenerateMqttIntegrationClientCertificateResponse', 'decode'],
$metadata, $options);
}
}

View File

@ -1,235 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AwsSnsIntegration</code>
*/
class AwsSnsIntegration extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
*/
protected $application_id = '';
/**
* Encoding.
*
* Generated from protobuf field <code>.api.Encoding encoding = 2;</code>
*/
protected $encoding = 0;
/**
* AWS region.
*
* Generated from protobuf field <code>string region = 3;</code>
*/
protected $region = '';
/**
* AWS Access Key ID.
*
* Generated from protobuf field <code>string access_key_id = 4;</code>
*/
protected $access_key_id = '';
/**
* AWS Secret Access Key.
*
* Generated from protobuf field <code>string secret_access_key = 5;</code>
*/
protected $secret_access_key = '';
/**
* Topic ARN.
*
* Generated from protobuf field <code>string topic_arn = 6;</code>
*/
protected $topic_arn = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $application_id
* Application ID (UUID).
* @type int $encoding
* Encoding.
* @type string $region
* AWS region.
* @type string $access_key_id
* AWS Access Key ID.
* @type string $secret_access_key
* AWS Secret Access Key.
* @type string $topic_arn
* Topic ARN.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @return string
*/
public function getApplicationId()
{
return $this->application_id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @param string $var
* @return $this
*/
public function setApplicationId($var)
{
GPBUtil::checkString($var, True);
$this->application_id = $var;
return $this;
}
/**
* Encoding.
*
* Generated from protobuf field <code>.api.Encoding encoding = 2;</code>
* @return int
*/
public function getEncoding()
{
return $this->encoding;
}
/**
* Encoding.
*
* Generated from protobuf field <code>.api.Encoding encoding = 2;</code>
* @param int $var
* @return $this
*/
public function setEncoding($var)
{
GPBUtil::checkEnum($var, \Chirpstack\Api\Encoding::class);
$this->encoding = $var;
return $this;
}
/**
* AWS region.
*
* Generated from protobuf field <code>string region = 3;</code>
* @return string
*/
public function getRegion()
{
return $this->region;
}
/**
* AWS region.
*
* Generated from protobuf field <code>string region = 3;</code>
* @param string $var
* @return $this
*/
public function setRegion($var)
{
GPBUtil::checkString($var, True);
$this->region = $var;
return $this;
}
/**
* AWS Access Key ID.
*
* Generated from protobuf field <code>string access_key_id = 4;</code>
* @return string
*/
public function getAccessKeyId()
{
return $this->access_key_id;
}
/**
* AWS Access Key ID.
*
* Generated from protobuf field <code>string access_key_id = 4;</code>
* @param string $var
* @return $this
*/
public function setAccessKeyId($var)
{
GPBUtil::checkString($var, True);
$this->access_key_id = $var;
return $this;
}
/**
* AWS Secret Access Key.
*
* Generated from protobuf field <code>string secret_access_key = 5;</code>
* @return string
*/
public function getSecretAccessKey()
{
return $this->secret_access_key;
}
/**
* AWS Secret Access Key.
*
* Generated from protobuf field <code>string secret_access_key = 5;</code>
* @param string $var
* @return $this
*/
public function setSecretAccessKey($var)
{
GPBUtil::checkString($var, True);
$this->secret_access_key = $var;
return $this;
}
/**
* Topic ARN.
*
* Generated from protobuf field <code>string topic_arn = 6;</code>
* @return string
*/
public function getTopicArn()
{
return $this->topic_arn;
}
/**
* Topic ARN.
*
* Generated from protobuf field <code>string topic_arn = 6;</code>
* @param string $var
* @return $this
*/
public function setTopicArn($var)
{
GPBUtil::checkString($var, True);
$this->topic_arn = $var;
return $this;
}
}

View File

@ -1,171 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.AzureServiceBusIntegration</code>
*/
class AzureServiceBusIntegration extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
*/
protected $application_id = '';
/**
* Encoding.
*
* Generated from protobuf field <code>.api.Encoding encoding = 2;</code>
*/
protected $encoding = 0;
/**
* Connection string.
*
* Generated from protobuf field <code>string connection_string = 3;</code>
*/
protected $connection_string = '';
/**
* Publish name.
* This is the name of the topic or queue.
*
* Generated from protobuf field <code>string publish_name = 4;</code>
*/
protected $publish_name = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $application_id
* Application ID (UUID).
* @type int $encoding
* Encoding.
* @type string $connection_string
* Connection string.
* @type string $publish_name
* Publish name.
* This is the name of the topic or queue.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @return string
*/
public function getApplicationId()
{
return $this->application_id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @param string $var
* @return $this
*/
public function setApplicationId($var)
{
GPBUtil::checkString($var, True);
$this->application_id = $var;
return $this;
}
/**
* Encoding.
*
* Generated from protobuf field <code>.api.Encoding encoding = 2;</code>
* @return int
*/
public function getEncoding()
{
return $this->encoding;
}
/**
* Encoding.
*
* Generated from protobuf field <code>.api.Encoding encoding = 2;</code>
* @param int $var
* @return $this
*/
public function setEncoding($var)
{
GPBUtil::checkEnum($var, \Chirpstack\Api\Encoding::class);
$this->encoding = $var;
return $this;
}
/**
* Connection string.
*
* Generated from protobuf field <code>string connection_string = 3;</code>
* @return string
*/
public function getConnectionString()
{
return $this->connection_string;
}
/**
* Connection string.
*
* Generated from protobuf field <code>string connection_string = 3;</code>
* @param string $var
* @return $this
*/
public function setConnectionString($var)
{
GPBUtil::checkString($var, True);
$this->connection_string = $var;
return $this;
}
/**
* Publish name.
* This is the name of the topic or queue.
*
* Generated from protobuf field <code>string publish_name = 4;</code>
* @return string
*/
public function getPublishName()
{
return $this->publish_name;
}
/**
* Publish name.
* This is the name of the topic or queue.
*
* Generated from protobuf field <code>string publish_name = 4;</code>
* @param string $var
* @return $this
*/
public function setPublishName($var)
{
GPBUtil::checkString($var, True);
$this->publish_name = $var;
return $this;
}
}

View File

@ -1,80 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile.proto
namespace Chirpstack\Api;
use UnexpectedValueException;
/**
* Protobuf type <code>api.CadPeriodicity</code>
*/
class CadPeriodicity
{
/**
* 1 second.
*
* Generated from protobuf enum <code>SEC_1 = 0;</code>
*/
const SEC_1 = 0;
/**
* 500 milliseconds
*
* Generated from protobuf enum <code>MS_500 = 1;</code>
*/
const MS_500 = 1;
/**
* 250 milliseconds
*
* Generated from protobuf enum <code>MS_250 = 2;</code>
*/
const MS_250 = 2;
/**
* 100 milliseconds
*
* Generated from protobuf enum <code>MS_100 = 3;</code>
*/
const MS_100 = 3;
/**
* 50 milliseconds
*
* Generated from protobuf enum <code>MS_50 = 4;</code>
*/
const MS_50 = 4;
/**
* 20 milliseconds
*
* Generated from protobuf enum <code>MS_20 = 5;</code>
*/
const MS_20 = 5;
private static $valueToName = [
self::SEC_1 => 'SEC_1',
self::MS_500 => 'MS_500',
self::MS_250 => 'MS_250',
self::MS_100 => 'MS_100',
self::MS_50 => 'MS_50',
self::MS_20 => 'MS_20',
];
public static function name($value)
{
if (!isset(self::$valueToName[$value])) {
throw new UnexpectedValueException(sprintf(
'Enum %s has no name defined for value %s', __CLASS__, $value));
}
return self::$valueToName[$value];
}
public static function value($name)
{
$const = __CLASS__ . '::' . strtoupper($name);
if (!defined($const)) {
throw new UnexpectedValueException(sprintf(
'Enum %s has no value defined for name %s', __CLASS__, $name));
}
return constant($const);
}
}

View File

@ -1,59 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile.proto
namespace Chirpstack\Api;
use UnexpectedValueException;
/**
* Protobuf type <code>api.CodecRuntime</code>
*/
class CodecRuntime
{
/**
* None.
*
* Generated from protobuf enum <code>NONE = 0;</code>
*/
const NONE = 0;
/**
* Cayenne LPP.
*
* Generated from protobuf enum <code>CAYENNE_LPP = 1;</code>
*/
const CAYENNE_LPP = 1;
/**
* JavaScript.
*
* Generated from protobuf enum <code>JS = 2;</code>
*/
const JS = 2;
private static $valueToName = [
self::NONE => 'NONE',
self::CAYENNE_LPP => 'CAYENNE_LPP',
self::JS => 'JS',
];
public static function name($value)
{
if (!isset(self::$valueToName[$value])) {
throw new UnexpectedValueException(sprintf(
'Enum %s has no name defined for value %s', __CLASS__, $value));
}
return self::$valueToName[$value];
}
public static function value($name)
{
$const = __CLASS__ . '::' . strtoupper($name);
if (!defined($const)) {
throw new UnexpectedValueException(sprintf(
'Enum %s has no value defined for name %s', __CLASS__, $name));
}
return constant($const);
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/internal.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateApiKeyRequest</code>
*/
class CreateApiKeyRequest extends \Google\Protobuf\Internal\Message
{
/**
* The API key to create.
*
* Generated from protobuf field <code>.api.ApiKey api_key = 1;</code>
*/
protected $api_key = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\ApiKey $api_key
* The API key to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Internal::initOnce();
parent::__construct($data);
}
/**
* The API key to create.
*
* Generated from protobuf field <code>.api.ApiKey api_key = 1;</code>
* @return \Chirpstack\Api\ApiKey|null
*/
public function getApiKey()
{
return $this->api_key;
}
public function hasApiKey()
{
return isset($this->api_key);
}
public function clearApiKey()
{
unset($this->api_key);
}
/**
* The API key to create.
*
* Generated from protobuf field <code>.api.ApiKey api_key = 1;</code>
* @param \Chirpstack\Api\ApiKey $var
* @return $this
*/
public function setApiKey($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\ApiKey::class);
$this->api_key = $var;
return $this;
}
}

View File

@ -1,99 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/internal.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateApiKeyResponse</code>
*/
class CreateApiKeyResponse extends \Google\Protobuf\Internal\Message
{
/**
* API key ID.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* API token for authentication API requests.
*
* Generated from protobuf field <code>string token = 2;</code>
*/
protected $token = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* API key ID.
* @type string $token
* API token for authentication API requests.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Internal::initOnce();
parent::__construct($data);
}
/**
* API key ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* API key ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
/**
* API token for authentication API requests.
*
* Generated from protobuf field <code>string token = 2;</code>
* @return string
*/
public function getToken()
{
return $this->token;
}
/**
* API token for authentication API requests.
*
* Generated from protobuf field <code>string token = 2;</code>
* @param string $var
* @return $this
*/
public function setToken($var)
{
GPBUtil::checkString($var, True);
$this->token = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateApplicationRequest</code>
*/
class CreateApplicationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Application object to create.
*
* Generated from protobuf field <code>.api.Application application = 1;</code>
*/
protected $application = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\Application $application
* Application object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application object to create.
*
* Generated from protobuf field <code>.api.Application application = 1;</code>
* @return \Chirpstack\Api\Application|null
*/
public function getApplication()
{
return $this->application;
}
public function hasApplication()
{
return isset($this->application);
}
public function clearApplication()
{
unset($this->application);
}
/**
* Application object to create.
*
* Generated from protobuf field <code>.api.Application application = 1;</code>
* @param \Chirpstack\Api\Application $var
* @return $this
*/
public function setApplication($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\Application::class);
$this->application = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateApplicationResponse</code>
*/
class CreateApplicationResponse extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Application ID (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateAwsSnsIntegrationRequest</code>
*/
class CreateAwsSnsIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.AwsSnsIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\AwsSnsIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.AwsSnsIntegration integration = 1;</code>
* @return \Chirpstack\Api\AwsSnsIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.AwsSnsIntegration integration = 1;</code>
* @param \Chirpstack\Api\AwsSnsIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\AwsSnsIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateAzureServiceBusIntegrationRequest</code>
*/
class CreateAzureServiceBusIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.AzureServiceBusIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\AzureServiceBusIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.AzureServiceBusIntegration integration = 1;</code>
* @return \Chirpstack\Api\AzureServiceBusIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.AzureServiceBusIntegration integration = 1;</code>
* @param \Chirpstack\Api\AzureServiceBusIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\AzureServiceBusIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateDeviceKeysRequest</code>
*/
class CreateDeviceKeysRequest extends \Google\Protobuf\Internal\Message
{
/**
* Device-keys object.
*
* Generated from protobuf field <code>.api.DeviceKeys device_keys = 1;</code>
*/
protected $device_keys = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\DeviceKeys $device_keys
* Device-keys object.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Device::initOnce();
parent::__construct($data);
}
/**
* Device-keys object.
*
* Generated from protobuf field <code>.api.DeviceKeys device_keys = 1;</code>
* @return \Chirpstack\Api\DeviceKeys|null
*/
public function getDeviceKeys()
{
return $this->device_keys;
}
public function hasDeviceKeys()
{
return isset($this->device_keys);
}
public function clearDeviceKeys()
{
unset($this->device_keys);
}
/**
* Device-keys object.
*
* Generated from protobuf field <code>.api.DeviceKeys device_keys = 1;</code>
* @param \Chirpstack\Api\DeviceKeys $var
* @return $this
*/
public function setDeviceKeys($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\DeviceKeys::class);
$this->device_keys = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateDeviceProfileRequest</code>
*/
class CreateDeviceProfileRequest extends \Google\Protobuf\Internal\Message
{
/**
* Object to create.
*
* Generated from protobuf field <code>.api.DeviceProfile device_profile = 1;</code>
*/
protected $device_profile = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\DeviceProfile $device_profile
* Object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\DeviceProfile::initOnce();
parent::__construct($data);
}
/**
* Object to create.
*
* Generated from protobuf field <code>.api.DeviceProfile device_profile = 1;</code>
* @return \Chirpstack\Api\DeviceProfile|null
*/
public function getDeviceProfile()
{
return $this->device_profile;
}
public function hasDeviceProfile()
{
return isset($this->device_profile);
}
public function clearDeviceProfile()
{
unset($this->device_profile);
}
/**
* Object to create.
*
* Generated from protobuf field <code>.api.DeviceProfile device_profile = 1;</code>
* @param \Chirpstack\Api\DeviceProfile $var
* @return $this
*/
public function setDeviceProfile($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\DeviceProfile::class);
$this->device_profile = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateDeviceProfileResponse</code>
*/
class CreateDeviceProfileResponse extends \Google\Protobuf\Internal\Message
{
/**
* ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* ID (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\DeviceProfile::initOnce();
parent::__construct($data);
}
/**
* ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile_template.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateDeviceProfileTemplateRequest</code>
*/
class CreateDeviceProfileTemplateRequest extends \Google\Protobuf\Internal\Message
{
/**
* Object to create.
*
* Generated from protobuf field <code>.api.DeviceProfileTemplate device_profile_template = 1;</code>
*/
protected $device_profile_template = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\DeviceProfileTemplate $device_profile_template
* Object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\DeviceProfileTemplate::initOnce();
parent::__construct($data);
}
/**
* Object to create.
*
* Generated from protobuf field <code>.api.DeviceProfileTemplate device_profile_template = 1;</code>
* @return \Chirpstack\Api\DeviceProfileTemplate|null
*/
public function getDeviceProfileTemplate()
{
return $this->device_profile_template;
}
public function hasDeviceProfileTemplate()
{
return isset($this->device_profile_template);
}
public function clearDeviceProfileTemplate()
{
unset($this->device_profile_template);
}
/**
* Object to create.
*
* Generated from protobuf field <code>.api.DeviceProfileTemplate device_profile_template = 1;</code>
* @param \Chirpstack\Api\DeviceProfileTemplate $var
* @return $this
*/
public function setDeviceProfileTemplate($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\DeviceProfileTemplate::class);
$this->device_profile_template = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateDeviceRequest</code>
*/
class CreateDeviceRequest extends \Google\Protobuf\Internal\Message
{
/**
* Device object.
*
* Generated from protobuf field <code>.api.Device device = 1;</code>
*/
protected $device = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\Device $device
* Device object.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Device::initOnce();
parent::__construct($data);
}
/**
* Device object.
*
* Generated from protobuf field <code>.api.Device device = 1;</code>
* @return \Chirpstack\Api\Device|null
*/
public function getDevice()
{
return $this->device;
}
public function hasDevice()
{
return isset($this->device);
}
public function clearDevice()
{
unset($this->device);
}
/**
* Device object.
*
* Generated from protobuf field <code>.api.Device device = 1;</code>
* @param \Chirpstack\Api\Device $var
* @return $this
*/
public function setDevice($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\Device::class);
$this->device = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/gateway.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateGatewayRequest</code>
*/
class CreateGatewayRequest extends \Google\Protobuf\Internal\Message
{
/**
* Gateway object.
*
* Generated from protobuf field <code>.api.Gateway gateway = 1;</code>
*/
protected $gateway = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\Gateway $gateway
* Gateway object.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Gateway::initOnce();
parent::__construct($data);
}
/**
* Gateway object.
*
* Generated from protobuf field <code>.api.Gateway gateway = 1;</code>
* @return \Chirpstack\Api\Gateway|null
*/
public function getGateway()
{
return $this->gateway;
}
public function hasGateway()
{
return isset($this->gateway);
}
public function clearGateway()
{
unset($this->gateway);
}
/**
* Gateway object.
*
* Generated from protobuf field <code>.api.Gateway gateway = 1;</code>
* @param \Chirpstack\Api\Gateway $var
* @return $this
*/
public function setGateway($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\Gateway::class);
$this->gateway = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateGcpPubSubIntegrationRequest</code>
*/
class CreateGcpPubSubIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.GcpPubSubIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\GcpPubSubIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.GcpPubSubIntegration integration = 1;</code>
* @return \Chirpstack\Api\GcpPubSubIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.GcpPubSubIntegration integration = 1;</code>
* @param \Chirpstack\Api\GcpPubSubIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\GcpPubSubIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateHttpIntegrationRequest</code>
*/
class CreateHttpIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.HttpIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\HttpIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.HttpIntegration integration = 1;</code>
* @return \Chirpstack\Api\HttpIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.HttpIntegration integration = 1;</code>
* @param \Chirpstack\Api\HttpIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\HttpIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateIftttIntegrationRequest</code>
*/
class CreateIftttIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object.
*
* Generated from protobuf field <code>.api.IftttIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\IftttIntegration $integration
* Integration object.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object.
*
* Generated from protobuf field <code>.api.IftttIntegration integration = 1;</code>
* @return \Chirpstack\Api\IftttIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object.
*
* Generated from protobuf field <code>.api.IftttIntegration integration = 1;</code>
* @param \Chirpstack\Api\IftttIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\IftttIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateInfluxDbIntegrationRequest</code>
*/
class CreateInfluxDbIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.InfluxDbIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\InfluxDbIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.InfluxDbIntegration integration = 1;</code>
* @return \Chirpstack\Api\InfluxDbIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.InfluxDbIntegration integration = 1;</code>
* @param \Chirpstack\Api\InfluxDbIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\InfluxDbIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateLoraCloudIntegrationRequest</code>
*/
class CreateLoraCloudIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.LoraCloudIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\LoraCloudIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.LoraCloudIntegration integration = 1;</code>
* @return \Chirpstack\Api\LoraCloudIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.LoraCloudIntegration integration = 1;</code>
* @param \Chirpstack\Api\LoraCloudIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\LoraCloudIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/multicast_group.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateMulticastGroupRequest</code>
*/
class CreateMulticastGroupRequest extends \Google\Protobuf\Internal\Message
{
/**
* Multicast group to create.
*
* Generated from protobuf field <code>.api.MulticastGroup multicast_group = 1;</code>
*/
protected $multicast_group = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\MulticastGroup $multicast_group
* Multicast group to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\MulticastGroup::initOnce();
parent::__construct($data);
}
/**
* Multicast group to create.
*
* Generated from protobuf field <code>.api.MulticastGroup multicast_group = 1;</code>
* @return \Chirpstack\Api\MulticastGroup|null
*/
public function getMulticastGroup()
{
return $this->multicast_group;
}
public function hasMulticastGroup()
{
return isset($this->multicast_group);
}
public function clearMulticastGroup()
{
unset($this->multicast_group);
}
/**
* Multicast group to create.
*
* Generated from protobuf field <code>.api.MulticastGroup multicast_group = 1;</code>
* @param \Chirpstack\Api\MulticastGroup $var
* @return $this
*/
public function setMulticastGroup($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\MulticastGroup::class);
$this->multicast_group = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/multicast_group.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateMulticastGroupResponse</code>
*/
class CreateMulticastGroupResponse extends \Google\Protobuf\Internal\Message
{
/**
* ID of created multicast group (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* ID of created multicast group (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\MulticastGroup::initOnce();
parent::__construct($data);
}
/**
* ID of created multicast group (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* ID of created multicast group (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateMyDevicesIntegrationRequest</code>
*/
class CreateMyDevicesIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.MyDevicesIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\MyDevicesIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.MyDevicesIntegration integration = 1;</code>
* @return \Chirpstack\Api\MyDevicesIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.MyDevicesIntegration integration = 1;</code>
* @param \Chirpstack\Api\MyDevicesIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\MyDevicesIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreatePilotThingsIntegrationRequest</code>
*/
class CreatePilotThingsIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.PilotThingsIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\PilotThingsIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.PilotThingsIntegration integration = 1;</code>
* @return \Chirpstack\Api\PilotThingsIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.PilotThingsIntegration integration = 1;</code>
* @param \Chirpstack\Api\PilotThingsIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\PilotThingsIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/tenant.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateTenantRequest</code>
*/
class CreateTenantRequest extends \Google\Protobuf\Internal\Message
{
/**
* Tenant object to create.
*
* Generated from protobuf field <code>.api.Tenant tenant = 1;</code>
*/
protected $tenant = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\Tenant $tenant
* Tenant object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Tenant::initOnce();
parent::__construct($data);
}
/**
* Tenant object to create.
*
* Generated from protobuf field <code>.api.Tenant tenant = 1;</code>
* @return \Chirpstack\Api\Tenant|null
*/
public function getTenant()
{
return $this->tenant;
}
public function hasTenant()
{
return isset($this->tenant);
}
public function clearTenant()
{
unset($this->tenant);
}
/**
* Tenant object to create.
*
* Generated from protobuf field <code>.api.Tenant tenant = 1;</code>
* @param \Chirpstack\Api\Tenant $var
* @return $this
*/
public function setTenant($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\Tenant::class);
$this->tenant = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/tenant.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateTenantResponse</code>
*/
class CreateTenantResponse extends \Google\Protobuf\Internal\Message
{
/**
* Tenant ID.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Tenant ID.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Tenant::initOnce();
parent::__construct($data);
}
/**
* Tenant ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Tenant ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,75 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateThingsBoardIntegrationRequest</code>
*/
class CreateThingsBoardIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.ThingsBoardIntegration integration = 1;</code>
*/
protected $integration = null;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\ThingsBoardIntegration $integration
* Integration object to create.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.ThingsBoardIntegration integration = 1;</code>
* @return \Chirpstack\Api\ThingsBoardIntegration|null
*/
public function getIntegration()
{
return $this->integration;
}
public function hasIntegration()
{
return isset($this->integration);
}
public function clearIntegration()
{
unset($this->integration);
}
/**
* Integration object to create.
*
* Generated from protobuf field <code>.api.ThingsBoardIntegration integration = 1;</code>
* @param \Chirpstack\Api\ThingsBoardIntegration $var
* @return $this
*/
public function setIntegration($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\ThingsBoardIntegration::class);
$this->integration = $var;
return $this;
}
}

View File

@ -1,143 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/user.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateUserRequest</code>
*/
class CreateUserRequest extends \Google\Protobuf\Internal\Message
{
/**
* User object to create.
*
* Generated from protobuf field <code>.api.User user = 1;</code>
*/
protected $user = null;
/**
* Password to set for the user.
*
* Generated from protobuf field <code>string password = 2;</code>
*/
protected $password = '';
/**
* Add the user to the following tenants.
*
* Generated from protobuf field <code>repeated .api.UserTenant tenants = 3;</code>
*/
private $tenants;
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type \Chirpstack\Api\User $user
* User object to create.
* @type string $password
* Password to set for the user.
* @type array<\Chirpstack\Api\UserTenant>|\Google\Protobuf\Internal\RepeatedField $tenants
* Add the user to the following tenants.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\User::initOnce();
parent::__construct($data);
}
/**
* User object to create.
*
* Generated from protobuf field <code>.api.User user = 1;</code>
* @return \Chirpstack\Api\User|null
*/
public function getUser()
{
return $this->user;
}
public function hasUser()
{
return isset($this->user);
}
public function clearUser()
{
unset($this->user);
}
/**
* User object to create.
*
* Generated from protobuf field <code>.api.User user = 1;</code>
* @param \Chirpstack\Api\User $var
* @return $this
*/
public function setUser($var)
{
GPBUtil::checkMessage($var, \Chirpstack\Api\User::class);
$this->user = $var;
return $this;
}
/**
* Password to set for the user.
*
* Generated from protobuf field <code>string password = 2;</code>
* @return string
*/
public function getPassword()
{
return $this->password;
}
/**
* Password to set for the user.
*
* Generated from protobuf field <code>string password = 2;</code>
* @param string $var
* @return $this
*/
public function setPassword($var)
{
GPBUtil::checkString($var, True);
$this->password = $var;
return $this;
}
/**
* Add the user to the following tenants.
*
* Generated from protobuf field <code>repeated .api.UserTenant tenants = 3;</code>
* @return \Google\Protobuf\Internal\RepeatedField
*/
public function getTenants()
{
return $this->tenants;
}
/**
* Add the user to the following tenants.
*
* Generated from protobuf field <code>repeated .api.UserTenant tenants = 3;</code>
* @param array<\Chirpstack\Api\UserTenant>|\Google\Protobuf\Internal\RepeatedField $var
* @return $this
*/
public function setTenants($var)
{
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Chirpstack\Api\UserTenant::class);
$this->tenants = $arr;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/user.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.CreateUserResponse</code>
*/
class CreateUserResponse extends \Google\Protobuf\Internal\Message
{
/**
* User ID.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* User ID.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\User::initOnce();
parent::__construct($data);
}
/**
* User ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* User ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeactivateDeviceRequest</code>
*/
class DeactivateDeviceRequest extends \Google\Protobuf\Internal\Message
{
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
*/
protected $dev_eui = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $dev_eui
* DevEUI (EUI64).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Device::initOnce();
parent::__construct($data);
}
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
* @return string
*/
public function getDevEui()
{
return $this->dev_eui;
}
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
* @param string $var
* @return $this
*/
public function setDevEui($var)
{
GPBUtil::checkString($var, True);
$this->dev_eui = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/internal.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteApiKeyRequest</code>
*/
class DeleteApiKeyRequest extends \Google\Protobuf\Internal\Message
{
/**
* API key ID.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* API key ID.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Internal::initOnce();
parent::__construct($data);
}
/**
* API key ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* API key ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteApplicationRequest</code>
*/
class DeleteApplicationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* Application ID (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteAwsSnsIntegrationRequest</code>
*/
class DeleteAwsSnsIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
*/
protected $application_id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $application_id
* Application ID (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @return string
*/
public function getApplicationId()
{
return $this->application_id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @param string $var
* @return $this
*/
public function setApplicationId($var)
{
GPBUtil::checkString($var, True);
$this->application_id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/application.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteAzureServiceBusIntegrationRequest</code>
*/
class DeleteAzureServiceBusIntegrationRequest extends \Google\Protobuf\Internal\Message
{
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
*/
protected $application_id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $application_id
* Application ID (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Application::initOnce();
parent::__construct($data);
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @return string
*/
public function getApplicationId()
{
return $this->application_id;
}
/**
* Application ID (UUID).
*
* Generated from protobuf field <code>string application_id = 1;</code>
* @param string $var
* @return $this
*/
public function setApplicationId($var)
{
GPBUtil::checkString($var, True);
$this->application_id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteDeviceKeysRequest</code>
*/
class DeleteDeviceKeysRequest extends \Google\Protobuf\Internal\Message
{
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
*/
protected $dev_eui = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $dev_eui
* DevEUI (EUI64).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Device::initOnce();
parent::__construct($data);
}
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
* @return string
*/
public function getDevEui()
{
return $this->dev_eui;
}
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
* @param string $var
* @return $this
*/
public function setDevEui($var)
{
GPBUtil::checkString($var, True);
$this->dev_eui = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteDeviceProfileRequest</code>
*/
class DeleteDeviceProfileRequest extends \Google\Protobuf\Internal\Message
{
/**
* ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* ID (UUID).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\DeviceProfile::initOnce();
parent::__construct($data);
}
/**
* ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* ID (UUID).
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device_profile_template.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteDeviceProfileTemplateRequest</code>
*/
class DeleteDeviceProfileTemplateRequest extends \Google\Protobuf\Internal\Message
{
/**
* ID.
*
* Generated from protobuf field <code>string id = 1;</code>
*/
protected $id = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $id
* ID.
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\DeviceProfileTemplate::initOnce();
parent::__construct($data);
}
/**
* ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* ID.
*
* Generated from protobuf field <code>string id = 1;</code>
* @param string $var
* @return $this
*/
public function setId($var)
{
GPBUtil::checkString($var, True);
$this->id = $var;
return $this;
}
}

View File

@ -1,65 +0,0 @@
<?php
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: api/device.proto
namespace Chirpstack\Api;
use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;
/**
* Generated from protobuf message <code>api.DeleteDeviceRequest</code>
*/
class DeleteDeviceRequest extends \Google\Protobuf\Internal\Message
{
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
*/
protected $dev_eui = '';
/**
* Constructor.
*
* @param array $data {
* Optional. Data for populating the Message object.
*
* @type string $dev_eui
* DevEUI (EUI64).
* }
*/
public function __construct($data = NULL) {
\GPBMetadata\Chirpstack\Api\Device::initOnce();
parent::__construct($data);
}
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
* @return string
*/
public function getDevEui()
{
return $this->dev_eui;
}
/**
* DevEUI (EUI64).
*
* Generated from protobuf field <code>string dev_eui = 1;</code>
* @param string $var
* @return $this
*/
public function setDevEui($var)
{
GPBUtil::checkString($var, True);
$this->dev_eui = $var;
return $this;
}
}

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