mirror of
https://github.com/chirpstack/chirpstack.git
synced 2025-07-18 16:31:40 +00:00
Compare commits
57 Commits
v4.0.0-tes
...
api/go/v4.
Author | SHA1 | Date | |
---|---|---|---|
4fa9341139 | |||
8a695d341c | |||
32cf56af53 | |||
804c876aa7 | |||
fef42fa192 | |||
1fbc4e5391 | |||
1236b4dba9 | |||
32c4495f0f | |||
8594c14c24 | |||
d9d3f14e80 | |||
d1630e5722 | |||
ba4aeb849c | |||
25c71c5483 | |||
3b426471b3 | |||
2e1c907df0 | |||
bd79e72bdb | |||
3486d94441 | |||
3199276c83 | |||
f4478864ee | |||
a0f56c0ff6 | |||
5b1d70cdbf | |||
a656b9f3a1 | |||
3908fc0846 | |||
3c3f813167 | |||
8f9d4a224b | |||
5c05628fd1 | |||
2355a1ecc6 | |||
755791878b | |||
f964314a4f | |||
2051c5ed39 | |||
c7056d84d6 | |||
ba4e633b01 | |||
35457c3954 | |||
54a1265166 | |||
7cee3a01f1 | |||
96482764cc | |||
2ea86b2ca2 | |||
d8377cd26a | |||
eec9b1891d | |||
1e6aad326c | |||
100e9f1b6d | |||
d974423aab | |||
b159436dd0 | |||
54f74277ab | |||
24b975b337 | |||
d69ff895b6 | |||
f2e6d77ce4 | |||
f5de67a817 | |||
54e1cb5e66 | |||
a2e4e0d8a2 | |||
7309a35a3b | |||
df155413d8 | |||
c4e6e8f369 | |||
22face1a79 | |||
d55e5afc92 | |||
e649e75c8d | |||
f033793f74 |
34
.github/workflows/main.yml
vendored
34
.github/workflows/main.yml
vendored
@ -21,6 +21,38 @@ jobs:
|
||||
name: Run tests
|
||||
run: make test
|
||||
|
||||
dist:
|
||||
needs: tests
|
||||
runs-on: ubuntu-latest
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
steps:
|
||||
-
|
||||
name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
-
|
||||
name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
-
|
||||
name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
-
|
||||
name: Build UI
|
||||
run: make build-ui
|
||||
-
|
||||
name: Build distributables
|
||||
run: make dist
|
||||
-
|
||||
name: Configure AWS credentials
|
||||
uses: aws-actions/configure-aws-credentials@v1
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
aws-region: eu-west-1
|
||||
-
|
||||
name: Upload binaries to S3
|
||||
run: |
|
||||
aws s3 sync dist s3://builds.loraserver.io/chirpstack
|
||||
|
||||
docker:
|
||||
needs: tests
|
||||
runs-on: ubuntu-latest
|
||||
@ -57,7 +89,7 @@ jobs:
|
||||
id: docker_build
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
platforms: linux/amd64
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: ${{ startsWith(github.ref, 'refs/tags/v') }}
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
|
11
.gitignore
vendored
11
.gitignore
vendored
@ -1,14 +1,22 @@
|
||||
# hidden files
|
||||
.*
|
||||
!/chirpstack/.rpm
|
||||
|
||||
# Log files
|
||||
*.log
|
||||
|
||||
# Binary packages
|
||||
/dist
|
||||
|
||||
# Rust target directory
|
||||
**/target
|
||||
|
||||
# Certificates
|
||||
/chirpstack/configuration/certs
|
||||
/chirpstack/configuration/certs/*.crt
|
||||
/chirpstack/configuration/certs/*.key
|
||||
/chirpstack/configuration/certs/*.trust
|
||||
/chirpstack/configuration/certs/*.pem
|
||||
/chirpstack/configuration/certs/*.csr
|
||||
/chirpstack/configuration/private_*.toml
|
||||
|
||||
# UI
|
||||
@ -22,5 +30,4 @@
|
||||
*.bb
|
||||
|
||||
# Exclude from gitignore
|
||||
!/chirpstack/.rpm
|
||||
!/.github
|
||||
|
171
Cargo.lock
generated
171
Cargo.lock
generated
@ -574,7 +574,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "backend"
|
||||
version = "1.0.0"
|
||||
version = "4.0.0-test.6"
|
||||
dependencies = [
|
||||
"aes-kw",
|
||||
"anyhow",
|
||||
@ -626,14 +626,14 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "bindgen"
|
||||
version = "0.59.2"
|
||||
version = "0.60.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8"
|
||||
checksum = "062dddbc1ba4aca46de6338e2bf87771414c335f7b2f2036e8f3e9befebf88e6"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"cexpr",
|
||||
"clang-sys",
|
||||
"clap",
|
||||
"clap 3.1.18",
|
||||
"env_logger",
|
||||
"lazy_static",
|
||||
"lazycell",
|
||||
@ -800,7 +800,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
|
||||
[[package]]
|
||||
name = "chirpstack"
|
||||
version = "4.0.0-test.1"
|
||||
version = "4.0.0-test.6"
|
||||
dependencies = [
|
||||
"aes 0.7.5",
|
||||
"anyhow",
|
||||
@ -814,7 +814,7 @@ dependencies = [
|
||||
"bigdecimal",
|
||||
"chirpstack_api",
|
||||
"chrono",
|
||||
"clap",
|
||||
"clap 2.34.0",
|
||||
"diesel",
|
||||
"diesel_migrations",
|
||||
"futures",
|
||||
@ -851,6 +851,7 @@ dependencies = [
|
||||
"rust-embed",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"serde_yaml",
|
||||
"sha2 0.10.1",
|
||||
"thiserror",
|
||||
"tokio",
|
||||
@ -871,13 +872,15 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "chirpstack_api"
|
||||
version = "4.0.0"
|
||||
version = "4.0.0-test.6"
|
||||
dependencies = [
|
||||
"hex",
|
||||
"pbjson",
|
||||
"pbjson-build",
|
||||
"pbjson-types",
|
||||
"prost",
|
||||
"prost-types",
|
||||
"rand",
|
||||
"serde",
|
||||
"tokio",
|
||||
"tonic",
|
||||
@ -937,12 +940,36 @@ dependencies = [
|
||||
"ansi_term",
|
||||
"atty",
|
||||
"bitflags",
|
||||
"strsim",
|
||||
"textwrap",
|
||||
"strsim 0.8.0",
|
||||
"textwrap 0.11.0",
|
||||
"unicode-width",
|
||||
"vec_map",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "clap"
|
||||
version = "3.1.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d2dbdf4bdacb33466e854ce889eee8dfd5729abf7ccd7664d0a2d60cd384440b"
|
||||
dependencies = [
|
||||
"atty",
|
||||
"bitflags",
|
||||
"clap_lex",
|
||||
"indexmap",
|
||||
"strsim 0.10.0",
|
||||
"termcolor",
|
||||
"textwrap 0.15.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "clap_lex"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a37c35f1112dad5e6e0b1adaff798507497a18fceeb30cceb3bae7d1427b9213"
|
||||
dependencies = [
|
||||
"os_str_bytes",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cmac"
|
||||
version = "0.6.0"
|
||||
@ -1018,9 +1045,9 @@ checksum = "338089f42c427b86394a5ee60ff321da23a5c89c9d89514c829687b26359fcff"
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-utils"
|
||||
version = "0.8.6"
|
||||
version = "0.8.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cfcae03edb34f947e64acdb1c33ec169824e20657e9ecb61cef6c8c74dcb8120"
|
||||
checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"lazy_static",
|
||||
@ -1862,15 +1889,6 @@ dependencies = [
|
||||
"waker-fn",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "itertools"
|
||||
version = "0.9.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
|
||||
dependencies = [
|
||||
"either",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "itertools"
|
||||
version = "0.10.3"
|
||||
@ -1935,7 +1953,7 @@ dependencies = [
|
||||
"bit-set",
|
||||
"diff",
|
||||
"ena",
|
||||
"itertools 0.10.3",
|
||||
"itertools",
|
||||
"lalrpop-util",
|
||||
"petgraph 0.5.1",
|
||||
"pico-args",
|
||||
@ -2018,6 +2036,12 @@ dependencies = [
|
||||
"vcpkg",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "linked-hash-map"
|
||||
version = "0.5.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
|
||||
|
||||
[[package]]
|
||||
name = "lock_api"
|
||||
version = "0.4.5"
|
||||
@ -2039,7 +2063,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lrwn"
|
||||
version = "1.0.0"
|
||||
version = "4.0.0-test.6"
|
||||
dependencies = [
|
||||
"aes 0.7.5",
|
||||
"anyhow",
|
||||
@ -2279,9 +2303,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "oauth2"
|
||||
version = "4.1.0"
|
||||
version = "4.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "80e47cfc4c0a1a519d9a025ebfbac3a2439d1b5cdf397d72dcb79b11d9920dab"
|
||||
checksum = "c3bd7d544f02ae0fa9e06137962703d043870d7ad6e6d44786d6a5f20679b2c9"
|
||||
dependencies = [
|
||||
"base64",
|
||||
"chrono",
|
||||
@ -2292,7 +2316,7 @@ dependencies = [
|
||||
"serde",
|
||||
"serde_json",
|
||||
"serde_path_to_error",
|
||||
"sha2 0.9.9",
|
||||
"sha2 0.10.1",
|
||||
"thiserror",
|
||||
"url",
|
||||
]
|
||||
@ -2317,14 +2341,14 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
|
||||
|
||||
[[package]]
|
||||
name = "openidconnect"
|
||||
version = "2.2.0"
|
||||
version = "2.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f6db0c030c3036f53c7108668641151b244358d221303a17985b07ac9bb60091"
|
||||
checksum = "32f73e47a1766acd7bedd605742a1a2651c111f34ed3e0be117d8651432d509c"
|
||||
dependencies = [
|
||||
"base64",
|
||||
"chrono",
|
||||
"http",
|
||||
"itertools 0.9.0",
|
||||
"itertools",
|
||||
"log",
|
||||
"num-bigint 0.4.3",
|
||||
"oauth2",
|
||||
@ -2336,7 +2360,6 @@ dependencies = [
|
||||
"serde_json",
|
||||
"serde_path_to_error",
|
||||
"thiserror",
|
||||
"untrusted",
|
||||
"url",
|
||||
]
|
||||
|
||||
@ -2362,9 +2385,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
|
||||
|
||||
[[package]]
|
||||
name = "openssl-src"
|
||||
version = "111.17.0+1.1.1m"
|
||||
version = "111.20.0+1.1.1o"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "05d6a336abd10814198f66e2a91ccd7336611f30334119ca8ce300536666fcf4"
|
||||
checksum = "92892c4f87d56e376e469ace79f1128fdaded07646ddf73aa0be4706ff712dec"
|
||||
dependencies = [
|
||||
"cc",
|
||||
]
|
||||
@ -2385,13 +2408,19 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ordered-float"
|
||||
version = "1.1.1"
|
||||
version = "2.10.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3305af35278dd29f46fcdd139e0b1fbfae2153f0e5928b39b035542dd31e37b7"
|
||||
checksum = "7940cf2ca942593318d07fcf2596cdca60a85c9e7fab408a5e21a4f9dcd40d87"
|
||||
dependencies = [
|
||||
"num-traits",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "os_str_bytes"
|
||||
version = "6.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "21326818e99cfe6ce1e524c2a805c189a99b5ae555a35d19f9a284b427d86afa"
|
||||
|
||||
[[package]]
|
||||
name = "paho-mqtt"
|
||||
version = "0.9.1"
|
||||
@ -2475,7 +2504,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "956a449e8a85fc040e9f8cd8fd4dd2e68059d179092401f0d8570ba059f76dae"
|
||||
dependencies = [
|
||||
"heck",
|
||||
"itertools 0.10.3",
|
||||
"itertools",
|
||||
"prost",
|
||||
"prost-types",
|
||||
]
|
||||
@ -2719,7 +2748,7 @@ dependencies = [
|
||||
"cfg-if",
|
||||
"cmake",
|
||||
"heck",
|
||||
"itertools 0.10.3",
|
||||
"itertools",
|
||||
"lazy_static",
|
||||
"log",
|
||||
"multimap",
|
||||
@ -2738,7 +2767,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "df35198f0777b75e9ff669737c6da5136b59dba33cf5a010a6d1cc4d56defc6f"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"itertools 0.10.3",
|
||||
"itertools",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn",
|
||||
@ -2903,6 +2932,12 @@ version = "0.6.25"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
|
||||
|
||||
[[package]]
|
||||
name = "relative-path"
|
||||
version = "1.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b4e112eddc95bbf25365df3b5414354ad2fe7ee465eddb9965a515faf8c3b6d9"
|
||||
|
||||
[[package]]
|
||||
name = "remove_dir_all"
|
||||
version = "0.5.3"
|
||||
@ -2970,27 +3005,29 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rquickjs"
|
||||
version = "0.1.5"
|
||||
version = "0.1.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f91e309f4594ccf077c2373a1fb00f632bf6c26fc0035ef9f90da9a627404c32"
|
||||
checksum = "989910af47b3f21c95205a1e1974bfb0f460e5492f469631297cc44c3340967e"
|
||||
dependencies = [
|
||||
"rquickjs-core",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rquickjs-core"
|
||||
version = "0.1.5"
|
||||
version = "0.1.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c6da4f2b300a58f9fb368bb68b21e288586e503cc0e0c3c3f94af9b28a717e2c"
|
||||
checksum = "e78ca2361848dddf910c27296d98bd62be9467d1d1d703eeead8c732adbd4e32"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"relative-path",
|
||||
"rquickjs-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rquickjs-sys"
|
||||
version = "0.1.5"
|
||||
version = "0.1.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "db8ac81ef510279adb2e464073a0ed2f774253742d4cbd85d79383c7b0d931df"
|
||||
checksum = "263a9a14fc68f2f3403c67e94e5def69af60afbcf7914d2a7fb8f9e17027fa25"
|
||||
dependencies = [
|
||||
"bindgen",
|
||||
"cc",
|
||||
@ -2998,9 +3035,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rust-embed"
|
||||
version = "5.9.0"
|
||||
version = "6.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2fe1fe6aac5d6bb9e1ffd81002340363272a7648234ec7bdfac5ee202cb65523"
|
||||
checksum = "9a17e5ac65b318f397182ae94e532da0ba56b88dd1200b774715d36c4943b1c3"
|
||||
dependencies = [
|
||||
"rust-embed-impl",
|
||||
"rust-embed-utils",
|
||||
@ -3009,9 +3046,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rust-embed-impl"
|
||||
version = "5.9.0"
|
||||
version = "6.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3ed91c41c42ef7bf687384439c312e75e0da9c149b0390889b94de3c7d9d9e66"
|
||||
checksum = "94e763e24ba2bf0c72bc6be883f967f794a019fafd1b86ba1daff9c91a7edd30"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@ -3022,10 +3059,11 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rust-embed-utils"
|
||||
version = "5.1.0"
|
||||
version = "7.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2a512219132473ab0a77b52077059f1c47ce4af7fbdc94503e9862a34422876d"
|
||||
checksum = "756feca3afcbb1487a1d01f4ecd94cf8ec98ea074c55a69e7136d29fb6166029"
|
||||
dependencies = [
|
||||
"sha2 0.9.9",
|
||||
"walkdir",
|
||||
]
|
||||
|
||||
@ -3229,9 +3267,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "serde-value"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5a65a7291a8a568adcae4c10a677ebcedbc6c9cec91c054dee2ce40b0e3290eb"
|
||||
checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c"
|
||||
dependencies = [
|
||||
"ordered-float",
|
||||
"serde",
|
||||
@ -3290,6 +3328,18 @@ dependencies = [
|
||||
"serde",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_yaml"
|
||||
version = "0.8.24"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "707d15895415db6628332b737c838b88c598522e4dc70647e59b72312924aebc"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"ryu",
|
||||
"serde",
|
||||
"yaml-rust",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "sha-1"
|
||||
version = "0.8.2"
|
||||
@ -3470,6 +3520,12 @@ version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
|
||||
|
||||
[[package]]
|
||||
name = "strsim"
|
||||
version = "0.10.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
|
||||
|
||||
[[package]]
|
||||
name = "subtle"
|
||||
version = "2.4.1"
|
||||
@ -3536,6 +3592,12 @@ dependencies = [
|
||||
"unicode-width",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "textwrap"
|
||||
version = "0.15.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb"
|
||||
|
||||
[[package]]
|
||||
name = "thiserror"
|
||||
version = "1.0.30"
|
||||
@ -4405,6 +4467,15 @@ version = "0.13.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8"
|
||||
|
||||
[[package]]
|
||||
name = "yaml-rust"
|
||||
version = "0.4.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
|
||||
dependencies = [
|
||||
"linked-hash-map",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "zeroize"
|
||||
version = "1.5.1"
|
||||
|
22
Dockerfile
22
Dockerfile
@ -1,13 +1,21 @@
|
||||
FROM chirpstack/chirpstack-dev-cache:latest AS development
|
||||
FROM alpine:3.15.0 AS ui-build
|
||||
|
||||
COPY . $PROJECT_PATH
|
||||
ENV PROJECT_PATH=/chirpstack
|
||||
|
||||
RUN apk add --no-cache make git bash build-base nodejs npm yarn
|
||||
|
||||
RUN mkdir -p $PROJECT_PATH
|
||||
COPY ./api/grpc-web $PROJECT_PATH/api/grpc-web
|
||||
COPY ./ui $PROJECT_PATH/ui
|
||||
|
||||
# --network-timeout as yarn throws a ESOCKETTIMEDOUT timeout with GitHub Actions
|
||||
RUN cd $PROJECT_PATH/ui && \
|
||||
yarn install --network-timeout 600000 && \
|
||||
yarn build && \
|
||||
rm -rf node_modules
|
||||
yarn build
|
||||
|
||||
FROM chirpstack/chirpstack-dev-cache:latest AS rust-build
|
||||
|
||||
COPY . $PROJECT_PATH
|
||||
COPY --from=ui-build $PROJECT_PATH/ui/build $PROJECT_PATH/ui/build
|
||||
RUN cd $PROJECT_PATH/chirpstack && cargo build --release
|
||||
|
||||
FROM debian:buster-slim as production
|
||||
@ -18,7 +26,7 @@ RUN apt-get update && \
|
||||
libpq5 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY --from=development /target/release/chirpstack /usr/bin/chirpstack
|
||||
COPY --from=development /chirpstack/chirpstack/configuration/* /etc/chirpstack/
|
||||
COPY --from=rust-build /target/release/chirpstack /usr/bin/chirpstack
|
||||
COPY --from=rust-build /chirpstack/chirpstack/configuration/* /etc/chirpstack/
|
||||
USER nobody:nogroup
|
||||
ENTRYPOINT ["/usr/bin/chirpstack"]
|
||||
|
@ -19,11 +19,10 @@ RUN apt-get update && \
|
||||
redis-tools \
|
||||
rpm \
|
||||
clang \
|
||||
yarnpkg \
|
||||
golang-cfssl \
|
||||
jq \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN ln -s /usr/bin/yarnpkg /usr/bin/yarn
|
||||
|
||||
RUN rustup component add rustfmt clippy
|
||||
|
||||
RUN cargo install diesel_cli --no-default-features --features postgres
|
||||
|
23
Makefile
23
Makefile
@ -1,3 +1,5 @@
|
||||
.PHONY: dist api
|
||||
|
||||
# Builds a debug / development binary.
|
||||
build-debug:
|
||||
docker-compose run --rm chirpstack make debug
|
||||
@ -6,6 +8,27 @@ build-debug:
|
||||
build-release:
|
||||
docker-compose run --rm chirpstack make release
|
||||
|
||||
# Build distributable binaries.
|
||||
dist:
|
||||
# The pull is needed as else the specified platform is not respected.
|
||||
docker-compose pull chirpstack-build-amd64 && docker-compose run --rm chirpstack-build-amd64 make dist
|
||||
docker-compose pull chirpstack-build-arm64 && docker-compose run --rm chirpstack-build-arm64 make dist
|
||||
|
||||
# Set the versions
|
||||
version:
|
||||
test -n "$(VERSION)"
|
||||
sed -i 's/^version.*/version = "$(VERSION)"/g' ./chirpstack/Cargo.toml
|
||||
sed -i 's/^version.*/version = "$(VERSION)"/g' ./backend/Cargo.toml
|
||||
sed -i 's/^version.*/version = "$(VERSION)"/g' ./lrwn/Cargo.toml
|
||||
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./ui/package.json
|
||||
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./api/grpc-web/package.json
|
||||
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./api/js/package.json
|
||||
sed -i 's/version.*/version = "$(VERSION)",/g' ./api/python/src/setup.py
|
||||
sed -i 's/^version.*/version = "$(VERSION)"/g' ./api/rust/Cargo.toml
|
||||
|
||||
api: version
|
||||
cd api && make
|
||||
|
||||
# Builds the UI.
|
||||
build-ui:
|
||||
docker-compose run --rm chirpstack-ui make build
|
||||
|
9
api/Dockerfile-md
vendored
Normal file
9
api/Dockerfile-md
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
FROM golang:1.18-alpine
|
||||
|
||||
ENV PROJECT_PATH=/chirpstack/api
|
||||
RUN apk add --no-cache make git bash protobuf protobuf-dev
|
||||
|
||||
RUN git clone https://github.com/googleapis/googleapis.git /googleapis
|
||||
|
||||
RUN mkdir -p $PROJECT_PATH
|
||||
WORKDIR $PROJECT_PATH
|
2
api/Dockerfile-rust
vendored
2
api/Dockerfile-rust
vendored
@ -2,7 +2,7 @@ FROM rust:1.56
|
||||
|
||||
ENV PROJECT_PATH=/chirpstack/api
|
||||
RUN apt-get update && \
|
||||
apt-get install -y make git bash && \
|
||||
apt-get install -y make cmake git bash && \
|
||||
apt-get clean
|
||||
|
||||
RUN git clone https://github.com/googleapis/googleapis.git /googleapis
|
||||
|
11
api/Makefile
vendored
11
api/Makefile
vendored
@ -1,4 +1,4 @@
|
||||
.PHONY: rust grpc-web go
|
||||
.PHONY: rust grpc-web go js python
|
||||
|
||||
all:
|
||||
docker-compose up
|
||||
@ -11,3 +11,12 @@ grpc-web:
|
||||
|
||||
go:
|
||||
docker-compose run --rm chirpstack-api-go
|
||||
|
||||
js:
|
||||
docker-compose run --rm chirpstack-api-js
|
||||
|
||||
python:
|
||||
docker-compose run --rm chirpstack-api-python
|
||||
|
||||
md:
|
||||
docker-compose run --rm chirpstack-api-md
|
||||
|
15
api/docker-compose.yml
vendored
15
api/docker-compose.yml
vendored
@ -1,8 +1,6 @@
|
||||
version: "2"
|
||||
services:
|
||||
chirpstack-api-rust:
|
||||
environment:
|
||||
- VERSION=4.0.0
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-rust
|
||||
@ -17,8 +15,6 @@ services:
|
||||
volumes:
|
||||
- ./:/chirpstack/api
|
||||
chirpstack-api-grpc-web:
|
||||
environment:
|
||||
- VERSION=4.0.0
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-grpc-web
|
||||
@ -26,8 +22,6 @@ services:
|
||||
volumes:
|
||||
- ./:/chirpstack/api
|
||||
chirpstack-api-js:
|
||||
environment:
|
||||
- VERSION=4.0.0
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-js
|
||||
@ -35,11 +29,16 @@ services:
|
||||
volumes:
|
||||
- ./:/chirpstack/api
|
||||
chirpstack-api-python:
|
||||
environment:
|
||||
- VERSION=4.0.0
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-python
|
||||
command: bash -c "cd js && make all"
|
||||
volumes:
|
||||
- ./:/chirpstack/api
|
||||
chirpstack-api-md:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile-md
|
||||
command: bash -c "cd md && make all"
|
||||
volumes:
|
||||
- ./:/chirpstack/api
|
||||
|
1
api/go/Makefile
vendored
1
api/go/Makefile
vendored
@ -21,6 +21,7 @@ api:
|
||||
protoc ${PROTOC_ARGS} api/tenant.proto
|
||||
protoc ${PROTOC_ARGS} api/application.proto
|
||||
protoc ${PROTOC_ARGS} api/device_profile.proto
|
||||
protoc ${PROTOC_ARGS} api/device_profile_template.proto
|
||||
protoc ${PROTOC_ARGS} api/device.proto
|
||||
protoc ${PROTOC_ARGS} api/gateway.proto
|
||||
protoc ${PROTOC_ARGS} api/frame_log.proto
|
||||
|
8
api/go/api/application.pb.go
vendored
8
api/go/api/application.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/application.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
@ -4971,13 +4971,13 @@ var file_api_application_proto_rawDesc = []byte{
|
||||
0x73, 0x74, 0x1a, 0x35, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
|
||||
0x65, 0x4d, 0x71, 0x74, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||
0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
|
||||
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x53, 0x0a, 0x11, 0x69,
|
||||
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x57, 0x0a, 0x11, 0x69,
|
||||
0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69,
|
||||
0x42, 0x10, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72,
|
||||
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34,
|
||||
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/application_grpc.pb.go
vendored
2
api/go/api/application_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/application.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
10
api/go/api/device.pb.go
vendored
10
api/go/api/device.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/device.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
@ -2495,13 +2495,13 @@ var file_api_device_proto_rawDesc = []byte{
|
||||
0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x51, 0x75, 0x65, 0x75, 0x65, 0x49, 0x74, 0x65,
|
||||
0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x61, 0x70, 0x69, 0x2e,
|
||||
0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x51, 0x75, 0x65, 0x75, 0x65, 0x49, 0x74,
|
||||
0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x4e, 0x0a,
|
||||
0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x52, 0x0a,
|
||||
0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x42, 0x0b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
|
||||
0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68,
|
||||
0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68,
|
||||
0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74,
|
||||
0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x62, 0x06, 0x70,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x61, 0x70,
|
||||
0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/device_grpc.pb.go
vendored
2
api/go/api/device_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/device.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
411
api/go/api/device_profile.pb.go
vendored
411
api/go/api/device_profile.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/device_profile.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
common "github.com/chirpstack/chirpstack/api/go/v4/common"
|
||||
@ -87,6 +87,8 @@ type DeviceProfile struct {
|
||||
TenantId string `protobuf:"bytes,2,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
|
||||
// Name.
|
||||
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
|
||||
// Description.
|
||||
Description string `protobuf:"bytes,26,opt,name=description,proto3" json:"description,omitempty"`
|
||||
// Region.
|
||||
Region common.Region `protobuf:"varint,4,opt,name=region,proto3,enum=common.Region" json:"region,omitempty"`
|
||||
// LoRaWAN mac-version.
|
||||
@ -97,10 +99,10 @@ type DeviceProfile struct {
|
||||
AdrAlgorithmId string `protobuf:"bytes,7,opt,name=adr_algorithm_id,json=adrAlgorithmId,proto3" json:"adr_algorithm_id,omitempty"`
|
||||
// Payload codec runtime.
|
||||
PayloadCodecRuntime CodecRuntime `protobuf:"varint,8,opt,name=payload_codec_runtime,json=payloadCodecRuntime,proto3,enum=api.CodecRuntime" json:"payload_codec_runtime,omitempty"`
|
||||
// Payload codec encoder config.
|
||||
PayloadEncoderConfig string `protobuf:"bytes,9,opt,name=payload_encoder_config,json=payloadEncoderConfig,proto3" json:"payload_encoder_config,omitempty"`
|
||||
// Payload codec decoder config.
|
||||
PayloadDecoderConfig string `protobuf:"bytes,10,opt,name=payload_decoder_config,json=payloadDecoderConfig,proto3" json:"payload_decoder_config,omitempty"`
|
||||
// Payload codec script.
|
||||
PayloadCodecScript string `protobuf:"bytes,9,opt,name=payload_codec_script,json=payloadCodecScript,proto3" json:"payload_codec_script,omitempty"`
|
||||
// Flush queue on device activation.
|
||||
FlushQueueOnActivate bool `protobuf:"varint,10,opt,name=flush_queue_on_activate,json=flushQueueOnActivate,proto3" json:"flush_queue_on_activate,omitempty"`
|
||||
// Uplink interval (seconds).
|
||||
// This defines the expected uplink interval which the device uses for
|
||||
// communication. When the uplink interval has expired and no uplink has
|
||||
@ -193,6 +195,13 @@ func (x *DeviceProfile) GetName() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DeviceProfile) GetDescription() string {
|
||||
if x != nil {
|
||||
return x.Description
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DeviceProfile) GetRegion() common.Region {
|
||||
if x != nil {
|
||||
return x.Region
|
||||
@ -228,18 +237,18 @@ func (x *DeviceProfile) GetPayloadCodecRuntime() CodecRuntime {
|
||||
return CodecRuntime_NONE
|
||||
}
|
||||
|
||||
func (x *DeviceProfile) GetPayloadEncoderConfig() string {
|
||||
func (x *DeviceProfile) GetPayloadCodecScript() string {
|
||||
if x != nil {
|
||||
return x.PayloadEncoderConfig
|
||||
return x.PayloadCodecScript
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DeviceProfile) GetPayloadDecoderConfig() string {
|
||||
func (x *DeviceProfile) GetFlushQueueOnActivate() bool {
|
||||
if x != nil {
|
||||
return x.PayloadDecoderConfig
|
||||
return x.FlushQueueOnActivate
|
||||
}
|
||||
return ""
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *DeviceProfile) GetUplinkInterval() uint32 {
|
||||
@ -1038,208 +1047,210 @@ var file_api_device_profile_proto_rawDesc = []byte{
|
||||
0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||
0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x13, 0x63,
|
||||
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x22, 0x9a, 0x09, 0x0a, 0x0d, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x22, 0xb9, 0x09, 0x0a, 0x0d, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49,
|
||||
0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18,
|
||||
0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52,
|
||||
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a,
|
||||
0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01,
|
||||
0x28, 0x0e, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x61, 0x63, 0x56,
|
||||
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69,
|
||||
0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73,
|
||||
0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
||||
0x19, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67, 0x50, 0x61, 0x72, 0x61,
|
||||
0x6d, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x72, 0x65, 0x67, 0x50,
|
||||
0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a,
|
||||
0x10, 0x61, 0x64, 0x72, 0x5f, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f,
|
||||
0x72, 0x69, 0x74, 0x68, 0x6d, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x15, 0x70, 0x61, 0x79, 0x6c, 0x6f,
|
||||
0x61, 0x64, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65,
|
||||
0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x64,
|
||||
0x65, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x13, 0x70, 0x61, 0x79, 0x6c, 0x6f,
|
||||
0x61, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x34,
|
||||
0x0a, 0x16, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65,
|
||||
0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14,
|
||||
0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x43, 0x6f,
|
||||
0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f,
|
||||
0x64, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x44, 0x65, 0x63,
|
||||
0x6f, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70,
|
||||
0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0b, 0x20,
|
||||
0x01, 0x28, 0x0d, 0x52, 0x0e, 0x75, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72,
|
||||
0x76, 0x61, 0x6c, 0x12, 0x3b, 0x0a, 0x1a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x74,
|
||||
0x61, 0x74, 0x75, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61,
|
||||
0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53,
|
||||
0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c,
|
||||
0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x6f, 0x74, 0x61,
|
||||
0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
|
||||
0x73, 0x4f, 0x74, 0x61, 0x61, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
|
||||
0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x62, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52,
|
||||
0x0e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x12,
|
||||
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
|
||||
0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f,
|
||||
0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
|
||||
0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12,
|
||||
0x33, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05,
|
||||
0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x61,
|
||||
0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x56, 0x65, 0x72,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61,
|
||||
0x6d, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28,
|
||||
0x0e, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67, 0x50, 0x61,
|
||||
0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x72, 0x65,
|
||||
0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12,
|
||||
0x28, 0x0a, 0x10, 0x61, 0x64, 0x72, 0x5f, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d,
|
||||
0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x64, 0x72, 0x41, 0x6c,
|
||||
0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x15, 0x70, 0x61, 0x79,
|
||||
0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69,
|
||||
0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43,
|
||||
0x6f, 0x64, 0x65, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x13, 0x70, 0x61, 0x79,
|
||||
0x6c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65,
|
||||
0x12, 0x30, 0x0a, 0x14, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x64, 0x65,
|
||||
0x63, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12,
|
||||
0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x63, 0x72, 0x69,
|
||||
0x70, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x5f, 0x71, 0x75, 0x65, 0x75,
|
||||
0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20,
|
||||
0x01, 0x28, 0x08, 0x52, 0x14, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x51, 0x75, 0x65, 0x75, 0x65, 0x4f,
|
||||
0x6e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x6c,
|
||||
0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01,
|
||||
0x28, 0x0d, 0x52, 0x0e, 0x75, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76,
|
||||
0x61, 0x6c, 0x12, 0x3b, 0x0a, 0x1a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61,
|
||||
0x74, 0x75, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c,
|
||||
0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74,
|
||||
0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12,
|
||||
0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x6f, 0x74, 0x61, 0x61,
|
||||
0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73,
|
||||
0x4f, 0x74, 0x61, 0x61, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73,
|
||||
0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x62, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e,
|
||||
0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x12, 0x28,
|
||||
0x0a, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73,
|
||||
0x5f, 0x63, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
|
||||
0x74, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6c, 0x61, 0x73,
|
||||
0x73, 0x5f, 0x62, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28,
|
||||
0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
|
||||
0x12, 0x36, 0x0a, 0x18, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x62, 0x5f, 0x70, 0x69, 0x6e, 0x67,
|
||||
0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x11, 0x20, 0x01,
|
||||
0x28, 0x0d, 0x52, 0x14, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x6c,
|
||||
0x6f, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x14, 0x63, 0x6c, 0x61, 0x73,
|
||||
0x73, 0x5f, 0x62, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x64, 0x72,
|
||||
0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x50, 0x69,
|
||||
0x6e, 0x67, 0x53, 0x6c, 0x6f, 0x74, 0x44, 0x72, 0x12, 0x32, 0x0a, 0x16, 0x63, 0x6c, 0x61, 0x73,
|
||||
0x73, 0x5f, 0x62, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x66, 0x72,
|
||||
0x65, 0x71, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42,
|
||||
0x50, 0x69, 0x6e, 0x67, 0x53, 0x6c, 0x6f, 0x74, 0x46, 0x72, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0f,
|
||||
0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18,
|
||||
0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x54, 0x69, 0x6d,
|
||||
0x65, 0x6f, 0x75, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x62, 0x70, 0x5f, 0x72, 0x78, 0x31, 0x5f,
|
||||
0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x62, 0x70,
|
||||
0x52, 0x78, 0x31, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x29, 0x0a, 0x11, 0x61, 0x62, 0x70, 0x5f,
|
||||
0x72, 0x78, 0x31, 0x5f, 0x64, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x16, 0x20,
|
||||
0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x62, 0x70, 0x52, 0x78, 0x31, 0x44, 0x72, 0x4f, 0x66, 0x66,
|
||||
0x73, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x0a, 0x61, 0x62, 0x70, 0x5f, 0x72, 0x78, 0x32, 0x5f, 0x64,
|
||||
0x72, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x62, 0x70, 0x52, 0x78, 0x32, 0x44,
|
||||
0x72, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x62, 0x70, 0x5f, 0x72, 0x78, 0x32, 0x5f, 0x66, 0x72, 0x65,
|
||||
0x71, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x62, 0x70, 0x52, 0x78, 0x32, 0x46,
|
||||
0x72, 0x65, 0x71, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x19, 0x20, 0x03, 0x28,
|
||||
0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72,
|
||||
0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
|
||||
0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74,
|
||||
0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd2,
|
||||
0x03, 0x0a, 0x15, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
|
||||
0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
|
||||
0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
|
||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
|
||||
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
|
||||
0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
|
||||
0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
||||
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
|
||||
0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x12,
|
||||
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01,
|
||||
0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67, 0x69,
|
||||
0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0b, 0x6d, 0x61,
|
||||
0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
||||
0x12, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x61, 0x63, 0x56, 0x65, 0x72, 0x73,
|
||||
0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
|
||||
0x49, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x5f, 0x72, 0x65,
|
||||
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x63,
|
||||
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52,
|
||||
0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x72, 0x65, 0x67, 0x50, 0x61, 0x72, 0x61,
|
||||
0x6d, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75,
|
||||
0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x6f, 0x74, 0x61, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28,
|
||||
0x08, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x4f, 0x74, 0x61, 0x61, 0x12,
|
||||
0x28, 0x0a, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73,
|
||||
0x73, 0x5f, 0x63, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x75, 0x70, 0x70, 0x6f,
|
||||
0x72, 0x74, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6c, 0x61,
|
||||
0x73, 0x73, 0x5f, 0x62, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x10, 0x20, 0x01,
|
||||
0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75,
|
||||
0x74, 0x12, 0x36, 0x0a, 0x18, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x62, 0x5f, 0x70, 0x69, 0x6e,
|
||||
0x67, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x11, 0x20,
|
||||
0x01, 0x28, 0x0d, 0x52, 0x14, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x50, 0x69, 0x6e, 0x67, 0x53,
|
||||
0x6c, 0x6f, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x14, 0x63, 0x6c, 0x61,
|
||||
0x73, 0x73, 0x5f, 0x62, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x64,
|
||||
0x72, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x50,
|
||||
0x69, 0x6e, 0x67, 0x53, 0x6c, 0x6f, 0x74, 0x44, 0x72, 0x12, 0x32, 0x0a, 0x16, 0x63, 0x6c, 0x61,
|
||||
0x73, 0x73, 0x5f, 0x62, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x66,
|
||||
0x72, 0x65, 0x71, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6c, 0x61, 0x73, 0x73,
|
||||
0x42, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x6c, 0x6f, 0x74, 0x46, 0x72, 0x65, 0x71, 0x12, 0x26, 0x0a,
|
||||
0x0f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
|
||||
0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x43, 0x54, 0x69,
|
||||
0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x62, 0x70, 0x5f, 0x72, 0x78, 0x31,
|
||||
0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x62,
|
||||
0x70, 0x52, 0x78, 0x31, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x29, 0x0a, 0x11, 0x61, 0x62, 0x70,
|
||||
0x5f, 0x72, 0x78, 0x31, 0x5f, 0x64, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x16,
|
||||
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x62, 0x70, 0x52, 0x78, 0x31, 0x44, 0x72, 0x4f, 0x66,
|
||||
0x66, 0x73, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x0a, 0x61, 0x62, 0x70, 0x5f, 0x72, 0x78, 0x32, 0x5f,
|
||||
0x64, 0x72, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x62, 0x70, 0x52, 0x78, 0x32,
|
||||
0x44, 0x72, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x62, 0x70, 0x5f, 0x72, 0x78, 0x32, 0x5f, 0x66, 0x72,
|
||||
0x65, 0x71, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x62, 0x70, 0x52, 0x78, 0x32,
|
||||
0x46, 0x72, 0x65, 0x71, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x19, 0x20, 0x03,
|
||||
0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50,
|
||||
0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
|
||||
0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e,
|
||||
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
|
||||
0xd2, 0x03, 0x0a, 0x15, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
|
||||
0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65,
|
||||
0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
|
||||
0x73, 0x5f, 0x62, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x75, 0x70, 0x70, 0x6f,
|
||||
0x72, 0x74, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x75, 0x70,
|
||||
0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x63, 0x18, 0x0a, 0x20,
|
||||
0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x43, 0x6c, 0x61,
|
||||
0x73, 0x73, 0x43, 0x22, 0x57, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
|
||||
0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x12, 0x39, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x70, 0x69, 0x2e,
|
||||
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x0d, 0x64,
|
||||
0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2d, 0x0a, 0x1b,
|
||||
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
|
||||
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x29, 0x0a, 0x17, 0x47,
|
||||
0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52,
|
||||
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xcb, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x44, 0x65,
|
||||
0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
||||
0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72,
|
||||
0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52,
|
||||
0x0d, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x39,
|
||||
0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01,
|
||||
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
||||
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09,
|
||||
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64,
|
||||
0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
|
||||
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
|
||||
0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
|
||||
0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
|
||||
0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
|
||||
0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
|
||||
0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20,
|
||||
0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67,
|
||||
0x69, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0b, 0x6d,
|
||||
0x61, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e,
|
||||
0x32, 0x12, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x61, 0x63, 0x56, 0x65, 0x72,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
|
||||
0x12, 0x49, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x5f, 0x72,
|
||||
0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e,
|
||||
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
|
||||
0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x72, 0x65, 0x67, 0x50, 0x61, 0x72,
|
||||
0x61, 0x6d, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73,
|
||||
0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x6f, 0x74, 0x61, 0x61, 0x18, 0x08, 0x20, 0x01,
|
||||
0x28, 0x08, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x4f, 0x74, 0x61, 0x61,
|
||||
0x12, 0x28, 0x0a, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6c, 0x61,
|
||||
0x73, 0x73, 0x5f, 0x62, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x75, 0x70, 0x70,
|
||||
0x6f, 0x72, 0x74, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x75,
|
||||
0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x63, 0x18, 0x0a,
|
||||
0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x43, 0x6c,
|
||||
0x61, 0x73, 0x73, 0x43, 0x22, 0x57, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65,
|
||||
0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74,
|
||||
0x65, 0x64, 0x41, 0x74, 0x22, 0x57, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65,
|
||||
0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x12, 0x39, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x70, 0x69,
|
||||
0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x0d,
|
||||
0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2d, 0x0a,
|
||||
0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02,
|
||||
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x29, 0x0a, 0x17,
|
||||
0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xcb, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x44,
|
||||
0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
|
||||
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70,
|
||||
0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
|
||||
0x52, 0x0d, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12,
|
||||
0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20,
|
||||
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52,
|
||||
0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70,
|
||||
0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
|
||||
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
|
||||
0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61,
|
||||
0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x57, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44,
|
||||
0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72,
|
||||
0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52,
|
||||
0x0d, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2c,
|
||||
0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72,
|
||||
0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02,
|
||||
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x7e, 0x0a, 0x19,
|
||||
0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
|
||||
0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d,
|
||||
0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12,
|
||||
0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
|
||||
0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63,
|
||||
0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12,
|
||||
0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x71, 0x0a, 0x1a,
|
||||
0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
|
||||
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f,
|
||||
0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
|
||||
0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x72,
|
||||
0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4c,
|
||||
0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22,
|
||||
0x7c, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d,
|
||||
0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2c, 0x0a,
|
||||
0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69,
|
||||
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x7e, 0x0a, 0x19, 0x4c,
|
||||
0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
|
||||
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69,
|
||||
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16,
|
||||
0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06,
|
||||
0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68,
|
||||
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x1b,
|
||||
0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x71, 0x0a, 0x1a, 0x4c,
|
||||
0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
|
||||
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74,
|
||||
0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a,
|
||||
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x06, 0x72, 0x65,
|
||||
0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x70, 0x69,
|
||||
0x2e, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x4c, 0x69, 0x73,
|
||||
0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x3a, 0x0a,
|
||||
0x14, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x4c, 0x69, 0x73,
|
||||
0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x2a, 0x31, 0x0a, 0x0c, 0x43, 0x6f, 0x64,
|
||||
0x65, 0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e,
|
||||
0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x41, 0x59, 0x45, 0x4e, 0x4e, 0x45, 0x5f, 0x4c,
|
||||
0x50, 0x50, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4a, 0x53, 0x10, 0x02, 0x32, 0xdc, 0x03, 0x0a,
|
||||
0x14, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x65,
|
||||
0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12,
|
||||
0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69,
|
||||
0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x1a, 0x20, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76,
|
||||
0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
|
||||
0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x1c, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69,
|
||||
0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e,
|
||||
0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x06, 0x55, 0x70,
|
||||
0x64, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
|
||||
0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12,
|
||||
0x43, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e,
|
||||
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
|
||||
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
|
||||
0x74, 0x79, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
|
||||
0x5a, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69,
|
||||
0x74, 0x68, 0x6d, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x2b, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
|
||||
0x66, 0x69, 0x6c, 0x65, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d,
|
||||
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x55, 0x0a, 0x11, 0x69,
|
||||
0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69,
|
||||
0x42, 0x12, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
|
||||
0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68,
|
||||
0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f,
|
||||
0x76, 0x34, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65,
|
||||
0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x70, 0x69,
|
||||
0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4c, 0x69,
|
||||
0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x7c,
|
||||
0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x73,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61,
|
||||
0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74,
|
||||
0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x06, 0x72, 0x65, 0x73,
|
||||
0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e,
|
||||
0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x4c, 0x69, 0x73, 0x74,
|
||||
0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x3a, 0x0a, 0x14,
|
||||
0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x4c, 0x69, 0x73, 0x74,
|
||||
0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x2a, 0x31, 0x0a, 0x0c, 0x43, 0x6f, 0x64, 0x65,
|
||||
0x63, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45,
|
||||
0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x41, 0x59, 0x45, 0x4e, 0x4e, 0x45, 0x5f, 0x4c, 0x50,
|
||||
0x50, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4a, 0x53, 0x10, 0x02, 0x32, 0xdc, 0x03, 0x0a, 0x14,
|
||||
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x65, 0x72,
|
||||
0x76, 0x69, 0x63, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1f,
|
||||
0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63,
|
||||
0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
|
||||
0x20, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69,
|
||||
0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
||||
0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x1c, 0x2e, 0x61, 0x70, 0x69,
|
||||
0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
|
||||
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47,
|
||||
0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52,
|
||||
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x06, 0x55, 0x70, 0x64,
|
||||
0x61, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
|
||||
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x43,
|
||||
0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44,
|
||||
0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69,
|
||||
0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
||||
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
|
||||
0x79, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a,
|
||||
0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74,
|
||||
0x68, 0x6d, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x2b, 0x2e, 0x61, 0x70,
|
||||
0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66,
|
||||
0x69, 0x6c, 0x65, 0x41, 0x64, 0x72, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x73,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x59, 0x0a, 0x11, 0x69, 0x6f,
|
||||
0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42,
|
||||
0x12, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
|
||||
0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69,
|
||||
0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76,
|
||||
0x34, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/device_profile_grpc.pb.go
vendored
2
api/go/api/device_profile_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/device_profile.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
1243
api/go/api/device_profile_template.pb.go
vendored
Normal file
1243
api/go/api/device_profile_template.pb.go
vendored
Normal file
File diff suppressed because it is too large
Load Diff
261
api/go/api/device_profile_template_grpc.pb.go
vendored
Normal file
261
api/go/api/device_profile_template_grpc.pb.go
vendored
Normal file
@ -0,0 +1,261 @@
|
||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
|
||||
// versions:
|
||||
// - protoc-gen-go-grpc v1.2.0
|
||||
// - protoc v3.18.1
|
||||
// source: api/device_profile_template.proto
|
||||
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
grpc "google.golang.org/grpc"
|
||||
codes "google.golang.org/grpc/codes"
|
||||
status "google.golang.org/grpc/status"
|
||||
emptypb "google.golang.org/protobuf/types/known/emptypb"
|
||||
)
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the grpc package it is being compiled against.
|
||||
// Requires gRPC-Go v1.32.0 or later.
|
||||
const _ = grpc.SupportPackageIsVersion7
|
||||
|
||||
// DeviceProfileTemplateServiceClient is the client API for DeviceProfileTemplateService service.
|
||||
//
|
||||
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
|
||||
type DeviceProfileTemplateServiceClient interface {
|
||||
// Create the given device-profile template.
|
||||
Create(ctx context.Context, in *CreateDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
||||
// Get the device-profile template for the given ID.
|
||||
Get(ctx context.Context, in *GetDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*GetDeviceProfileTemplateResponse, error)
|
||||
// Update the given device-profile template.
|
||||
Update(ctx context.Context, in *UpdateDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
||||
// Delete the device-profile template with the given ID.
|
||||
Delete(ctx context.Context, in *DeleteDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
||||
// List the available device-profile templates.
|
||||
List(ctx context.Context, in *ListDeviceProfileTemplatesRequest, opts ...grpc.CallOption) (*ListDeviceProfileTemplatesResponse, error)
|
||||
}
|
||||
|
||||
type deviceProfileTemplateServiceClient struct {
|
||||
cc grpc.ClientConnInterface
|
||||
}
|
||||
|
||||
func NewDeviceProfileTemplateServiceClient(cc grpc.ClientConnInterface) DeviceProfileTemplateServiceClient {
|
||||
return &deviceProfileTemplateServiceClient{cc}
|
||||
}
|
||||
|
||||
func (c *deviceProfileTemplateServiceClient) Create(ctx context.Context, in *CreateDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
||||
out := new(emptypb.Empty)
|
||||
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Create", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *deviceProfileTemplateServiceClient) Get(ctx context.Context, in *GetDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*GetDeviceProfileTemplateResponse, error) {
|
||||
out := new(GetDeviceProfileTemplateResponse)
|
||||
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Get", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *deviceProfileTemplateServiceClient) Update(ctx context.Context, in *UpdateDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
||||
out := new(emptypb.Empty)
|
||||
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Update", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *deviceProfileTemplateServiceClient) Delete(ctx context.Context, in *DeleteDeviceProfileTemplateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
||||
out := new(emptypb.Empty)
|
||||
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/Delete", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *deviceProfileTemplateServiceClient) List(ctx context.Context, in *ListDeviceProfileTemplatesRequest, opts ...grpc.CallOption) (*ListDeviceProfileTemplatesResponse, error) {
|
||||
out := new(ListDeviceProfileTemplatesResponse)
|
||||
err := c.cc.Invoke(ctx, "/api.DeviceProfileTemplateService/List", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
// DeviceProfileTemplateServiceServer is the server API for DeviceProfileTemplateService service.
|
||||
// All implementations must embed UnimplementedDeviceProfileTemplateServiceServer
|
||||
// for forward compatibility
|
||||
type DeviceProfileTemplateServiceServer interface {
|
||||
// Create the given device-profile template.
|
||||
Create(context.Context, *CreateDeviceProfileTemplateRequest) (*emptypb.Empty, error)
|
||||
// Get the device-profile template for the given ID.
|
||||
Get(context.Context, *GetDeviceProfileTemplateRequest) (*GetDeviceProfileTemplateResponse, error)
|
||||
// Update the given device-profile template.
|
||||
Update(context.Context, *UpdateDeviceProfileTemplateRequest) (*emptypb.Empty, error)
|
||||
// Delete the device-profile template with the given ID.
|
||||
Delete(context.Context, *DeleteDeviceProfileTemplateRequest) (*emptypb.Empty, error)
|
||||
// List the available device-profile templates.
|
||||
List(context.Context, *ListDeviceProfileTemplatesRequest) (*ListDeviceProfileTemplatesResponse, error)
|
||||
mustEmbedUnimplementedDeviceProfileTemplateServiceServer()
|
||||
}
|
||||
|
||||
// UnimplementedDeviceProfileTemplateServiceServer must be embedded to have forward compatible implementations.
|
||||
type UnimplementedDeviceProfileTemplateServiceServer struct {
|
||||
}
|
||||
|
||||
func (UnimplementedDeviceProfileTemplateServiceServer) Create(context.Context, *CreateDeviceProfileTemplateRequest) (*emptypb.Empty, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method Create not implemented")
|
||||
}
|
||||
func (UnimplementedDeviceProfileTemplateServiceServer) Get(context.Context, *GetDeviceProfileTemplateRequest) (*GetDeviceProfileTemplateResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method Get not implemented")
|
||||
}
|
||||
func (UnimplementedDeviceProfileTemplateServiceServer) Update(context.Context, *UpdateDeviceProfileTemplateRequest) (*emptypb.Empty, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method Update not implemented")
|
||||
}
|
||||
func (UnimplementedDeviceProfileTemplateServiceServer) Delete(context.Context, *DeleteDeviceProfileTemplateRequest) (*emptypb.Empty, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented")
|
||||
}
|
||||
func (UnimplementedDeviceProfileTemplateServiceServer) List(context.Context, *ListDeviceProfileTemplatesRequest) (*ListDeviceProfileTemplatesResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method List not implemented")
|
||||
}
|
||||
func (UnimplementedDeviceProfileTemplateServiceServer) mustEmbedUnimplementedDeviceProfileTemplateServiceServer() {
|
||||
}
|
||||
|
||||
// UnsafeDeviceProfileTemplateServiceServer may be embedded to opt out of forward compatibility for this service.
|
||||
// Use of this interface is not recommended, as added methods to DeviceProfileTemplateServiceServer will
|
||||
// result in compilation errors.
|
||||
type UnsafeDeviceProfileTemplateServiceServer interface {
|
||||
mustEmbedUnimplementedDeviceProfileTemplateServiceServer()
|
||||
}
|
||||
|
||||
func RegisterDeviceProfileTemplateServiceServer(s grpc.ServiceRegistrar, srv DeviceProfileTemplateServiceServer) {
|
||||
s.RegisterService(&DeviceProfileTemplateService_ServiceDesc, srv)
|
||||
}
|
||||
|
||||
func _DeviceProfileTemplateService_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(CreateDeviceProfileTemplateRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Create(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/api.DeviceProfileTemplateService/Create",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Create(ctx, req.(*CreateDeviceProfileTemplateRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _DeviceProfileTemplateService_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(GetDeviceProfileTemplateRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Get(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/api.DeviceProfileTemplateService/Get",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Get(ctx, req.(*GetDeviceProfileTemplateRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _DeviceProfileTemplateService_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(UpdateDeviceProfileTemplateRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Update(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/api.DeviceProfileTemplateService/Update",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Update(ctx, req.(*UpdateDeviceProfileTemplateRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _DeviceProfileTemplateService_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(DeleteDeviceProfileTemplateRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Delete(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/api.DeviceProfileTemplateService/Delete",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(DeviceProfileTemplateServiceServer).Delete(ctx, req.(*DeleteDeviceProfileTemplateRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _DeviceProfileTemplateService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(ListDeviceProfileTemplatesRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(DeviceProfileTemplateServiceServer).List(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/api.DeviceProfileTemplateService/List",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(DeviceProfileTemplateServiceServer).List(ctx, req.(*ListDeviceProfileTemplatesRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
// DeviceProfileTemplateService_ServiceDesc is the grpc.ServiceDesc for DeviceProfileTemplateService service.
|
||||
// It's only intended for direct use with grpc.RegisterService,
|
||||
// and not to be introspected or modified (even as a copy)
|
||||
var DeviceProfileTemplateService_ServiceDesc = grpc.ServiceDesc{
|
||||
ServiceName: "api.DeviceProfileTemplateService",
|
||||
HandlerType: (*DeviceProfileTemplateServiceServer)(nil),
|
||||
Methods: []grpc.MethodDesc{
|
||||
{
|
||||
MethodName: "Create",
|
||||
Handler: _DeviceProfileTemplateService_Create_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "Get",
|
||||
Handler: _DeviceProfileTemplateService_Get_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "Update",
|
||||
Handler: _DeviceProfileTemplateService_Update_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "Delete",
|
||||
Handler: _DeviceProfileTemplateService_Delete_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "List",
|
||||
Handler: _DeviceProfileTemplateService_List_Handler,
|
||||
},
|
||||
},
|
||||
Streams: []grpc.StreamDesc{},
|
||||
Metadata: "api/device_profile_template.proto",
|
||||
}
|
50
api/go/api/frame_log.pb.go
vendored
50
api/go/api/frame_log.pb.go
vendored
@ -4,11 +4,11 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/frame_log.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
gw "github.com/chirpstack/chirpstack-api/go/v4/gw"
|
||||
common "github.com/chirpstack/chirpstack/api/go/v4/common"
|
||||
gw "github.com/chirpstack/chirpstack/api/go/v4/gw"
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
|
||||
@ -31,9 +31,9 @@ type UplinkFrameLog struct {
|
||||
// PHYPayload.
|
||||
PhyPayload []byte `protobuf:"bytes,1,opt,name=phy_payload,json=phyPayload,proto3" json:"phy_payload,omitempty"`
|
||||
// TX meta-data.
|
||||
TxInfo *gw.UplinkTXInfo `protobuf:"bytes,2,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
TxInfo *gw.UplinkTxInfo `protobuf:"bytes,2,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
// RX meta-data.
|
||||
RxInfo []*gw.UplinkRXInfo `protobuf:"bytes,3,rep,name=rx_info,json=rxInfo,proto3" json:"rx_info,omitempty"`
|
||||
RxInfo []*gw.UplinkRxInfo `protobuf:"bytes,3,rep,name=rx_info,json=rxInfo,proto3" json:"rx_info,omitempty"`
|
||||
// Message type.
|
||||
MType common.MType `protobuf:"varint,4,opt,name=m_type,json=mType,proto3,enum=common.MType" json:"m_type,omitempty"`
|
||||
// Device address (optional).
|
||||
@ -83,14 +83,14 @@ func (x *UplinkFrameLog) GetPhyPayload() []byte {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *UplinkFrameLog) GetTxInfo() *gw.UplinkTXInfo {
|
||||
func (x *UplinkFrameLog) GetTxInfo() *gw.UplinkTxInfo {
|
||||
if x != nil {
|
||||
return x.TxInfo
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *UplinkFrameLog) GetRxInfo() []*gw.UplinkRXInfo {
|
||||
func (x *UplinkFrameLog) GetRxInfo() []*gw.UplinkRxInfo {
|
||||
if x != nil {
|
||||
return x.RxInfo
|
||||
}
|
||||
@ -135,9 +135,9 @@ type DownlinkFrameLog struct {
|
||||
// PHYPayload.
|
||||
PhyPayload []byte `protobuf:"bytes,2,opt,name=phy_payload,json=phyPayload,proto3" json:"phy_payload,omitempty"`
|
||||
// TX meta-data.
|
||||
TxInfo *gw.DownlinkTXInfo `protobuf:"bytes,3,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
// Downlink ID (UUID).
|
||||
DownlinkId string `protobuf:"bytes,4,opt,name=downlink_id,json=downlinkId,proto3" json:"downlink_id,omitempty"`
|
||||
TxInfo *gw.DownlinkTxInfo `protobuf:"bytes,3,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
// Downlink ID.
|
||||
DownlinkId uint32 `protobuf:"varint,4,opt,name=downlink_id,json=downlinkId,proto3" json:"downlink_id,omitempty"`
|
||||
// Gateway ID (EUI64).
|
||||
GatewayId string `protobuf:"bytes,5,opt,name=gateway_id,json=gatewayId,proto3" json:"gateway_id,omitempty"`
|
||||
// Message type.
|
||||
@ -194,18 +194,18 @@ func (x *DownlinkFrameLog) GetPhyPayload() []byte {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *DownlinkFrameLog) GetTxInfo() *gw.DownlinkTXInfo {
|
||||
func (x *DownlinkFrameLog) GetTxInfo() *gw.DownlinkTxInfo {
|
||||
if x != nil {
|
||||
return x.TxInfo
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *DownlinkFrameLog) GetDownlinkId() string {
|
||||
func (x *DownlinkFrameLog) GetDownlinkId() uint32 {
|
||||
if x != nil {
|
||||
return x.DownlinkId
|
||||
}
|
||||
return ""
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *DownlinkFrameLog) GetGatewayId() string {
|
||||
@ -249,10 +249,10 @@ var file_api_frame_log_proto_rawDesc = []byte{
|
||||
0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x68, 0x79, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x68, 0x79, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
|
||||
0x64, 0x12, 0x29, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01,
|
||||
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x58,
|
||||
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x78,
|
||||
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x0a, 0x07,
|
||||
0x72, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e,
|
||||
0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x58, 0x49, 0x6e, 0x66, 0x6f, 0x52,
|
||||
0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52,
|
||||
0x06, 0x72, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x06, 0x6d, 0x5f, 0x74, 0x79, 0x70,
|
||||
0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
|
||||
0x2e, 0x4d, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a,
|
||||
@ -270,9 +270,9 @@ var file_api_frame_log_proto_rawDesc = []byte{
|
||||
0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x68, 0x79,
|
||||
0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2b, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e,
|
||||
0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x77, 0x2e, 0x44, 0x6f,
|
||||
0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x58, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78,
|
||||
0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78,
|
||||
0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b,
|
||||
0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x6f, 0x77, 0x6e, 0x6c,
|
||||
0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x6f, 0x77, 0x6e, 0x6c,
|
||||
0x69, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
|
||||
0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77,
|
||||
0x61, 0x79, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x06, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06,
|
||||
@ -280,13 +280,13 @@ var file_api_frame_log_proto_rawDesc = []byte{
|
||||
0x79, 0x70, 0x65, 0x52, 0x05, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x65,
|
||||
0x76, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65,
|
||||
0x76, 0x41, 0x64, 0x64, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x5f, 0x65, 0x75, 0x69,
|
||||
0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x45, 0x75, 0x69, 0x42, 0x50,
|
||||
0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x45, 0x75, 0x69, 0x42, 0x54,
|
||||
0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
|
||||
0x61, 0x70, 0x69, 0x42, 0x0d, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x67, 0x50, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72,
|
||||
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34,
|
||||
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
@ -305,19 +305,19 @@ var file_api_frame_log_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
|
||||
var file_api_frame_log_proto_goTypes = []interface{}{
|
||||
(*UplinkFrameLog)(nil), // 0: api.UplinkFrameLog
|
||||
(*DownlinkFrameLog)(nil), // 1: api.DownlinkFrameLog
|
||||
(*gw.UplinkTXInfo)(nil), // 2: gw.UplinkTXInfo
|
||||
(*gw.UplinkRXInfo)(nil), // 3: gw.UplinkRXInfo
|
||||
(*gw.UplinkTxInfo)(nil), // 2: gw.UplinkTxInfo
|
||||
(*gw.UplinkRxInfo)(nil), // 3: gw.UplinkRxInfo
|
||||
(common.MType)(0), // 4: common.MType
|
||||
(*timestamppb.Timestamp)(nil), // 5: google.protobuf.Timestamp
|
||||
(*gw.DownlinkTXInfo)(nil), // 6: gw.DownlinkTXInfo
|
||||
(*gw.DownlinkTxInfo)(nil), // 6: gw.DownlinkTxInfo
|
||||
}
|
||||
var file_api_frame_log_proto_depIdxs = []int32{
|
||||
2, // 0: api.UplinkFrameLog.tx_info:type_name -> gw.UplinkTXInfo
|
||||
3, // 1: api.UplinkFrameLog.rx_info:type_name -> gw.UplinkRXInfo
|
||||
2, // 0: api.UplinkFrameLog.tx_info:type_name -> gw.UplinkTxInfo
|
||||
3, // 1: api.UplinkFrameLog.rx_info:type_name -> gw.UplinkRxInfo
|
||||
4, // 2: api.UplinkFrameLog.m_type:type_name -> common.MType
|
||||
5, // 3: api.UplinkFrameLog.time:type_name -> google.protobuf.Timestamp
|
||||
5, // 4: api.DownlinkFrameLog.time:type_name -> google.protobuf.Timestamp
|
||||
6, // 5: api.DownlinkFrameLog.tx_info:type_name -> gw.DownlinkTXInfo
|
||||
6, // 5: api.DownlinkFrameLog.tx_info:type_name -> gw.DownlinkTxInfo
|
||||
4, // 6: api.DownlinkFrameLog.m_type:type_name -> common.MType
|
||||
7, // [7:7] is the sub-list for method output_type
|
||||
7, // [7:7] is the sub-list for method input_type
|
||||
|
8
api/go/api/gateway.pb.go
vendored
8
api/go/api/gateway.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/gateway.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
common "github.com/chirpstack/chirpstack/api/go/v4/common"
|
||||
@ -1223,12 +1223,12 @@ var file_api_gateway_proto_rawDesc = []byte{
|
||||
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65,
|
||||
0x77, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
|
||||
0x22, 0x00, 0x42, 0x4f, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74,
|
||||
0x22, 0x00, 0x42, 0x53, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74,
|
||||
0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0c, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
|
||||
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
|
||||
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
|
||||
0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63,
|
||||
0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f,
|
||||
0x2f, 0x76, 0x34, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x2f, 0x76, 0x34, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/gateway_grpc.pb.go
vendored
2
api/go/api/gateway_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/gateway.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
8
api/go/api/internal.pb.go
vendored
8
api/go/api/internal.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/internal.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
@ -1818,13 +1818,13 @@ var file_api_internal_proto_rawDesc = []byte{
|
||||
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1e, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x45,
|
||||
0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x61,
|
||||
0x70, 0x69, 0x2e, 0x4c, 0x6f, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x00, 0x30, 0x01, 0x42, 0x50,
|
||||
0x70, 0x69, 0x2e, 0x4c, 0x6f, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x00, 0x30, 0x01, 0x42, 0x54,
|
||||
0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
|
||||
0x61, 0x70, 0x69, 0x42, 0x0d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72,
|
||||
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34,
|
||||
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/internal_grpc.pb.go
vendored
2
api/go/api/internal_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/internal.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
10
api/go/api/multicast_group.pb.go
vendored
10
api/go/api/multicast_group.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/multicast_group.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
common "github.com/chirpstack/chirpstack/api/go/v4/common"
|
||||
@ -1390,13 +1390,13 @@ var file_api_multicast_group_proto_rawDesc = []byte{
|
||||
0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x70, 0x69, 0x2e,
|
||||
0x4c, 0x69, 0x73, 0x74, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f,
|
||||
0x75, 0x70, 0x51, 0x75, 0x65, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
|
||||
0x00, 0x42, 0x56, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61,
|
||||
0x00, 0x42, 0x5a, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61,
|
||||
0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x13, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73,
|
||||
0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67,
|
||||
0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67,
|
||||
0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73,
|
||||
0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f,
|
||||
0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||
0x33,
|
||||
0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/multicast_group_grpc.pb.go
vendored
2
api/go/api/multicast_group_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/multicast_group.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
8
api/go/api/tenant.pb.go
vendored
8
api/go/api/tenant.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/tenant.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
@ -1480,12 +1480,12 @@ var file_api_tenant_proto_rawDesc = []byte{
|
||||
0x6e, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x1a, 0x1c, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e,
|
||||
0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
|
||||
0x42, 0x50, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63,
|
||||
0x42, 0x54, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63,
|
||||
0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
|
||||
0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68,
|
||||
0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f,
|
||||
0x76, 0x34, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x76, 0x34, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/tenant_grpc.pb.go
vendored
2
api/go/api/tenant_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/tenant.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
8
api/go/api/user.pb.go
vendored
8
api/go/api/user.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// protoc v3.18.1
|
||||
// source: api/user.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
@ -879,12 +879,12 @@ var file_api_user_proto_rawDesc = []byte{
|
||||
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f,
|
||||
0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
||||
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
|
||||
0x79, 0x22, 0x00, 0x42, 0x4c, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73,
|
||||
0x79, 0x22, 0x00, 0x42, 0x50, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73,
|
||||
0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x09, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
|
||||
0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
|
||||
0x6d, 0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69,
|
||||
0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76,
|
||||
0x34, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x34, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
2
api/go/api/user_grpc.pb.go
vendored
2
api/go/api/user_grpc.pb.go
vendored
@ -4,7 +4,7 @@
|
||||
// - protoc v3.18.1
|
||||
// source: api/user.proto
|
||||
|
||||
package v4
|
||||
package api
|
||||
|
||||
import (
|
||||
context "context"
|
||||
|
2
api/go/go.mod
vendored
2
api/go/go.mod
vendored
@ -1,4 +1,4 @@
|
||||
module github.com/chirpstack/api/go/v4
|
||||
module github.com/chirpstack/chirpstack/api/go/v4
|
||||
|
||||
go 1.16
|
||||
|
||||
|
2857
api/go/gw/gw.pb.go
vendored
2857
api/go/gw/gw.pb.go
vendored
File diff suppressed because it is too large
Load Diff
263
api/go/integration/integration.pb.go
vendored
263
api/go/integration/integration.pb.go
vendored
@ -7,8 +7,8 @@
|
||||
package integration
|
||||
|
||||
import (
|
||||
gw "github.com/chirpstack/chirpstack-api/go/v4/gw"
|
||||
common "github.com/chirpstack/chirpstack/api/go/v4/common"
|
||||
gw "github.com/chirpstack/chirpstack/api/go/v4/gw"
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
structpb "google.golang.org/protobuf/types/known/structpb"
|
||||
@ -303,9 +303,9 @@ type UplinkEvent struct {
|
||||
// Note that this is only set when a codec is configured in the Device Profile.
|
||||
Object *structpb.Struct `protobuf:"bytes,11,opt,name=object,proto3" json:"object,omitempty"`
|
||||
// Receiving gateway RX info.
|
||||
RxInfo []*gw.UplinkRXInfo `protobuf:"bytes,12,rep,name=rx_info,json=rxInfo,proto3" json:"rx_info,omitempty"`
|
||||
RxInfo []*gw.UplinkRxInfo `protobuf:"bytes,12,rep,name=rx_info,json=rxInfo,proto3" json:"rx_info,omitempty"`
|
||||
// TX info.
|
||||
TxInfo *gw.UplinkTXInfo `protobuf:"bytes,13,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
TxInfo *gw.UplinkTxInfo `protobuf:"bytes,13,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
}
|
||||
|
||||
func (x *UplinkEvent) Reset() {
|
||||
@ -417,14 +417,14 @@ func (x *UplinkEvent) GetObject() *structpb.Struct {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *UplinkEvent) GetRxInfo() []*gw.UplinkRXInfo {
|
||||
func (x *UplinkEvent) GetRxInfo() []*gw.UplinkRxInfo {
|
||||
if x != nil {
|
||||
return x.RxInfo
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *UplinkEvent) GetTxInfo() *gw.UplinkTXInfo {
|
||||
func (x *UplinkEvent) GetTxInfo() *gw.UplinkTxInfo {
|
||||
if x != nil {
|
||||
return x.TxInfo
|
||||
}
|
||||
@ -611,8 +611,8 @@ type TxAckEvent struct {
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
// Downlink ID (UUID).
|
||||
DownlinkId string `protobuf:"bytes,1,opt,name=downlink_id,json=downlinkId,proto3" json:"downlink_id,omitempty"`
|
||||
// Downlink ID.
|
||||
DownlinkId uint32 `protobuf:"varint,1,opt,name=downlink_id,json=downlinkId,proto3" json:"downlink_id,omitempty"`
|
||||
// Timestamp.
|
||||
Time *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=time,proto3" json:"time,omitempty"`
|
||||
// Device info.
|
||||
@ -624,7 +624,7 @@ type TxAckEvent struct {
|
||||
// Gateway ID.
|
||||
GatewayId string `protobuf:"bytes,6,opt,name=gateway_id,json=gatewayId,proto3" json:"gateway_id,omitempty"`
|
||||
// TX info.
|
||||
TxInfo *gw.DownlinkTXInfo `protobuf:"bytes,7,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
TxInfo *gw.DownlinkTxInfo `protobuf:"bytes,7,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
}
|
||||
|
||||
func (x *TxAckEvent) Reset() {
|
||||
@ -659,11 +659,11 @@ func (*TxAckEvent) Descriptor() ([]byte, []int) {
|
||||
return file_integration_integration_proto_rawDescGZIP(), []int{4}
|
||||
}
|
||||
|
||||
func (x *TxAckEvent) GetDownlinkId() string {
|
||||
func (x *TxAckEvent) GetDownlinkId() uint32 {
|
||||
if x != nil {
|
||||
return x.DownlinkId
|
||||
}
|
||||
return ""
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *TxAckEvent) GetTime() *timestamppb.Timestamp {
|
||||
@ -701,7 +701,7 @@ func (x *TxAckEvent) GetGatewayId() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *TxAckEvent) GetTxInfo() *gw.DownlinkTXInfo {
|
||||
func (x *TxAckEvent) GetTxInfo() *gw.DownlinkTxInfo {
|
||||
if x != nil {
|
||||
return x.TxInfo
|
||||
}
|
||||
@ -1088,6 +1088,104 @@ func (x *IntegrationEvent) GetObject() *structpb.Struct {
|
||||
return nil
|
||||
}
|
||||
|
||||
// DownlinkCommand is the command to enqueue a downlink payload for the given
|
||||
// device.
|
||||
type DownlinkCommand struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
// ID (UUID).
|
||||
// If left blank, a random UUID will be generated.
|
||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
||||
// Device EUI (EUI64).
|
||||
DevEui string `protobuf:"bytes,2,opt,name=dev_eui,json=devEui,proto3" json:"dev_eui,omitempty"`
|
||||
// Confirmed.
|
||||
Confirmed bool `protobuf:"varint,3,opt,name=confirmed,proto3" json:"confirmed,omitempty"`
|
||||
// FPort (must be > 0).
|
||||
FPort uint32 `protobuf:"varint,4,opt,name=f_port,json=fPort,proto3" json:"f_port,omitempty"`
|
||||
// Data.
|
||||
// Or use the json_object field when a codec has been configured.
|
||||
Data []byte `protobuf:"bytes,5,opt,name=data,proto3" json:"data,omitempty"`
|
||||
// Only use this when a codec has been configured that can encode this
|
||||
// object to bytes.
|
||||
Object *structpb.Struct `protobuf:"bytes,6,opt,name=object,proto3" json:"object,omitempty"`
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) Reset() {
|
||||
*x = DownlinkCommand{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_integration_integration_proto_msgTypes[9]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*DownlinkCommand) ProtoMessage() {}
|
||||
|
||||
func (x *DownlinkCommand) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_integration_integration_proto_msgTypes[9]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use DownlinkCommand.ProtoReflect.Descriptor instead.
|
||||
func (*DownlinkCommand) Descriptor() ([]byte, []int) {
|
||||
return file_integration_integration_proto_rawDescGZIP(), []int{9}
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) GetId() string {
|
||||
if x != nil {
|
||||
return x.Id
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) GetDevEui() string {
|
||||
if x != nil {
|
||||
return x.DevEui
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) GetConfirmed() bool {
|
||||
if x != nil {
|
||||
return x.Confirmed
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) GetFPort() uint32 {
|
||||
if x != nil {
|
||||
return x.FPort
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) GetData() []byte {
|
||||
if x != nil {
|
||||
return x.Data
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *DownlinkCommand) GetObject() *structpb.Struct {
|
||||
if x != nil {
|
||||
return x.Object
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
var File_integration_integration_proto protoreflect.FileDescriptor
|
||||
|
||||
var file_integration_integration_proto_rawDesc = []byte{
|
||||
@ -1151,10 +1249,10 @@ var file_integration_integration_proto_rawDesc = []byte{
|
||||
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74,
|
||||
0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x29, 0x0a, 0x07, 0x72, 0x78, 0x5f, 0x69,
|
||||
0x6e, 0x66, 0x6f, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x77, 0x2e, 0x55,
|
||||
0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x58, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x72, 0x78, 0x49,
|
||||
0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x72, 0x78, 0x49,
|
||||
0x6e, 0x66, 0x6f, 0x12, 0x29, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0d,
|
||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b,
|
||||
0x54, 0x58, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xbb,
|
||||
0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xbb,
|
||||
0x01, 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,
|
||||
@ -1185,7 +1283,7 @@ var file_integration_integration_proto_rawDesc = []byte{
|
||||
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, 0x09, 0x52, 0x0a, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69,
|
||||
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,
|
||||
@ -1200,7 +1298,7 @@ var file_integration_integration_proto_rawDesc = []byte{
|
||||
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, 0x58,
|
||||
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, 0x92, 0x03, 0x0a,
|
||||
0x08, 0x4c, 0x6f, 0x67, 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,
|
||||
@ -1279,30 +1377,41 @@ var file_integration_integration_proto_rawDesc = []byte{
|
||||
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, 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, 0xc0, 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, 0x42, 0x6b,
|
||||
0x0a, 0x20, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e,
|
||||
0x61, 0x70, 0x69, 0x2e, 0x61, 0x73, 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, 0x62, 0x06, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x33,
|
||||
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, 0xc0, 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, 0x42, 0x6b, 0x0a, 0x20, 0x69, 0x6f, 0x2e, 0x63, 0x68, 0x69, 0x72,
|
||||
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x73, 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, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
@ -1318,7 +1427,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, 11)
|
||||
var file_integration_integration_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
|
||||
var file_integration_integration_proto_goTypes = []interface{}{
|
||||
(LogLevel)(0), // 0: integration.LogLevel
|
||||
(LogCode)(0), // 1: integration.LogCode
|
||||
@ -1331,47 +1440,49 @@ var file_integration_integration_proto_goTypes = []interface{}{
|
||||
(*StatusEvent)(nil), // 8: integration.StatusEvent
|
||||
(*LocationEvent)(nil), // 9: integration.LocationEvent
|
||||
(*IntegrationEvent)(nil), // 10: integration.IntegrationEvent
|
||||
nil, // 11: integration.DeviceInfo.TagsEntry
|
||||
nil, // 12: integration.LogEvent.ContextEntry
|
||||
(*timestamppb.Timestamp)(nil), // 13: google.protobuf.Timestamp
|
||||
(*structpb.Struct)(nil), // 14: google.protobuf.Struct
|
||||
(*gw.UplinkRXInfo)(nil), // 15: gw.UplinkRXInfo
|
||||
(*gw.UplinkTXInfo)(nil), // 16: gw.UplinkTXInfo
|
||||
(*gw.DownlinkTXInfo)(nil), // 17: gw.DownlinkTXInfo
|
||||
(*common.Location)(nil), // 18: common.Location
|
||||
(*DownlinkCommand)(nil), // 11: integration.DownlinkCommand
|
||||
nil, // 12: integration.DeviceInfo.TagsEntry
|
||||
nil, // 13: integration.LogEvent.ContextEntry
|
||||
(*timestamppb.Timestamp)(nil), // 14: google.protobuf.Timestamp
|
||||
(*structpb.Struct)(nil), // 15: google.protobuf.Struct
|
||||
(*gw.UplinkRxInfo)(nil), // 16: gw.UplinkRxInfo
|
||||
(*gw.UplinkTxInfo)(nil), // 17: gw.UplinkTxInfo
|
||||
(*gw.DownlinkTxInfo)(nil), // 18: gw.DownlinkTxInfo
|
||||
(*common.Location)(nil), // 19: common.Location
|
||||
}
|
||||
var file_integration_integration_proto_depIdxs = []int32{
|
||||
11, // 0: integration.DeviceInfo.tags:type_name -> integration.DeviceInfo.TagsEntry
|
||||
13, // 1: integration.UplinkEvent.time:type_name -> google.protobuf.Timestamp
|
||||
12, // 0: integration.DeviceInfo.tags:type_name -> integration.DeviceInfo.TagsEntry
|
||||
14, // 1: integration.UplinkEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 2: integration.UplinkEvent.device_info:type_name -> integration.DeviceInfo
|
||||
14, // 3: integration.UplinkEvent.object:type_name -> google.protobuf.Struct
|
||||
15, // 4: integration.UplinkEvent.rx_info:type_name -> gw.UplinkRXInfo
|
||||
16, // 5: integration.UplinkEvent.tx_info:type_name -> gw.UplinkTXInfo
|
||||
13, // 6: integration.JoinEvent.time:type_name -> google.protobuf.Timestamp
|
||||
15, // 3: integration.UplinkEvent.object:type_name -> google.protobuf.Struct
|
||||
16, // 4: integration.UplinkEvent.rx_info:type_name -> gw.UplinkRxInfo
|
||||
17, // 5: integration.UplinkEvent.tx_info:type_name -> gw.UplinkTxInfo
|
||||
14, // 6: integration.JoinEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 7: integration.JoinEvent.device_info:type_name -> integration.DeviceInfo
|
||||
13, // 8: integration.AckEvent.time:type_name -> google.protobuf.Timestamp
|
||||
14, // 8: integration.AckEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 9: integration.AckEvent.device_info:type_name -> integration.DeviceInfo
|
||||
13, // 10: integration.TxAckEvent.time:type_name -> google.protobuf.Timestamp
|
||||
14, // 10: integration.TxAckEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 11: integration.TxAckEvent.device_info:type_name -> integration.DeviceInfo
|
||||
17, // 12: integration.TxAckEvent.tx_info:type_name -> gw.DownlinkTXInfo
|
||||
13, // 13: integration.LogEvent.time:type_name -> google.protobuf.Timestamp
|
||||
18, // 12: integration.TxAckEvent.tx_info:type_name -> gw.DownlinkTxInfo
|
||||
14, // 13: integration.LogEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 14: integration.LogEvent.device_info:type_name -> integration.DeviceInfo
|
||||
0, // 15: integration.LogEvent.level:type_name -> integration.LogLevel
|
||||
1, // 16: integration.LogEvent.code:type_name -> integration.LogCode
|
||||
12, // 17: integration.LogEvent.context:type_name -> integration.LogEvent.ContextEntry
|
||||
13, // 18: integration.StatusEvent.time:type_name -> google.protobuf.Timestamp
|
||||
13, // 17: integration.LogEvent.context:type_name -> integration.LogEvent.ContextEntry
|
||||
14, // 18: integration.StatusEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 19: integration.StatusEvent.device_info:type_name -> integration.DeviceInfo
|
||||
13, // 20: integration.LocationEvent.time:type_name -> google.protobuf.Timestamp
|
||||
14, // 20: integration.LocationEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 21: integration.LocationEvent.device_info:type_name -> integration.DeviceInfo
|
||||
18, // 22: integration.LocationEvent.location:type_name -> common.Location
|
||||
13, // 23: integration.IntegrationEvent.time:type_name -> google.protobuf.Timestamp
|
||||
19, // 22: integration.LocationEvent.location:type_name -> common.Location
|
||||
14, // 23: integration.IntegrationEvent.time:type_name -> google.protobuf.Timestamp
|
||||
2, // 24: integration.IntegrationEvent.device_info:type_name -> integration.DeviceInfo
|
||||
14, // 25: integration.IntegrationEvent.object:type_name -> google.protobuf.Struct
|
||||
26, // [26:26] is the sub-list for method output_type
|
||||
26, // [26:26] is the sub-list for method input_type
|
||||
26, // [26:26] is the sub-list for extension type_name
|
||||
26, // [26:26] is the sub-list for extension extendee
|
||||
0, // [0:26] is the sub-list for field type_name
|
||||
15, // 25: integration.IntegrationEvent.object:type_name -> google.protobuf.Struct
|
||||
15, // 26: integration.DownlinkCommand.object:type_name -> google.protobuf.Struct
|
||||
27, // [27:27] is the sub-list for method output_type
|
||||
27, // [27:27] is the sub-list for method input_type
|
||||
27, // [27:27] is the sub-list for extension type_name
|
||||
27, // [27:27] is the sub-list for extension extendee
|
||||
0, // [0:27] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_integration_integration_proto_init() }
|
||||
@ -1488,6 +1599,18 @@ func file_integration_integration_proto_init() {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_integration_integration_proto_msgTypes[9].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{
|
||||
@ -1495,7 +1618,7 @@ func file_integration_integration_proto_init() {
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_integration_integration_proto_rawDesc,
|
||||
NumEnums: 2,
|
||||
NumMessages: 11,
|
||||
NumMessages: 12,
|
||||
NumExtensions: 0,
|
||||
NumServices: 0,
|
||||
},
|
||||
|
34
api/go/meta/meta.pb.go
vendored
34
api/go/meta/meta.pb.go
vendored
@ -7,8 +7,8 @@
|
||||
package meta
|
||||
|
||||
import (
|
||||
gw "github.com/chirpstack/chirpstack-api/go/v4/gw"
|
||||
common "github.com/chirpstack/chirpstack/api/go/v4/common"
|
||||
gw "github.com/chirpstack/chirpstack/api/go/v4/gw"
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
reflect "reflect"
|
||||
@ -30,9 +30,9 @@ type UplinkMeta struct {
|
||||
// Device EUI (EUI64).
|
||||
DevEui string `protobuf:"bytes,1,opt,name=dev_eui,json=devEui,proto3" json:"dev_eui,omitempty"`
|
||||
// TX meta-data.
|
||||
TxInfo *gw.UplinkTXInfo `protobuf:"bytes,2,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
TxInfo *gw.UplinkTxInfo `protobuf:"bytes,2,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
// RX meta-data.
|
||||
RxInfo []*gw.UplinkRXInfo `protobuf:"bytes,3,rep,name=rx_info,json=rxInfo,proto3" json:"rx_info,omitempty"`
|
||||
RxInfo []*gw.UplinkRxInfo `protobuf:"bytes,3,rep,name=rx_info,json=rxInfo,proto3" json:"rx_info,omitempty"`
|
||||
// PHYPayload byte count.
|
||||
PhyPayloadByteCount uint32 `protobuf:"varint,4,opt,name=phy_payload_byte_count,json=phyPayloadByteCount,proto3" json:"phy_payload_byte_count,omitempty"`
|
||||
// MAC-Command byte count.
|
||||
@ -82,14 +82,14 @@ func (x *UplinkMeta) GetDevEui() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *UplinkMeta) GetTxInfo() *gw.UplinkTXInfo {
|
||||
func (x *UplinkMeta) GetTxInfo() *gw.UplinkTxInfo {
|
||||
if x != nil {
|
||||
return x.TxInfo
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *UplinkMeta) GetRxInfo() []*gw.UplinkRXInfo {
|
||||
func (x *UplinkMeta) GetRxInfo() []*gw.UplinkRxInfo {
|
||||
if x != nil {
|
||||
return x.RxInfo
|
||||
}
|
||||
@ -134,7 +134,7 @@ type DownlinkMeta struct {
|
||||
// Multicast Group ID (UUID).
|
||||
MulticastGroupId string `protobuf:"bytes,2,opt,name=multicast_group_id,json=multicastGroupId,proto3" json:"multicast_group_id,omitempty"`
|
||||
// TX meta-data.
|
||||
TxInfo *gw.DownlinkTXInfo `protobuf:"bytes,3,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
TxInfo *gw.DownlinkTxInfo `protobuf:"bytes,3,opt,name=tx_info,json=txInfo,proto3" json:"tx_info,omitempty"`
|
||||
// PHYPayload byte count.
|
||||
PhyPayloadByteCount uint32 `protobuf:"varint,4,opt,name=phy_payload_byte_count,json=phyPayloadByteCount,proto3" json:"phy_payload_byte_count,omitempty"`
|
||||
// MAC-Command byte count.
|
||||
@ -193,7 +193,7 @@ func (x *DownlinkMeta) GetMulticastGroupId() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DownlinkMeta) GetTxInfo() *gw.DownlinkTXInfo {
|
||||
func (x *DownlinkMeta) GetTxInfo() *gw.DownlinkTxInfo {
|
||||
if x != nil {
|
||||
return x.TxInfo
|
||||
}
|
||||
@ -245,10 +245,10 @@ var file_meta_meta_proto_rawDesc = []byte{
|
||||
0x6c, 0x69, 0x6e, 0x6b, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x5f,
|
||||
0x65, 0x75, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x45, 0x75,
|
||||
0x69, 0x12, 0x29, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01,
|
||||
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x58,
|
||||
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x78,
|
||||
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x0a, 0x07,
|
||||
0x72, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e,
|
||||
0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x58, 0x49, 0x6e, 0x66, 0x6f, 0x52,
|
||||
0x67, 0x77, 0x2e, 0x55, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52,
|
||||
0x06, 0x72, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x33, 0x0a, 0x16, 0x70, 0x68, 0x79, 0x5f, 0x70,
|
||||
0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
|
||||
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x68, 0x79, 0x50, 0x61, 0x79, 0x6c,
|
||||
@ -271,7 +271,7 @@ var file_meta_meta_proto_rawDesc = []byte{
|
||||
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
|
||||
0x12, 0x2b, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28,
|
||||
0x0b, 0x32, 0x12, 0x2e, 0x67, 0x77, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x54,
|
||||
0x58, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x33, 0x0a,
|
||||
0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x33, 0x0a,
|
||||
0x16, 0x70, 0x68, 0x79, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x62, 0x79, 0x74,
|
||||
0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70,
|
||||
0x68, 0x79, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x79, 0x74, 0x65, 0x43, 0x6f, 0x75,
|
||||
@ -292,7 +292,7 @@ var file_meta_meta_proto_rawDesc = []byte{
|
||||
0x70, 0x69, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x42, 0x09, 0x4d, 0x65, 0x74, 0x61, 0x50, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
|
||||
0x2f, 0x63, 0x68, 0x69, 0x72, 0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x63, 0x68, 0x69, 0x72,
|
||||
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34,
|
||||
0x70, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x34,
|
||||
0x2f, 0x6d, 0x65, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
@ -312,16 +312,16 @@ var file_meta_meta_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
|
||||
var file_meta_meta_proto_goTypes = []interface{}{
|
||||
(*UplinkMeta)(nil), // 0: meta.UplinkMeta
|
||||
(*DownlinkMeta)(nil), // 1: meta.DownlinkMeta
|
||||
(*gw.UplinkTXInfo)(nil), // 2: gw.UplinkTXInfo
|
||||
(*gw.UplinkRXInfo)(nil), // 3: gw.UplinkRXInfo
|
||||
(*gw.UplinkTxInfo)(nil), // 2: gw.UplinkTxInfo
|
||||
(*gw.UplinkRxInfo)(nil), // 3: gw.UplinkRxInfo
|
||||
(common.MType)(0), // 4: common.MType
|
||||
(*gw.DownlinkTXInfo)(nil), // 5: gw.DownlinkTXInfo
|
||||
(*gw.DownlinkTxInfo)(nil), // 5: gw.DownlinkTxInfo
|
||||
}
|
||||
var file_meta_meta_proto_depIdxs = []int32{
|
||||
2, // 0: meta.UplinkMeta.tx_info:type_name -> gw.UplinkTXInfo
|
||||
3, // 1: meta.UplinkMeta.rx_info:type_name -> gw.UplinkRXInfo
|
||||
2, // 0: meta.UplinkMeta.tx_info:type_name -> gw.UplinkTxInfo
|
||||
3, // 1: meta.UplinkMeta.rx_info:type_name -> gw.UplinkRxInfo
|
||||
4, // 2: meta.UplinkMeta.message_type:type_name -> common.MType
|
||||
5, // 3: meta.DownlinkMeta.tx_info:type_name -> gw.DownlinkTXInfo
|
||||
5, // 3: meta.DownlinkMeta.tx_info:type_name -> gw.DownlinkTxInfo
|
||||
4, // 4: meta.DownlinkMeta.message_type:type_name -> common.MType
|
||||
5, // [5:5] is the sub-list for method output_type
|
||||
5, // [5:5] is the sub-list for method input_type
|
||||
|
1
api/grpc-web/Makefile
vendored
1
api/grpc-web/Makefile
vendored
@ -20,6 +20,7 @@ api:
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/tenant.proto
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/application.proto
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/device_profile.proto
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/device_profile_template.proto
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/device.proto
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/gateway.proto
|
||||
protoc -I=$(GOOGLEAPIS_PATH) -I=../protobuf -I=../proto $(PROTOC_ARGS) ../proto/api/frame_log.proto
|
||||
|
16
api/grpc-web/api/device_profile_pb.d.ts
vendored
16
api/grpc-web/api/device_profile_pb.d.ts
vendored
@ -15,6 +15,9 @@ export class DeviceProfile extends jspb.Message {
|
||||
getName(): string;
|
||||
setName(value: string): DeviceProfile;
|
||||
|
||||
getDescription(): string;
|
||||
setDescription(value: string): DeviceProfile;
|
||||
|
||||
getRegion(): common_common_pb.Region;
|
||||
setRegion(value: common_common_pb.Region): DeviceProfile;
|
||||
|
||||
@ -30,11 +33,11 @@ export class DeviceProfile extends jspb.Message {
|
||||
getPayloadCodecRuntime(): CodecRuntime;
|
||||
setPayloadCodecRuntime(value: CodecRuntime): DeviceProfile;
|
||||
|
||||
getPayloadEncoderConfig(): string;
|
||||
setPayloadEncoderConfig(value: string): DeviceProfile;
|
||||
getPayloadCodecScript(): string;
|
||||
setPayloadCodecScript(value: string): DeviceProfile;
|
||||
|
||||
getPayloadDecoderConfig(): string;
|
||||
setPayloadDecoderConfig(value: string): DeviceProfile;
|
||||
getFlushQueueOnActivate(): boolean;
|
||||
setFlushQueueOnActivate(value: boolean): DeviceProfile;
|
||||
|
||||
getUplinkInterval(): number;
|
||||
setUplinkInterval(value: number): DeviceProfile;
|
||||
@ -94,13 +97,14 @@ export namespace DeviceProfile {
|
||||
id: string,
|
||||
tenantId: string,
|
||||
name: string,
|
||||
description: string,
|
||||
region: common_common_pb.Region,
|
||||
macVersion: common_common_pb.MacVersion,
|
||||
regParamsRevision: common_common_pb.RegParamsRevision,
|
||||
adrAlgorithmId: string,
|
||||
payloadCodecRuntime: CodecRuntime,
|
||||
payloadEncoderConfig: string,
|
||||
payloadDecoderConfig: string,
|
||||
payloadCodecScript: string,
|
||||
flushQueueOnActivate: boolean,
|
||||
uplinkInterval: number,
|
||||
deviceStatusReqInterval: number,
|
||||
supportsOtaa: boolean,
|
||||
|
68
api/grpc-web/api/device_profile_pb.js
vendored
68
api/grpc-web/api/device_profile_pb.js
vendored
@ -321,13 +321,14 @@ proto.api.DeviceProfile.toObject = function(includeInstance, msg) {
|
||||
id: jspb.Message.getFieldWithDefault(msg, 1, ""),
|
||||
tenantId: jspb.Message.getFieldWithDefault(msg, 2, ""),
|
||||
name: jspb.Message.getFieldWithDefault(msg, 3, ""),
|
||||
description: jspb.Message.getFieldWithDefault(msg, 26, ""),
|
||||
region: jspb.Message.getFieldWithDefault(msg, 4, 0),
|
||||
macVersion: jspb.Message.getFieldWithDefault(msg, 5, 0),
|
||||
regParamsRevision: jspb.Message.getFieldWithDefault(msg, 6, 0),
|
||||
adrAlgorithmId: jspb.Message.getFieldWithDefault(msg, 7, ""),
|
||||
payloadCodecRuntime: jspb.Message.getFieldWithDefault(msg, 8, 0),
|
||||
payloadEncoderConfig: jspb.Message.getFieldWithDefault(msg, 9, ""),
|
||||
payloadDecoderConfig: jspb.Message.getFieldWithDefault(msg, 10, ""),
|
||||
payloadCodecScript: jspb.Message.getFieldWithDefault(msg, 9, ""),
|
||||
flushQueueOnActivate: jspb.Message.getBooleanFieldWithDefault(msg, 10, false),
|
||||
uplinkInterval: jspb.Message.getFieldWithDefault(msg, 11, 0),
|
||||
deviceStatusReqInterval: jspb.Message.getFieldWithDefault(msg, 12, 0),
|
||||
supportsOtaa: jspb.Message.getBooleanFieldWithDefault(msg, 13, false),
|
||||
@ -391,6 +392,10 @@ proto.api.DeviceProfile.deserializeBinaryFromReader = function(msg, reader) {
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setName(value);
|
||||
break;
|
||||
case 26:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setDescription(value);
|
||||
break;
|
||||
case 4:
|
||||
var value = /** @type {!proto.common.Region} */ (reader.readEnum());
|
||||
msg.setRegion(value);
|
||||
@ -413,11 +418,11 @@ proto.api.DeviceProfile.deserializeBinaryFromReader = function(msg, reader) {
|
||||
break;
|
||||
case 9:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setPayloadEncoderConfig(value);
|
||||
msg.setPayloadCodecScript(value);
|
||||
break;
|
||||
case 10:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setPayloadDecoderConfig(value);
|
||||
var value = /** @type {boolean} */ (reader.readBool());
|
||||
msg.setFlushQueueOnActivate(value);
|
||||
break;
|
||||
case 11:
|
||||
var value = /** @type {number} */ (reader.readUint32());
|
||||
@ -531,6 +536,13 @@ proto.api.DeviceProfile.serializeBinaryToWriter = function(message, writer) {
|
||||
f
|
||||
);
|
||||
}
|
||||
f = message.getDescription();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
26,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = message.getRegion();
|
||||
if (f !== 0.0) {
|
||||
writer.writeEnum(
|
||||
@ -566,16 +578,16 @@ proto.api.DeviceProfile.serializeBinaryToWriter = function(message, writer) {
|
||||
f
|
||||
);
|
||||
}
|
||||
f = message.getPayloadEncoderConfig();
|
||||
f = message.getPayloadCodecScript();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
9,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = message.getPayloadDecoderConfig();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
f = message.getFlushQueueOnActivate();
|
||||
if (f) {
|
||||
writer.writeBool(
|
||||
10,
|
||||
f
|
||||
);
|
||||
@ -739,6 +751,24 @@ proto.api.DeviceProfile.prototype.setName = function(value) {
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional string description = 26;
|
||||
* @return {string}
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.getDescription = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 26, ""));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {string} value
|
||||
* @return {!proto.api.DeviceProfile} returns this
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.setDescription = function(value) {
|
||||
return jspb.Message.setProto3StringField(this, 26, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional common.Region region = 4;
|
||||
* @return {!proto.common.Region}
|
||||
@ -830,10 +860,10 @@ proto.api.DeviceProfile.prototype.setPayloadCodecRuntime = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional string payload_encoder_config = 9;
|
||||
* optional string payload_codec_script = 9;
|
||||
* @return {string}
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.getPayloadEncoderConfig = function() {
|
||||
proto.api.DeviceProfile.prototype.getPayloadCodecScript = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, ""));
|
||||
};
|
||||
|
||||
@ -842,26 +872,26 @@ proto.api.DeviceProfile.prototype.getPayloadEncoderConfig = function() {
|
||||
* @param {string} value
|
||||
* @return {!proto.api.DeviceProfile} returns this
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.setPayloadEncoderConfig = function(value) {
|
||||
proto.api.DeviceProfile.prototype.setPayloadCodecScript = function(value) {
|
||||
return jspb.Message.setProto3StringField(this, 9, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional string payload_decoder_config = 10;
|
||||
* @return {string}
|
||||
* optional bool flush_queue_on_activate = 10;
|
||||
* @return {boolean}
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.getPayloadDecoderConfig = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, ""));
|
||||
proto.api.DeviceProfile.prototype.getFlushQueueOnActivate = function() {
|
||||
return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 10, false));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {string} value
|
||||
* @param {boolean} value
|
||||
* @return {!proto.api.DeviceProfile} returns this
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.setPayloadDecoderConfig = function(value) {
|
||||
return jspb.Message.setProto3StringField(this, 10, value);
|
||||
proto.api.DeviceProfile.prototype.setFlushQueueOnActivate = function(value) {
|
||||
return jspb.Message.setProto3BooleanField(this, 10, value);
|
||||
};
|
||||
|
||||
|
||||
|
80
api/grpc-web/api/device_profile_template_grpc_web_pb.d.ts
vendored
Normal file
80
api/grpc-web/api/device_profile_template_grpc_web_pb.d.ts
vendored
Normal file
@ -0,0 +1,80 @@
|
||||
import * as grpcWeb from 'grpc-web';
|
||||
|
||||
import * as google_protobuf_empty_pb from 'google-protobuf/google/protobuf/empty_pb';
|
||||
import * as api_device_profile_template_pb from '../api/device_profile_template_pb';
|
||||
|
||||
|
||||
export class DeviceProfileTemplateServiceClient {
|
||||
constructor (hostname: string,
|
||||
credentials?: null | { [index: string]: string; },
|
||||
options?: null | { [index: string]: any; });
|
||||
|
||||
create(
|
||||
request: api_device_profile_template_pb.CreateDeviceProfileTemplateRequest,
|
||||
metadata: grpcWeb.Metadata | undefined,
|
||||
callback: (err: grpcWeb.Error,
|
||||
response: google_protobuf_empty_pb.Empty) => void
|
||||
): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>;
|
||||
|
||||
get(
|
||||
request: api_device_profile_template_pb.GetDeviceProfileTemplateRequest,
|
||||
metadata: grpcWeb.Metadata | undefined,
|
||||
callback: (err: grpcWeb.Error,
|
||||
response: api_device_profile_template_pb.GetDeviceProfileTemplateResponse) => void
|
||||
): grpcWeb.ClientReadableStream<api_device_profile_template_pb.GetDeviceProfileTemplateResponse>;
|
||||
|
||||
update(
|
||||
request: api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest,
|
||||
metadata: grpcWeb.Metadata | undefined,
|
||||
callback: (err: grpcWeb.Error,
|
||||
response: google_protobuf_empty_pb.Empty) => void
|
||||
): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>;
|
||||
|
||||
delete(
|
||||
request: api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest,
|
||||
metadata: grpcWeb.Metadata | undefined,
|
||||
callback: (err: grpcWeb.Error,
|
||||
response: google_protobuf_empty_pb.Empty) => void
|
||||
): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>;
|
||||
|
||||
list(
|
||||
request: api_device_profile_template_pb.ListDeviceProfileTemplatesRequest,
|
||||
metadata: grpcWeb.Metadata | undefined,
|
||||
callback: (err: grpcWeb.Error,
|
||||
response: api_device_profile_template_pb.ListDeviceProfileTemplatesResponse) => void
|
||||
): grpcWeb.ClientReadableStream<api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>;
|
||||
|
||||
}
|
||||
|
||||
export class DeviceProfileTemplateServicePromiseClient {
|
||||
constructor (hostname: string,
|
||||
credentials?: null | { [index: string]: string; },
|
||||
options?: null | { [index: string]: any; });
|
||||
|
||||
create(
|
||||
request: api_device_profile_template_pb.CreateDeviceProfileTemplateRequest,
|
||||
metadata?: grpcWeb.Metadata
|
||||
): Promise<google_protobuf_empty_pb.Empty>;
|
||||
|
||||
get(
|
||||
request: api_device_profile_template_pb.GetDeviceProfileTemplateRequest,
|
||||
metadata?: grpcWeb.Metadata
|
||||
): Promise<api_device_profile_template_pb.GetDeviceProfileTemplateResponse>;
|
||||
|
||||
update(
|
||||
request: api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest,
|
||||
metadata?: grpcWeb.Metadata
|
||||
): Promise<google_protobuf_empty_pb.Empty>;
|
||||
|
||||
delete(
|
||||
request: api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest,
|
||||
metadata?: grpcWeb.Metadata
|
||||
): Promise<google_protobuf_empty_pb.Empty>;
|
||||
|
||||
list(
|
||||
request: api_device_profile_template_pb.ListDeviceProfileTemplatesRequest,
|
||||
metadata?: grpcWeb.Metadata
|
||||
): Promise<api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>;
|
||||
|
||||
}
|
||||
|
482
api/grpc-web/api/device_profile_template_grpc_web_pb.js
vendored
Normal file
482
api/grpc-web/api/device_profile_template_grpc_web_pb.js
vendored
Normal file
@ -0,0 +1,482 @@
|
||||
/**
|
||||
* @fileoverview gRPC-Web generated client stub for api
|
||||
* @enhanceable
|
||||
* @public
|
||||
*/
|
||||
|
||||
// GENERATED CODE -- DO NOT EDIT!
|
||||
|
||||
|
||||
/* eslint-disable */
|
||||
// @ts-nocheck
|
||||
|
||||
|
||||
|
||||
const grpc = {};
|
||||
grpc.web = require('grpc-web');
|
||||
|
||||
|
||||
var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js')
|
||||
|
||||
var google_protobuf_empty_pb = require('google-protobuf/google/protobuf/empty_pb.js')
|
||||
|
||||
var common_common_pb = require('../common/common_pb.js')
|
||||
|
||||
var api_device_profile_pb = require('../api/device_profile_pb.js')
|
||||
const proto = {};
|
||||
proto.api = require('./device_profile_template_pb.js');
|
||||
|
||||
/**
|
||||
* @param {string} hostname
|
||||
* @param {?Object} credentials
|
||||
* @param {?Object} options
|
||||
* @constructor
|
||||
* @struct
|
||||
* @final
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServiceClient =
|
||||
function(hostname, credentials, options) {
|
||||
if (!options) options = {};
|
||||
options['format'] = 'text';
|
||||
|
||||
/**
|
||||
* @private @const {!grpc.web.GrpcWebClientBase} The client
|
||||
*/
|
||||
this.client_ = new grpc.web.GrpcWebClientBase(options);
|
||||
|
||||
/**
|
||||
* @private @const {string} The hostname
|
||||
*/
|
||||
this.hostname_ = hostname;
|
||||
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {string} hostname
|
||||
* @param {?Object} credentials
|
||||
* @param {?Object} options
|
||||
* @constructor
|
||||
* @struct
|
||||
* @final
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServicePromiseClient =
|
||||
function(hostname, credentials, options) {
|
||||
if (!options) options = {};
|
||||
options['format'] = 'text';
|
||||
|
||||
/**
|
||||
* @private @const {!grpc.web.GrpcWebClientBase} The client
|
||||
*/
|
||||
this.client_ = new grpc.web.GrpcWebClientBase(options);
|
||||
|
||||
/**
|
||||
* @private @const {string} The hostname
|
||||
*/
|
||||
this.hostname_ = hostname;
|
||||
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.MethodDescriptor<
|
||||
* !proto.api.CreateDeviceProfileTemplateRequest,
|
||||
* !proto.google.protobuf.Empty>}
|
||||
*/
|
||||
const methodDescriptor_DeviceProfileTemplateService_Create = new grpc.web.MethodDescriptor(
|
||||
'/api.DeviceProfileTemplateService/Create',
|
||||
grpc.web.MethodType.UNARY,
|
||||
proto.api.CreateDeviceProfileTemplateRequest,
|
||||
google_protobuf_empty_pb.Empty,
|
||||
/**
|
||||
* @param {!proto.api.CreateDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
google_protobuf_empty_pb.Empty.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.AbstractClientBase.MethodInfo<
|
||||
* !proto.api.CreateDeviceProfileTemplateRequest,
|
||||
* !proto.google.protobuf.Empty>}
|
||||
*/
|
||||
const methodInfo_DeviceProfileTemplateService_Create = new grpc.web.AbstractClientBase.MethodInfo(
|
||||
google_protobuf_empty_pb.Empty,
|
||||
/**
|
||||
* @param {!proto.api.CreateDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
google_protobuf_empty_pb.Empty.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.CreateDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @param {function(?grpc.web.Error, ?proto.google.protobuf.Empty)}
|
||||
* callback The callback function(error, response)
|
||||
* @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined}
|
||||
* The XHR Node Readable Stream
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServiceClient.prototype.create =
|
||||
function(request, metadata, callback) {
|
||||
return this.client_.rpcCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Create',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Create,
|
||||
callback);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.CreateDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @return {!Promise<!proto.google.protobuf.Empty>}
|
||||
* Promise that resolves to the response
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServicePromiseClient.prototype.create =
|
||||
function(request, metadata) {
|
||||
return this.client_.unaryCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Create',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Create);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.MethodDescriptor<
|
||||
* !proto.api.GetDeviceProfileTemplateRequest,
|
||||
* !proto.api.GetDeviceProfileTemplateResponse>}
|
||||
*/
|
||||
const methodDescriptor_DeviceProfileTemplateService_Get = new grpc.web.MethodDescriptor(
|
||||
'/api.DeviceProfileTemplateService/Get',
|
||||
grpc.web.MethodType.UNARY,
|
||||
proto.api.GetDeviceProfileTemplateRequest,
|
||||
proto.api.GetDeviceProfileTemplateResponse,
|
||||
/**
|
||||
* @param {!proto.api.GetDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
proto.api.GetDeviceProfileTemplateResponse.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.AbstractClientBase.MethodInfo<
|
||||
* !proto.api.GetDeviceProfileTemplateRequest,
|
||||
* !proto.api.GetDeviceProfileTemplateResponse>}
|
||||
*/
|
||||
const methodInfo_DeviceProfileTemplateService_Get = new grpc.web.AbstractClientBase.MethodInfo(
|
||||
proto.api.GetDeviceProfileTemplateResponse,
|
||||
/**
|
||||
* @param {!proto.api.GetDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
proto.api.GetDeviceProfileTemplateResponse.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.GetDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @param {function(?grpc.web.Error, ?proto.api.GetDeviceProfileTemplateResponse)}
|
||||
* callback The callback function(error, response)
|
||||
* @return {!grpc.web.ClientReadableStream<!proto.api.GetDeviceProfileTemplateResponse>|undefined}
|
||||
* The XHR Node Readable Stream
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServiceClient.prototype.get =
|
||||
function(request, metadata, callback) {
|
||||
return this.client_.rpcCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Get',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Get,
|
||||
callback);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.GetDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @return {!Promise<!proto.api.GetDeviceProfileTemplateResponse>}
|
||||
* Promise that resolves to the response
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServicePromiseClient.prototype.get =
|
||||
function(request, metadata) {
|
||||
return this.client_.unaryCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Get',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Get);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.MethodDescriptor<
|
||||
* !proto.api.UpdateDeviceProfileTemplateRequest,
|
||||
* !proto.google.protobuf.Empty>}
|
||||
*/
|
||||
const methodDescriptor_DeviceProfileTemplateService_Update = new grpc.web.MethodDescriptor(
|
||||
'/api.DeviceProfileTemplateService/Update',
|
||||
grpc.web.MethodType.UNARY,
|
||||
proto.api.UpdateDeviceProfileTemplateRequest,
|
||||
google_protobuf_empty_pb.Empty,
|
||||
/**
|
||||
* @param {!proto.api.UpdateDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
google_protobuf_empty_pb.Empty.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.AbstractClientBase.MethodInfo<
|
||||
* !proto.api.UpdateDeviceProfileTemplateRequest,
|
||||
* !proto.google.protobuf.Empty>}
|
||||
*/
|
||||
const methodInfo_DeviceProfileTemplateService_Update = new grpc.web.AbstractClientBase.MethodInfo(
|
||||
google_protobuf_empty_pb.Empty,
|
||||
/**
|
||||
* @param {!proto.api.UpdateDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
google_protobuf_empty_pb.Empty.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.UpdateDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @param {function(?grpc.web.Error, ?proto.google.protobuf.Empty)}
|
||||
* callback The callback function(error, response)
|
||||
* @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined}
|
||||
* The XHR Node Readable Stream
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServiceClient.prototype.update =
|
||||
function(request, metadata, callback) {
|
||||
return this.client_.rpcCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Update',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Update,
|
||||
callback);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.UpdateDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @return {!Promise<!proto.google.protobuf.Empty>}
|
||||
* Promise that resolves to the response
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServicePromiseClient.prototype.update =
|
||||
function(request, metadata) {
|
||||
return this.client_.unaryCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Update',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Update);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.MethodDescriptor<
|
||||
* !proto.api.DeleteDeviceProfileTemplateRequest,
|
||||
* !proto.google.protobuf.Empty>}
|
||||
*/
|
||||
const methodDescriptor_DeviceProfileTemplateService_Delete = new grpc.web.MethodDescriptor(
|
||||
'/api.DeviceProfileTemplateService/Delete',
|
||||
grpc.web.MethodType.UNARY,
|
||||
proto.api.DeleteDeviceProfileTemplateRequest,
|
||||
google_protobuf_empty_pb.Empty,
|
||||
/**
|
||||
* @param {!proto.api.DeleteDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
google_protobuf_empty_pb.Empty.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.AbstractClientBase.MethodInfo<
|
||||
* !proto.api.DeleteDeviceProfileTemplateRequest,
|
||||
* !proto.google.protobuf.Empty>}
|
||||
*/
|
||||
const methodInfo_DeviceProfileTemplateService_Delete = new grpc.web.AbstractClientBase.MethodInfo(
|
||||
google_protobuf_empty_pb.Empty,
|
||||
/**
|
||||
* @param {!proto.api.DeleteDeviceProfileTemplateRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
google_protobuf_empty_pb.Empty.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.DeleteDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @param {function(?grpc.web.Error, ?proto.google.protobuf.Empty)}
|
||||
* callback The callback function(error, response)
|
||||
* @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined}
|
||||
* The XHR Node Readable Stream
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServiceClient.prototype.delete =
|
||||
function(request, metadata, callback) {
|
||||
return this.client_.rpcCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Delete',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Delete,
|
||||
callback);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.DeleteDeviceProfileTemplateRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @return {!Promise<!proto.google.protobuf.Empty>}
|
||||
* Promise that resolves to the response
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServicePromiseClient.prototype.delete =
|
||||
function(request, metadata) {
|
||||
return this.client_.unaryCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/Delete',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_Delete);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.MethodDescriptor<
|
||||
* !proto.api.ListDeviceProfileTemplatesRequest,
|
||||
* !proto.api.ListDeviceProfileTemplatesResponse>}
|
||||
*/
|
||||
const methodDescriptor_DeviceProfileTemplateService_List = new grpc.web.MethodDescriptor(
|
||||
'/api.DeviceProfileTemplateService/List',
|
||||
grpc.web.MethodType.UNARY,
|
||||
proto.api.ListDeviceProfileTemplatesRequest,
|
||||
proto.api.ListDeviceProfileTemplatesResponse,
|
||||
/**
|
||||
* @param {!proto.api.ListDeviceProfileTemplatesRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
proto.api.ListDeviceProfileTemplatesResponse.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @const
|
||||
* @type {!grpc.web.AbstractClientBase.MethodInfo<
|
||||
* !proto.api.ListDeviceProfileTemplatesRequest,
|
||||
* !proto.api.ListDeviceProfileTemplatesResponse>}
|
||||
*/
|
||||
const methodInfo_DeviceProfileTemplateService_List = new grpc.web.AbstractClientBase.MethodInfo(
|
||||
proto.api.ListDeviceProfileTemplatesResponse,
|
||||
/**
|
||||
* @param {!proto.api.ListDeviceProfileTemplatesRequest} request
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
function(request) {
|
||||
return request.serializeBinary();
|
||||
},
|
||||
proto.api.ListDeviceProfileTemplatesResponse.deserializeBinary
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.ListDeviceProfileTemplatesRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @param {function(?grpc.web.Error, ?proto.api.ListDeviceProfileTemplatesResponse)}
|
||||
* callback The callback function(error, response)
|
||||
* @return {!grpc.web.ClientReadableStream<!proto.api.ListDeviceProfileTemplatesResponse>|undefined}
|
||||
* The XHR Node Readable Stream
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServiceClient.prototype.list =
|
||||
function(request, metadata, callback) {
|
||||
return this.client_.rpcCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/List',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_List,
|
||||
callback);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.api.ListDeviceProfileTemplatesRequest} request The
|
||||
* request proto
|
||||
* @param {?Object<string, string>} metadata User defined
|
||||
* call metadata
|
||||
* @return {!Promise<!proto.api.ListDeviceProfileTemplatesResponse>}
|
||||
* Promise that resolves to the response
|
||||
*/
|
||||
proto.api.DeviceProfileTemplateServicePromiseClient.prototype.list =
|
||||
function(request, metadata) {
|
||||
return this.client_.unaryCall(this.hostname_ +
|
||||
'/api.DeviceProfileTemplateService/List',
|
||||
request,
|
||||
metadata || {},
|
||||
methodDescriptor_DeviceProfileTemplateService_List);
|
||||
};
|
||||
|
||||
|
||||
module.exports = proto.api;
|
||||
|
350
api/grpc-web/api/device_profile_template_pb.d.ts
vendored
Normal file
350
api/grpc-web/api/device_profile_template_pb.d.ts
vendored
Normal file
@ -0,0 +1,350 @@
|
||||
import * as jspb from 'google-protobuf'
|
||||
|
||||
import * as google_protobuf_timestamp_pb from 'google-protobuf/google/protobuf/timestamp_pb';
|
||||
import * as google_protobuf_empty_pb from 'google-protobuf/google/protobuf/empty_pb';
|
||||
import * as common_common_pb from '../common/common_pb';
|
||||
import * as api_device_profile_pb from '../api/device_profile_pb';
|
||||
|
||||
|
||||
export class DeviceProfileTemplate extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): DeviceProfileTemplate;
|
||||
|
||||
getName(): string;
|
||||
setName(value: string): DeviceProfileTemplate;
|
||||
|
||||
getDescription(): string;
|
||||
setDescription(value: string): DeviceProfileTemplate;
|
||||
|
||||
getVendor(): string;
|
||||
setVendor(value: string): DeviceProfileTemplate;
|
||||
|
||||
getFirmware(): string;
|
||||
setFirmware(value: string): DeviceProfileTemplate;
|
||||
|
||||
getRegion(): common_common_pb.Region;
|
||||
setRegion(value: common_common_pb.Region): DeviceProfileTemplate;
|
||||
|
||||
getMacVersion(): common_common_pb.MacVersion;
|
||||
setMacVersion(value: common_common_pb.MacVersion): DeviceProfileTemplate;
|
||||
|
||||
getRegParamsRevision(): common_common_pb.RegParamsRevision;
|
||||
setRegParamsRevision(value: common_common_pb.RegParamsRevision): DeviceProfileTemplate;
|
||||
|
||||
getAdrAlgorithmId(): string;
|
||||
setAdrAlgorithmId(value: string): DeviceProfileTemplate;
|
||||
|
||||
getPayloadCodecRuntime(): api_device_profile_pb.CodecRuntime;
|
||||
setPayloadCodecRuntime(value: api_device_profile_pb.CodecRuntime): DeviceProfileTemplate;
|
||||
|
||||
getPayloadCodecScript(): string;
|
||||
setPayloadCodecScript(value: string): DeviceProfileTemplate;
|
||||
|
||||
getFlushQueueOnActivate(): boolean;
|
||||
setFlushQueueOnActivate(value: boolean): DeviceProfileTemplate;
|
||||
|
||||
getUplinkInterval(): number;
|
||||
setUplinkInterval(value: number): DeviceProfileTemplate;
|
||||
|
||||
getDeviceStatusReqInterval(): number;
|
||||
setDeviceStatusReqInterval(value: number): DeviceProfileTemplate;
|
||||
|
||||
getSupportsOtaa(): boolean;
|
||||
setSupportsOtaa(value: boolean): DeviceProfileTemplate;
|
||||
|
||||
getSupportsClassB(): boolean;
|
||||
setSupportsClassB(value: boolean): DeviceProfileTemplate;
|
||||
|
||||
getSupportsClassC(): boolean;
|
||||
setSupportsClassC(value: boolean): DeviceProfileTemplate;
|
||||
|
||||
getClassBTimeout(): number;
|
||||
setClassBTimeout(value: number): DeviceProfileTemplate;
|
||||
|
||||
getClassBPingSlotPeriod(): number;
|
||||
setClassBPingSlotPeriod(value: number): DeviceProfileTemplate;
|
||||
|
||||
getClassBPingSlotDr(): number;
|
||||
setClassBPingSlotDr(value: number): DeviceProfileTemplate;
|
||||
|
||||
getClassBPingSlotFreq(): number;
|
||||
setClassBPingSlotFreq(value: number): DeviceProfileTemplate;
|
||||
|
||||
getClassCTimeout(): number;
|
||||
setClassCTimeout(value: number): DeviceProfileTemplate;
|
||||
|
||||
getAbpRx1Delay(): number;
|
||||
setAbpRx1Delay(value: number): DeviceProfileTemplate;
|
||||
|
||||
getAbpRx1DrOffset(): number;
|
||||
setAbpRx1DrOffset(value: number): DeviceProfileTemplate;
|
||||
|
||||
getAbpRx2Dr(): number;
|
||||
setAbpRx2Dr(value: number): DeviceProfileTemplate;
|
||||
|
||||
getAbpRx2Freq(): number;
|
||||
setAbpRx2Freq(value: number): DeviceProfileTemplate;
|
||||
|
||||
getTagsMap(): jspb.Map<string, string>;
|
||||
clearTagsMap(): DeviceProfileTemplate;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DeviceProfileTemplate.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DeviceProfileTemplate): DeviceProfileTemplate.AsObject;
|
||||
static serializeBinaryToWriter(message: DeviceProfileTemplate, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DeviceProfileTemplate;
|
||||
static deserializeBinaryFromReader(message: DeviceProfileTemplate, reader: jspb.BinaryReader): DeviceProfileTemplate;
|
||||
}
|
||||
|
||||
export namespace DeviceProfileTemplate {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
name: string,
|
||||
description: string,
|
||||
vendor: string,
|
||||
firmware: string,
|
||||
region: common_common_pb.Region,
|
||||
macVersion: common_common_pb.MacVersion,
|
||||
regParamsRevision: common_common_pb.RegParamsRevision,
|
||||
adrAlgorithmId: string,
|
||||
payloadCodecRuntime: api_device_profile_pb.CodecRuntime,
|
||||
payloadCodecScript: string,
|
||||
flushQueueOnActivate: boolean,
|
||||
uplinkInterval: number,
|
||||
deviceStatusReqInterval: number,
|
||||
supportsOtaa: boolean,
|
||||
supportsClassB: boolean,
|
||||
supportsClassC: boolean,
|
||||
classBTimeout: number,
|
||||
classBPingSlotPeriod: number,
|
||||
classBPingSlotDr: number,
|
||||
classBPingSlotFreq: number,
|
||||
classCTimeout: number,
|
||||
abpRx1Delay: number,
|
||||
abpRx1DrOffset: number,
|
||||
abpRx2Dr: number,
|
||||
abpRx2Freq: number,
|
||||
tagsMap: Array<[string, string]>,
|
||||
}
|
||||
}
|
||||
|
||||
export class DeviceProfileTemplateListItem extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): DeviceProfileTemplateListItem;
|
||||
|
||||
getCreatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setCreatedAt(value?: google_protobuf_timestamp_pb.Timestamp): DeviceProfileTemplateListItem;
|
||||
hasCreatedAt(): boolean;
|
||||
clearCreatedAt(): DeviceProfileTemplateListItem;
|
||||
|
||||
getUpdatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setUpdatedAt(value?: google_protobuf_timestamp_pb.Timestamp): DeviceProfileTemplateListItem;
|
||||
hasUpdatedAt(): boolean;
|
||||
clearUpdatedAt(): DeviceProfileTemplateListItem;
|
||||
|
||||
getName(): string;
|
||||
setName(value: string): DeviceProfileTemplateListItem;
|
||||
|
||||
getVendor(): string;
|
||||
setVendor(value: string): DeviceProfileTemplateListItem;
|
||||
|
||||
getFirmware(): string;
|
||||
setFirmware(value: string): DeviceProfileTemplateListItem;
|
||||
|
||||
getRegion(): common_common_pb.Region;
|
||||
setRegion(value: common_common_pb.Region): DeviceProfileTemplateListItem;
|
||||
|
||||
getMacVersion(): common_common_pb.MacVersion;
|
||||
setMacVersion(value: common_common_pb.MacVersion): DeviceProfileTemplateListItem;
|
||||
|
||||
getRegParamsRevision(): common_common_pb.RegParamsRevision;
|
||||
setRegParamsRevision(value: common_common_pb.RegParamsRevision): DeviceProfileTemplateListItem;
|
||||
|
||||
getSupportsOtaa(): boolean;
|
||||
setSupportsOtaa(value: boolean): DeviceProfileTemplateListItem;
|
||||
|
||||
getSupportsClassB(): boolean;
|
||||
setSupportsClassB(value: boolean): DeviceProfileTemplateListItem;
|
||||
|
||||
getSupportsClassC(): boolean;
|
||||
setSupportsClassC(value: boolean): DeviceProfileTemplateListItem;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DeviceProfileTemplateListItem.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DeviceProfileTemplateListItem): DeviceProfileTemplateListItem.AsObject;
|
||||
static serializeBinaryToWriter(message: DeviceProfileTemplateListItem, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DeviceProfileTemplateListItem;
|
||||
static deserializeBinaryFromReader(message: DeviceProfileTemplateListItem, reader: jspb.BinaryReader): DeviceProfileTemplateListItem;
|
||||
}
|
||||
|
||||
export namespace DeviceProfileTemplateListItem {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
createdAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
updatedAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
name: string,
|
||||
vendor: string,
|
||||
firmware: string,
|
||||
region: common_common_pb.Region,
|
||||
macVersion: common_common_pb.MacVersion,
|
||||
regParamsRevision: common_common_pb.RegParamsRevision,
|
||||
supportsOtaa: boolean,
|
||||
supportsClassB: boolean,
|
||||
supportsClassC: boolean,
|
||||
}
|
||||
}
|
||||
|
||||
export class CreateDeviceProfileTemplateRequest extends jspb.Message {
|
||||
getDeviceProfileTemplate(): DeviceProfileTemplate | undefined;
|
||||
setDeviceProfileTemplate(value?: DeviceProfileTemplate): CreateDeviceProfileTemplateRequest;
|
||||
hasDeviceProfileTemplate(): boolean;
|
||||
clearDeviceProfileTemplate(): CreateDeviceProfileTemplateRequest;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): CreateDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: CreateDeviceProfileTemplateRequest): CreateDeviceProfileTemplateRequest.AsObject;
|
||||
static serializeBinaryToWriter(message: CreateDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): CreateDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: CreateDeviceProfileTemplateRequest, reader: jspb.BinaryReader): CreateDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace CreateDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
deviceProfileTemplate?: DeviceProfileTemplate.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class GetDeviceProfileTemplateRequest extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): GetDeviceProfileTemplateRequest;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): GetDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: GetDeviceProfileTemplateRequest): GetDeviceProfileTemplateRequest.AsObject;
|
||||
static serializeBinaryToWriter(message: GetDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): GetDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: GetDeviceProfileTemplateRequest, reader: jspb.BinaryReader): GetDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace GetDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
}
|
||||
}
|
||||
|
||||
export class GetDeviceProfileTemplateResponse extends jspb.Message {
|
||||
getDeviceProfileTemplate(): DeviceProfileTemplate | undefined;
|
||||
setDeviceProfileTemplate(value?: DeviceProfileTemplate): GetDeviceProfileTemplateResponse;
|
||||
hasDeviceProfileTemplate(): boolean;
|
||||
clearDeviceProfileTemplate(): GetDeviceProfileTemplateResponse;
|
||||
|
||||
getCreatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setCreatedAt(value?: google_protobuf_timestamp_pb.Timestamp): GetDeviceProfileTemplateResponse;
|
||||
hasCreatedAt(): boolean;
|
||||
clearCreatedAt(): GetDeviceProfileTemplateResponse;
|
||||
|
||||
getUpdatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setUpdatedAt(value?: google_protobuf_timestamp_pb.Timestamp): GetDeviceProfileTemplateResponse;
|
||||
hasUpdatedAt(): boolean;
|
||||
clearUpdatedAt(): GetDeviceProfileTemplateResponse;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): GetDeviceProfileTemplateResponse.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: GetDeviceProfileTemplateResponse): GetDeviceProfileTemplateResponse.AsObject;
|
||||
static serializeBinaryToWriter(message: GetDeviceProfileTemplateResponse, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): GetDeviceProfileTemplateResponse;
|
||||
static deserializeBinaryFromReader(message: GetDeviceProfileTemplateResponse, reader: jspb.BinaryReader): GetDeviceProfileTemplateResponse;
|
||||
}
|
||||
|
||||
export namespace GetDeviceProfileTemplateResponse {
|
||||
export type AsObject = {
|
||||
deviceProfileTemplate?: DeviceProfileTemplate.AsObject,
|
||||
createdAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
updatedAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class UpdateDeviceProfileTemplateRequest extends jspb.Message {
|
||||
getDeviceProfileTemplate(): DeviceProfileTemplate | undefined;
|
||||
setDeviceProfileTemplate(value?: DeviceProfileTemplate): UpdateDeviceProfileTemplateRequest;
|
||||
hasDeviceProfileTemplate(): boolean;
|
||||
clearDeviceProfileTemplate(): UpdateDeviceProfileTemplateRequest;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UpdateDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UpdateDeviceProfileTemplateRequest): UpdateDeviceProfileTemplateRequest.AsObject;
|
||||
static serializeBinaryToWriter(message: UpdateDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UpdateDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: UpdateDeviceProfileTemplateRequest, reader: jspb.BinaryReader): UpdateDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace UpdateDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
deviceProfileTemplate?: DeviceProfileTemplate.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class DeleteDeviceProfileTemplateRequest extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): DeleteDeviceProfileTemplateRequest;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DeleteDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DeleteDeviceProfileTemplateRequest): DeleteDeviceProfileTemplateRequest.AsObject;
|
||||
static serializeBinaryToWriter(message: DeleteDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DeleteDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: DeleteDeviceProfileTemplateRequest, reader: jspb.BinaryReader): DeleteDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace DeleteDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
}
|
||||
}
|
||||
|
||||
export class ListDeviceProfileTemplatesRequest extends jspb.Message {
|
||||
getLimit(): number;
|
||||
setLimit(value: number): ListDeviceProfileTemplatesRequest;
|
||||
|
||||
getOffset(): number;
|
||||
setOffset(value: number): ListDeviceProfileTemplatesRequest;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): ListDeviceProfileTemplatesRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: ListDeviceProfileTemplatesRequest): ListDeviceProfileTemplatesRequest.AsObject;
|
||||
static serializeBinaryToWriter(message: ListDeviceProfileTemplatesRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): ListDeviceProfileTemplatesRequest;
|
||||
static deserializeBinaryFromReader(message: ListDeviceProfileTemplatesRequest, reader: jspb.BinaryReader): ListDeviceProfileTemplatesRequest;
|
||||
}
|
||||
|
||||
export namespace ListDeviceProfileTemplatesRequest {
|
||||
export type AsObject = {
|
||||
limit: number,
|
||||
offset: number,
|
||||
}
|
||||
}
|
||||
|
||||
export class ListDeviceProfileTemplatesResponse extends jspb.Message {
|
||||
getTotalCount(): number;
|
||||
setTotalCount(value: number): ListDeviceProfileTemplatesResponse;
|
||||
|
||||
getResultList(): Array<DeviceProfileTemplateListItem>;
|
||||
setResultList(value: Array<DeviceProfileTemplateListItem>): ListDeviceProfileTemplatesResponse;
|
||||
clearResultList(): ListDeviceProfileTemplatesResponse;
|
||||
addResult(value?: DeviceProfileTemplateListItem, index?: number): DeviceProfileTemplateListItem;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): ListDeviceProfileTemplatesResponse.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: ListDeviceProfileTemplatesResponse): ListDeviceProfileTemplatesResponse.AsObject;
|
||||
static serializeBinaryToWriter(message: ListDeviceProfileTemplatesResponse, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): ListDeviceProfileTemplatesResponse;
|
||||
static deserializeBinaryFromReader(message: ListDeviceProfileTemplatesResponse, reader: jspb.BinaryReader): ListDeviceProfileTemplatesResponse;
|
||||
}
|
||||
|
||||
export namespace ListDeviceProfileTemplatesResponse {
|
||||
export type AsObject = {
|
||||
totalCount: number,
|
||||
resultList: Array<DeviceProfileTemplateListItem.AsObject>,
|
||||
}
|
||||
}
|
||||
|
2804
api/grpc-web/api/device_profile_template_pb.js
vendored
Normal file
2804
api/grpc-web/api/device_profile_template_pb.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
26
api/grpc-web/api/frame_log_pb.d.ts
vendored
26
api/grpc-web/api/frame_log_pb.d.ts
vendored
@ -11,15 +11,15 @@ export class UplinkFrameLog extends jspb.Message {
|
||||
getPhyPayload_asB64(): string;
|
||||
setPhyPayload(value: Uint8Array | string): UplinkFrameLog;
|
||||
|
||||
getTxInfo(): gw_gw_pb.UplinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTXInfo): UplinkFrameLog;
|
||||
getTxInfo(): gw_gw_pb.UplinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTxInfo): UplinkFrameLog;
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): UplinkFrameLog;
|
||||
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRXInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRXInfo>): UplinkFrameLog;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRxInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRxInfo>): UplinkFrameLog;
|
||||
clearRxInfoList(): UplinkFrameLog;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRXInfo, index?: number): gw_gw_pb.UplinkRXInfo;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRxInfo, index?: number): gw_gw_pb.UplinkRxInfo;
|
||||
|
||||
getMType(): common_common_pb.MType;
|
||||
setMType(value: common_common_pb.MType): UplinkFrameLog;
|
||||
@ -46,8 +46,8 @@ export class UplinkFrameLog extends jspb.Message {
|
||||
export namespace UplinkFrameLog {
|
||||
export type AsObject = {
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: gw_gw_pb.UplinkTXInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRXInfo.AsObject>,
|
||||
txInfo?: gw_gw_pb.UplinkTxInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRxInfo.AsObject>,
|
||||
mType: common_common_pb.MType,
|
||||
devAddr: string,
|
||||
devEui: string,
|
||||
@ -66,13 +66,13 @@ export class DownlinkFrameLog extends jspb.Message {
|
||||
getPhyPayload_asB64(): string;
|
||||
setPhyPayload(value: Uint8Array | string): DownlinkFrameLog;
|
||||
|
||||
getTxInfo(): gw_gw_pb.DownlinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTXInfo): DownlinkFrameLog;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTxInfo): DownlinkFrameLog;
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): DownlinkFrameLog;
|
||||
|
||||
getDownlinkId(): string;
|
||||
setDownlinkId(value: string): DownlinkFrameLog;
|
||||
getDownlinkId(): number;
|
||||
setDownlinkId(value: number): DownlinkFrameLog;
|
||||
|
||||
getGatewayId(): string;
|
||||
setGatewayId(value: string): DownlinkFrameLog;
|
||||
@ -98,8 +98,8 @@ export namespace DownlinkFrameLog {
|
||||
export type AsObject = {
|
||||
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: gw_gw_pb.DownlinkTXInfo.AsObject,
|
||||
downlinkId: string,
|
||||
txInfo?: gw_gw_pb.DownlinkTxInfo.AsObject,
|
||||
downlinkId: number,
|
||||
gatewayId: string,
|
||||
mType: common_common_pb.MType,
|
||||
devAddr: string,
|
||||
|
78
api/grpc-web/api/frame_log_pb.js
vendored
78
api/grpc-web/api/frame_log_pb.js
vendored
@ -105,9 +105,9 @@ proto.api.UplinkFrameLog.prototype.toObject = function(opt_includeInstance) {
|
||||
proto.api.UplinkFrameLog.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
phyPayload: msg.getPhyPayload_asB64(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTXInfo.toObject(includeInstance, f),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTxInfo.toObject(includeInstance, f),
|
||||
rxInfoList: jspb.Message.toObjectList(msg.getRxInfoList(),
|
||||
gw_gw_pb.UplinkRXInfo.toObject, includeInstance),
|
||||
gw_gw_pb.UplinkRxInfo.toObject, includeInstance),
|
||||
mType: jspb.Message.getFieldWithDefault(msg, 4, 0),
|
||||
devAddr: jspb.Message.getFieldWithDefault(msg, 5, ""),
|
||||
devEui: jspb.Message.getFieldWithDefault(msg, 6, ""),
|
||||
@ -153,13 +153,13 @@ proto.api.UplinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
|
||||
msg.setPhyPayload(value);
|
||||
break;
|
||||
case 2:
|
||||
var value = new gw_gw_pb.UplinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = new gw_gw_pb.UplinkRXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkRxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRxInfo.deserializeBinaryFromReader);
|
||||
msg.addRxInfo(value);
|
||||
break;
|
||||
case 4:
|
||||
@ -220,7 +220,7 @@ proto.api.UplinkFrameLog.serializeBinaryToWriter = function(message, writer) {
|
||||
writer.writeMessage(
|
||||
2,
|
||||
f,
|
||||
gw_gw_pb.UplinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = message.getRxInfoList();
|
||||
@ -228,7 +228,7 @@ proto.api.UplinkFrameLog.serializeBinaryToWriter = function(message, writer) {
|
||||
writer.writeRepeatedMessage(
|
||||
3,
|
||||
f,
|
||||
gw_gw_pb.UplinkRXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkRxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = message.getMType();
|
||||
@ -306,17 +306,17 @@ proto.api.UplinkFrameLog.prototype.setPhyPayload = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.UplinkTXInfo tx_info = 2;
|
||||
* @return {?proto.gw.UplinkTXInfo}
|
||||
* optional gw.UplinkTxInfo tx_info = 2;
|
||||
* @return {?proto.gw.UplinkTxInfo}
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.getTxInfo = function() {
|
||||
return /** @type{?proto.gw.UplinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTXInfo, 2));
|
||||
return /** @type{?proto.gw.UplinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTxInfo, 2));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {?proto.gw.UplinkTXInfo|undefined} value
|
||||
* @param {?proto.gw.UplinkTxInfo|undefined} value
|
||||
* @return {!proto.api.UplinkFrameLog} returns this
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.setTxInfo = function(value) {
|
||||
@ -343,17 +343,17 @@ proto.api.UplinkFrameLog.prototype.hasTxInfo = function() {
|
||||
|
||||
|
||||
/**
|
||||
* repeated gw.UplinkRXInfo rx_info = 3;
|
||||
* @return {!Array<!proto.gw.UplinkRXInfo>}
|
||||
* repeated gw.UplinkRxInfo rx_info = 3;
|
||||
* @return {!Array<!proto.gw.UplinkRxInfo>}
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.getRxInfoList = function() {
|
||||
return /** @type{!Array<!proto.gw.UplinkRXInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRXInfo, 3));
|
||||
return /** @type{!Array<!proto.gw.UplinkRxInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRxInfo, 3));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {!Array<!proto.gw.UplinkRXInfo>} value
|
||||
* @param {!Array<!proto.gw.UplinkRxInfo>} value
|
||||
* @return {!proto.api.UplinkFrameLog} returns this
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.setRxInfoList = function(value) {
|
||||
@ -362,12 +362,12 @@ proto.api.UplinkFrameLog.prototype.setRxInfoList = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* @param {!proto.gw.UplinkRXInfo=} opt_value
|
||||
* @param {!proto.gw.UplinkRxInfo=} opt_value
|
||||
* @param {number=} opt_index
|
||||
* @return {!proto.gw.UplinkRXInfo}
|
||||
* @return {!proto.gw.UplinkRxInfo}
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.addRxInfo = function(opt_value, opt_index) {
|
||||
return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.gw.UplinkRXInfo, opt_index);
|
||||
return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.gw.UplinkRxInfo, opt_index);
|
||||
};
|
||||
|
||||
|
||||
@ -505,8 +505,8 @@ proto.api.DownlinkFrameLog.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
time: (f = msg.getTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
|
||||
phyPayload: msg.getPhyPayload_asB64(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTXInfo.toObject(includeInstance, f),
|
||||
downlinkId: jspb.Message.getFieldWithDefault(msg, 4, ""),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTxInfo.toObject(includeInstance, f),
|
||||
downlinkId: jspb.Message.getFieldWithDefault(msg, 4, 0),
|
||||
gatewayId: jspb.Message.getFieldWithDefault(msg, 5, ""),
|
||||
mType: jspb.Message.getFieldWithDefault(msg, 6, 0),
|
||||
devAddr: jspb.Message.getFieldWithDefault(msg, 7, ""),
|
||||
@ -557,12 +557,12 @@ proto.api.DownlinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
|
||||
msg.setPhyPayload(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = new gw_gw_pb.DownlinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.DownlinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
case 4:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
var value = /** @type {number} */ (reader.readUint32());
|
||||
msg.setDownlinkId(value);
|
||||
break;
|
||||
case 5:
|
||||
@ -630,12 +630,12 @@ proto.api.DownlinkFrameLog.serializeBinaryToWriter = function(message, writer) {
|
||||
writer.writeMessage(
|
||||
3,
|
||||
f,
|
||||
gw_gw_pb.DownlinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.DownlinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = message.getDownlinkId();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
if (f !== 0) {
|
||||
writer.writeUint32(
|
||||
4,
|
||||
f
|
||||
);
|
||||
@ -751,17 +751,17 @@ proto.api.DownlinkFrameLog.prototype.setPhyPayload = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.DownlinkTXInfo tx_info = 3;
|
||||
* @return {?proto.gw.DownlinkTXInfo}
|
||||
* optional gw.DownlinkTxInfo tx_info = 3;
|
||||
* @return {?proto.gw.DownlinkTxInfo}
|
||||
*/
|
||||
proto.api.DownlinkFrameLog.prototype.getTxInfo = function() {
|
||||
return /** @type{?proto.gw.DownlinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTXInfo, 3));
|
||||
return /** @type{?proto.gw.DownlinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTxInfo, 3));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {?proto.gw.DownlinkTXInfo|undefined} value
|
||||
* @param {?proto.gw.DownlinkTxInfo|undefined} value
|
||||
* @return {!proto.api.DownlinkFrameLog} returns this
|
||||
*/
|
||||
proto.api.DownlinkFrameLog.prototype.setTxInfo = function(value) {
|
||||
@ -788,20 +788,20 @@ proto.api.DownlinkFrameLog.prototype.hasTxInfo = function() {
|
||||
|
||||
|
||||
/**
|
||||
* optional string downlink_id = 4;
|
||||
* @return {string}
|
||||
* optional uint32 downlink_id = 4;
|
||||
* @return {number}
|
||||
*/
|
||||
proto.api.DownlinkFrameLog.prototype.getDownlinkId = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
|
||||
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {string} value
|
||||
* @param {number} value
|
||||
* @return {!proto.api.DownlinkFrameLog} returns this
|
||||
*/
|
||||
proto.api.DownlinkFrameLog.prototype.setDownlinkId = function(value) {
|
||||
return jspb.Message.setProto3StringField(this, 4, value);
|
||||
return jspb.Message.setProto3IntField(this, 4, value);
|
||||
};
|
||||
|
||||
|
||||
|
2
api/grpc-web/package.json
vendored
2
api/grpc-web/package.json
vendored
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@chirpstack/chirpstack-api-grpc-web",
|
||||
"version": "4.0.0",
|
||||
"version": "4.0.0-test.6",
|
||||
"description": "Chirpstack gRPC-web API",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
|
6
api/js/Makefile
vendored
6
api/js/Makefile
vendored
@ -6,14 +6,11 @@ PROTOC_GEN_GRPC_PATH := ./node_modules/.bin/grpc_tools_node_protoc_plugin
|
||||
PROTOC_ARGS := -I=/googleapis -I=../proto --plugin=protoc-gen-ts=$(PROTOC_GEN_TS_PATH) --plugin=protoc-gen-grpc=$(PROTOC_GEN_GRPC_PATH) --js_out=import_style=commonjs,binary:. --ts_out=service=grpc-node,mode=grpc-js:.
|
||||
PROTOC_GRPC_ARGS := $(PROTOC_ARGS) --grpc_out=grpc_js:.
|
||||
|
||||
all: requirements version common gw api integration meta google-api
|
||||
all: requirements common gw api integration meta google-api
|
||||
|
||||
requirements:
|
||||
yarn install
|
||||
|
||||
version:
|
||||
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./package.json
|
||||
|
||||
common:
|
||||
protoc $(PROTOC_ARGS) ../proto/common/common.proto
|
||||
|
||||
@ -26,6 +23,7 @@ api:
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/tenant.proto
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/application.proto
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/device_profile.proto
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/device_profile_template.proto
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/device.proto
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/gateway.proto
|
||||
protoc ${PROTOC_GRPC_ARGS} ../proto/api/frame_log.proto
|
||||
|
16
api/js/api/device_profile_pb.d.ts
vendored
16
api/js/api/device_profile_pb.d.ts
vendored
@ -16,6 +16,9 @@ export class DeviceProfile extends jspb.Message {
|
||||
getName(): string;
|
||||
setName(value: string): void;
|
||||
|
||||
getDescription(): string;
|
||||
setDescription(value: string): void;
|
||||
|
||||
getRegion(): common_common_pb.RegionMap[keyof common_common_pb.RegionMap];
|
||||
setRegion(value: common_common_pb.RegionMap[keyof common_common_pb.RegionMap]): void;
|
||||
|
||||
@ -31,11 +34,11 @@ export class DeviceProfile extends jspb.Message {
|
||||
getPayloadCodecRuntime(): CodecRuntimeMap[keyof CodecRuntimeMap];
|
||||
setPayloadCodecRuntime(value: CodecRuntimeMap[keyof CodecRuntimeMap]): void;
|
||||
|
||||
getPayloadEncoderConfig(): string;
|
||||
setPayloadEncoderConfig(value: string): void;
|
||||
getPayloadCodecScript(): string;
|
||||
setPayloadCodecScript(value: string): void;
|
||||
|
||||
getPayloadDecoderConfig(): string;
|
||||
setPayloadDecoderConfig(value: string): void;
|
||||
getFlushQueueOnActivate(): boolean;
|
||||
setFlushQueueOnActivate(value: boolean): void;
|
||||
|
||||
getUplinkInterval(): number;
|
||||
setUplinkInterval(value: number): void;
|
||||
@ -96,13 +99,14 @@ export namespace DeviceProfile {
|
||||
id: string,
|
||||
tenantId: string,
|
||||
name: string,
|
||||
description: string,
|
||||
region: common_common_pb.RegionMap[keyof common_common_pb.RegionMap],
|
||||
macVersion: common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap],
|
||||
regParamsRevision: common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap],
|
||||
adrAlgorithmId: string,
|
||||
payloadCodecRuntime: CodecRuntimeMap[keyof CodecRuntimeMap],
|
||||
payloadEncoderConfig: string,
|
||||
payloadDecoderConfig: string,
|
||||
payloadCodecScript: string,
|
||||
flushQueueOnActivate: boolean,
|
||||
uplinkInterval: number,
|
||||
deviceStatusReqInterval: number,
|
||||
supportsOtaa: boolean,
|
||||
|
65
api/js/api/device_profile_pb.js
vendored
65
api/js/api/device_profile_pb.js
vendored
@ -74,13 +74,14 @@ proto.api.DeviceProfile.toObject = function(includeInstance, msg) {
|
||||
id: msg.getId(),
|
||||
tenantId: msg.getTenantId(),
|
||||
name: msg.getName(),
|
||||
description: msg.getDescription(),
|
||||
region: msg.getRegion(),
|
||||
macVersion: msg.getMacVersion(),
|
||||
regParamsRevision: msg.getRegParamsRevision(),
|
||||
adrAlgorithmId: msg.getAdrAlgorithmId(),
|
||||
payloadCodecRuntime: msg.getPayloadCodecRuntime(),
|
||||
payloadEncoderConfig: msg.getPayloadEncoderConfig(),
|
||||
payloadDecoderConfig: msg.getPayloadDecoderConfig(),
|
||||
payloadCodecScript: msg.getPayloadCodecScript(),
|
||||
flushQueueOnActivate: msg.getFlushQueueOnActivate(),
|
||||
uplinkInterval: msg.getUplinkInterval(),
|
||||
deviceStatusReqInterval: msg.getDeviceStatusReqInterval(),
|
||||
supportsOtaa: msg.getSupportsOtaa(),
|
||||
@ -144,6 +145,10 @@ proto.api.DeviceProfile.deserializeBinaryFromReader = function(msg, reader) {
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setName(value);
|
||||
break;
|
||||
case 26:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setDescription(value);
|
||||
break;
|
||||
case 4:
|
||||
var value = /** @type {!proto.common.Region} */ (reader.readEnum());
|
||||
msg.setRegion(value);
|
||||
@ -166,11 +171,11 @@ proto.api.DeviceProfile.deserializeBinaryFromReader = function(msg, reader) {
|
||||
break;
|
||||
case 9:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setPayloadEncoderConfig(value);
|
||||
msg.setPayloadCodecScript(value);
|
||||
break;
|
||||
case 10:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setPayloadDecoderConfig(value);
|
||||
var value = /** @type {boolean} */ (reader.readBool());
|
||||
msg.setFlushQueueOnActivate(value);
|
||||
break;
|
||||
case 11:
|
||||
var value = /** @type {number} */ (reader.readUint32());
|
||||
@ -293,6 +298,13 @@ proto.api.DeviceProfile.prototype.serializeBinaryToWriter = function (writer) {
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getDescription();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
26,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getRegion();
|
||||
if (f !== 0.0) {
|
||||
writer.writeEnum(
|
||||
@ -328,16 +340,16 @@ proto.api.DeviceProfile.prototype.serializeBinaryToWriter = function (writer) {
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getPayloadEncoderConfig();
|
||||
f = this.getPayloadCodecScript();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
9,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getPayloadDecoderConfig();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
f = this.getFlushQueueOnActivate();
|
||||
if (f) {
|
||||
writer.writeBool(
|
||||
10,
|
||||
f
|
||||
);
|
||||
@ -501,6 +513,21 @@ proto.api.DeviceProfile.prototype.setName = function(value) {
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional string description = 26;
|
||||
* @return {string}
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.getDescription = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 26, ""));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
proto.api.DeviceProfile.prototype.setDescription = function(value) {
|
||||
jspb.Message.setField(this, 26, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional common.Region region = 4;
|
||||
* @return {!proto.common.Region}
|
||||
@ -577,31 +604,33 @@ proto.api.DeviceProfile.prototype.setPayloadCodecRuntime = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional string payload_encoder_config = 9;
|
||||
* optional string payload_codec_script = 9;
|
||||
* @return {string}
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.getPayloadEncoderConfig = function() {
|
||||
proto.api.DeviceProfile.prototype.getPayloadCodecScript = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 9, ""));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
proto.api.DeviceProfile.prototype.setPayloadEncoderConfig = function(value) {
|
||||
proto.api.DeviceProfile.prototype.setPayloadCodecScript = function(value) {
|
||||
jspb.Message.setField(this, 9, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional string payload_decoder_config = 10;
|
||||
* @return {string}
|
||||
* optional bool flush_queue_on_activate = 10;
|
||||
* Note that Boolean fields may be set to 0/1 when serialized from a Java server.
|
||||
* You should avoid comparisons like {@code val === true/false} in those cases.
|
||||
* @return {boolean}
|
||||
*/
|
||||
proto.api.DeviceProfile.prototype.getPayloadDecoderConfig = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 10, ""));
|
||||
proto.api.DeviceProfile.prototype.getFlushQueueOnActivate = function() {
|
||||
return /** @type {boolean} */ (jspb.Message.getFieldProto3(this, 10, false));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
proto.api.DeviceProfile.prototype.setPayloadDecoderConfig = function(value) {
|
||||
/** @param {boolean} value */
|
||||
proto.api.DeviceProfile.prototype.setFlushQueueOnActivate = function(value) {
|
||||
jspb.Message.setField(this, 10, value);
|
||||
};
|
||||
|
||||
|
45
api/js/api/device_profile_template_grpc_pb.d.ts
vendored
Normal file
45
api/js/api/device_profile_template_grpc_pb.d.ts
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
// GENERATED CODE -- DO NOT EDIT!
|
||||
|
||||
// package: api
|
||||
// file: api/device_profile_template.proto
|
||||
|
||||
import * as api_device_profile_template_pb from "../api/device_profile_template_pb";
|
||||
import * as google_protobuf_empty_pb from "google-protobuf/google/protobuf/empty_pb";
|
||||
import * as grpc from "@grpc/grpc-js";
|
||||
|
||||
interface IDeviceProfileTemplateServiceService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
|
||||
create: grpc.MethodDefinition<api_device_profile_template_pb.CreateDeviceProfileTemplateRequest, google_protobuf_empty_pb.Empty>;
|
||||
get: grpc.MethodDefinition<api_device_profile_template_pb.GetDeviceProfileTemplateRequest, api_device_profile_template_pb.GetDeviceProfileTemplateResponse>;
|
||||
update: grpc.MethodDefinition<api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest, google_protobuf_empty_pb.Empty>;
|
||||
delete: grpc.MethodDefinition<api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest, google_protobuf_empty_pb.Empty>;
|
||||
list: grpc.MethodDefinition<api_device_profile_template_pb.ListDeviceProfileTemplatesRequest, api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>;
|
||||
}
|
||||
|
||||
export const DeviceProfileTemplateServiceService: IDeviceProfileTemplateServiceService;
|
||||
|
||||
export interface IDeviceProfileTemplateServiceServer extends grpc.UntypedServiceImplementation {
|
||||
create: grpc.handleUnaryCall<api_device_profile_template_pb.CreateDeviceProfileTemplateRequest, google_protobuf_empty_pb.Empty>;
|
||||
get: grpc.handleUnaryCall<api_device_profile_template_pb.GetDeviceProfileTemplateRequest, api_device_profile_template_pb.GetDeviceProfileTemplateResponse>;
|
||||
update: grpc.handleUnaryCall<api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest, google_protobuf_empty_pb.Empty>;
|
||||
delete: grpc.handleUnaryCall<api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest, google_protobuf_empty_pb.Empty>;
|
||||
list: grpc.handleUnaryCall<api_device_profile_template_pb.ListDeviceProfileTemplatesRequest, api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>;
|
||||
}
|
||||
|
||||
export class DeviceProfileTemplateServiceClient extends grpc.Client {
|
||||
constructor(address: string, credentials: grpc.ChannelCredentials, options?: object);
|
||||
create(argument: api_device_profile_template_pb.CreateDeviceProfileTemplateRequest, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
create(argument: api_device_profile_template_pb.CreateDeviceProfileTemplateRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
create(argument: api_device_profile_template_pb.CreateDeviceProfileTemplateRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
get(argument: api_device_profile_template_pb.GetDeviceProfileTemplateRequest, callback: grpc.requestCallback<api_device_profile_template_pb.GetDeviceProfileTemplateResponse>): grpc.ClientUnaryCall;
|
||||
get(argument: api_device_profile_template_pb.GetDeviceProfileTemplateRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_device_profile_template_pb.GetDeviceProfileTemplateResponse>): grpc.ClientUnaryCall;
|
||||
get(argument: api_device_profile_template_pb.GetDeviceProfileTemplateRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_device_profile_template_pb.GetDeviceProfileTemplateResponse>): grpc.ClientUnaryCall;
|
||||
update(argument: api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
update(argument: api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
update(argument: api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
delete(argument: api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
delete(argument: api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
delete(argument: api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
|
||||
list(argument: api_device_profile_template_pb.ListDeviceProfileTemplatesRequest, callback: grpc.requestCallback<api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>): grpc.ClientUnaryCall;
|
||||
list(argument: api_device_profile_template_pb.ListDeviceProfileTemplatesRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>): grpc.ClientUnaryCall;
|
||||
list(argument: api_device_profile_template_pb.ListDeviceProfileTemplatesRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_device_profile_template_pb.ListDeviceProfileTemplatesResponse>): grpc.ClientUnaryCall;
|
||||
}
|
164
api/js/api/device_profile_template_grpc_pb.js
vendored
Normal file
164
api/js/api/device_profile_template_grpc_pb.js
vendored
Normal file
@ -0,0 +1,164 @@
|
||||
// GENERATED CODE -- DO NOT EDIT!
|
||||
|
||||
'use strict';
|
||||
var grpc = require('@grpc/grpc-js');
|
||||
var api_device_profile_template_pb = require('../api/device_profile_template_pb.js');
|
||||
var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js');
|
||||
var google_protobuf_empty_pb = require('google-protobuf/google/protobuf/empty_pb.js');
|
||||
var common_common_pb = require('../common/common_pb.js');
|
||||
var api_device_profile_pb = require('../api/device_profile_pb.js');
|
||||
|
||||
function serialize_api_CreateDeviceProfileTemplateRequest(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.CreateDeviceProfileTemplateRequest)) {
|
||||
throw new Error('Expected argument of type api.CreateDeviceProfileTemplateRequest');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_CreateDeviceProfileTemplateRequest(buffer_arg) {
|
||||
return api_device_profile_template_pb.CreateDeviceProfileTemplateRequest.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_api_DeleteDeviceProfileTemplateRequest(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest)) {
|
||||
throw new Error('Expected argument of type api.DeleteDeviceProfileTemplateRequest');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_DeleteDeviceProfileTemplateRequest(buffer_arg) {
|
||||
return api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_api_GetDeviceProfileTemplateRequest(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.GetDeviceProfileTemplateRequest)) {
|
||||
throw new Error('Expected argument of type api.GetDeviceProfileTemplateRequest');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_GetDeviceProfileTemplateRequest(buffer_arg) {
|
||||
return api_device_profile_template_pb.GetDeviceProfileTemplateRequest.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_api_GetDeviceProfileTemplateResponse(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.GetDeviceProfileTemplateResponse)) {
|
||||
throw new Error('Expected argument of type api.GetDeviceProfileTemplateResponse');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_GetDeviceProfileTemplateResponse(buffer_arg) {
|
||||
return api_device_profile_template_pb.GetDeviceProfileTemplateResponse.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_api_ListDeviceProfileTemplatesRequest(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.ListDeviceProfileTemplatesRequest)) {
|
||||
throw new Error('Expected argument of type api.ListDeviceProfileTemplatesRequest');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_ListDeviceProfileTemplatesRequest(buffer_arg) {
|
||||
return api_device_profile_template_pb.ListDeviceProfileTemplatesRequest.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_api_ListDeviceProfileTemplatesResponse(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.ListDeviceProfileTemplatesResponse)) {
|
||||
throw new Error('Expected argument of type api.ListDeviceProfileTemplatesResponse');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_ListDeviceProfileTemplatesResponse(buffer_arg) {
|
||||
return api_device_profile_template_pb.ListDeviceProfileTemplatesResponse.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_api_UpdateDeviceProfileTemplateRequest(arg) {
|
||||
if (!(arg instanceof api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest)) {
|
||||
throw new Error('Expected argument of type api.UpdateDeviceProfileTemplateRequest');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_api_UpdateDeviceProfileTemplateRequest(buffer_arg) {
|
||||
return api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
function serialize_google_protobuf_Empty(arg) {
|
||||
if (!(arg instanceof google_protobuf_empty_pb.Empty)) {
|
||||
throw new Error('Expected argument of type google.protobuf.Empty');
|
||||
}
|
||||
return Buffer.from(arg.serializeBinary());
|
||||
}
|
||||
|
||||
function deserialize_google_protobuf_Empty(buffer_arg) {
|
||||
return google_protobuf_empty_pb.Empty.deserializeBinary(new Uint8Array(buffer_arg));
|
||||
}
|
||||
|
||||
|
||||
// DeviceProfileTemplateService is the service providing API methods for managing device-profile templates.
|
||||
var DeviceProfileTemplateServiceService = exports.DeviceProfileTemplateServiceService = {
|
||||
// Create the given device-profile template.
|
||||
create: {
|
||||
path: '/api.DeviceProfileTemplateService/Create',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: api_device_profile_template_pb.CreateDeviceProfileTemplateRequest,
|
||||
responseType: google_protobuf_empty_pb.Empty,
|
||||
requestSerialize: serialize_api_CreateDeviceProfileTemplateRequest,
|
||||
requestDeserialize: deserialize_api_CreateDeviceProfileTemplateRequest,
|
||||
responseSerialize: serialize_google_protobuf_Empty,
|
||||
responseDeserialize: deserialize_google_protobuf_Empty,
|
||||
},
|
||||
// Get the device-profile template for the given ID.
|
||||
get: {
|
||||
path: '/api.DeviceProfileTemplateService/Get',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: api_device_profile_template_pb.GetDeviceProfileTemplateRequest,
|
||||
responseType: api_device_profile_template_pb.GetDeviceProfileTemplateResponse,
|
||||
requestSerialize: serialize_api_GetDeviceProfileTemplateRequest,
|
||||
requestDeserialize: deserialize_api_GetDeviceProfileTemplateRequest,
|
||||
responseSerialize: serialize_api_GetDeviceProfileTemplateResponse,
|
||||
responseDeserialize: deserialize_api_GetDeviceProfileTemplateResponse,
|
||||
},
|
||||
// Update the given device-profile template.
|
||||
update: {
|
||||
path: '/api.DeviceProfileTemplateService/Update',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: api_device_profile_template_pb.UpdateDeviceProfileTemplateRequest,
|
||||
responseType: google_protobuf_empty_pb.Empty,
|
||||
requestSerialize: serialize_api_UpdateDeviceProfileTemplateRequest,
|
||||
requestDeserialize: deserialize_api_UpdateDeviceProfileTemplateRequest,
|
||||
responseSerialize: serialize_google_protobuf_Empty,
|
||||
responseDeserialize: deserialize_google_protobuf_Empty,
|
||||
},
|
||||
// Delete the device-profile template with the given ID.
|
||||
delete: {
|
||||
path: '/api.DeviceProfileTemplateService/Delete',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: api_device_profile_template_pb.DeleteDeviceProfileTemplateRequest,
|
||||
responseType: google_protobuf_empty_pb.Empty,
|
||||
requestSerialize: serialize_api_DeleteDeviceProfileTemplateRequest,
|
||||
requestDeserialize: deserialize_api_DeleteDeviceProfileTemplateRequest,
|
||||
responseSerialize: serialize_google_protobuf_Empty,
|
||||
responseDeserialize: deserialize_google_protobuf_Empty,
|
||||
},
|
||||
// List the available device-profile templates.
|
||||
list: {
|
||||
path: '/api.DeviceProfileTemplateService/List',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: api_device_profile_template_pb.ListDeviceProfileTemplatesRequest,
|
||||
responseType: api_device_profile_template_pb.ListDeviceProfileTemplatesResponse,
|
||||
requestSerialize: serialize_api_ListDeviceProfileTemplatesRequest,
|
||||
requestDeserialize: deserialize_api_ListDeviceProfileTemplatesRequest,
|
||||
responseSerialize: serialize_api_ListDeviceProfileTemplatesResponse,
|
||||
responseDeserialize: deserialize_api_ListDeviceProfileTemplatesResponse,
|
||||
},
|
||||
};
|
||||
|
||||
exports.DeviceProfileTemplateServiceClient = grpc.makeGenericClientConstructor(DeviceProfileTemplateServiceService);
|
368
api/js/api/device_profile_template_pb.d.ts
vendored
Normal file
368
api/js/api/device_profile_template_pb.d.ts
vendored
Normal file
@ -0,0 +1,368 @@
|
||||
// package: api
|
||||
// file: api/device_profile_template.proto
|
||||
|
||||
import * as jspb from "google-protobuf";
|
||||
import * as google_protobuf_timestamp_pb from "google-protobuf/google/protobuf/timestamp_pb";
|
||||
import * as google_protobuf_empty_pb from "google-protobuf/google/protobuf/empty_pb";
|
||||
import * as common_common_pb from "../common/common_pb";
|
||||
import * as api_device_profile_pb from "../api/device_profile_pb";
|
||||
|
||||
export class DeviceProfileTemplate extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): void;
|
||||
|
||||
getName(): string;
|
||||
setName(value: string): void;
|
||||
|
||||
getDescription(): string;
|
||||
setDescription(value: string): void;
|
||||
|
||||
getVendor(): string;
|
||||
setVendor(value: string): void;
|
||||
|
||||
getFirmware(): string;
|
||||
setFirmware(value: string): void;
|
||||
|
||||
getRegion(): common_common_pb.RegionMap[keyof common_common_pb.RegionMap];
|
||||
setRegion(value: common_common_pb.RegionMap[keyof common_common_pb.RegionMap]): void;
|
||||
|
||||
getMacVersion(): common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap];
|
||||
setMacVersion(value: common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap]): void;
|
||||
|
||||
getRegParamsRevision(): common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap];
|
||||
setRegParamsRevision(value: common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap]): void;
|
||||
|
||||
getAdrAlgorithmId(): string;
|
||||
setAdrAlgorithmId(value: string): void;
|
||||
|
||||
getPayloadCodecRuntime(): api_device_profile_pb.CodecRuntimeMap[keyof api_device_profile_pb.CodecRuntimeMap];
|
||||
setPayloadCodecRuntime(value: api_device_profile_pb.CodecRuntimeMap[keyof api_device_profile_pb.CodecRuntimeMap]): void;
|
||||
|
||||
getPayloadCodecScript(): string;
|
||||
setPayloadCodecScript(value: string): void;
|
||||
|
||||
getFlushQueueOnActivate(): boolean;
|
||||
setFlushQueueOnActivate(value: boolean): void;
|
||||
|
||||
getUplinkInterval(): number;
|
||||
setUplinkInterval(value: number): void;
|
||||
|
||||
getDeviceStatusReqInterval(): number;
|
||||
setDeviceStatusReqInterval(value: number): void;
|
||||
|
||||
getSupportsOtaa(): boolean;
|
||||
setSupportsOtaa(value: boolean): void;
|
||||
|
||||
getSupportsClassB(): boolean;
|
||||
setSupportsClassB(value: boolean): void;
|
||||
|
||||
getSupportsClassC(): boolean;
|
||||
setSupportsClassC(value: boolean): void;
|
||||
|
||||
getClassBTimeout(): number;
|
||||
setClassBTimeout(value: number): void;
|
||||
|
||||
getClassBPingSlotPeriod(): number;
|
||||
setClassBPingSlotPeriod(value: number): void;
|
||||
|
||||
getClassBPingSlotDr(): number;
|
||||
setClassBPingSlotDr(value: number): void;
|
||||
|
||||
getClassBPingSlotFreq(): number;
|
||||
setClassBPingSlotFreq(value: number): void;
|
||||
|
||||
getClassCTimeout(): number;
|
||||
setClassCTimeout(value: number): void;
|
||||
|
||||
getAbpRx1Delay(): number;
|
||||
setAbpRx1Delay(value: number): void;
|
||||
|
||||
getAbpRx1DrOffset(): number;
|
||||
setAbpRx1DrOffset(value: number): void;
|
||||
|
||||
getAbpRx2Dr(): number;
|
||||
setAbpRx2Dr(value: number): void;
|
||||
|
||||
getAbpRx2Freq(): number;
|
||||
setAbpRx2Freq(value: number): void;
|
||||
|
||||
getTagsMap(): jspb.Map<string, string>;
|
||||
clearTagsMap(): void;
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DeviceProfileTemplate.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DeviceProfileTemplate): DeviceProfileTemplate.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DeviceProfileTemplate, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DeviceProfileTemplate;
|
||||
static deserializeBinaryFromReader(message: DeviceProfileTemplate, reader: jspb.BinaryReader): DeviceProfileTemplate;
|
||||
}
|
||||
|
||||
export namespace DeviceProfileTemplate {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
name: string,
|
||||
description: string,
|
||||
vendor: string,
|
||||
firmware: string,
|
||||
region: common_common_pb.RegionMap[keyof common_common_pb.RegionMap],
|
||||
macVersion: common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap],
|
||||
regParamsRevision: common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap],
|
||||
adrAlgorithmId: string,
|
||||
payloadCodecRuntime: api_device_profile_pb.CodecRuntimeMap[keyof api_device_profile_pb.CodecRuntimeMap],
|
||||
payloadCodecScript: string,
|
||||
flushQueueOnActivate: boolean,
|
||||
uplinkInterval: number,
|
||||
deviceStatusReqInterval: number,
|
||||
supportsOtaa: boolean,
|
||||
supportsClassB: boolean,
|
||||
supportsClassC: boolean,
|
||||
classBTimeout: number,
|
||||
classBPingSlotPeriod: number,
|
||||
classBPingSlotDr: number,
|
||||
classBPingSlotFreq: number,
|
||||
classCTimeout: number,
|
||||
abpRx1Delay: number,
|
||||
abpRx1DrOffset: number,
|
||||
abpRx2Dr: number,
|
||||
abpRx2Freq: number,
|
||||
tagsMap: Array<[string, string]>,
|
||||
}
|
||||
}
|
||||
|
||||
export class DeviceProfileTemplateListItem extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): void;
|
||||
|
||||
hasCreatedAt(): boolean;
|
||||
clearCreatedAt(): void;
|
||||
getCreatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setCreatedAt(value?: google_protobuf_timestamp_pb.Timestamp): void;
|
||||
|
||||
hasUpdatedAt(): boolean;
|
||||
clearUpdatedAt(): void;
|
||||
getUpdatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setUpdatedAt(value?: google_protobuf_timestamp_pb.Timestamp): void;
|
||||
|
||||
getName(): string;
|
||||
setName(value: string): void;
|
||||
|
||||
getVendor(): string;
|
||||
setVendor(value: string): void;
|
||||
|
||||
getFirmware(): string;
|
||||
setFirmware(value: string): void;
|
||||
|
||||
getRegion(): common_common_pb.RegionMap[keyof common_common_pb.RegionMap];
|
||||
setRegion(value: common_common_pb.RegionMap[keyof common_common_pb.RegionMap]): void;
|
||||
|
||||
getMacVersion(): common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap];
|
||||
setMacVersion(value: common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap]): void;
|
||||
|
||||
getRegParamsRevision(): common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap];
|
||||
setRegParamsRevision(value: common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap]): void;
|
||||
|
||||
getSupportsOtaa(): boolean;
|
||||
setSupportsOtaa(value: boolean): void;
|
||||
|
||||
getSupportsClassB(): boolean;
|
||||
setSupportsClassB(value: boolean): void;
|
||||
|
||||
getSupportsClassC(): boolean;
|
||||
setSupportsClassC(value: boolean): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DeviceProfileTemplateListItem.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DeviceProfileTemplateListItem): DeviceProfileTemplateListItem.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DeviceProfileTemplateListItem, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DeviceProfileTemplateListItem;
|
||||
static deserializeBinaryFromReader(message: DeviceProfileTemplateListItem, reader: jspb.BinaryReader): DeviceProfileTemplateListItem;
|
||||
}
|
||||
|
||||
export namespace DeviceProfileTemplateListItem {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
createdAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
updatedAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
name: string,
|
||||
vendor: string,
|
||||
firmware: string,
|
||||
region: common_common_pb.RegionMap[keyof common_common_pb.RegionMap],
|
||||
macVersion: common_common_pb.MacVersionMap[keyof common_common_pb.MacVersionMap],
|
||||
regParamsRevision: common_common_pb.RegParamsRevisionMap[keyof common_common_pb.RegParamsRevisionMap],
|
||||
supportsOtaa: boolean,
|
||||
supportsClassB: boolean,
|
||||
supportsClassC: boolean,
|
||||
}
|
||||
}
|
||||
|
||||
export class CreateDeviceProfileTemplateRequest extends jspb.Message {
|
||||
hasDeviceProfileTemplate(): boolean;
|
||||
clearDeviceProfileTemplate(): void;
|
||||
getDeviceProfileTemplate(): DeviceProfileTemplate | undefined;
|
||||
setDeviceProfileTemplate(value?: DeviceProfileTemplate): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): CreateDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: CreateDeviceProfileTemplateRequest): CreateDeviceProfileTemplateRequest.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: CreateDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): CreateDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: CreateDeviceProfileTemplateRequest, reader: jspb.BinaryReader): CreateDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace CreateDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
deviceProfileTemplate?: DeviceProfileTemplate.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class GetDeviceProfileTemplateRequest extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): GetDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: GetDeviceProfileTemplateRequest): GetDeviceProfileTemplateRequest.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: GetDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): GetDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: GetDeviceProfileTemplateRequest, reader: jspb.BinaryReader): GetDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace GetDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
}
|
||||
}
|
||||
|
||||
export class GetDeviceProfileTemplateResponse extends jspb.Message {
|
||||
hasDeviceProfileTemplate(): boolean;
|
||||
clearDeviceProfileTemplate(): void;
|
||||
getDeviceProfileTemplate(): DeviceProfileTemplate | undefined;
|
||||
setDeviceProfileTemplate(value?: DeviceProfileTemplate): void;
|
||||
|
||||
hasCreatedAt(): boolean;
|
||||
clearCreatedAt(): void;
|
||||
getCreatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setCreatedAt(value?: google_protobuf_timestamp_pb.Timestamp): void;
|
||||
|
||||
hasUpdatedAt(): boolean;
|
||||
clearUpdatedAt(): void;
|
||||
getUpdatedAt(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setUpdatedAt(value?: google_protobuf_timestamp_pb.Timestamp): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): GetDeviceProfileTemplateResponse.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: GetDeviceProfileTemplateResponse): GetDeviceProfileTemplateResponse.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: GetDeviceProfileTemplateResponse, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): GetDeviceProfileTemplateResponse;
|
||||
static deserializeBinaryFromReader(message: GetDeviceProfileTemplateResponse, reader: jspb.BinaryReader): GetDeviceProfileTemplateResponse;
|
||||
}
|
||||
|
||||
export namespace GetDeviceProfileTemplateResponse {
|
||||
export type AsObject = {
|
||||
deviceProfileTemplate?: DeviceProfileTemplate.AsObject,
|
||||
createdAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
updatedAt?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class UpdateDeviceProfileTemplateRequest extends jspb.Message {
|
||||
hasDeviceProfileTemplate(): boolean;
|
||||
clearDeviceProfileTemplate(): void;
|
||||
getDeviceProfileTemplate(): DeviceProfileTemplate | undefined;
|
||||
setDeviceProfileTemplate(value?: DeviceProfileTemplate): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UpdateDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UpdateDeviceProfileTemplateRequest): UpdateDeviceProfileTemplateRequest.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: UpdateDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UpdateDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: UpdateDeviceProfileTemplateRequest, reader: jspb.BinaryReader): UpdateDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace UpdateDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
deviceProfileTemplate?: DeviceProfileTemplate.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class DeleteDeviceProfileTemplateRequest extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DeleteDeviceProfileTemplateRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DeleteDeviceProfileTemplateRequest): DeleteDeviceProfileTemplateRequest.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DeleteDeviceProfileTemplateRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DeleteDeviceProfileTemplateRequest;
|
||||
static deserializeBinaryFromReader(message: DeleteDeviceProfileTemplateRequest, reader: jspb.BinaryReader): DeleteDeviceProfileTemplateRequest;
|
||||
}
|
||||
|
||||
export namespace DeleteDeviceProfileTemplateRequest {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
}
|
||||
}
|
||||
|
||||
export class ListDeviceProfileTemplatesRequest extends jspb.Message {
|
||||
getLimit(): number;
|
||||
setLimit(value: number): void;
|
||||
|
||||
getOffset(): number;
|
||||
setOffset(value: number): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): ListDeviceProfileTemplatesRequest.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: ListDeviceProfileTemplatesRequest): ListDeviceProfileTemplatesRequest.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: ListDeviceProfileTemplatesRequest, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): ListDeviceProfileTemplatesRequest;
|
||||
static deserializeBinaryFromReader(message: ListDeviceProfileTemplatesRequest, reader: jspb.BinaryReader): ListDeviceProfileTemplatesRequest;
|
||||
}
|
||||
|
||||
export namespace ListDeviceProfileTemplatesRequest {
|
||||
export type AsObject = {
|
||||
limit: number,
|
||||
offset: number,
|
||||
}
|
||||
}
|
||||
|
||||
export class ListDeviceProfileTemplatesResponse extends jspb.Message {
|
||||
getTotalCount(): number;
|
||||
setTotalCount(value: number): void;
|
||||
|
||||
clearResultList(): void;
|
||||
getResultList(): Array<DeviceProfileTemplateListItem>;
|
||||
setResultList(value: Array<DeviceProfileTemplateListItem>): void;
|
||||
addResult(value?: DeviceProfileTemplateListItem, index?: number): DeviceProfileTemplateListItem;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): ListDeviceProfileTemplatesResponse.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: ListDeviceProfileTemplatesResponse): ListDeviceProfileTemplatesResponse.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: ListDeviceProfileTemplatesResponse, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): ListDeviceProfileTemplatesResponse;
|
||||
static deserializeBinaryFromReader(message: ListDeviceProfileTemplatesResponse, reader: jspb.BinaryReader): ListDeviceProfileTemplatesResponse;
|
||||
}
|
||||
|
||||
export namespace ListDeviceProfileTemplatesResponse {
|
||||
export type AsObject = {
|
||||
totalCount: number,
|
||||
resultList: Array<DeviceProfileTemplateListItem.AsObject>,
|
||||
}
|
||||
}
|
||||
|
2712
api/js/api/device_profile_template_pb.js
vendored
Normal file
2712
api/js/api/device_profile_template_pb.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
26
api/js/api/frame_log_pb.d.ts
vendored
26
api/js/api/frame_log_pb.d.ts
vendored
@ -14,13 +14,13 @@ export class UplinkFrameLog extends jspb.Message {
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): gw_gw_pb.UplinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTXInfo): void;
|
||||
getTxInfo(): gw_gw_pb.UplinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTxInfo): void;
|
||||
|
||||
clearRxInfoList(): void;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRXInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRXInfo>): void;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRXInfo, index?: number): gw_gw_pb.UplinkRXInfo;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRxInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRxInfo>): void;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRxInfo, index?: number): gw_gw_pb.UplinkRxInfo;
|
||||
|
||||
getMType(): common_common_pb.MTypeMap[keyof common_common_pb.MTypeMap];
|
||||
setMType(value: common_common_pb.MTypeMap[keyof common_common_pb.MTypeMap]): void;
|
||||
@ -49,8 +49,8 @@ export class UplinkFrameLog extends jspb.Message {
|
||||
export namespace UplinkFrameLog {
|
||||
export type AsObject = {
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: gw_gw_pb.UplinkTXInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRXInfo.AsObject>,
|
||||
txInfo?: gw_gw_pb.UplinkTxInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRxInfo.AsObject>,
|
||||
mType: common_common_pb.MTypeMap[keyof common_common_pb.MTypeMap],
|
||||
devAddr: string,
|
||||
devEui: string,
|
||||
@ -71,11 +71,11 @@ export class DownlinkFrameLog extends jspb.Message {
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTXInfo): void;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTxInfo): void;
|
||||
|
||||
getDownlinkId(): string;
|
||||
setDownlinkId(value: string): void;
|
||||
getDownlinkId(): number;
|
||||
setDownlinkId(value: number): void;
|
||||
|
||||
getGatewayId(): string;
|
||||
setGatewayId(value: string): void;
|
||||
@ -103,8 +103,8 @@ export namespace DownlinkFrameLog {
|
||||
export type AsObject = {
|
||||
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: gw_gw_pb.DownlinkTXInfo.AsObject,
|
||||
downlinkId: string,
|
||||
txInfo?: gw_gw_pb.DownlinkTxInfo.AsObject,
|
||||
downlinkId: number,
|
||||
gatewayId: string,
|
||||
mType: common_common_pb.MTypeMap[keyof common_common_pb.MTypeMap],
|
||||
devAddr: string,
|
||||
|
68
api/js/api/frame_log_pb.js
vendored
68
api/js/api/frame_log_pb.js
vendored
@ -68,9 +68,9 @@ proto.api.UplinkFrameLog.prototype.toObject = function(opt_includeInstance) {
|
||||
proto.api.UplinkFrameLog.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
phyPayload: msg.getPhyPayload_asB64(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTXInfo.toObject(includeInstance, f),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTxInfo.toObject(includeInstance, f),
|
||||
rxInfoList: jspb.Message.toObjectList(msg.getRxInfoList(),
|
||||
gw_gw_pb.UplinkRXInfo.toObject, includeInstance),
|
||||
gw_gw_pb.UplinkRxInfo.toObject, includeInstance),
|
||||
mType: msg.getMType(),
|
||||
devAddr: msg.getDevAddr(),
|
||||
devEui: msg.getDevEui(),
|
||||
@ -116,13 +116,13 @@ proto.api.UplinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
|
||||
msg.setPhyPayload(value);
|
||||
break;
|
||||
case 2:
|
||||
var value = new gw_gw_pb.UplinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = new gw_gw_pb.UplinkRXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkRxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRxInfo.deserializeBinaryFromReader);
|
||||
msg.getRxInfoList().push(value);
|
||||
msg.setRxInfoList(msg.getRxInfoList());
|
||||
break;
|
||||
@ -193,7 +193,7 @@ proto.api.UplinkFrameLog.prototype.serializeBinaryToWriter = function (writer) {
|
||||
writer.writeMessage(
|
||||
2,
|
||||
f,
|
||||
gw_gw_pb.UplinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getRxInfoList();
|
||||
@ -201,7 +201,7 @@ proto.api.UplinkFrameLog.prototype.serializeBinaryToWriter = function (writer) {
|
||||
writer.writeRepeatedMessage(
|
||||
3,
|
||||
f,
|
||||
gw_gw_pb.UplinkRXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkRxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getMType();
|
||||
@ -285,16 +285,16 @@ proto.api.UplinkFrameLog.prototype.setPhyPayload = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.UplinkTXInfo tx_info = 2;
|
||||
* @return {proto.gw.UplinkTXInfo}
|
||||
* optional gw.UplinkTxInfo tx_info = 2;
|
||||
* @return {proto.gw.UplinkTxInfo}
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.getTxInfo = function() {
|
||||
return /** @type{proto.gw.UplinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTXInfo, 2));
|
||||
return /** @type{proto.gw.UplinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTxInfo, 2));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.gw.UplinkTXInfo|undefined} value */
|
||||
/** @param {proto.gw.UplinkTxInfo|undefined} value */
|
||||
proto.api.UplinkFrameLog.prototype.setTxInfo = function(value) {
|
||||
jspb.Message.setWrapperField(this, 2, value);
|
||||
};
|
||||
@ -315,18 +315,18 @@ proto.api.UplinkFrameLog.prototype.hasTxInfo = function() {
|
||||
|
||||
|
||||
/**
|
||||
* repeated gw.UplinkRXInfo rx_info = 3;
|
||||
* repeated gw.UplinkRxInfo rx_info = 3;
|
||||
* If you change this array by adding, removing or replacing elements, or if you
|
||||
* replace the array itself, then you must call the setter to update it.
|
||||
* @return {!Array.<!proto.gw.UplinkRXInfo>}
|
||||
* @return {!Array.<!proto.gw.UplinkRxInfo>}
|
||||
*/
|
||||
proto.api.UplinkFrameLog.prototype.getRxInfoList = function() {
|
||||
return /** @type{!Array.<!proto.gw.UplinkRXInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRXInfo, 3));
|
||||
return /** @type{!Array.<!proto.gw.UplinkRxInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRxInfo, 3));
|
||||
};
|
||||
|
||||
|
||||
/** @param {Array.<!proto.gw.UplinkRXInfo>} value */
|
||||
/** @param {Array.<!proto.gw.UplinkRxInfo>} value */
|
||||
proto.api.UplinkFrameLog.prototype.setRxInfoList = function(value) {
|
||||
jspb.Message.setRepeatedWrapperField(this, 3, value);
|
||||
};
|
||||
@ -460,7 +460,7 @@ proto.api.DownlinkFrameLog.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
time: (f = msg.getTime()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
|
||||
phyPayload: msg.getPhyPayload_asB64(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTXInfo.toObject(includeInstance, f),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTxInfo.toObject(includeInstance, f),
|
||||
downlinkId: msg.getDownlinkId(),
|
||||
gatewayId: msg.getGatewayId(),
|
||||
mType: msg.getMType(),
|
||||
@ -512,12 +512,12 @@ proto.api.DownlinkFrameLog.deserializeBinaryFromReader = function(msg, reader) {
|
||||
msg.setPhyPayload(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = new gw_gw_pb.DownlinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.DownlinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
case 4:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
var value = /** @type {number} */ (reader.readUint32());
|
||||
msg.setDownlinkId(value);
|
||||
break;
|
||||
case 5:
|
||||
@ -594,12 +594,12 @@ proto.api.DownlinkFrameLog.prototype.serializeBinaryToWriter = function (writer)
|
||||
writer.writeMessage(
|
||||
3,
|
||||
f,
|
||||
gw_gw_pb.DownlinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.DownlinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getDownlinkId();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
if (f !== 0) {
|
||||
writer.writeUint32(
|
||||
4,
|
||||
f
|
||||
);
|
||||
@ -714,16 +714,16 @@ proto.api.DownlinkFrameLog.prototype.setPhyPayload = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.DownlinkTXInfo tx_info = 3;
|
||||
* @return {proto.gw.DownlinkTXInfo}
|
||||
* optional gw.DownlinkTxInfo tx_info = 3;
|
||||
* @return {proto.gw.DownlinkTxInfo}
|
||||
*/
|
||||
proto.api.DownlinkFrameLog.prototype.getTxInfo = function() {
|
||||
return /** @type{proto.gw.DownlinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTXInfo, 3));
|
||||
return /** @type{proto.gw.DownlinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTxInfo, 3));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.gw.DownlinkTXInfo|undefined} value */
|
||||
/** @param {proto.gw.DownlinkTxInfo|undefined} value */
|
||||
proto.api.DownlinkFrameLog.prototype.setTxInfo = function(value) {
|
||||
jspb.Message.setWrapperField(this, 3, value);
|
||||
};
|
||||
@ -744,15 +744,15 @@ proto.api.DownlinkFrameLog.prototype.hasTxInfo = function() {
|
||||
|
||||
|
||||
/**
|
||||
* optional string downlink_id = 4;
|
||||
* @return {string}
|
||||
* optional uint32 downlink_id = 4;
|
||||
* @return {number}
|
||||
*/
|
||||
proto.api.DownlinkFrameLog.prototype.getDownlinkId = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 4, ""));
|
||||
return /** @type {number} */ (jspb.Message.getFieldProto3(this, 4, 0));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
/** @param {number} value */
|
||||
proto.api.DownlinkFrameLog.prototype.setDownlinkId = function(value) {
|
||||
jspb.Message.setField(this, 4, value);
|
||||
};
|
||||
|
515
api/js/gw/gw_pb.d.ts
vendored
515
api/js/gw/gw_pb.d.ts
vendored
@ -5,22 +5,23 @@ import * as jspb from "google-protobuf";
|
||||
import * as common_common_pb from "../common/common_pb";
|
||||
import * as google_protobuf_timestamp_pb from "google-protobuf/google/protobuf/timestamp_pb";
|
||||
import * as google_protobuf_duration_pb from "google-protobuf/google/protobuf/duration_pb";
|
||||
import * as google_protobuf_struct_pb from "google-protobuf/google/protobuf/struct_pb";
|
||||
|
||||
export class Modulation extends jspb.Message {
|
||||
hasLora(): boolean;
|
||||
clearLora(): void;
|
||||
getLora(): LoRaModulationInfo | undefined;
|
||||
setLora(value?: LoRaModulationInfo): void;
|
||||
getLora(): LoraModulationInfo | undefined;
|
||||
setLora(value?: LoraModulationInfo): void;
|
||||
|
||||
hasFsk(): boolean;
|
||||
clearFsk(): void;
|
||||
getFsk(): FSKModulationInfo | undefined;
|
||||
setFsk(value?: FSKModulationInfo): void;
|
||||
getFsk(): FskModulationInfo | undefined;
|
||||
setFsk(value?: FskModulationInfo): void;
|
||||
|
||||
hasLrFhss(): boolean;
|
||||
clearLrFhss(): void;
|
||||
getLrFhss(): LRFHSSModulationInfo | undefined;
|
||||
setLrFhss(value?: LRFHSSModulationInfo): void;
|
||||
getLrFhss(): LrFhssModulationInfo | undefined;
|
||||
setLrFhss(value?: LrFhssModulationInfo): void;
|
||||
|
||||
getParametersCase(): Modulation.ParametersCase;
|
||||
serializeBinary(): Uint8Array;
|
||||
@ -35,9 +36,9 @@ export class Modulation extends jspb.Message {
|
||||
|
||||
export namespace Modulation {
|
||||
export type AsObject = {
|
||||
lora?: LoRaModulationInfo.AsObject,
|
||||
fsk?: FSKModulationInfo.AsObject,
|
||||
lrFhss?: LRFHSSModulationInfo.AsObject,
|
||||
lora?: LoraModulationInfo.AsObject,
|
||||
fsk?: FskModulationInfo.AsObject,
|
||||
lrFhss?: LrFhssModulationInfo.AsObject,
|
||||
}
|
||||
|
||||
export enum ParametersCase {
|
||||
@ -48,7 +49,7 @@ export namespace Modulation {
|
||||
}
|
||||
}
|
||||
|
||||
export class UplinkTXInfo extends jspb.Message {
|
||||
export class UplinkTxInfoLegacy extends jspb.Message {
|
||||
getFrequency(): number;
|
||||
setFrequency(value: number): void;
|
||||
|
||||
@ -57,37 +58,37 @@ export class UplinkTXInfo extends jspb.Message {
|
||||
|
||||
hasLoraModulationInfo(): boolean;
|
||||
clearLoraModulationInfo(): void;
|
||||
getLoraModulationInfo(): LoRaModulationInfo | undefined;
|
||||
setLoraModulationInfo(value?: LoRaModulationInfo): void;
|
||||
getLoraModulationInfo(): LoraModulationInfo | undefined;
|
||||
setLoraModulationInfo(value?: LoraModulationInfo): void;
|
||||
|
||||
hasFskModulationInfo(): boolean;
|
||||
clearFskModulationInfo(): void;
|
||||
getFskModulationInfo(): FSKModulationInfo | undefined;
|
||||
setFskModulationInfo(value?: FSKModulationInfo): void;
|
||||
getFskModulationInfo(): FskModulationInfo | undefined;
|
||||
setFskModulationInfo(value?: FskModulationInfo): void;
|
||||
|
||||
hasLrFhssModulationInfo(): boolean;
|
||||
clearLrFhssModulationInfo(): void;
|
||||
getLrFhssModulationInfo(): LRFHSSModulationInfo | undefined;
|
||||
setLrFhssModulationInfo(value?: LRFHSSModulationInfo): void;
|
||||
getLrFhssModulationInfo(): LrFhssModulationInfo | undefined;
|
||||
setLrFhssModulationInfo(value?: LrFhssModulationInfo): void;
|
||||
|
||||
getModulationInfoCase(): UplinkTXInfo.ModulationInfoCase;
|
||||
getModulationInfoCase(): UplinkTxInfoLegacy.ModulationInfoCase;
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkTXInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UplinkTXInfo): UplinkTXInfo.AsObject;
|
||||
toObject(includeInstance?: boolean): UplinkTxInfoLegacy.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UplinkTxInfoLegacy): UplinkTxInfoLegacy.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: UplinkTXInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UplinkTXInfo;
|
||||
static deserializeBinaryFromReader(message: UplinkTXInfo, reader: jspb.BinaryReader): UplinkTXInfo;
|
||||
static serializeBinaryToWriter(message: UplinkTxInfoLegacy, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UplinkTxInfoLegacy;
|
||||
static deserializeBinaryFromReader(message: UplinkTxInfoLegacy, reader: jspb.BinaryReader): UplinkTxInfoLegacy;
|
||||
}
|
||||
|
||||
export namespace UplinkTXInfo {
|
||||
export namespace UplinkTxInfoLegacy {
|
||||
export type AsObject = {
|
||||
frequency: number,
|
||||
modulation: common_common_pb.ModulationMap[keyof common_common_pb.ModulationMap],
|
||||
loraModulationInfo?: LoRaModulationInfo.AsObject,
|
||||
fskModulationInfo?: FSKModulationInfo.AsObject,
|
||||
lrFhssModulationInfo?: LRFHSSModulationInfo.AsObject,
|
||||
loraModulationInfo?: LoraModulationInfo.AsObject,
|
||||
fskModulationInfo?: FskModulationInfo.AsObject,
|
||||
lrFhssModulationInfo?: LrFhssModulationInfo.AsObject,
|
||||
}
|
||||
|
||||
export enum ModulationInfoCase {
|
||||
@ -98,39 +99,69 @@ export namespace UplinkTXInfo {
|
||||
}
|
||||
}
|
||||
|
||||
export class LoRaModulationInfo extends jspb.Message {
|
||||
export class UplinkTxInfo extends jspb.Message {
|
||||
getFrequency(): number;
|
||||
setFrequency(value: number): void;
|
||||
|
||||
hasModulation(): boolean;
|
||||
clearModulation(): void;
|
||||
getModulation(): Modulation | undefined;
|
||||
setModulation(value?: Modulation): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkTxInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UplinkTxInfo): UplinkTxInfo.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: UplinkTxInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UplinkTxInfo;
|
||||
static deserializeBinaryFromReader(message: UplinkTxInfo, reader: jspb.BinaryReader): UplinkTxInfo;
|
||||
}
|
||||
|
||||
export namespace UplinkTxInfo {
|
||||
export type AsObject = {
|
||||
frequency: number,
|
||||
modulation?: Modulation.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class LoraModulationInfo extends jspb.Message {
|
||||
getBandwidth(): number;
|
||||
setBandwidth(value: number): void;
|
||||
|
||||
getSpreadingFactor(): number;
|
||||
setSpreadingFactor(value: number): void;
|
||||
|
||||
getCodeRate(): string;
|
||||
setCodeRate(value: string): void;
|
||||
getCodeRateLegacy(): string;
|
||||
setCodeRateLegacy(value: string): void;
|
||||
|
||||
getCodeRate(): CodeRateMap[keyof CodeRateMap];
|
||||
setCodeRate(value: CodeRateMap[keyof CodeRateMap]): void;
|
||||
|
||||
getPolarizationInversion(): boolean;
|
||||
setPolarizationInversion(value: boolean): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): LoRaModulationInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: LoRaModulationInfo): LoRaModulationInfo.AsObject;
|
||||
toObject(includeInstance?: boolean): LoraModulationInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: LoraModulationInfo): LoraModulationInfo.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: LoRaModulationInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): LoRaModulationInfo;
|
||||
static deserializeBinaryFromReader(message: LoRaModulationInfo, reader: jspb.BinaryReader): LoRaModulationInfo;
|
||||
static serializeBinaryToWriter(message: LoraModulationInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): LoraModulationInfo;
|
||||
static deserializeBinaryFromReader(message: LoraModulationInfo, reader: jspb.BinaryReader): LoraModulationInfo;
|
||||
}
|
||||
|
||||
export namespace LoRaModulationInfo {
|
||||
export namespace LoraModulationInfo {
|
||||
export type AsObject = {
|
||||
bandwidth: number,
|
||||
spreadingFactor: number,
|
||||
codeRate: string,
|
||||
codeRateLegacy: string,
|
||||
codeRate: CodeRateMap[keyof CodeRateMap],
|
||||
polarizationInversion: boolean,
|
||||
}
|
||||
}
|
||||
|
||||
export class FSKModulationInfo extends jspb.Message {
|
||||
export class FskModulationInfo extends jspb.Message {
|
||||
getFrequencyDeviation(): number;
|
||||
setFrequencyDeviation(value: number): void;
|
||||
|
||||
@ -138,23 +169,23 @@ export class FSKModulationInfo extends jspb.Message {
|
||||
setDatarate(value: number): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): FSKModulationInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: FSKModulationInfo): FSKModulationInfo.AsObject;
|
||||
toObject(includeInstance?: boolean): FskModulationInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: FskModulationInfo): FskModulationInfo.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: FSKModulationInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): FSKModulationInfo;
|
||||
static deserializeBinaryFromReader(message: FSKModulationInfo, reader: jspb.BinaryReader): FSKModulationInfo;
|
||||
static serializeBinaryToWriter(message: FskModulationInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): FskModulationInfo;
|
||||
static deserializeBinaryFromReader(message: FskModulationInfo, reader: jspb.BinaryReader): FskModulationInfo;
|
||||
}
|
||||
|
||||
export namespace FSKModulationInfo {
|
||||
export namespace FskModulationInfo {
|
||||
export type AsObject = {
|
||||
frequencyDeviation: number,
|
||||
datarate: number,
|
||||
}
|
||||
}
|
||||
|
||||
export class LRFHSSModulationInfo extends jspb.Message {
|
||||
export class LrFhssModulationInfo extends jspb.Message {
|
||||
getOperatingChannelWidth(): number;
|
||||
setOperatingChannelWidth(value: number): void;
|
||||
|
||||
@ -165,16 +196,16 @@ export class LRFHSSModulationInfo extends jspb.Message {
|
||||
setGridSteps(value: number): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): LRFHSSModulationInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: LRFHSSModulationInfo): LRFHSSModulationInfo.AsObject;
|
||||
toObject(includeInstance?: boolean): LrFhssModulationInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: LrFhssModulationInfo): LrFhssModulationInfo.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: LRFHSSModulationInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): LRFHSSModulationInfo;
|
||||
static deserializeBinaryFromReader(message: LRFHSSModulationInfo, reader: jspb.BinaryReader): LRFHSSModulationInfo;
|
||||
static serializeBinaryToWriter(message: LrFhssModulationInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): LrFhssModulationInfo;
|
||||
static deserializeBinaryFromReader(message: LrFhssModulationInfo, reader: jspb.BinaryReader): LrFhssModulationInfo;
|
||||
}
|
||||
|
||||
export namespace LRFHSSModulationInfo {
|
||||
export namespace LrFhssModulationInfo {
|
||||
export type AsObject = {
|
||||
operatingChannelWidth: number,
|
||||
codeRate: string,
|
||||
@ -350,7 +381,7 @@ export namespace PerModulationCount {
|
||||
}
|
||||
}
|
||||
|
||||
export class UplinkRXInfo extends jspb.Message {
|
||||
export class UplinkRxInfoLegacy extends jspb.Message {
|
||||
getGatewayId(): Uint8Array | string;
|
||||
getGatewayId_asU8(): Uint8Array;
|
||||
getGatewayId_asB64(): string;
|
||||
@ -417,18 +448,18 @@ export class UplinkRXInfo extends jspb.Message {
|
||||
|
||||
getMetadataMap(): jspb.Map<string, string>;
|
||||
clearMetadataMap(): void;
|
||||
getFineTimestampCase(): UplinkRXInfo.FineTimestampCase;
|
||||
getFineTimestampCase(): UplinkRxInfoLegacy.FineTimestampCase;
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkRXInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UplinkRXInfo): UplinkRXInfo.AsObject;
|
||||
toObject(includeInstance?: boolean): UplinkRxInfoLegacy.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UplinkRxInfoLegacy): UplinkRxInfoLegacy.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: UplinkRXInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UplinkRXInfo;
|
||||
static deserializeBinaryFromReader(message: UplinkRXInfo, reader: jspb.BinaryReader): UplinkRXInfo;
|
||||
static serializeBinaryToWriter(message: UplinkRxInfoLegacy, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UplinkRxInfoLegacy;
|
||||
static deserializeBinaryFromReader(message: UplinkRxInfoLegacy, reader: jspb.BinaryReader): UplinkRxInfoLegacy;
|
||||
}
|
||||
|
||||
export namespace UplinkRXInfo {
|
||||
export namespace UplinkRxInfoLegacy {
|
||||
export type AsObject = {
|
||||
gatewayId: Uint8Array | string,
|
||||
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
@ -456,7 +487,83 @@ export namespace UplinkRXInfo {
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkTXInfo extends jspb.Message {
|
||||
export class UplinkRxInfo extends jspb.Message {
|
||||
getGatewayId(): string;
|
||||
setGatewayId(value: string): void;
|
||||
|
||||
getUplinkId(): number;
|
||||
setUplinkId(value: number): void;
|
||||
|
||||
hasTime(): boolean;
|
||||
clearTime(): void;
|
||||
getTime(): google_protobuf_timestamp_pb.Timestamp | undefined;
|
||||
setTime(value?: google_protobuf_timestamp_pb.Timestamp): void;
|
||||
|
||||
hasTimeSinceGpsEpoch(): boolean;
|
||||
clearTimeSinceGpsEpoch(): void;
|
||||
getTimeSinceGpsEpoch(): google_protobuf_duration_pb.Duration | undefined;
|
||||
setTimeSinceGpsEpoch(value?: google_protobuf_duration_pb.Duration): void;
|
||||
|
||||
hasFineTimeSinceGpsEpoch(): boolean;
|
||||
clearFineTimeSinceGpsEpoch(): void;
|
||||
getFineTimeSinceGpsEpoch(): google_protobuf_duration_pb.Duration | undefined;
|
||||
setFineTimeSinceGpsEpoch(value?: google_protobuf_duration_pb.Duration): void;
|
||||
|
||||
getRssi(): number;
|
||||
setRssi(value: number): void;
|
||||
|
||||
getSnr(): number;
|
||||
setSnr(value: number): void;
|
||||
|
||||
getBoard(): number;
|
||||
setBoard(value: number): void;
|
||||
|
||||
getAntenna(): number;
|
||||
setAntenna(value: number): void;
|
||||
|
||||
hasLocation(): boolean;
|
||||
clearLocation(): void;
|
||||
getLocation(): common_common_pb.Location | undefined;
|
||||
setLocation(value?: common_common_pb.Location): void;
|
||||
|
||||
getContext(): Uint8Array | string;
|
||||
getContext_asU8(): Uint8Array;
|
||||
getContext_asB64(): string;
|
||||
setContext(value: Uint8Array | string): void;
|
||||
|
||||
hasMetadata(): boolean;
|
||||
clearMetadata(): void;
|
||||
getMetadata(): google_protobuf_struct_pb.Struct | undefined;
|
||||
setMetadata(value?: google_protobuf_struct_pb.Struct): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkRxInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: UplinkRxInfo): UplinkRxInfo.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: UplinkRxInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): UplinkRxInfo;
|
||||
static deserializeBinaryFromReader(message: UplinkRxInfo, reader: jspb.BinaryReader): UplinkRxInfo;
|
||||
}
|
||||
|
||||
export namespace UplinkRxInfo {
|
||||
export type AsObject = {
|
||||
gatewayId: string,
|
||||
uplinkId: number,
|
||||
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
timeSinceGpsEpoch?: google_protobuf_duration_pb.Duration.AsObject,
|
||||
fineTimeSinceGpsEpoch?: google_protobuf_duration_pb.Duration.AsObject,
|
||||
rssi: number,
|
||||
snr: number,
|
||||
board: number,
|
||||
antenna: number,
|
||||
location?: common_common_pb.Location.AsObject,
|
||||
context: Uint8Array | string,
|
||||
metadata?: google_protobuf_struct_pb.Struct.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkTxInfoLegacy extends jspb.Message {
|
||||
getGatewayId(): Uint8Array | string;
|
||||
getGatewayId_asU8(): Uint8Array;
|
||||
getGatewayId_asB64(): string;
|
||||
@ -473,13 +580,13 @@ export class DownlinkTXInfo extends jspb.Message {
|
||||
|
||||
hasLoraModulationInfo(): boolean;
|
||||
clearLoraModulationInfo(): void;
|
||||
getLoraModulationInfo(): LoRaModulationInfo | undefined;
|
||||
setLoraModulationInfo(value?: LoRaModulationInfo): void;
|
||||
getLoraModulationInfo(): LoraModulationInfo | undefined;
|
||||
setLoraModulationInfo(value?: LoraModulationInfo): void;
|
||||
|
||||
hasFskModulationInfo(): boolean;
|
||||
clearFskModulationInfo(): void;
|
||||
getFskModulationInfo(): FSKModulationInfo | undefined;
|
||||
setFskModulationInfo(value?: FSKModulationInfo): void;
|
||||
getFskModulationInfo(): FskModulationInfo | undefined;
|
||||
setFskModulationInfo(value?: FskModulationInfo): void;
|
||||
|
||||
getBoard(): number;
|
||||
setBoard(value: number): void;
|
||||
@ -510,26 +617,26 @@ export class DownlinkTXInfo extends jspb.Message {
|
||||
getContext_asB64(): string;
|
||||
setContext(value: Uint8Array | string): void;
|
||||
|
||||
getModulationInfoCase(): DownlinkTXInfo.ModulationInfoCase;
|
||||
getTimingInfoCase(): DownlinkTXInfo.TimingInfoCase;
|
||||
getModulationInfoCase(): DownlinkTxInfoLegacy.ModulationInfoCase;
|
||||
getTimingInfoCase(): DownlinkTxInfoLegacy.TimingInfoCase;
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkTXInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTXInfo): DownlinkTXInfo.AsObject;
|
||||
toObject(includeInstance?: boolean): DownlinkTxInfoLegacy.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTxInfoLegacy): DownlinkTxInfoLegacy.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DownlinkTXInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTXInfo;
|
||||
static deserializeBinaryFromReader(message: DownlinkTXInfo, reader: jspb.BinaryReader): DownlinkTXInfo;
|
||||
static serializeBinaryToWriter(message: DownlinkTxInfoLegacy, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTxInfoLegacy;
|
||||
static deserializeBinaryFromReader(message: DownlinkTxInfoLegacy, reader: jspb.BinaryReader): DownlinkTxInfoLegacy;
|
||||
}
|
||||
|
||||
export namespace DownlinkTXInfo {
|
||||
export namespace DownlinkTxInfoLegacy {
|
||||
export type AsObject = {
|
||||
gatewayId: Uint8Array | string,
|
||||
frequency: number,
|
||||
power: number,
|
||||
modulation: common_common_pb.ModulationMap[keyof common_common_pb.ModulationMap],
|
||||
loraModulationInfo?: LoRaModulationInfo.AsObject,
|
||||
fskModulationInfo?: FSKModulationInfo.AsObject,
|
||||
loraModulationInfo?: LoraModulationInfo.AsObject,
|
||||
fskModulationInfo?: FskModulationInfo.AsObject,
|
||||
board: number,
|
||||
antenna: number,
|
||||
timing: DownlinkTimingMap[keyof DownlinkTimingMap],
|
||||
@ -553,6 +660,98 @@ export namespace DownlinkTXInfo {
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkTxInfo extends jspb.Message {
|
||||
getFrequency(): number;
|
||||
setFrequency(value: number): void;
|
||||
|
||||
getPower(): number;
|
||||
setPower(value: number): void;
|
||||
|
||||
hasModulation(): boolean;
|
||||
clearModulation(): void;
|
||||
getModulation(): Modulation | undefined;
|
||||
setModulation(value?: Modulation): void;
|
||||
|
||||
getBoard(): number;
|
||||
setBoard(value: number): void;
|
||||
|
||||
getAntenna(): number;
|
||||
setAntenna(value: number): void;
|
||||
|
||||
hasTiming(): boolean;
|
||||
clearTiming(): void;
|
||||
getTiming(): Timing | undefined;
|
||||
setTiming(value?: Timing): void;
|
||||
|
||||
getContext(): Uint8Array | string;
|
||||
getContext_asU8(): Uint8Array;
|
||||
getContext_asB64(): string;
|
||||
setContext(value: Uint8Array | string): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkTxInfo.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTxInfo): DownlinkTxInfo.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DownlinkTxInfo, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTxInfo;
|
||||
static deserializeBinaryFromReader(message: DownlinkTxInfo, reader: jspb.BinaryReader): DownlinkTxInfo;
|
||||
}
|
||||
|
||||
export namespace DownlinkTxInfo {
|
||||
export type AsObject = {
|
||||
frequency: number,
|
||||
power: number,
|
||||
modulation?: Modulation.AsObject,
|
||||
board: number,
|
||||
antenna: number,
|
||||
timing?: Timing.AsObject,
|
||||
context: Uint8Array | string,
|
||||
}
|
||||
}
|
||||
|
||||
export class Timing extends jspb.Message {
|
||||
hasImmediately(): boolean;
|
||||
clearImmediately(): void;
|
||||
getImmediately(): ImmediatelyTimingInfo | undefined;
|
||||
setImmediately(value?: ImmediatelyTimingInfo): void;
|
||||
|
||||
hasDelay(): boolean;
|
||||
clearDelay(): void;
|
||||
getDelay(): DelayTimingInfo | undefined;
|
||||
setDelay(value?: DelayTimingInfo): void;
|
||||
|
||||
hasGpsEpoch(): boolean;
|
||||
clearGpsEpoch(): void;
|
||||
getGpsEpoch(): GPSEpochTimingInfo | undefined;
|
||||
setGpsEpoch(value?: GPSEpochTimingInfo): void;
|
||||
|
||||
getParametersCase(): Timing.ParametersCase;
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): Timing.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: Timing): Timing.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: Timing, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): Timing;
|
||||
static deserializeBinaryFromReader(message: Timing, reader: jspb.BinaryReader): Timing;
|
||||
}
|
||||
|
||||
export namespace Timing {
|
||||
export type AsObject = {
|
||||
immediately?: ImmediatelyTimingInfo.AsObject,
|
||||
delay?: DelayTimingInfo.AsObject,
|
||||
gpsEpoch?: GPSEpochTimingInfo.AsObject,
|
||||
}
|
||||
|
||||
export enum ParametersCase {
|
||||
PARAMETERS_NOT_SET = 0,
|
||||
IMMEDIATELY = 1,
|
||||
DELAY = 2,
|
||||
GPS_EPOCH = 3,
|
||||
}
|
||||
}
|
||||
|
||||
export class ImmediatelyTimingInfo extends jspb.Message {
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): ImmediatelyTimingInfo.AsObject;
|
||||
@ -619,15 +818,25 @@ export class UplinkFrame extends jspb.Message {
|
||||
getPhyPayload_asB64(): string;
|
||||
setPhyPayload(value: Uint8Array | string): void;
|
||||
|
||||
hasTxInfoLegacy(): boolean;
|
||||
clearTxInfoLegacy(): void;
|
||||
getTxInfoLegacy(): UplinkTxInfoLegacy | undefined;
|
||||
setTxInfoLegacy(value?: UplinkTxInfoLegacy): void;
|
||||
|
||||
hasRxInfoLegacy(): boolean;
|
||||
clearRxInfoLegacy(): void;
|
||||
getRxInfoLegacy(): UplinkRxInfoLegacy | undefined;
|
||||
setRxInfoLegacy(value?: UplinkRxInfoLegacy): void;
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): UplinkTXInfo | undefined;
|
||||
setTxInfo(value?: UplinkTXInfo): void;
|
||||
getTxInfo(): UplinkTxInfo | undefined;
|
||||
setTxInfo(value?: UplinkTxInfo): void;
|
||||
|
||||
hasRxInfo(): boolean;
|
||||
clearRxInfo(): void;
|
||||
getRxInfo(): UplinkRXInfo | undefined;
|
||||
setRxInfo(value?: UplinkRXInfo): void;
|
||||
getRxInfo(): UplinkRxInfo | undefined;
|
||||
setRxInfo(value?: UplinkRxInfo): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkFrame.AsObject;
|
||||
@ -642,8 +851,10 @@ export class UplinkFrame extends jspb.Message {
|
||||
export namespace UplinkFrame {
|
||||
export type AsObject = {
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: UplinkTXInfo.AsObject,
|
||||
rxInfo?: UplinkRXInfo.AsObject,
|
||||
txInfoLegacy?: UplinkTxInfoLegacy.AsObject,
|
||||
rxInfoLegacy?: UplinkRxInfoLegacy.AsObject,
|
||||
txInfo?: UplinkTxInfo.AsObject,
|
||||
rxInfo?: UplinkRxInfo.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
@ -655,13 +866,13 @@ export class UplinkFrameSet extends jspb.Message {
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): UplinkTXInfo | undefined;
|
||||
setTxInfo(value?: UplinkTXInfo): void;
|
||||
getTxInfo(): UplinkTxInfo | undefined;
|
||||
setTxInfo(value?: UplinkTxInfo): void;
|
||||
|
||||
clearRxInfoList(): void;
|
||||
getRxInfoList(): Array<UplinkRXInfo>;
|
||||
setRxInfoList(value: Array<UplinkRXInfo>): void;
|
||||
addRxInfo(value?: UplinkRXInfo, index?: number): UplinkRXInfo;
|
||||
getRxInfoList(): Array<UplinkRxInfo>;
|
||||
setRxInfoList(value: Array<UplinkRxInfo>): void;
|
||||
addRxInfo(value?: UplinkRxInfo, index?: number): UplinkRxInfo;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkFrameSet.AsObject;
|
||||
@ -676,39 +887,32 @@ export class UplinkFrameSet extends jspb.Message {
|
||||
export namespace UplinkFrameSet {
|
||||
export type AsObject = {
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: UplinkTXInfo.AsObject,
|
||||
rxInfoList: Array<UplinkRXInfo.AsObject>,
|
||||
txInfo?: UplinkTxInfo.AsObject,
|
||||
rxInfoList: Array<UplinkRxInfo.AsObject>,
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkFrame extends jspb.Message {
|
||||
getPhyPayload(): Uint8Array | string;
|
||||
getPhyPayload_asU8(): Uint8Array;
|
||||
getPhyPayload_asB64(): string;
|
||||
setPhyPayload(value: Uint8Array | string): void;
|
||||
getDownlinkId(): number;
|
||||
setDownlinkId(value: number): void;
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): DownlinkTXInfo | undefined;
|
||||
setTxInfo(value?: DownlinkTXInfo): void;
|
||||
|
||||
getToken(): number;
|
||||
setToken(value: number): void;
|
||||
|
||||
getDownlinkId(): Uint8Array | string;
|
||||
getDownlinkId_asU8(): Uint8Array;
|
||||
getDownlinkId_asB64(): string;
|
||||
setDownlinkId(value: Uint8Array | string): void;
|
||||
getDownlinkIdLegacy(): Uint8Array | string;
|
||||
getDownlinkIdLegacy_asU8(): Uint8Array;
|
||||
getDownlinkIdLegacy_asB64(): string;
|
||||
setDownlinkIdLegacy(value: Uint8Array | string): void;
|
||||
|
||||
clearItemsList(): void;
|
||||
getItemsList(): Array<DownlinkFrameItem>;
|
||||
setItemsList(value: Array<DownlinkFrameItem>): void;
|
||||
addItems(value?: DownlinkFrameItem, index?: number): DownlinkFrameItem;
|
||||
|
||||
getGatewayId(): Uint8Array | string;
|
||||
getGatewayId_asU8(): Uint8Array;
|
||||
getGatewayId_asB64(): string;
|
||||
setGatewayId(value: Uint8Array | string): void;
|
||||
getGatewayIdLegacy(): Uint8Array | string;
|
||||
getGatewayIdLegacy_asU8(): Uint8Array;
|
||||
getGatewayIdLegacy_asB64(): string;
|
||||
setGatewayIdLegacy(value: Uint8Array | string): void;
|
||||
|
||||
getGatewayId(): string;
|
||||
setGatewayId(value: string): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkFrame.AsObject;
|
||||
@ -722,12 +926,11 @@ export class DownlinkFrame extends jspb.Message {
|
||||
|
||||
export namespace DownlinkFrame {
|
||||
export type AsObject = {
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: DownlinkTXInfo.AsObject,
|
||||
token: number,
|
||||
downlinkId: Uint8Array | string,
|
||||
downlinkId: number,
|
||||
downlinkIdLegacy: Uint8Array | string,
|
||||
itemsList: Array<DownlinkFrameItem.AsObject>,
|
||||
gatewayId: Uint8Array | string,
|
||||
gatewayIdLegacy: Uint8Array | string,
|
||||
gatewayId: string,
|
||||
}
|
||||
}
|
||||
|
||||
@ -737,10 +940,15 @@ export class DownlinkFrameItem extends jspb.Message {
|
||||
getPhyPayload_asB64(): string;
|
||||
setPhyPayload(value: Uint8Array | string): void;
|
||||
|
||||
hasTxInfoLegacy(): boolean;
|
||||
clearTxInfoLegacy(): void;
|
||||
getTxInfoLegacy(): DownlinkTxInfoLegacy | undefined;
|
||||
setTxInfoLegacy(value?: DownlinkTxInfoLegacy): void;
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): DownlinkTXInfo | undefined;
|
||||
setTxInfo(value?: DownlinkTXInfo): void;
|
||||
getTxInfo(): DownlinkTxInfo | undefined;
|
||||
setTxInfo(value?: DownlinkTxInfo): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkFrameItem.AsObject;
|
||||
@ -755,67 +963,68 @@ export class DownlinkFrameItem extends jspb.Message {
|
||||
export namespace DownlinkFrameItem {
|
||||
export type AsObject = {
|
||||
phyPayload: Uint8Array | string,
|
||||
txInfo?: DownlinkTXInfo.AsObject,
|
||||
txInfoLegacy?: DownlinkTxInfoLegacy.AsObject,
|
||||
txInfo?: DownlinkTxInfo.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkTXAck extends jspb.Message {
|
||||
getGatewayId(): Uint8Array | string;
|
||||
getGatewayId_asU8(): Uint8Array;
|
||||
getGatewayId_asB64(): string;
|
||||
setGatewayId(value: Uint8Array | string): void;
|
||||
export class DownlinkTxAck extends jspb.Message {
|
||||
getGatewayIdLegacy(): Uint8Array | string;
|
||||
getGatewayIdLegacy_asU8(): Uint8Array;
|
||||
getGatewayIdLegacy_asB64(): string;
|
||||
setGatewayIdLegacy(value: Uint8Array | string): void;
|
||||
|
||||
getToken(): number;
|
||||
setToken(value: number): void;
|
||||
getGatewayId(): string;
|
||||
setGatewayId(value: string): void;
|
||||
|
||||
getError(): string;
|
||||
setError(value: string): void;
|
||||
getDownlinkId(): number;
|
||||
setDownlinkId(value: number): void;
|
||||
|
||||
getDownlinkId(): Uint8Array | string;
|
||||
getDownlinkId_asU8(): Uint8Array;
|
||||
getDownlinkId_asB64(): string;
|
||||
setDownlinkId(value: Uint8Array | string): void;
|
||||
getDownlinkIdLegacy(): Uint8Array | string;
|
||||
getDownlinkIdLegacy_asU8(): Uint8Array;
|
||||
getDownlinkIdLegacy_asB64(): string;
|
||||
setDownlinkIdLegacy(value: Uint8Array | string): void;
|
||||
|
||||
clearItemsList(): void;
|
||||
getItemsList(): Array<DownlinkTXAckItem>;
|
||||
setItemsList(value: Array<DownlinkTXAckItem>): void;
|
||||
addItems(value?: DownlinkTXAckItem, index?: number): DownlinkTXAckItem;
|
||||
getItemsList(): Array<DownlinkTxAckItem>;
|
||||
setItemsList(value: Array<DownlinkTxAckItem>): void;
|
||||
addItems(value?: DownlinkTxAckItem, index?: number): DownlinkTxAckItem;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkTXAck.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTXAck): DownlinkTXAck.AsObject;
|
||||
toObject(includeInstance?: boolean): DownlinkTxAck.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTxAck): DownlinkTxAck.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DownlinkTXAck, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTXAck;
|
||||
static deserializeBinaryFromReader(message: DownlinkTXAck, reader: jspb.BinaryReader): DownlinkTXAck;
|
||||
static serializeBinaryToWriter(message: DownlinkTxAck, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTxAck;
|
||||
static deserializeBinaryFromReader(message: DownlinkTxAck, reader: jspb.BinaryReader): DownlinkTxAck;
|
||||
}
|
||||
|
||||
export namespace DownlinkTXAck {
|
||||
export namespace DownlinkTxAck {
|
||||
export type AsObject = {
|
||||
gatewayId: Uint8Array | string,
|
||||
token: number,
|
||||
error: string,
|
||||
downlinkId: Uint8Array | string,
|
||||
itemsList: Array<DownlinkTXAckItem.AsObject>,
|
||||
gatewayIdLegacy: Uint8Array | string,
|
||||
gatewayId: string,
|
||||
downlinkId: number,
|
||||
downlinkIdLegacy: Uint8Array | string,
|
||||
itemsList: Array<DownlinkTxAckItem.AsObject>,
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkTXAckItem extends jspb.Message {
|
||||
export class DownlinkTxAckItem extends jspb.Message {
|
||||
getStatus(): TxAckStatusMap[keyof TxAckStatusMap];
|
||||
setStatus(value: TxAckStatusMap[keyof TxAckStatusMap]): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkTXAckItem.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTXAckItem): DownlinkTXAckItem.AsObject;
|
||||
toObject(includeInstance?: boolean): DownlinkTxAckItem.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkTxAckItem): DownlinkTxAckItem.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DownlinkTXAckItem, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTXAckItem;
|
||||
static deserializeBinaryFromReader(message: DownlinkTXAckItem, reader: jspb.BinaryReader): DownlinkTXAckItem;
|
||||
static serializeBinaryToWriter(message: DownlinkTxAckItem, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkTxAckItem;
|
||||
static deserializeBinaryFromReader(message: DownlinkTxAckItem, reader: jspb.BinaryReader): DownlinkTxAckItem;
|
||||
}
|
||||
|
||||
export namespace DownlinkTXAckItem {
|
||||
export namespace DownlinkTxAckItem {
|
||||
export type AsObject = {
|
||||
status: TxAckStatusMap[keyof TxAckStatusMap],
|
||||
}
|
||||
@ -1146,6 +1355,16 @@ export namespace ConnState {
|
||||
export const State: StateMap;
|
||||
}
|
||||
|
||||
export interface CodeRateMap {
|
||||
CR_UNDEFINED: 0;
|
||||
CR_4_5: 1;
|
||||
CR_4_6: 2;
|
||||
CR_4_7: 3;
|
||||
CR_4_8: 4;
|
||||
}
|
||||
|
||||
export const CodeRate: CodeRateMap;
|
||||
|
||||
export interface DownlinkTimingMap {
|
||||
IMMEDIATELY: 0;
|
||||
DELAY: 1;
|
||||
|
2878
api/js/gw/gw_pb.js
vendored
2878
api/js/gw/gw_pb.js
vendored
File diff suppressed because it is too large
Load Diff
70
api/js/integration/integration_pb.d.ts
vendored
70
api/js/integration/integration_pb.d.ts
vendored
@ -101,14 +101,14 @@ export class UplinkEvent extends jspb.Message {
|
||||
setObject(value?: google_protobuf_struct_pb.Struct): void;
|
||||
|
||||
clearRxInfoList(): void;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRXInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRXInfo>): void;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRXInfo, index?: number): gw_gw_pb.UplinkRXInfo;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRxInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRxInfo>): void;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRxInfo, index?: number): gw_gw_pb.UplinkRxInfo;
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): gw_gw_pb.UplinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTXInfo): void;
|
||||
getTxInfo(): gw_gw_pb.UplinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTxInfo): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): UplinkEvent.AsObject;
|
||||
@ -133,8 +133,8 @@ export namespace UplinkEvent {
|
||||
confirmed: boolean,
|
||||
data: Uint8Array | string,
|
||||
object?: google_protobuf_struct_pb.Struct.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRXInfo.AsObject>,
|
||||
txInfo?: gw_gw_pb.UplinkTXInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRxInfo.AsObject>,
|
||||
txInfo?: gw_gw_pb.UplinkTxInfo.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
@ -219,8 +219,8 @@ export namespace AckEvent {
|
||||
}
|
||||
|
||||
export class TxAckEvent extends jspb.Message {
|
||||
getDownlinkId(): string;
|
||||
setDownlinkId(value: string): void;
|
||||
getDownlinkId(): number;
|
||||
setDownlinkId(value: number): void;
|
||||
|
||||
hasTime(): boolean;
|
||||
clearTime(): void;
|
||||
@ -243,8 +243,8 @@ export class TxAckEvent extends jspb.Message {
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTXInfo): void;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTxInfo): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): TxAckEvent.AsObject;
|
||||
@ -258,13 +258,13 @@ export class TxAckEvent extends jspb.Message {
|
||||
|
||||
export namespace TxAckEvent {
|
||||
export type AsObject = {
|
||||
downlinkId: string,
|
||||
downlinkId: number,
|
||||
time?: google_protobuf_timestamp_pb.Timestamp.AsObject,
|
||||
deviceInfo?: DeviceInfo.AsObject,
|
||||
queueItemId: string,
|
||||
fCntDown: number,
|
||||
gatewayId: string,
|
||||
txInfo?: gw_gw_pb.DownlinkTXInfo.AsObject,
|
||||
txInfo?: gw_gw_pb.DownlinkTxInfo.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
@ -447,6 +447,50 @@ export namespace IntegrationEvent {
|
||||
}
|
||||
}
|
||||
|
||||
export class DownlinkCommand extends jspb.Message {
|
||||
getId(): string;
|
||||
setId(value: string): void;
|
||||
|
||||
getDevEui(): string;
|
||||
setDevEui(value: string): void;
|
||||
|
||||
getConfirmed(): boolean;
|
||||
setConfirmed(value: boolean): void;
|
||||
|
||||
getFPort(): number;
|
||||
setFPort(value: number): void;
|
||||
|
||||
getData(): Uint8Array | string;
|
||||
getData_asU8(): Uint8Array;
|
||||
getData_asB64(): string;
|
||||
setData(value: Uint8Array | string): void;
|
||||
|
||||
hasObject(): boolean;
|
||||
clearObject(): void;
|
||||
getObject(): google_protobuf_struct_pb.Struct | undefined;
|
||||
setObject(value?: google_protobuf_struct_pb.Struct): void;
|
||||
|
||||
serializeBinary(): Uint8Array;
|
||||
toObject(includeInstance?: boolean): DownlinkCommand.AsObject;
|
||||
static toObject(includeInstance: boolean, msg: DownlinkCommand): DownlinkCommand.AsObject;
|
||||
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
||||
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
||||
static serializeBinaryToWriter(message: DownlinkCommand, writer: jspb.BinaryWriter): void;
|
||||
static deserializeBinary(bytes: Uint8Array): DownlinkCommand;
|
||||
static deserializeBinaryFromReader(message: DownlinkCommand, reader: jspb.BinaryReader): DownlinkCommand;
|
||||
}
|
||||
|
||||
export namespace DownlinkCommand {
|
||||
export type AsObject = {
|
||||
id: string,
|
||||
devEui: string,
|
||||
confirmed: boolean,
|
||||
fPort: number,
|
||||
data: Uint8Array | string,
|
||||
object?: google_protobuf_struct_pb.Struct.AsObject,
|
||||
}
|
||||
}
|
||||
|
||||
export interface LogLevelMap {
|
||||
INFO: 0;
|
||||
WARNING: 1;
|
||||
|
406
api/js/integration/integration_pb.js
vendored
406
api/js/integration/integration_pb.js
vendored
@ -15,6 +15,7 @@ var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/time
|
||||
var google_protobuf_struct_pb = require('google-protobuf/google/protobuf/struct_pb.js');
|
||||
goog.exportSymbol('proto.integration.AckEvent', null, global);
|
||||
goog.exportSymbol('proto.integration.DeviceInfo', null, global);
|
||||
goog.exportSymbol('proto.integration.DownlinkCommand', null, global);
|
||||
goog.exportSymbol('proto.integration.IntegrationEvent', null, global);
|
||||
goog.exportSymbol('proto.integration.JoinEvent', null, global);
|
||||
goog.exportSymbol('proto.integration.LocationEvent', null, global);
|
||||
@ -461,8 +462,8 @@ proto.integration.UplinkEvent.toObject = function(includeInstance, msg) {
|
||||
data: msg.getData_asB64(),
|
||||
object: (f = msg.getObject()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f),
|
||||
rxInfoList: jspb.Message.toObjectList(msg.getRxInfoList(),
|
||||
gw_gw_pb.UplinkRXInfo.toObject, includeInstance),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTXInfo.toObject(includeInstance, f)
|
||||
gw_gw_pb.UplinkRxInfo.toObject, includeInstance),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTxInfo.toObject(includeInstance, f)
|
||||
};
|
||||
|
||||
if (includeInstance) {
|
||||
@ -547,14 +548,14 @@ proto.integration.UplinkEvent.deserializeBinaryFromReader = function(msg, reader
|
||||
msg.setObject(value);
|
||||
break;
|
||||
case 12:
|
||||
var value = new gw_gw_pb.UplinkRXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkRxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRxInfo.deserializeBinaryFromReader);
|
||||
msg.getRxInfoList().push(value);
|
||||
msg.setRxInfoList(msg.getRxInfoList());
|
||||
break;
|
||||
case 13:
|
||||
var value = new gw_gw_pb.UplinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
default:
|
||||
@ -680,7 +681,7 @@ proto.integration.UplinkEvent.prototype.serializeBinaryToWriter = function (writ
|
||||
writer.writeRepeatedMessage(
|
||||
12,
|
||||
f,
|
||||
gw_gw_pb.UplinkRXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkRxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getTxInfo();
|
||||
@ -688,7 +689,7 @@ proto.integration.UplinkEvent.prototype.serializeBinaryToWriter = function (writ
|
||||
writer.writeMessage(
|
||||
13,
|
||||
f,
|
||||
gw_gw_pb.UplinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -942,18 +943,18 @@ proto.integration.UplinkEvent.prototype.hasObject = function() {
|
||||
|
||||
|
||||
/**
|
||||
* repeated gw.UplinkRXInfo rx_info = 12;
|
||||
* repeated gw.UplinkRxInfo rx_info = 12;
|
||||
* If you change this array by adding, removing or replacing elements, or if you
|
||||
* replace the array itself, then you must call the setter to update it.
|
||||
* @return {!Array.<!proto.gw.UplinkRXInfo>}
|
||||
* @return {!Array.<!proto.gw.UplinkRxInfo>}
|
||||
*/
|
||||
proto.integration.UplinkEvent.prototype.getRxInfoList = function() {
|
||||
return /** @type{!Array.<!proto.gw.UplinkRXInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRXInfo, 12));
|
||||
return /** @type{!Array.<!proto.gw.UplinkRxInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRxInfo, 12));
|
||||
};
|
||||
|
||||
|
||||
/** @param {Array.<!proto.gw.UplinkRXInfo>} value */
|
||||
/** @param {Array.<!proto.gw.UplinkRxInfo>} value */
|
||||
proto.integration.UplinkEvent.prototype.setRxInfoList = function(value) {
|
||||
jspb.Message.setRepeatedWrapperField(this, 12, value);
|
||||
};
|
||||
@ -965,16 +966,16 @@ proto.integration.UplinkEvent.prototype.clearRxInfoList = function() {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.UplinkTXInfo tx_info = 13;
|
||||
* @return {proto.gw.UplinkTXInfo}
|
||||
* optional gw.UplinkTxInfo tx_info = 13;
|
||||
* @return {proto.gw.UplinkTxInfo}
|
||||
*/
|
||||
proto.integration.UplinkEvent.prototype.getTxInfo = function() {
|
||||
return /** @type{proto.gw.UplinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTXInfo, 13));
|
||||
return /** @type{proto.gw.UplinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTxInfo, 13));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.gw.UplinkTXInfo|undefined} value */
|
||||
/** @param {proto.gw.UplinkTxInfo|undefined} value */
|
||||
proto.integration.UplinkEvent.prototype.setTxInfo = function(value) {
|
||||
jspb.Message.setWrapperField(this, 13, value);
|
||||
};
|
||||
@ -1650,7 +1651,7 @@ proto.integration.TxAckEvent.toObject = function(includeInstance, msg) {
|
||||
queueItemId: msg.getQueueItemId(),
|
||||
fCntDown: msg.getFCntDown(),
|
||||
gatewayId: msg.getGatewayId(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTXInfo.toObject(includeInstance, f)
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTxInfo.toObject(includeInstance, f)
|
||||
};
|
||||
|
||||
if (includeInstance) {
|
||||
@ -1688,7 +1689,7 @@ proto.integration.TxAckEvent.deserializeBinaryFromReader = function(msg, reader)
|
||||
var field = reader.getFieldNumber();
|
||||
switch (field) {
|
||||
case 1:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
var value = /** @type {number} */ (reader.readUint32());
|
||||
msg.setDownlinkId(value);
|
||||
break;
|
||||
case 2:
|
||||
@ -1714,8 +1715,8 @@ proto.integration.TxAckEvent.deserializeBinaryFromReader = function(msg, reader)
|
||||
msg.setGatewayId(value);
|
||||
break;
|
||||
case 7:
|
||||
var value = new gw_gw_pb.DownlinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.DownlinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
default:
|
||||
@ -1757,8 +1758,8 @@ proto.integration.TxAckEvent.prototype.serializeBinary = function() {
|
||||
proto.integration.TxAckEvent.prototype.serializeBinaryToWriter = function (writer) {
|
||||
var f = undefined;
|
||||
f = this.getDownlinkId();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
if (f !== 0) {
|
||||
writer.writeUint32(
|
||||
1,
|
||||
f
|
||||
);
|
||||
@ -1805,7 +1806,7 @@ proto.integration.TxAckEvent.prototype.serializeBinaryToWriter = function (write
|
||||
writer.writeMessage(
|
||||
7,
|
||||
f,
|
||||
gw_gw_pb.DownlinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.DownlinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
};
|
||||
@ -1821,15 +1822,15 @@ proto.integration.TxAckEvent.prototype.cloneMessage = function() {
|
||||
|
||||
|
||||
/**
|
||||
* optional string downlink_id = 1;
|
||||
* @return {string}
|
||||
* optional uint32 downlink_id = 1;
|
||||
* @return {number}
|
||||
*/
|
||||
proto.integration.TxAckEvent.prototype.getDownlinkId = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 1, ""));
|
||||
return /** @type {number} */ (jspb.Message.getFieldProto3(this, 1, 0));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
/** @param {number} value */
|
||||
proto.integration.TxAckEvent.prototype.setDownlinkId = function(value) {
|
||||
jspb.Message.setField(this, 1, value);
|
||||
};
|
||||
@ -1941,16 +1942,16 @@ proto.integration.TxAckEvent.prototype.setGatewayId = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.DownlinkTXInfo tx_info = 7;
|
||||
* @return {proto.gw.DownlinkTXInfo}
|
||||
* optional gw.DownlinkTxInfo tx_info = 7;
|
||||
* @return {proto.gw.DownlinkTxInfo}
|
||||
*/
|
||||
proto.integration.TxAckEvent.prototype.getTxInfo = function() {
|
||||
return /** @type{proto.gw.DownlinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTXInfo, 7));
|
||||
return /** @type{proto.gw.DownlinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTxInfo, 7));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.gw.DownlinkTXInfo|undefined} value */
|
||||
/** @param {proto.gw.DownlinkTxInfo|undefined} value */
|
||||
proto.integration.TxAckEvent.prototype.setTxInfo = function(value) {
|
||||
jspb.Message.setWrapperField(this, 7, value);
|
||||
};
|
||||
@ -3317,6 +3318,343 @@ proto.integration.IntegrationEvent.prototype.hasObject = function() {
|
||||
};
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Generated by JsPbCodeGenerator.
|
||||
* @param {Array=} opt_data Optional initial data array, typically from a
|
||||
* server response, or constructed directly in Javascript. The array is used
|
||||
* in place and becomes part of the constructed object. It is not cloned.
|
||||
* If no data is provided, the constructed object will be empty, but still
|
||||
* valid.
|
||||
* @extends {jspb.Message}
|
||||
* @constructor
|
||||
*/
|
||||
proto.integration.DownlinkCommand = function(opt_data) {
|
||||
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
|
||||
};
|
||||
goog.inherits(proto.integration.DownlinkCommand, jspb.Message);
|
||||
if (goog.DEBUG && !COMPILED) {
|
||||
proto.integration.DownlinkCommand.displayName = 'proto.integration.DownlinkCommand';
|
||||
}
|
||||
|
||||
|
||||
if (jspb.Message.GENERATE_TO_OBJECT) {
|
||||
/**
|
||||
* Creates an object representation of this proto suitable for use in Soy templates.
|
||||
* Field names that are reserved in JavaScript and will be renamed to pb_name.
|
||||
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
|
||||
* For the list of reserved names please see:
|
||||
* com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
|
||||
* @param {boolean=} opt_includeInstance Whether to include the JSPB instance
|
||||
* for transitional soy proto support: http://goto/soy-param-migration
|
||||
* @return {!Object}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.toObject = function(opt_includeInstance) {
|
||||
return proto.integration.DownlinkCommand.toObject(opt_includeInstance, this);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Static version of the {@see toObject} method.
|
||||
* @param {boolean|undefined} includeInstance Whether to include the JSPB
|
||||
* instance for transitional soy proto support:
|
||||
* http://goto/soy-param-migration
|
||||
* @param {!proto.integration.DownlinkCommand} msg The msg instance to transform.
|
||||
* @return {!Object}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
id: msg.getId(),
|
||||
devEui: msg.getDevEui(),
|
||||
confirmed: msg.getConfirmed(),
|
||||
fPort: msg.getFPort(),
|
||||
data: msg.getData_asB64(),
|
||||
object: (f = msg.getObject()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f)
|
||||
};
|
||||
|
||||
if (includeInstance) {
|
||||
obj.$jspbMessageInstance = msg;
|
||||
}
|
||||
return obj;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deserializes binary data (in protobuf wire format).
|
||||
* @param {jspb.ByteSource} bytes The bytes to deserialize.
|
||||
* @return {!proto.integration.DownlinkCommand}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.deserializeBinary = function(bytes) {
|
||||
var reader = new jspb.BinaryReader(bytes);
|
||||
var msg = new proto.integration.DownlinkCommand;
|
||||
return proto.integration.DownlinkCommand.deserializeBinaryFromReader(msg, reader);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Deserializes binary data (in protobuf wire format) from the
|
||||
* given reader into the given message object.
|
||||
* @param {!proto.integration.DownlinkCommand} msg The message object to deserialize into.
|
||||
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
|
||||
* @return {!proto.integration.DownlinkCommand}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.deserializeBinaryFromReader = function(msg, reader) {
|
||||
while (reader.nextField()) {
|
||||
if (reader.isEndGroup()) {
|
||||
break;
|
||||
}
|
||||
var field = reader.getFieldNumber();
|
||||
switch (field) {
|
||||
case 1:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setId(value);
|
||||
break;
|
||||
case 2:
|
||||
var value = /** @type {string} */ (reader.readString());
|
||||
msg.setDevEui(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = /** @type {boolean} */ (reader.readBool());
|
||||
msg.setConfirmed(value);
|
||||
break;
|
||||
case 4:
|
||||
var value = /** @type {number} */ (reader.readUint32());
|
||||
msg.setFPort(value);
|
||||
break;
|
||||
case 5:
|
||||
var value = /** @type {!Uint8Array} */ (reader.readBytes());
|
||||
msg.setData(value);
|
||||
break;
|
||||
case 6:
|
||||
var value = new google_protobuf_struct_pb.Struct;
|
||||
reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader);
|
||||
msg.setObject(value);
|
||||
break;
|
||||
default:
|
||||
reader.skipField();
|
||||
break;
|
||||
}
|
||||
}
|
||||
return msg;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Class method variant: serializes the given message to binary data
|
||||
* (in protobuf wire format), writing to the given BinaryWriter.
|
||||
* @param {!proto.integration.DownlinkCommand} message
|
||||
* @param {!jspb.BinaryWriter} writer
|
||||
*/
|
||||
proto.integration.DownlinkCommand.serializeBinaryToWriter = function(message, writer) {
|
||||
message.serializeBinaryToWriter(writer);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Serializes the message to binary data (in protobuf wire format).
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.serializeBinary = function() {
|
||||
var writer = new jspb.BinaryWriter();
|
||||
this.serializeBinaryToWriter(writer);
|
||||
return writer.getResultBuffer();
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Serializes the message to binary data (in protobuf wire format),
|
||||
* writing to the given BinaryWriter.
|
||||
* @param {!jspb.BinaryWriter} writer
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.serializeBinaryToWriter = function (writer) {
|
||||
var f = undefined;
|
||||
f = this.getId();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
1,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getDevEui();
|
||||
if (f.length > 0) {
|
||||
writer.writeString(
|
||||
2,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getConfirmed();
|
||||
if (f) {
|
||||
writer.writeBool(
|
||||
3,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getFPort();
|
||||
if (f !== 0) {
|
||||
writer.writeUint32(
|
||||
4,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getData_asU8();
|
||||
if (f.length > 0) {
|
||||
writer.writeBytes(
|
||||
5,
|
||||
f
|
||||
);
|
||||
}
|
||||
f = this.getObject();
|
||||
if (f != null) {
|
||||
writer.writeMessage(
|
||||
6,
|
||||
f,
|
||||
google_protobuf_struct_pb.Struct.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Creates a deep clone of this proto. No data is shared with the original.
|
||||
* @return {!proto.integration.DownlinkCommand} The clone.
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.cloneMessage = function() {
|
||||
return /** @type {!proto.integration.DownlinkCommand} */ (jspb.Message.cloneMessage(this));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional string id = 1;
|
||||
* @return {string}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getId = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 1, ""));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
proto.integration.DownlinkCommand.prototype.setId = function(value) {
|
||||
jspb.Message.setField(this, 1, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional string dev_eui = 2;
|
||||
* @return {string}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getDevEui = function() {
|
||||
return /** @type {string} */ (jspb.Message.getFieldProto3(this, 2, ""));
|
||||
};
|
||||
|
||||
|
||||
/** @param {string} value */
|
||||
proto.integration.DownlinkCommand.prototype.setDevEui = function(value) {
|
||||
jspb.Message.setField(this, 2, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional bool confirmed = 3;
|
||||
* Note that Boolean fields may be set to 0/1 when serialized from a Java server.
|
||||
* You should avoid comparisons like {@code val === true/false} in those cases.
|
||||
* @return {boolean}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getConfirmed = function() {
|
||||
return /** @type {boolean} */ (jspb.Message.getFieldProto3(this, 3, false));
|
||||
};
|
||||
|
||||
|
||||
/** @param {boolean} value */
|
||||
proto.integration.DownlinkCommand.prototype.setConfirmed = function(value) {
|
||||
jspb.Message.setField(this, 3, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional uint32 f_port = 4;
|
||||
* @return {number}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getFPort = function() {
|
||||
return /** @type {number} */ (jspb.Message.getFieldProto3(this, 4, 0));
|
||||
};
|
||||
|
||||
|
||||
/** @param {number} value */
|
||||
proto.integration.DownlinkCommand.prototype.setFPort = function(value) {
|
||||
jspb.Message.setField(this, 4, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional bytes data = 5;
|
||||
* @return {!(string|Uint8Array)}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getData = function() {
|
||||
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldProto3(this, 5, ""));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional bytes data = 5;
|
||||
* This is a type-conversion wrapper around `getData()`
|
||||
* @return {string}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getData_asB64 = function() {
|
||||
return /** @type {string} */ (jspb.Message.bytesAsB64(
|
||||
this.getData()));
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional bytes data = 5;
|
||||
* Note that Uint8Array is not supported on all browsers.
|
||||
* @see http://caniuse.com/Uint8Array
|
||||
* This is a type-conversion wrapper around `getData()`
|
||||
* @return {!Uint8Array}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getData_asU8 = function() {
|
||||
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
|
||||
this.getData()));
|
||||
};
|
||||
|
||||
|
||||
/** @param {!(string|Uint8Array)} value */
|
||||
proto.integration.DownlinkCommand.prototype.setData = function(value) {
|
||||
jspb.Message.setField(this, 5, value);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* optional google.protobuf.Struct object = 6;
|
||||
* @return {proto.google.protobuf.Struct}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.getObject = function() {
|
||||
return /** @type{proto.google.protobuf.Struct} */ (
|
||||
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 6));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.google.protobuf.Struct|undefined} value */
|
||||
proto.integration.DownlinkCommand.prototype.setObject = function(value) {
|
||||
jspb.Message.setWrapperField(this, 6, value);
|
||||
};
|
||||
|
||||
|
||||
proto.integration.DownlinkCommand.prototype.clearObject = function() {
|
||||
this.setObject(undefined);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Returns whether this field is set.
|
||||
* @return{!boolean}
|
||||
*/
|
||||
proto.integration.DownlinkCommand.prototype.hasObject = function() {
|
||||
return jspb.Message.getField(this, 6) != null;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @enum {number}
|
||||
*/
|
||||
|
20
api/js/meta/meta_pb.d.ts
vendored
20
api/js/meta/meta_pb.d.ts
vendored
@ -11,13 +11,13 @@ export class UplinkMeta extends jspb.Message {
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): gw_gw_pb.UplinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTXInfo): void;
|
||||
getTxInfo(): gw_gw_pb.UplinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.UplinkTxInfo): void;
|
||||
|
||||
clearRxInfoList(): void;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRXInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRXInfo>): void;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRXInfo, index?: number): gw_gw_pb.UplinkRXInfo;
|
||||
getRxInfoList(): Array<gw_gw_pb.UplinkRxInfo>;
|
||||
setRxInfoList(value: Array<gw_gw_pb.UplinkRxInfo>): void;
|
||||
addRxInfo(value?: gw_gw_pb.UplinkRxInfo, index?: number): gw_gw_pb.UplinkRxInfo;
|
||||
|
||||
getPhyPayloadByteCount(): number;
|
||||
setPhyPayloadByteCount(value: number): void;
|
||||
@ -44,8 +44,8 @@ export class UplinkMeta extends jspb.Message {
|
||||
export namespace UplinkMeta {
|
||||
export type AsObject = {
|
||||
devEui: string,
|
||||
txInfo?: gw_gw_pb.UplinkTXInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRXInfo.AsObject>,
|
||||
txInfo?: gw_gw_pb.UplinkTxInfo.AsObject,
|
||||
rxInfoList: Array<gw_gw_pb.UplinkRxInfo.AsObject>,
|
||||
phyPayloadByteCount: number,
|
||||
macCommandByteCount: number,
|
||||
applicationPayloadByteCount: number,
|
||||
@ -62,8 +62,8 @@ export class DownlinkMeta extends jspb.Message {
|
||||
|
||||
hasTxInfo(): boolean;
|
||||
clearTxInfo(): void;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTXInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTXInfo): void;
|
||||
getTxInfo(): gw_gw_pb.DownlinkTxInfo | undefined;
|
||||
setTxInfo(value?: gw_gw_pb.DownlinkTxInfo): void;
|
||||
|
||||
getPhyPayloadByteCount(): number;
|
||||
setPhyPayloadByteCount(value: number): void;
|
||||
@ -94,7 +94,7 @@ export namespace DownlinkMeta {
|
||||
export type AsObject = {
|
||||
devEui: string,
|
||||
multicastGroupId: string,
|
||||
txInfo?: gw_gw_pb.DownlinkTXInfo.AsObject,
|
||||
txInfo?: gw_gw_pb.DownlinkTxInfo.AsObject,
|
||||
phyPayloadByteCount: number,
|
||||
macCommandByteCount: number,
|
||||
applicationPayloadByteCount: number,
|
||||
|
54
api/js/meta/meta_pb.js
vendored
54
api/js/meta/meta_pb.js
vendored
@ -67,9 +67,9 @@ proto.meta.UplinkMeta.prototype.toObject = function(opt_includeInstance) {
|
||||
proto.meta.UplinkMeta.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
devEui: msg.getDevEui(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTXInfo.toObject(includeInstance, f),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.UplinkTxInfo.toObject(includeInstance, f),
|
||||
rxInfoList: jspb.Message.toObjectList(msg.getRxInfoList(),
|
||||
gw_gw_pb.UplinkRXInfo.toObject, includeInstance),
|
||||
gw_gw_pb.UplinkRxInfo.toObject, includeInstance),
|
||||
phyPayloadByteCount: msg.getPhyPayloadByteCount(),
|
||||
macCommandByteCount: msg.getMacCommandByteCount(),
|
||||
applicationPayloadByteCount: msg.getApplicationPayloadByteCount(),
|
||||
@ -115,13 +115,13 @@ proto.meta.UplinkMeta.deserializeBinaryFromReader = function(msg, reader) {
|
||||
msg.setDevEui(value);
|
||||
break;
|
||||
case 2:
|
||||
var value = new gw_gw_pb.UplinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = new gw_gw_pb.UplinkRXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.UplinkRxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.UplinkRxInfo.deserializeBinaryFromReader);
|
||||
msg.getRxInfoList().push(value);
|
||||
msg.setRxInfoList(msg.getRxInfoList());
|
||||
break;
|
||||
@ -191,7 +191,7 @@ proto.meta.UplinkMeta.prototype.serializeBinaryToWriter = function (writer) {
|
||||
writer.writeMessage(
|
||||
2,
|
||||
f,
|
||||
gw_gw_pb.UplinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getRxInfoList();
|
||||
@ -199,7 +199,7 @@ proto.meta.UplinkMeta.prototype.serializeBinaryToWriter = function (writer) {
|
||||
writer.writeRepeatedMessage(
|
||||
3,
|
||||
f,
|
||||
gw_gw_pb.UplinkRXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.UplinkRxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getPhyPayloadByteCount();
|
||||
@ -258,16 +258,16 @@ proto.meta.UplinkMeta.prototype.setDevEui = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.UplinkTXInfo tx_info = 2;
|
||||
* @return {proto.gw.UplinkTXInfo}
|
||||
* optional gw.UplinkTxInfo tx_info = 2;
|
||||
* @return {proto.gw.UplinkTxInfo}
|
||||
*/
|
||||
proto.meta.UplinkMeta.prototype.getTxInfo = function() {
|
||||
return /** @type{proto.gw.UplinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTXInfo, 2));
|
||||
return /** @type{proto.gw.UplinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.UplinkTxInfo, 2));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.gw.UplinkTXInfo|undefined} value */
|
||||
/** @param {proto.gw.UplinkTxInfo|undefined} value */
|
||||
proto.meta.UplinkMeta.prototype.setTxInfo = function(value) {
|
||||
jspb.Message.setWrapperField(this, 2, value);
|
||||
};
|
||||
@ -288,18 +288,18 @@ proto.meta.UplinkMeta.prototype.hasTxInfo = function() {
|
||||
|
||||
|
||||
/**
|
||||
* repeated gw.UplinkRXInfo rx_info = 3;
|
||||
* repeated gw.UplinkRxInfo rx_info = 3;
|
||||
* If you change this array by adding, removing or replacing elements, or if you
|
||||
* replace the array itself, then you must call the setter to update it.
|
||||
* @return {!Array.<!proto.gw.UplinkRXInfo>}
|
||||
* @return {!Array.<!proto.gw.UplinkRxInfo>}
|
||||
*/
|
||||
proto.meta.UplinkMeta.prototype.getRxInfoList = function() {
|
||||
return /** @type{!Array.<!proto.gw.UplinkRXInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRXInfo, 3));
|
||||
return /** @type{!Array.<!proto.gw.UplinkRxInfo>} */ (
|
||||
jspb.Message.getRepeatedWrapperField(this, gw_gw_pb.UplinkRxInfo, 3));
|
||||
};
|
||||
|
||||
|
||||
/** @param {Array.<!proto.gw.UplinkRXInfo>} value */
|
||||
/** @param {Array.<!proto.gw.UplinkRxInfo>} value */
|
||||
proto.meta.UplinkMeta.prototype.setRxInfoList = function(value) {
|
||||
jspb.Message.setRepeatedWrapperField(this, 3, value);
|
||||
};
|
||||
@ -418,7 +418,7 @@ proto.meta.DownlinkMeta.toObject = function(includeInstance, msg) {
|
||||
var f, obj = {
|
||||
devEui: msg.getDevEui(),
|
||||
multicastGroupId: msg.getMulticastGroupId(),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTXInfo.toObject(includeInstance, f),
|
||||
txInfo: (f = msg.getTxInfo()) && gw_gw_pb.DownlinkTxInfo.toObject(includeInstance, f),
|
||||
phyPayloadByteCount: msg.getPhyPayloadByteCount(),
|
||||
macCommandByteCount: msg.getMacCommandByteCount(),
|
||||
applicationPayloadByteCount: msg.getApplicationPayloadByteCount(),
|
||||
@ -469,8 +469,8 @@ proto.meta.DownlinkMeta.deserializeBinaryFromReader = function(msg, reader) {
|
||||
msg.setMulticastGroupId(value);
|
||||
break;
|
||||
case 3:
|
||||
var value = new gw_gw_pb.DownlinkTXInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTXInfo.deserializeBinaryFromReader);
|
||||
var value = new gw_gw_pb.DownlinkTxInfo;
|
||||
reader.readMessage(value,gw_gw_pb.DownlinkTxInfo.deserializeBinaryFromReader);
|
||||
msg.setTxInfo(value);
|
||||
break;
|
||||
case 4:
|
||||
@ -550,7 +550,7 @@ proto.meta.DownlinkMeta.prototype.serializeBinaryToWriter = function (writer) {
|
||||
writer.writeMessage(
|
||||
3,
|
||||
f,
|
||||
gw_gw_pb.DownlinkTXInfo.serializeBinaryToWriter
|
||||
gw_gw_pb.DownlinkTxInfo.serializeBinaryToWriter
|
||||
);
|
||||
}
|
||||
f = this.getPhyPayloadByteCount();
|
||||
@ -631,16 +631,16 @@ proto.meta.DownlinkMeta.prototype.setMulticastGroupId = function(value) {
|
||||
|
||||
|
||||
/**
|
||||
* optional gw.DownlinkTXInfo tx_info = 3;
|
||||
* @return {proto.gw.DownlinkTXInfo}
|
||||
* optional gw.DownlinkTxInfo tx_info = 3;
|
||||
* @return {proto.gw.DownlinkTxInfo}
|
||||
*/
|
||||
proto.meta.DownlinkMeta.prototype.getTxInfo = function() {
|
||||
return /** @type{proto.gw.DownlinkTXInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTXInfo, 3));
|
||||
return /** @type{proto.gw.DownlinkTxInfo} */ (
|
||||
jspb.Message.getWrapperField(this, gw_gw_pb.DownlinkTxInfo, 3));
|
||||
};
|
||||
|
||||
|
||||
/** @param {proto.gw.DownlinkTXInfo|undefined} value */
|
||||
/** @param {proto.gw.DownlinkTxInfo|undefined} value */
|
||||
proto.meta.DownlinkMeta.prototype.setTxInfo = function(value) {
|
||||
jspb.Message.setWrapperField(this, 3, value);
|
||||
};
|
||||
|
2
api/js/package.json
vendored
2
api/js/package.json
vendored
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@chirpstack/chirpstack-api",
|
||||
"version": "4.0.0",
|
||||
"version": "4.0.0-test.6",
|
||||
"description": "Chirpstack JS and TS API",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
|
34
api/js/yarn.lock
vendored
34
api/js/yarn.lock
vendored
@ -39,7 +39,7 @@
|
||||
"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf"
|
||||
integrity sha1-m4sMxmPWaafY9vXQiToU00jzD78=
|
||||
integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==
|
||||
|
||||
"@protobufjs/base64@^1.1.2":
|
||||
version "1.1.2"
|
||||
@ -54,12 +54,12 @@
|
||||
"@protobufjs/eventemitter@^1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70"
|
||||
integrity sha1-NVy8mLr61ZePntCV85diHx0Ga3A=
|
||||
integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==
|
||||
|
||||
"@protobufjs/fetch@^1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45"
|
||||
integrity sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=
|
||||
integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==
|
||||
dependencies:
|
||||
"@protobufjs/aspromise" "^1.1.1"
|
||||
"@protobufjs/inquire" "^1.1.0"
|
||||
@ -67,27 +67,27 @@
|
||||
"@protobufjs/float@^1.0.2":
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1"
|
||||
integrity sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=
|
||||
integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==
|
||||
|
||||
"@protobufjs/inquire@^1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089"
|
||||
integrity sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=
|
||||
integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==
|
||||
|
||||
"@protobufjs/path@^1.1.2":
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d"
|
||||
integrity sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=
|
||||
integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==
|
||||
|
||||
"@protobufjs/pool@^1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54"
|
||||
integrity sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=
|
||||
integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==
|
||||
|
||||
"@protobufjs/utf8@^1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
|
||||
integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=
|
||||
integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
|
||||
|
||||
"@types/google-protobuf@^3.15.5":
|
||||
version "3.15.5"
|
||||
@ -95,14 +95,14 @@
|
||||
integrity sha512-6bgv24B+A2bo9AfzReeg5StdiijKzwwnRflA8RLd1V4Yv995LeTmo0z69/MPbBDFSiZWdZHQygLo/ccXhMEDgw==
|
||||
|
||||
"@types/long@^4.0.1":
|
||||
version "4.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9"
|
||||
integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==
|
||||
version "4.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a"
|
||||
integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==
|
||||
|
||||
"@types/node@>=12.12.47", "@types/node@>=13.7.0":
|
||||
version "17.0.23"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.23.tgz#3b41a6e643589ac6442bdbd7a4a3ded62f33f7da"
|
||||
integrity sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==
|
||||
version "17.0.40"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090"
|
||||
integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg==
|
||||
|
||||
abbrev@1:
|
||||
version "1.1.1"
|
||||
@ -407,9 +407,9 @@ path-is-absolute@^1.0.0:
|
||||
integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
|
||||
|
||||
protobufjs@^6.10.0:
|
||||
version "6.11.2"
|
||||
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.2.tgz#de39fabd4ed32beaa08e9bb1e30d08544c1edf8b"
|
||||
integrity sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==
|
||||
version "6.11.3"
|
||||
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.3.tgz#637a527205a35caa4f3e2a9a4a13ddffe0e7af74"
|
||||
integrity sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg==
|
||||
dependencies:
|
||||
"@protobufjs/aspromise" "^1.1.2"
|
||||
"@protobufjs/base64" "^1.1.2"
|
||||
|
18
api/md/Makefile
vendored
Normal file
18
api/md/Makefile
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
.PHONY: requirements api
|
||||
|
||||
all: requirements
|
||||
|
||||
requirements:
|
||||
go install github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc@v1.5.1
|
||||
|
||||
api:
|
||||
protoc -I=/googleapis -I=../proto --doc_out=./api --doc_opt=markdown,api.md \
|
||||
api/application.proto \
|
||||
api/device.proto \
|
||||
api/device_profile.proto \
|
||||
api/frame_log.proto \
|
||||
api/gateway.proto \
|
||||
api/multicast_group.proto \
|
||||
api/tenant.proto \
|
||||
api/user.proto
|
||||
|
3866
api/md/api/api.md
vendored
Normal file
3866
api/md/api/api.md
vendored
Normal file
File diff suppressed because it is too large
Load Diff
544
api/md/api/internal.md
vendored
Normal file
544
api/md/api/internal.md
vendored
Normal file
@ -0,0 +1,544 @@
|
||||
# Protocol Documentation
|
||||
<a name="top"></a>
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [api/internal.proto](#api_internal-proto)
|
||||
- [ApiKey](#api-ApiKey)
|
||||
- [CreateApiKeyRequest](#api-CreateApiKeyRequest)
|
||||
- [CreateApiKeyResponse](#api-CreateApiKeyResponse)
|
||||
- [DeleteApiKeyRequest](#api-DeleteApiKeyRequest)
|
||||
- [GetDevicesSummaryRequest](#api-GetDevicesSummaryRequest)
|
||||
- [GetDevicesSummaryResponse](#api-GetDevicesSummaryResponse)
|
||||
- [GetDevicesSummaryResponse.DrCountEntry](#api-GetDevicesSummaryResponse-DrCountEntry)
|
||||
- [GetGatewaysSummaryRequest](#api-GetGatewaysSummaryRequest)
|
||||
- [GetGatewaysSummaryResponse](#api-GetGatewaysSummaryResponse)
|
||||
- [GlobalSearchRequest](#api-GlobalSearchRequest)
|
||||
- [GlobalSearchResponse](#api-GlobalSearchResponse)
|
||||
- [GlobalSearchResult](#api-GlobalSearchResult)
|
||||
- [ListApiKeysRequest](#api-ListApiKeysRequest)
|
||||
- [ListApiKeysResponse](#api-ListApiKeysResponse)
|
||||
- [LogItem](#api-LogItem)
|
||||
- [LogItem.PropertiesEntry](#api-LogItem-PropertiesEntry)
|
||||
- [LoginRequest](#api-LoginRequest)
|
||||
- [LoginResponse](#api-LoginResponse)
|
||||
- [OpenIdConnect](#api-OpenIdConnect)
|
||||
- [OpenIdConnectLoginRequest](#api-OpenIdConnectLoginRequest)
|
||||
- [OpenIdConnectLoginResponse](#api-OpenIdConnectLoginResponse)
|
||||
- [ProfileResponse](#api-ProfileResponse)
|
||||
- [SettingsResponse](#api-SettingsResponse)
|
||||
- [StreamDeviceEventsRequest](#api-StreamDeviceEventsRequest)
|
||||
- [StreamDeviceFramesRequest](#api-StreamDeviceFramesRequest)
|
||||
- [StreamGatewayFramesRequest](#api-StreamGatewayFramesRequest)
|
||||
- [UserTenantLink](#api-UserTenantLink)
|
||||
|
||||
- [InternalService](#api-InternalService)
|
||||
|
||||
- [Scalar Value Types](#scalar-value-types)
|
||||
|
||||
|
||||
|
||||
<a name="api_internal-proto"></a>
|
||||
<p align="right"><a href="#top">Top</a></p>
|
||||
|
||||
## api/internal.proto
|
||||
|
||||
|
||||
|
||||
<a name="api-ApiKey"></a>
|
||||
|
||||
### ApiKey
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [string](#string) | | API key ID. This value will be automatically generated on create. |
|
||||
| name | [string](#string) | | Name. |
|
||||
| is_admin | [bool](#bool) | | Is global admin key. |
|
||||
| tenant_id | [string](#string) | | Tenant ID. In case the API key is intended to manage resources under a single tenant. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-CreateApiKeyRequest"></a>
|
||||
|
||||
### CreateApiKeyRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| api_key | [ApiKey](#api-ApiKey) | | The API key to create. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-CreateApiKeyResponse"></a>
|
||||
|
||||
### CreateApiKeyResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [string](#string) | | API key ID. |
|
||||
| token | [string](#string) | | API token for authentication API requests. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-DeleteApiKeyRequest"></a>
|
||||
|
||||
### DeleteApiKeyRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [string](#string) | | API key ID. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GetDevicesSummaryRequest"></a>
|
||||
|
||||
### GetDevicesSummaryRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| tenant_id | [string](#string) | | Tenant ID (UUID). |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GetDevicesSummaryResponse"></a>
|
||||
|
||||
### GetDevicesSummaryResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| active_count | [uint32](#uint32) | | Active count. |
|
||||
| inactive_count | [uint32](#uint32) | | Inactive count. |
|
||||
| dr_count | [GetDevicesSummaryResponse.DrCountEntry](#api-GetDevicesSummaryResponse-DrCountEntry) | repeated | per data-rate count. Devices that have never been seen are excluded. |
|
||||
| never_seen_count | [uint32](#uint32) | | Never seen count. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GetDevicesSummaryResponse-DrCountEntry"></a>
|
||||
|
||||
### GetDevicesSummaryResponse.DrCountEntry
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| key | [uint32](#uint32) | | |
|
||||
| value | [uint32](#uint32) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GetGatewaysSummaryRequest"></a>
|
||||
|
||||
### GetGatewaysSummaryRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| tenant_id | [string](#string) | | Tenant ID (UUID). |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GetGatewaysSummaryResponse"></a>
|
||||
|
||||
### GetGatewaysSummaryResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| active_count | [uint32](#uint32) | | Active count. |
|
||||
| inactive_count | [uint32](#uint32) | | Inactive count. |
|
||||
| never_seen_count | [uint32](#uint32) | | Never seen count. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GlobalSearchRequest"></a>
|
||||
|
||||
### GlobalSearchRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| search | [string](#string) | | Search query. |
|
||||
| limit | [int64](#int64) | | Max number of results to return. |
|
||||
| offset | [int64](#int64) | | Offset offset of the result-set (for pagination). |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GlobalSearchResponse"></a>
|
||||
|
||||
### GlobalSearchResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| result | [GlobalSearchResult](#api-GlobalSearchResult) | repeated | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-GlobalSearchResult"></a>
|
||||
|
||||
### GlobalSearchResult
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| kind | [string](#string) | | Record kind. |
|
||||
| score | [float](#float) | | Search score. |
|
||||
| tenant_id | [string](#string) | | Organization id. |
|
||||
| tenant_name | [string](#string) | | Organization name. |
|
||||
| application_id | [string](#string) | | Application id. |
|
||||
| application_name | [string](#string) | | Application name. |
|
||||
| device_dev_eui | [string](#string) | | Device DevEUI (hex encoded). |
|
||||
| device_name | [string](#string) | | Device name. |
|
||||
| gateway_id | [string](#string) | | Gateway MAC (hex encoded). |
|
||||
| gateway_name | [string](#string) | | Gateway name. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-ListApiKeysRequest"></a>
|
||||
|
||||
### ListApiKeysRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| limit | [uint32](#uint32) | | Max number of items to return. |
|
||||
| offset | [uint32](#uint32) | | Offset in the result-set (for pagination). |
|
||||
| is_admin | [bool](#bool) | | Return only admin keys. |
|
||||
| tenant_id | [string](#string) | | Filter on tenant ID. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-ListApiKeysResponse"></a>
|
||||
|
||||
### ListApiKeysResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| total_count | [uint32](#uint32) | | Total number of API keys. |
|
||||
| result | [ApiKey](#api-ApiKey) | repeated | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-LogItem"></a>
|
||||
|
||||
### LogItem
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [string](#string) | | ID. |
|
||||
| time | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Timestamp. |
|
||||
| description | [string](#string) | | Message. |
|
||||
| body | [string](#string) | | Body. |
|
||||
| properties | [LogItem.PropertiesEntry](#api-LogItem-PropertiesEntry) | repeated | Properties. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-LogItem-PropertiesEntry"></a>
|
||||
|
||||
### LogItem.PropertiesEntry
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| key | [string](#string) | | |
|
||||
| value | [string](#string) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-LoginRequest"></a>
|
||||
|
||||
### LoginRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| email | [string](#string) | | Email of the user. |
|
||||
| password | [string](#string) | | Password of the user. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-LoginResponse"></a>
|
||||
|
||||
### LoginResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| jwt | [string](#string) | | The JWT tag to be used to access chirpstack-application-server interfaces. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-OpenIdConnect"></a>
|
||||
|
||||
### OpenIdConnect
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| enabled | [bool](#bool) | | Enable OpenId Connect authentication. |
|
||||
| login_url | [string](#string) | | Login url. |
|
||||
| login_label | [string](#string) | | Login label. |
|
||||
| logout_url | [string](#string) | | Logout url. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-OpenIdConnectLoginRequest"></a>
|
||||
|
||||
### OpenIdConnectLoginRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| code | [string](#string) | | OpenId Connect callback code. |
|
||||
| state | [string](#string) | | OpenId Connect callback state. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-OpenIdConnectLoginResponse"></a>
|
||||
|
||||
### OpenIdConnectLoginResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| token | [string](#string) | | Token to use for authentication. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-ProfileResponse"></a>
|
||||
|
||||
### ProfileResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| user | [User](#api-User) | | User object. |
|
||||
| tenants | [UserTenantLink](#api-UserTenantLink) | repeated | Tenants to which the user is associated. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-SettingsResponse"></a>
|
||||
|
||||
### SettingsResponse
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| openid_connect | [OpenIdConnect](#api-OpenIdConnect) | | OpenId Connect settings. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-StreamDeviceEventsRequest"></a>
|
||||
|
||||
### StreamDeviceEventsRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| dev_eui | [string](#string) | | Device EUI. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-StreamDeviceFramesRequest"></a>
|
||||
|
||||
### StreamDeviceFramesRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| dev_eui | [string](#string) | | Device EUI. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-StreamGatewayFramesRequest"></a>
|
||||
|
||||
### StreamGatewayFramesRequest
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| gateway_id | [string](#string) | | Gateway ID (EUI64). |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-UserTenantLink"></a>
|
||||
|
||||
### UserTenantLink
|
||||
Defines a tenant to which the user is associated.
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| created_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Created at timestamp. |
|
||||
| updated_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Last update timestamp. |
|
||||
| tenant_id | [string](#string) | | Tenant ID. |
|
||||
| is_admin | [bool](#bool) | | User is admin within the context of this tenant. There is no need to set the is_device_admin and is_gateway_admin flags. |
|
||||
| is_device_admin | [bool](#bool) | | User is able to modify device related resources (applications, device-profiles, devices, multicast-groups). |
|
||||
| is_gateway_admin | [bool](#bool) | | User is able to modify gateways. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="api-InternalService"></a>
|
||||
|
||||
### InternalService
|
||||
InternalService is the service providing API endpoints for internal usage.
|
||||
|
||||
| Method Name | Request Type | Response Type | Description |
|
||||
| ----------- | ------------ | ------------- | ------------|
|
||||
| Login | [LoginRequest](#api-LoginRequest) | [LoginResponse](#api-LoginResponse) | Log in a user |
|
||||
| Profile | [.google.protobuf.Empty](#google-protobuf-Empty) | [ProfileResponse](#api-ProfileResponse) | Get the current user's profile |
|
||||
| GlobalSearch | [GlobalSearchRequest](#api-GlobalSearchRequest) | [GlobalSearchResponse](#api-GlobalSearchResponse) | Perform a global search. |
|
||||
| CreateApiKey | [CreateApiKeyRequest](#api-CreateApiKeyRequest) | [CreateApiKeyResponse](#api-CreateApiKeyResponse) | CreateApiKey creates the given API key. |
|
||||
| DeleteApiKey | [DeleteApiKeyRequest](#api-DeleteApiKeyRequest) | [.google.protobuf.Empty](#google-protobuf-Empty) | DeleteApiKey deletes the API key. |
|
||||
| ListApiKeys | [ListApiKeysRequest](#api-ListApiKeysRequest) | [ListApiKeysResponse](#api-ListApiKeysResponse) | ListApiKeys lists the available API keys. |
|
||||
| Settings | [.google.protobuf.Empty](#google-protobuf-Empty) | [SettingsResponse](#api-SettingsResponse) | Get the global settings. |
|
||||
| OpenIdConnectLogin | [OpenIdConnectLoginRequest](#api-OpenIdConnectLoginRequest) | [OpenIdConnectLoginResponse](#api-OpenIdConnectLoginResponse) | OpenId Connect login. |
|
||||
| GetDevicesSummary | [GetDevicesSummaryRequest](#api-GetDevicesSummaryRequest) | [GetDevicesSummaryResponse](#api-GetDevicesSummaryResponse) | GetDevicesSummary returns an aggregated summary of the devices. |
|
||||
| GetGatewaysSummary | [GetGatewaysSummaryRequest](#api-GetGatewaysSummaryRequest) | [GetGatewaysSummaryResponse](#api-GetGatewaysSummaryResponse) | GetGatewaysSummary returns an aggregated summary of the gateways. |
|
||||
| StreamGatewayFrames | [StreamGatewayFramesRequest](#api-StreamGatewayFramesRequest) | [LogItem](#api-LogItem) stream | Stream frame for the given Gateway ID. |
|
||||
| StreamDeviceFrames | [StreamDeviceFramesRequest](#api-StreamDeviceFramesRequest) | [LogItem](#api-LogItem) stream | Stream frames for the given Device EUI. |
|
||||
| StreamDeviceEvents | [StreamDeviceEventsRequest](#api-StreamDeviceEventsRequest) | [LogItem](#api-LogItem) stream | Stream events for the given Device EUI. |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Scalar Value Types
|
||||
|
||||
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
|
||||
| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- |
|
||||
| <a name="double" /> double | | double | double | float | float64 | double | float | Float |
|
||||
| <a name="float" /> float | | float | float | float | float32 | float | float | Float |
|
||||
| <a name="int32" /> int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
|
||||
| <a name="int64" /> int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |
|
||||
| <a name="uint32" /> uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |
|
||||
| <a name="uint64" /> uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |
|
||||
| <a name="sint32" /> sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
|
||||
| <a name="sint64" /> sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |
|
||||
| <a name="fixed32" /> fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |
|
||||
| <a name="fixed64" /> fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |
|
||||
| <a name="sfixed32" /> sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
|
||||
| <a name="sfixed64" /> sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |
|
||||
| <a name="bool" /> bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass |
|
||||
| <a name="string" /> string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
|
||||
| <a name="bytes" /> bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |
|
||||
|
2
api/proto/api/application.proto
vendored
2
api/proto/api/application.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "ApplicationProto";
|
||||
|
2
api/proto/api/device.proto
vendored
2
api/proto/api/device.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "DeviceProto";
|
||||
|
13
api/proto/api/device_profile.proto
vendored
13
api/proto/api/device_profile.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "DeviceProfileProto";
|
||||
@ -54,6 +54,9 @@ message DeviceProfile {
|
||||
// Name.
|
||||
string name = 3;
|
||||
|
||||
// Description.
|
||||
string description = 26;
|
||||
|
||||
// Region.
|
||||
common.Region region = 4;
|
||||
|
||||
@ -69,11 +72,11 @@ message DeviceProfile {
|
||||
// Payload codec runtime.
|
||||
CodecRuntime payload_codec_runtime = 8;
|
||||
|
||||
// Payload codec encoder config.
|
||||
string payload_encoder_config = 9;
|
||||
// Payload codec script.
|
||||
string payload_codec_script = 9;
|
||||
|
||||
// Payload codec decoder config.
|
||||
string payload_decoder_config = 10;
|
||||
// Flush queue on device activation.
|
||||
bool flush_queue_on_activate = 10;
|
||||
|
||||
// Uplink interval (seconds).
|
||||
// This defines the expected uplink interval which the device uses for
|
||||
|
207
api/proto/api/device_profile_template.proto
vendored
Normal file
207
api/proto/api/device_profile_template.proto
vendored
Normal file
@ -0,0 +1,207 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "DeviceProfileTemplateProto";
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/empty.proto";
|
||||
import "common/common.proto";
|
||||
import "api/device_profile.proto";
|
||||
|
||||
// DeviceProfileTemplateService is the service providing API methods for managing device-profile templates.
|
||||
service DeviceProfileTemplateService {
|
||||
// Create the given device-profile template.
|
||||
rpc Create(CreateDeviceProfileTemplateRequest) returns (google.protobuf.Empty) {}
|
||||
|
||||
// Get the device-profile template for the given ID.
|
||||
rpc Get(GetDeviceProfileTemplateRequest) returns (GetDeviceProfileTemplateResponse) {}
|
||||
|
||||
// Update the given device-profile template.
|
||||
rpc Update(UpdateDeviceProfileTemplateRequest) returns (google.protobuf.Empty) {}
|
||||
|
||||
// Delete the device-profile template with the given ID.
|
||||
rpc Delete(DeleteDeviceProfileTemplateRequest) returns (google.protobuf.Empty) {}
|
||||
|
||||
// List the available device-profile templates.
|
||||
rpc List(ListDeviceProfileTemplatesRequest) returns (ListDeviceProfileTemplatesResponse) {}
|
||||
}
|
||||
|
||||
message DeviceProfileTemplate {
|
||||
// Device-profile template ID.
|
||||
string id = 1;
|
||||
|
||||
// Name.
|
||||
string name = 2;
|
||||
|
||||
// Description.
|
||||
string description = 3;
|
||||
|
||||
// Vendor.
|
||||
string vendor = 4;
|
||||
|
||||
// Firmware.
|
||||
string firmware = 5;
|
||||
|
||||
// Region.
|
||||
common.Region region = 6;
|
||||
|
||||
// LoRaWAN mac-version.
|
||||
common.MacVersion mac_version = 7;
|
||||
|
||||
// Regional parameters revision.
|
||||
common.RegParamsRevision reg_params_revision = 8;
|
||||
|
||||
// ADR algorithm ID.
|
||||
string adr_algorithm_id = 9;
|
||||
|
||||
// Payload codec runtime.
|
||||
CodecRuntime payload_codec_runtime = 10;
|
||||
|
||||
// Payload codec script.
|
||||
string payload_codec_script = 11;
|
||||
|
||||
// Flush queue on device activation.
|
||||
bool flush_queue_on_activate = 12;
|
||||
|
||||
// Uplink interval (seconds).
|
||||
// This defines the expected uplink interval which the device uses for
|
||||
// communication. When the uplink interval has expired and no uplink has
|
||||
// been received, the device is considered inactive.
|
||||
uint32 uplink_interval = 13;
|
||||
|
||||
// Device-status request interval (times / day).
|
||||
// This defines the times per day that ChirpStack will request the device-status
|
||||
// from the device.
|
||||
uint32 device_status_req_interval = 14;
|
||||
|
||||
// Supports OTAA.
|
||||
bool supports_otaa = 15;
|
||||
|
||||
// Supports Class B.
|
||||
bool supports_class_b = 16;
|
||||
|
||||
// Supports Class-C.
|
||||
bool supports_class_c = 17;
|
||||
|
||||
// Class-B timeout (seconds).
|
||||
// This is the maximum time ChirpStack will wait to receive an acknowledgement from the device (if requested).
|
||||
uint32 class_b_timeout = 18;
|
||||
|
||||
// Class-B ping-slot periodicity.
|
||||
uint32 class_b_ping_slot_period = 19;
|
||||
|
||||
// Class-B ping-slot DR.
|
||||
uint32 class_b_ping_slot_dr = 20;
|
||||
|
||||
// Class-B ping-slot freq (Hz).
|
||||
uint32 class_b_ping_slot_freq = 21;
|
||||
|
||||
// Class-C timeout (seconds).
|
||||
// This is the maximum time ChirpStack will wait to receive an acknowledgement from the device (if requested).
|
||||
uint32 class_c_timeout = 22;
|
||||
|
||||
// RX1 delay (for ABP).
|
||||
uint32 abp_rx1_delay = 23;
|
||||
|
||||
// RX1 DR offset (for ABP).
|
||||
uint32 abp_rx1_dr_offset = 24;
|
||||
|
||||
// RX2 DR (for ABP).
|
||||
uint32 abp_rx2_dr = 25;
|
||||
|
||||
// RX2 frequency (for ABP, Hz).
|
||||
uint32 abp_rx2_freq = 26;
|
||||
|
||||
// User defined tags.
|
||||
map<string, string> tags = 27;
|
||||
}
|
||||
|
||||
message DeviceProfileTemplateListItem {
|
||||
// Device-profile template ID.
|
||||
string id = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
|
||||
// Name.
|
||||
string name = 4;
|
||||
|
||||
// Vendor.
|
||||
string vendor = 5;
|
||||
|
||||
// Firmware.
|
||||
string firmware = 6;
|
||||
|
||||
// Region.
|
||||
common.Region region = 7;
|
||||
|
||||
// LoRaWAN mac-version.
|
||||
common.MacVersion mac_version = 8;
|
||||
|
||||
// Regional parameters revision.
|
||||
common.RegParamsRevision reg_params_revision = 9;
|
||||
|
||||
// Supports OTAA.
|
||||
bool supports_otaa = 10;
|
||||
|
||||
// Supports Class-B.
|
||||
bool supports_class_b = 11;
|
||||
|
||||
// Supports Class-C.
|
||||
bool supports_class_c = 12;
|
||||
|
||||
}
|
||||
|
||||
message CreateDeviceProfileTemplateRequest {
|
||||
// Object to create.
|
||||
DeviceProfileTemplate device_profile_template = 1;
|
||||
}
|
||||
|
||||
message GetDeviceProfileTemplateRequest {
|
||||
// ID.
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message GetDeviceProfileTemplateResponse {
|
||||
// Device-profile template object.
|
||||
DeviceProfileTemplate device_profile_template = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
}
|
||||
|
||||
message UpdateDeviceProfileTemplateRequest {
|
||||
// Object to update.
|
||||
DeviceProfileTemplate device_profile_template = 1;
|
||||
}
|
||||
|
||||
message DeleteDeviceProfileTemplateRequest {
|
||||
// ID.
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message ListDeviceProfileTemplatesRequest {
|
||||
// Max number of device-profile templates to return in the result-set.
|
||||
uint32 limit = 1;
|
||||
|
||||
// Offset in the result-set (for pagination).
|
||||
uint32 offset = 2;
|
||||
}
|
||||
|
||||
message ListDeviceProfileTemplatesResponse {
|
||||
// Total number of device-profile templates.
|
||||
uint32 total_count = 1;
|
||||
|
||||
// Result-set.
|
||||
repeated DeviceProfileTemplateListItem result = 2;
|
||||
}
|
12
api/proto/api/frame_log.proto
vendored
12
api/proto/api/frame_log.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "FrameLogProto";
|
||||
@ -16,10 +16,10 @@ message UplinkFrameLog {
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
gw.UplinkTXInfo tx_info = 2;
|
||||
gw.UplinkTxInfo tx_info = 2;
|
||||
|
||||
// RX meta-data.
|
||||
repeated gw.UplinkRXInfo rx_info = 3;
|
||||
repeated gw.UplinkRxInfo rx_info = 3;
|
||||
|
||||
// Message type.
|
||||
common.MType m_type = 4;
|
||||
@ -42,10 +42,10 @@ message DownlinkFrameLog {
|
||||
bytes phy_payload = 2;
|
||||
|
||||
// TX meta-data.
|
||||
gw.DownlinkTXInfo tx_info = 3;
|
||||
gw.DownlinkTxInfo tx_info = 3;
|
||||
|
||||
// Downlink ID (UUID).
|
||||
string downlink_id = 4;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 4;
|
||||
|
||||
// Gateway ID (EUI64).
|
||||
string gateway_id = 5;
|
||||
|
2
api/proto/api/gateway.proto
vendored
2
api/proto/api/gateway.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "GatewayProto";
|
||||
|
2
api/proto/api/internal.proto
vendored
2
api/proto/api/internal.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "InternalProto";
|
||||
|
2
api/proto/api/multicast_group.proto
vendored
2
api/proto/api/multicast_group.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "MulticastGroupProto";
|
||||
|
2
api/proto/api/tenant.proto
vendored
2
api/proto/api/tenant.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "InternalProto";
|
||||
|
2
api/proto/api/user.proto
vendored
2
api/proto/api/user.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "UserProto";
|
||||
|
248
api/proto/gw/gw.proto
vendored
248
api/proto/gw/gw.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package gw;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack-api/go/v4/gw";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/gw";
|
||||
option java_package = "io.chirpstack.api.gw";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "GatewayProto";
|
||||
@ -10,8 +10,17 @@ option java_outer_classname = "GatewayProto";
|
||||
import "common/common.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
|
||||
enum CodeRate {
|
||||
CR_UNDEFINED = 0;
|
||||
CR_4_5 = 1;
|
||||
CR_4_6 = 2;
|
||||
CR_4_7 = 3;
|
||||
CR_4_8 = 4;
|
||||
}
|
||||
|
||||
enum DownlinkTiming {
|
||||
// Send the downlink immediately.
|
||||
IMMEDIATELY = 0;
|
||||
@ -23,7 +32,6 @@ enum DownlinkTiming {
|
||||
GPS_EPOCH = 2;
|
||||
}
|
||||
|
||||
|
||||
enum FineTimestampType {
|
||||
// No fine-timestamp available.
|
||||
NONE = 0;
|
||||
@ -84,17 +92,17 @@ enum TxAckStatus {
|
||||
message Modulation {
|
||||
oneof parameters {
|
||||
// LoRa modulation information.
|
||||
LoRaModulationInfo lora = 3 [json_name = "loRa"];
|
||||
LoraModulationInfo lora = 3;
|
||||
|
||||
// FSK modulation information.
|
||||
FSKModulationInfo fsk = 4;
|
||||
FskModulationInfo fsk = 4;
|
||||
|
||||
// LR-FHSS modulation information.
|
||||
LRFHSSModulationInfo lr_fhss = 5 [json_name = "lrFHSS"];
|
||||
LrFhssModulationInfo lr_fhss = 5;
|
||||
}
|
||||
}
|
||||
|
||||
message UplinkTXInfo {
|
||||
message UplinkTxInfoLegacy {
|
||||
// Frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
@ -103,17 +111,25 @@ message UplinkTXInfo {
|
||||
|
||||
oneof modulation_info {
|
||||
// LoRa modulation information.
|
||||
LoRaModulationInfo lora_modulation_info = 3 [json_name = "loRaModulationInfo"];
|
||||
LoraModulationInfo lora_modulation_info = 3;
|
||||
|
||||
// FSK modulation information.
|
||||
FSKModulationInfo fsk_modulation_info = 4;
|
||||
FskModulationInfo fsk_modulation_info = 4;
|
||||
|
||||
// LR-FHSS modulation information.
|
||||
LRFHSSModulationInfo lr_fhss_modulation_info = 5 [json_name = "lrFHSSModulationInfo"];
|
||||
LrFhssModulationInfo lr_fhss_modulation_info = 5;
|
||||
}
|
||||
}
|
||||
|
||||
message LoRaModulationInfo {
|
||||
message UplinkTxInfo {
|
||||
// Frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 2;
|
||||
}
|
||||
|
||||
message LoraModulationInfo {
|
||||
// Bandwidth.
|
||||
uint32 bandwidth = 1;
|
||||
|
||||
@ -121,13 +137,16 @@ message LoRaModulationInfo {
|
||||
uint32 spreading_factor = 2;
|
||||
|
||||
// Code-rate.
|
||||
string code_rate = 3;
|
||||
string code_rate_legacy = 3;
|
||||
|
||||
// Code-rate.
|
||||
CodeRate code_rate = 5;
|
||||
|
||||
// Polarization inversion.
|
||||
bool polarization_inversion = 4;
|
||||
}
|
||||
|
||||
message FSKModulationInfo {
|
||||
message FskModulationInfo {
|
||||
// Frequency deviation.
|
||||
uint32 frequency_deviation = 1;
|
||||
|
||||
@ -135,7 +154,7 @@ message FSKModulationInfo {
|
||||
uint32 datarate = 2;
|
||||
}
|
||||
|
||||
message LRFHSSModulationInfo {
|
||||
message LrFhssModulationInfo {
|
||||
// Operating channel width (OCW) in Hz.
|
||||
uint32 operating_channel_width = 1;
|
||||
|
||||
@ -151,10 +170,10 @@ message EncryptedFineTimestamp {
|
||||
uint32 aes_key_index = 1;
|
||||
|
||||
// Encrypted 'main' fine-timestamp (ns precision part of the timestamp).
|
||||
bytes encrypted_ns = 2 [json_name = "encryptedNS"];
|
||||
bytes encrypted_ns = 2;
|
||||
|
||||
// FPGA ID.
|
||||
bytes fpga_id = 3 [json_name = "fpgaID"];
|
||||
bytes fpga_id = 3;
|
||||
}
|
||||
|
||||
message PlainFineTimestamp {
|
||||
@ -164,7 +183,7 @@ message PlainFineTimestamp {
|
||||
|
||||
message GatewayStats {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Gateway IP.
|
||||
string ip = 9;
|
||||
@ -183,7 +202,7 @@ message GatewayStats {
|
||||
uint32 rx_packets_received = 5;
|
||||
|
||||
// Number of radio packets received with valid PHY CRC.
|
||||
uint32 rx_packets_received_ok = 6 [json_name = "rxPacketsReceivedOK"];
|
||||
uint32 rx_packets_received_ok = 6;
|
||||
|
||||
// Number of downlink packets received for transmission.
|
||||
uint32 tx_packets_received = 7;
|
||||
@ -196,7 +215,7 @@ message GatewayStats {
|
||||
|
||||
// Stats ID (UUID).
|
||||
// Unique identifier for the gateway stats.
|
||||
bytes stats_id = 11 [json_name = "statsID"];
|
||||
bytes stats_id = 11;
|
||||
|
||||
// Tx packets per frequency.
|
||||
map<uint32, uint32> tx_packets_per_frequency = 12;
|
||||
@ -222,21 +241,21 @@ message PerModulationCount {
|
||||
uint32 count = 2;
|
||||
}
|
||||
|
||||
message UplinkRXInfo {
|
||||
message UplinkRxInfoLegacy {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// RX time (only set when the gateway has a GPS module).
|
||||
google.protobuf.Timestamp time = 2;
|
||||
|
||||
// RX time since GPS epoch (only set when the gateway has a GPS module).
|
||||
google.protobuf.Duration time_since_gps_epoch = 3 [json_name = "timeSinceGPSEpoch"];
|
||||
google.protobuf.Duration time_since_gps_epoch = 3;
|
||||
|
||||
// RSSI.
|
||||
int32 rssi = 5;
|
||||
|
||||
// LoRa SNR.
|
||||
double lora_snr = 6 [json_name = "loRaSNR"];
|
||||
double lora_snr = 6;
|
||||
|
||||
// Channel.
|
||||
uint32 channel = 7;
|
||||
@ -270,19 +289,60 @@ message UplinkRXInfo {
|
||||
|
||||
// Uplink ID (UUID bytes).
|
||||
// Unique and random ID which can be used to correlate the uplink across multiple logs.
|
||||
bytes uplink_id = 16 [json_name = "uplinkID"];
|
||||
bytes uplink_id = 16;
|
||||
|
||||
// CRC status.
|
||||
CRCStatus crc_status = 17 [json_name = "crcStatus"];
|
||||
CRCStatus crc_status = 17;
|
||||
|
||||
// Optional meta-data map.
|
||||
map<string, string> metadata = 18;
|
||||
}
|
||||
|
||||
message DownlinkTXInfo {
|
||||
message UplinkRxInfo {
|
||||
// Gateway ID.
|
||||
string gateway_id = 1;
|
||||
|
||||
// Uplink ID.
|
||||
uint32 uplink_id = 2;
|
||||
|
||||
// RX time (only set when the gateway has a GPS module).
|
||||
google.protobuf.Timestamp time = 3;
|
||||
|
||||
// RX time since GPS epoch (only set when the gateway has a GPS module).
|
||||
google.protobuf.Duration time_since_gps_epoch = 4;
|
||||
|
||||
// Fine-timestamp.
|
||||
// This timestamp can be used for TDOA based geolocation.
|
||||
google.protobuf.Duration fine_time_since_gps_epoch = 5;
|
||||
|
||||
// RSSI.
|
||||
int32 rssi = 6;
|
||||
|
||||
// SNR.
|
||||
// Note: only available for LoRa modulation.
|
||||
float snr = 7;
|
||||
|
||||
// Board.
|
||||
uint32 board = 8;
|
||||
|
||||
// Antenna.
|
||||
uint32 antenna = 9;
|
||||
|
||||
// Location.
|
||||
common.Location location = 10;
|
||||
|
||||
// Gateway specific context.
|
||||
// This value must be returned to the gateway on (Class-A) downlink.
|
||||
bytes context = 11;
|
||||
|
||||
// Properties.
|
||||
google.protobuf.Struct metadata = 12;
|
||||
}
|
||||
|
||||
message DownlinkTxInfoLegacy {
|
||||
// Gateway ID.
|
||||
// Deprecated: replaced by gateway_id in DownlinkFrame.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// TX frequency (in Hz).
|
||||
uint32 frequency = 5;
|
||||
@ -295,10 +355,10 @@ message DownlinkTXInfo {
|
||||
|
||||
oneof modulation_info {
|
||||
// LoRa modulation information.
|
||||
LoRaModulationInfo lora_modulation_info = 8 [json_name = "loRaModulationInfo"];
|
||||
LoraModulationInfo lora_modulation_info = 8;
|
||||
|
||||
// FSK modulation information.
|
||||
FSKModulationInfo fsk_modulation_info = 9;
|
||||
FskModulationInfo fsk_modulation_info = 9;
|
||||
}
|
||||
|
||||
// The board identifier for emitting the frame.
|
||||
@ -326,6 +386,43 @@ message DownlinkTXInfo {
|
||||
bytes context = 16;
|
||||
}
|
||||
|
||||
message DownlinkTxInfo {
|
||||
// TX frequency (in Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// TX power (in dBm).
|
||||
int32 power = 2;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 3;
|
||||
|
||||
// The board identifier for emitting the frame.
|
||||
uint32 board = 4;
|
||||
|
||||
// The antenna identifier for emitting the frame.
|
||||
uint32 antenna = 5;
|
||||
|
||||
// Timing.
|
||||
Timing timing = 6;
|
||||
|
||||
// Gateway specific context.
|
||||
// In case of a Class-A downlink, this contains a copy of the uplink context.
|
||||
bytes context = 7;
|
||||
}
|
||||
|
||||
message Timing {
|
||||
oneof parameters {
|
||||
// Immediately timing information.
|
||||
ImmediatelyTimingInfo immediately = 1;
|
||||
|
||||
// Context based delay timing information.
|
||||
DelayTimingInfo delay = 2;
|
||||
|
||||
// GPS Epoch timing information.
|
||||
GPSEpochTimingInfo gps_epoch = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message ImmediatelyTimingInfo {
|
||||
// Not implemented yet.
|
||||
}
|
||||
@ -339,18 +436,24 @@ message DelayTimingInfo {
|
||||
|
||||
message GPSEpochTimingInfo {
|
||||
// Duration since GPS Epoch.
|
||||
google.protobuf.Duration time_since_gps_epoch = 1 [json_name = "timeSinceGPSEpoch"];
|
||||
google.protobuf.Duration time_since_gps_epoch = 1;
|
||||
}
|
||||
|
||||
message UplinkFrame {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
UplinkTXInfo tx_info = 2;
|
||||
// TX meta-data (deprecated).
|
||||
UplinkTxInfoLegacy tx_info_legacy = 2;
|
||||
|
||||
// RX meta-data.
|
||||
UplinkRXInfo rx_info = 3;
|
||||
// RX meta-data (deprecated).
|
||||
UplinkRxInfoLegacy rx_info_legacy = 3;
|
||||
|
||||
// Tx meta-data.
|
||||
UplinkTxInfo tx_info = 4;
|
||||
|
||||
// Rx meta-data.
|
||||
UplinkRxInfo rx_info = 5;
|
||||
}
|
||||
|
||||
message UplinkFrameSet {
|
||||
@ -358,27 +461,19 @@ message UplinkFrameSet {
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
UplinkTXInfo tx_info = 2;
|
||||
UplinkTxInfo tx_info = 2;
|
||||
|
||||
// RX meta-data set.
|
||||
repeated UplinkRXInfo rx_info = 3;
|
||||
repeated UplinkRxInfo rx_info = 3;
|
||||
}
|
||||
|
||||
message DownlinkFrame {
|
||||
// PHYPayload.
|
||||
// Deprecated: replaced by items.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
// Deprecated: replaced by items.
|
||||
DownlinkTXInfo tx_info = 2;
|
||||
|
||||
// Token (uint16 value).
|
||||
// Deprecated: replaced by downlink_id.
|
||||
uint32 token = 3;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 3;
|
||||
|
||||
// Downlink ID (UUID).
|
||||
bytes downlink_id = 4 [json_name = "downlinkID"];
|
||||
// Deprecated: use downlink_id.
|
||||
bytes downlink_id_legacy = 4;
|
||||
|
||||
// Downlink frame items.
|
||||
// This makes it possible to send multiple downlink opportunities to the
|
||||
@ -388,47 +483,52 @@ message DownlinkFrame {
|
||||
repeated DownlinkFrameItem items = 5;
|
||||
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 6 [json_name = "gatewayID"];
|
||||
// Deprecated: use gateway_id
|
||||
bytes gateway_id_legacy = 6;
|
||||
|
||||
// Gateway ID.
|
||||
string gateway_id = 7;
|
||||
}
|
||||
|
||||
message DownlinkFrameItem {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
DownlinkTXInfo tx_info = 2;
|
||||
// TX meta-data (deprecated).
|
||||
DownlinkTxInfoLegacy tx_info_legacy = 2;
|
||||
|
||||
// Tx meta-data.
|
||||
DownlinkTxInfo tx_info = 3;
|
||||
}
|
||||
|
||||
message DownlinkTXAck {
|
||||
message DownlinkTxAck {
|
||||
// Gateway ID (deprecated).
|
||||
bytes gateway_id_legacy = 1;
|
||||
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
string gateway_id = 6;
|
||||
|
||||
// Token (uint16 value).
|
||||
// Deprecated: replaced by downlink_id.
|
||||
uint32 token = 2;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 2;
|
||||
|
||||
// Error.
|
||||
// Deprecated: replaced by items.
|
||||
string error = 3;
|
||||
|
||||
// Downlink ID (UUID).
|
||||
bytes downlink_id = 4 [json_name = "downlinkID"];
|
||||
// Downlink ID (deprecated).
|
||||
bytes downlink_id_legacy = 4;
|
||||
|
||||
// Downlink frame items.
|
||||
// This list has the same length as the request and indicates which
|
||||
// downlink frame has been emitted of the requested list (or why it failed).
|
||||
// Note that at most one item has a positive acknowledgement.
|
||||
repeated DownlinkTXAckItem items = 5;
|
||||
repeated DownlinkTxAckItem items = 5;
|
||||
}
|
||||
|
||||
message DownlinkTXAckItem {
|
||||
message DownlinkTxAckItem {
|
||||
// The Ack status of this item.
|
||||
TxAckStatus status = 1;
|
||||
}
|
||||
|
||||
message GatewayConfiguration {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Configuration version.
|
||||
string version = 2;
|
||||
@ -449,7 +549,7 @@ message ChannelConfiguration {
|
||||
|
||||
oneof modulation_config {
|
||||
// LoRa modulation config.
|
||||
LoRaModulationConfig lora_modulation_config = 3 [json_name = "loRaModulationConfig"];
|
||||
LoRaModulationConfig lora_modulation_config = 3;
|
||||
|
||||
// FSK modulation config.
|
||||
FSKModulationConfig fsk_modulation_config = 4;
|
||||
@ -480,7 +580,7 @@ message FSKModulationConfig {
|
||||
|
||||
message GatewayCommandExecRequest {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Command to execute.
|
||||
// This command must be pre-configured in the LoRa Gateway Bridge configuration.
|
||||
@ -489,7 +589,7 @@ message GatewayCommandExecRequest {
|
||||
// Execution request ID (UUID).
|
||||
// The same token will be returned when the execution of the command has
|
||||
// completed.
|
||||
bytes ExecId = 3 [json_name = "execID"];
|
||||
bytes ExecId = 3;
|
||||
|
||||
// Standard input.
|
||||
bytes stdin = 4;
|
||||
@ -500,10 +600,10 @@ message GatewayCommandExecRequest {
|
||||
|
||||
message GatewayCommandExecResponse {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Execution request ID (UUID).
|
||||
bytes exec_id = 2 [json_name = "execID"];
|
||||
bytes exec_id = 2;
|
||||
|
||||
// Standard output.
|
||||
bytes stdout = 3;
|
||||
@ -520,10 +620,10 @@ message GatewayCommandExecResponse {
|
||||
// integrated with the ChirpStack Gateway Bridge.
|
||||
message RawPacketForwarderEvent {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Raw ID (UUID).
|
||||
bytes raw_id = 2 [json_name = "rawID"];
|
||||
bytes raw_id = 2;
|
||||
|
||||
// Payload contains the raw payload.
|
||||
bytes payload = 3;
|
||||
@ -534,10 +634,10 @@ message RawPacketForwarderEvent {
|
||||
// integrated with the ChirpStack Gateway Bridge.
|
||||
message RawPacketForwarderCommand {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Raw ID (UUID).
|
||||
bytes raw_id = 2 [json_name = "rawID"];
|
||||
bytes raw_id = 2;
|
||||
|
||||
// Payload contains the raw payload.
|
||||
bytes payload = 3;
|
||||
@ -546,7 +646,7 @@ message RawPacketForwarderCommand {
|
||||
// ConnState contains the connection state of a gateway.
|
||||
message ConnState {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
enum State {
|
||||
OFFLINE = 0;
|
||||
|
202
api/proto/gw/gw_new.proto
vendored
202
api/proto/gw/gw_new.proto
vendored
@ -1,202 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package gw;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/gw";
|
||||
option java_package = "io.chirpstack.api.gw";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "GatewayProto";
|
||||
|
||||
import "common/common.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
|
||||
enum CodeRate {
|
||||
CR_UNDEFINED = 0;
|
||||
CR_4_5 = 1;
|
||||
CR_4_6 = 2;
|
||||
CR_4_7 = 3;
|
||||
CR_4_8 = 4;
|
||||
}
|
||||
|
||||
message UplinkFrame {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
UplinkTxParams tx_params = 2;
|
||||
|
||||
// RX meta-data.
|
||||
UplinkRxParams rx_params = 3;
|
||||
}
|
||||
|
||||
message DownlinkFrame {
|
||||
// Gateway ID.
|
||||
string gateway_id = 1;
|
||||
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 2;
|
||||
|
||||
// Downlink frame items.
|
||||
// This makes it possible to send multiple downlink opportunities to the
|
||||
// gateway at once (e.g. RX1 and RX2 in LoRaWAN). The first item has the
|
||||
// highest priority, the last the lowest. The gateway will emit at most
|
||||
// one item.
|
||||
repeated DownlinkFrameItem items = 3;
|
||||
}
|
||||
|
||||
message UplinkTxParams {
|
||||
// Frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 2;
|
||||
}
|
||||
|
||||
message Modulation {
|
||||
oneof parameters {
|
||||
// LoRa.
|
||||
LoraModulationParams lora = 1;
|
||||
|
||||
// FSK.
|
||||
FskModulationParams fsk = 2;
|
||||
|
||||
// LR-FHSS.
|
||||
LrFhssModulationParams lr_fhss = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message LoraModulationParams {
|
||||
// Bandwidth (Hz).
|
||||
uint32 bandwidth = 1;
|
||||
|
||||
// Spreading-factor.
|
||||
uint32 spreading_factor = 2;
|
||||
|
||||
// Polarization inversion.
|
||||
bool polarization_inversion = 3;
|
||||
|
||||
// Code-rate.
|
||||
CodeRate code_rate = 4;
|
||||
}
|
||||
|
||||
message FskModulationParams {
|
||||
// Frequency deviation.
|
||||
uint32 frequency_deviation = 1;
|
||||
|
||||
// FSK datarate (bits / sec).
|
||||
uint32 datarate = 2;
|
||||
}
|
||||
|
||||
message LrFhssModulationParams {
|
||||
// Operating channel width (OCW) in Hz.
|
||||
uint32 operating_channel_width = 1;
|
||||
|
||||
// Code-rate.
|
||||
CodeRate code_rate = 2;
|
||||
|
||||
// Hopping grid number of steps.
|
||||
uint32 grid_steps = 3;
|
||||
}
|
||||
|
||||
message UplinkRxParams {
|
||||
// Gateway ID (EUI).
|
||||
string gateway_id = 1;
|
||||
|
||||
// Uplink ID (UUID).
|
||||
uint32 uplink_id = 2;
|
||||
|
||||
// Rx time.
|
||||
google.protobuf.Timestamp time = 3;
|
||||
|
||||
// RX time since GPS epoch (only set when the gateway has a GPS module).
|
||||
google.protobuf.Duration time_since_gps_epoch = 4;
|
||||
|
||||
// Fine-timestamp.
|
||||
// This timestamp can be used for TDOA based geolocation.
|
||||
google.protobuf.Duration fine_time_since_gps_epoch = 5;
|
||||
|
||||
// RSSI.
|
||||
int32 rssi = 6;
|
||||
|
||||
// SNR.
|
||||
// Note: only available for LoRa modulation.
|
||||
float snr = 7;
|
||||
|
||||
// Board.
|
||||
uint32 board = 8;
|
||||
|
||||
// Antenna.
|
||||
uint32 antenna = 9;
|
||||
|
||||
// Location.
|
||||
common.Location location = 10;
|
||||
|
||||
// Gateway specific context.
|
||||
// This value must be returned to the gateway on (Class-A) downlink.
|
||||
bytes context = 11;
|
||||
|
||||
// Properties.
|
||||
google.protobuf.Struct properties = 12;
|
||||
}
|
||||
|
||||
message DownlinkFrameItem {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// Tx parameters.
|
||||
DownlinkTxParams tx_params = 2;
|
||||
}
|
||||
|
||||
message DownlinkTxParams {
|
||||
// Tx frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// Tx power (dBm).
|
||||
int32 power = 2;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 3;
|
||||
|
||||
// The board identifier for emitting the frame.
|
||||
uint32 board = 4;
|
||||
|
||||
// The antenna identifier for emitting the frame.
|
||||
uint32 antenna = 5;
|
||||
|
||||
// Downlink timing.
|
||||
DownlinkTiming timing = 6;
|
||||
|
||||
// Gateway specific context.
|
||||
// In case of a Class-A downlink, this must contain a copy of the uplink context.
|
||||
bytes context = 7;
|
||||
}
|
||||
|
||||
message DownlinkTiming {
|
||||
oneof parameters {
|
||||
// Immediately timing information.
|
||||
DownlinkTimingImmediately immediately = 1;
|
||||
|
||||
// Delay timing information.
|
||||
DownlinkTimingDelay delay = 2;
|
||||
|
||||
// GPS epoch timing information.
|
||||
DownlinkTimingGpsEpoch gps_epoch = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message DownlinkTimingImmediately {
|
||||
// No fields implemented yet.
|
||||
}
|
||||
|
||||
message DownlinkTimingDelay {
|
||||
// Delay relative to provided context.
|
||||
google.protobuf.Duration delay = 1;
|
||||
}
|
||||
|
||||
message DownlinkTimingGpsEpoch {
|
||||
// Duration since GPS epoch.
|
||||
google.protobuf.Duration time_since_gps_epoch = 1;
|
||||
}
|
35
api/proto/integration/integration.proto
vendored
35
api/proto/integration/integration.proto
vendored
@ -119,10 +119,10 @@ message UplinkEvent {
|
||||
google.protobuf.Struct object = 11;
|
||||
|
||||
// Receiving gateway RX info.
|
||||
repeated gw.UplinkRXInfo rx_info = 12;
|
||||
repeated gw.UplinkRxInfo rx_info = 12;
|
||||
|
||||
// TX info.
|
||||
gw.UplinkTXInfo tx_info = 13;
|
||||
gw.UplinkTxInfo tx_info = 13;
|
||||
}
|
||||
|
||||
// JoinEvent is the message sent when a device joined the network.
|
||||
@ -167,8 +167,8 @@ message AckEvent {
|
||||
// for transmission. As a downlink can be scheduled in the future, this event
|
||||
// does not confirm that the message has already been transmitted.
|
||||
message TxAckEvent {
|
||||
// Downlink ID (UUID).
|
||||
string downlink_id = 1;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 1;
|
||||
|
||||
// Timestamp.
|
||||
google.protobuf.Timestamp time = 2;
|
||||
@ -186,7 +186,7 @@ message TxAckEvent {
|
||||
string gateway_id = 6;
|
||||
|
||||
// TX info.
|
||||
gw.DownlinkTXInfo tx_info = 7;
|
||||
gw.DownlinkTxInfo tx_info = 7;
|
||||
}
|
||||
|
||||
// LogEvent is the message sent when a device-related log was sent.
|
||||
@ -276,3 +276,28 @@ message IntegrationEvent {
|
||||
// Struct containing the event object.
|
||||
google.protobuf.Struct object = 6;
|
||||
}
|
||||
|
||||
// DownlinkCommand is the command to enqueue a downlink payload for the given
|
||||
// device.
|
||||
message DownlinkCommand {
|
||||
// ID (UUID).
|
||||
// If left blank, a random UUID will be generated.
|
||||
string id = 1;
|
||||
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 2;
|
||||
|
||||
// Confirmed.
|
||||
bool confirmed = 3;
|
||||
|
||||
// FPort (must be > 0).
|
||||
uint32 f_port = 4;
|
||||
|
||||
// Data.
|
||||
// Or use the json_object field when a codec has been configured.
|
||||
bytes data = 5;
|
||||
|
||||
// Only use this when a codec has been configured that can encode this
|
||||
// object to bytes.
|
||||
google.protobuf.Struct object = 6;
|
||||
}
|
||||
|
6
api/proto/internal/internal.proto
vendored
6
api/proto/internal/internal.proto
vendored
@ -199,8 +199,8 @@ message DeviceGatewayRxInfoItem {
|
||||
}
|
||||
|
||||
message DownlinkFrame {
|
||||
// Downlink ID (UUID).
|
||||
bytes downlink_id = 1;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 1;
|
||||
|
||||
// DevEUI.
|
||||
bytes dev_eui = 2;
|
||||
@ -231,5 +231,5 @@ message LoraCloudGeolocBuffer {
|
||||
|
||||
message LoraCloudGeolocBufferUplink {
|
||||
// RxInfo set for a single uplink.
|
||||
repeated gw.UplinkRXInfo rx_info = 1;
|
||||
repeated gw.UplinkRxInfo rx_info = 1;
|
||||
}
|
||||
|
8
api/proto/meta/meta.proto
vendored
8
api/proto/meta/meta.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package meta;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack-api/go/v4/meta";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/meta";
|
||||
option java_package = "io.chirpstack.api.meta";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "MetaProto";
|
||||
@ -16,10 +16,10 @@ message UplinkMeta {
|
||||
string dev_eui = 1;
|
||||
|
||||
// TX meta-data.
|
||||
gw.UplinkTXInfo tx_info = 2;
|
||||
gw.UplinkTxInfo tx_info = 2;
|
||||
|
||||
// RX meta-data.
|
||||
repeated gw.UplinkRXInfo rx_info = 3;
|
||||
repeated gw.UplinkRxInfo rx_info = 3;
|
||||
|
||||
// PHYPayload byte count.
|
||||
uint32 phy_payload_byte_count = 4;
|
||||
@ -42,7 +42,7 @@ message DownlinkMeta {
|
||||
string multicast_group_id = 2;
|
||||
|
||||
// TX meta-data.
|
||||
gw.DownlinkTXInfo tx_info = 3;
|
||||
gw.DownlinkTxInfo tx_info = 3;
|
||||
|
||||
// PHYPayload byte count.
|
||||
uint32 phy_payload_byte_count = 4;
|
||||
|
6
api/python/Makefile
vendored
6
api/python/Makefile
vendored
@ -4,14 +4,11 @@ PROTOC := python -m grpc_tools.protoc
|
||||
PROTOC_ARGS := -I=/googleapis -I=proto --python_out=src --grpc_python_out=src
|
||||
PACKAGE_NAME := import \"chirpstack-api/
|
||||
|
||||
all: requirements pre-build version common gw api integration meta
|
||||
all: requirements pre-build common gw api integration meta
|
||||
|
||||
requirements:
|
||||
pip install grpcio-tools
|
||||
|
||||
version:
|
||||
sed -i 's/version.*/version = "$(VERSION)",/g' ./src/setup.py
|
||||
|
||||
# See: https://github.com/protocolbuffers/protobuf/issues/7061
|
||||
pre-build:
|
||||
rm -rf proto
|
||||
@ -35,6 +32,7 @@ api:
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/tenant.proto
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/application.proto
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/device_profile.proto
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/device_profile_template.proto
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/device.proto
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/gateway.proto
|
||||
$(PROTOC) ${PROTOC_ARGS} chirpstack-api/api/frame_log.proto
|
||||
|
2
api/python/src/setup.py
vendored
2
api/python/src/setup.py
vendored
@ -18,7 +18,7 @@ CLASSIFIERS = [
|
||||
|
||||
setup(
|
||||
name='chirpstack-api',
|
||||
version = "4.0.0",
|
||||
version = "4.0.0-test.6",
|
||||
url='https://github.com/brocaar/chirpstack-api',
|
||||
author='Orne Brocaar',
|
||||
author_email='info@brocaar.com',
|
||||
|
276
api/rust/Cargo.lock
generated
vendored
276
api/rust/Cargo.lock
generated
vendored
@ -2,15 +2,6 @@
|
||||
# It is not intended for manual editing.
|
||||
version = 3
|
||||
|
||||
[[package]]
|
||||
name = "aho-corasick"
|
||||
version = "0.7.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "anyhow"
|
||||
version = "1.0.45"
|
||||
@ -55,6 +46,49 @@ version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
|
||||
|
||||
[[package]]
|
||||
name = "axum"
|
||||
version = "0.5.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "47594e438a243791dba58124b6669561f5baa14cb12046641d8008bf035e5a25"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"axum-core",
|
||||
"bitflags",
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http",
|
||||
"http-body",
|
||||
"hyper",
|
||||
"itoa 1.0.1",
|
||||
"matchit",
|
||||
"memchr",
|
||||
"mime",
|
||||
"percent-encoding",
|
||||
"pin-project-lite",
|
||||
"serde",
|
||||
"sync_wrapper",
|
||||
"tokio",
|
||||
"tower",
|
||||
"tower-http",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "axum-core"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9a671c9ae99531afdd5d3ee8340b8da547779430689947144c140fc74a740244"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http",
|
||||
"http-body",
|
||||
"mime",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "base64"
|
||||
version = "0.13.0"
|
||||
@ -73,6 +107,12 @@ version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8"
|
||||
|
||||
[[package]]
|
||||
name = "cc"
|
||||
version = "1.0.73"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
|
||||
|
||||
[[package]]
|
||||
name = "cfg-if"
|
||||
version = "1.0.0"
|
||||
@ -81,13 +121,15 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
|
||||
[[package]]
|
||||
name = "chirpstack_api"
|
||||
version = "4.0.0"
|
||||
version = "4.0.0-test.5"
|
||||
dependencies = [
|
||||
"hex",
|
||||
"pbjson",
|
||||
"pbjson-build",
|
||||
"pbjson-types",
|
||||
"prost",
|
||||
"prost-types",
|
||||
"rand",
|
||||
"serde",
|
||||
"tokio",
|
||||
"tonic",
|
||||
@ -100,11 +142,17 @@ version = "0.4.19"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"num-integer",
|
||||
"num-traits",
|
||||
"time",
|
||||
"winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cmake"
|
||||
version = "0.1.48"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e8ad8cef104ac57b68b89df3208164d228503abbdce70f6880ffa3d970e7443a"
|
||||
dependencies = [
|
||||
"cc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -173,7 +221,7 @@ checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"libc",
|
||||
"wasi",
|
||||
"wasi 0.10.2+wasi-snapshot-preview1",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -191,7 +239,7 @@ dependencies = [
|
||||
"indexmap",
|
||||
"slab",
|
||||
"tokio",
|
||||
"tokio-util",
|
||||
"tokio-util 0.6.9",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
@ -203,12 +251,15 @@ checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
|
||||
|
||||
[[package]]
|
||||
name = "heck"
|
||||
version = "0.3.3"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
|
||||
dependencies = [
|
||||
"unicode-segmentation",
|
||||
]
|
||||
checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
|
||||
|
||||
[[package]]
|
||||
name = "hex"
|
||||
version = "0.4.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
|
||||
|
||||
[[package]]
|
||||
name = "http"
|
||||
@ -218,7 +269,7 @@ checksum = "1323096b05d41827dadeaee54c9981958c0f94e670bc94ed80037d1a7b8b186b"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"fnv",
|
||||
"itoa",
|
||||
"itoa 0.4.8",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -232,6 +283,12 @@ dependencies = [
|
||||
"pin-project-lite",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "http-range-header"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29"
|
||||
|
||||
[[package]]
|
||||
name = "httparse"
|
||||
version = "1.5.1"
|
||||
@ -259,7 +316,7 @@ dependencies = [
|
||||
"http-body",
|
||||
"httparse",
|
||||
"httpdate",
|
||||
"itoa",
|
||||
"itoa 0.4.8",
|
||||
"pin-project-lite",
|
||||
"socket2",
|
||||
"tokio",
|
||||
@ -305,6 +362,12 @@ version = "0.4.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
|
||||
|
||||
[[package]]
|
||||
name = "itoa"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
|
||||
|
||||
[[package]]
|
||||
name = "lazy_static"
|
||||
version = "1.4.0"
|
||||
@ -313,9 +376,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.107"
|
||||
version = "0.2.124"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fbe5e23404da5b4f555ef85ebed98fb4083e55a00c317800bc2a50ede9f3d219"
|
||||
checksum = "21a41fed9d98f27ab1c6d161da622a4fa35e8a54a8adc24bbf3ddd0ef70b0e50"
|
||||
|
||||
[[package]]
|
||||
name = "log"
|
||||
@ -326,6 +389,12 @@ dependencies = [
|
||||
"cfg-if",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "matchit"
|
||||
version = "0.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb"
|
||||
|
||||
[[package]]
|
||||
name = "memchr"
|
||||
version = "2.4.1"
|
||||
@ -333,15 +402,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
|
||||
|
||||
[[package]]
|
||||
name = "mio"
|
||||
version = "0.7.14"
|
||||
name = "mime"
|
||||
version = "0.3.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc"
|
||||
checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
|
||||
|
||||
[[package]]
|
||||
name = "mio"
|
||||
version = "0.8.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "52da4364ffb0e4fe33a9841a98a3f3014fb964045ce4f7a45a398243c8d6b0c9"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"log",
|
||||
"miow",
|
||||
"ntapi",
|
||||
"wasi 0.11.0+wasi-snapshot-preview1",
|
||||
"winapi",
|
||||
]
|
||||
|
||||
@ -390,9 +466,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "pbjson"
|
||||
version = "0.2.1"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "12f64965beef9b7276dd811b81cce49569430a73ce1586aa121cb4ef9e0f498f"
|
||||
checksum = "d86c0a61b93c50f35af5d8a4f134790f47cbebf8803a7219dd1e7238cd1af022"
|
||||
dependencies = [
|
||||
"base64",
|
||||
"serde",
|
||||
@ -400,9 +476,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "pbjson-build"
|
||||
version = "0.2.1"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1d726efd7bfb8725c7100c29cb723eaa865b5e56cd41b723f193436e404c07f5"
|
||||
checksum = "956a449e8a85fc040e9f8cd8fd4dd2e68059d179092401f0d8570ba059f76dae"
|
||||
dependencies = [
|
||||
"heck",
|
||||
"itertools",
|
||||
@ -412,9 +488,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "pbjson-types"
|
||||
version = "0.2.1"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d501adb5dc9774145e21cf497e62641d6b4c7f9db490c52388e26a0f966c7ea8"
|
||||
checksum = "2c20bd6ec3b4ba0073e7e5a1a770abd95723b431bf0e1941d2dd8aace9ffb97f"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"chrono",
|
||||
@ -479,6 +555,16 @@ version = "0.2.15"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ed0cfbc8191465bed66e1718596ee0b0b35d5ee1f41c5df2189d0fe8bde535ba"
|
||||
|
||||
[[package]]
|
||||
name = "prettyplease"
|
||||
version = "0.1.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3b83ec2d0af5c5c556257ff52c9f98934e243b9fd39604bfb2a9b75ec2e97f18"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"syn",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro2"
|
||||
version = "1.0.32"
|
||||
@ -490,9 +576,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "prost"
|
||||
version = "0.9.0"
|
||||
version = "0.10.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001"
|
||||
checksum = "a07b0857a71a8cb765763950499cae2413c3f9cede1133478c43600d9e146890"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"prost-derive",
|
||||
@ -500,11 +586,13 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "prost-build"
|
||||
version = "0.9.0"
|
||||
version = "0.10.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5"
|
||||
checksum = "120fbe7988713f39d780a58cf1a7ef0d7ef66c6d87e5aa3438940c05357929f4"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"cfg-if",
|
||||
"cmake",
|
||||
"heck",
|
||||
"itertools",
|
||||
"lazy_static",
|
||||
@ -520,9 +608,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "prost-derive"
|
||||
version = "0.9.0"
|
||||
version = "0.10.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe"
|
||||
checksum = "7b670f45da57fb8542ebdbb6105a925fe571b67f9e7ed9f47a06a84e72b4e7cc"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"itertools",
|
||||
@ -533,9 +621,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "prost-types"
|
||||
version = "0.9.0"
|
||||
version = "0.10.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "534b7a0e836e3c482d2693070f982e39e7611da9695d4d1f5a4b186b51faef0a"
|
||||
checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"prost",
|
||||
@ -601,12 +689,10 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "regex"
|
||||
version = "1.5.4"
|
||||
version = "1.5.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
|
||||
checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
|
||||
dependencies = [
|
||||
"aho-corasick",
|
||||
"memchr",
|
||||
"regex-syntax",
|
||||
]
|
||||
|
||||
@ -653,9 +739,9 @@ checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
|
||||
|
||||
[[package]]
|
||||
name = "socket2"
|
||||
version = "0.4.2"
|
||||
version = "0.4.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5dc90fe6c7be1a323296982db1836d1ea9e47b6839496dde9a541bc496df3516"
|
||||
checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"winapi",
|
||||
@ -663,15 +749,21 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "1.0.81"
|
||||
version = "1.0.91"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f2afee18b8beb5a596ecb4a2dce128c719b4ba399d34126b9e4396e3f9860966"
|
||||
checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"unicode-xid",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "sync_wrapper"
|
||||
version = "0.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "20518fe4a4c9acf048008599e464deb21beeae3d3578418951a189c235a7a9a8"
|
||||
|
||||
[[package]]
|
||||
name = "tempfile"
|
||||
version = "3.2.0"
|
||||
@ -686,28 +778,18 @@ dependencies = [
|
||||
"winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "time"
|
||||
version = "0.1.43"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tokio"
|
||||
version = "1.14.0"
|
||||
version = "1.17.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "70e992e41e0d2fb9f755b37446f20900f64446ef54874f40a60c78f021ac6144"
|
||||
checksum = "2af73ac49756f3f7c01172e34a23e5d0216f6c32333757c2c61feb2bbff5a5ee"
|
||||
dependencies = [
|
||||
"autocfg",
|
||||
"bytes",
|
||||
"libc",
|
||||
"memchr",
|
||||
"mio",
|
||||
"pin-project-lite",
|
||||
"socket2",
|
||||
"tokio-macros",
|
||||
"winapi",
|
||||
]
|
||||
@ -724,9 +806,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "tokio-macros"
|
||||
version = "1.6.0"
|
||||
version = "1.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c9efc1aba077437943f7515666aa2b882dfabfbfdf89c819ea75a8d6e9eaba5e"
|
||||
checksum = "b557f72f448c511a979e2564e55d74e6c4432fc96ff4f6241bc6bded342643b7"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@ -759,13 +841,28 @@ dependencies = [
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tonic"
|
||||
version = "0.6.1"
|
||||
name = "tokio-util"
|
||||
version = "0.7.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "24203b79cf2d68909da91178db3026e77054effba0c5d93deb870d3ca7b35afa"
|
||||
checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"futures-core",
|
||||
"futures-sink",
|
||||
"pin-project-lite",
|
||||
"tokio",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tonic"
|
||||
version = "0.7.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "30fb54bf1e446f44d870d260d99957e7d11fb9d0a0f5bd1a662ad1411cc103f9"
|
||||
dependencies = [
|
||||
"async-stream",
|
||||
"async-trait",
|
||||
"axum",
|
||||
"base64",
|
||||
"bytes",
|
||||
"futures-core",
|
||||
@ -781,7 +878,7 @@ dependencies = [
|
||||
"prost-derive",
|
||||
"tokio",
|
||||
"tokio-stream",
|
||||
"tokio-util",
|
||||
"tokio-util 0.7.1",
|
||||
"tower",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
@ -791,10 +888,11 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "tonic-build"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "88358bb1dcfeb62dcce85c63006cafb964b7be481d522b7e09589d4d1e718d2a"
|
||||
checksum = "4d17087af5c80e5d5fc8ba9878e60258065a0a757e35efe7a05b7904bece1943"
|
||||
dependencies = [
|
||||
"prettyplease",
|
||||
"proc-macro2",
|
||||
"prost-build",
|
||||
"quote",
|
||||
@ -803,9 +901,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "tower"
|
||||
version = "0.4.10"
|
||||
version = "0.4.12"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c00e500fff5fa1131c866b246041a6bf96da9c965f8fe4128cb1421f23e93c00"
|
||||
checksum = "9a89fd63ad6adf737582df5db40d286574513c69a11dac5214dc3b5603d6713e"
|
||||
dependencies = [
|
||||
"futures-core",
|
||||
"futures-util",
|
||||
@ -815,13 +913,31 @@ dependencies = [
|
||||
"rand",
|
||||
"slab",
|
||||
"tokio",
|
||||
"tokio-stream",
|
||||
"tokio-util",
|
||||
"tokio-util 0.7.1",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tower-http"
|
||||
version = "0.2.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "aba3f3efabf7fb41fae8534fc20a817013dd1c12cb45441efb6c82e6556b4cd8"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"bytes",
|
||||
"futures-core",
|
||||
"futures-util",
|
||||
"http",
|
||||
"http-body",
|
||||
"http-range-header",
|
||||
"pin-project-lite",
|
||||
"tower",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tower-layer"
|
||||
version = "0.3.1"
|
||||
@ -883,12 +999,6 @@ version = "0.2.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
|
||||
|
||||
[[package]]
|
||||
name = "unicode-segmentation"
|
||||
version = "1.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
|
||||
|
||||
[[package]]
|
||||
name = "unicode-xid"
|
||||
version = "0.2.2"
|
||||
@ -911,6 +1021,12 @@ version = "0.10.2+wasi-snapshot-preview1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
|
||||
|
||||
[[package]]
|
||||
name = "wasi"
|
||||
version = "0.11.0+wasi-snapshot-preview1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
||||
|
||||
[[package]]
|
||||
name = "which"
|
||||
version = "4.2.2"
|
||||
|
4
api/rust/Cargo.toml
vendored
4
api/rust/Cargo.toml
vendored
@ -1,7 +1,7 @@
|
||||
[package]
|
||||
name = "chirpstack_api"
|
||||
description = "ChirpStack Protobuf / gRPC API definitions."
|
||||
version = "4.0.0"
|
||||
version = "4.0.0-test.6"
|
||||
authors = ["Orne Brocaar <info@brocaar.com>"]
|
||||
license = "MIT"
|
||||
homepage = "https://www.chirpstack.io"
|
||||
@ -18,6 +18,8 @@ prost = "0.10"
|
||||
prost-types = "0.10"
|
||||
pbjson = "0.3"
|
||||
pbjson-types = "0.3"
|
||||
hex = "0.4"
|
||||
rand = "0.8"
|
||||
|
||||
tonic = { version = "0.7", features = ["codegen", "prost"], default-features = false }
|
||||
tokio = { version = "1.17", features = ["macros"], optional = true }
|
||||
|
5
api/rust/Makefile
vendored
5
api/rust/Makefile
vendored
@ -1,6 +1,6 @@
|
||||
.PHONY: proto version test
|
||||
|
||||
all: proto version test
|
||||
all: proto test
|
||||
|
||||
proto:
|
||||
rm -rf proto
|
||||
@ -10,9 +10,6 @@ proto:
|
||||
cp /googleapis/google/api/annotations.proto proto/google/google/api
|
||||
cp /googleapis/google/api/http.proto proto/google/google/api
|
||||
|
||||
version:
|
||||
sed -i 's/^version.*/version = "$(VERSION)"/g' ./Cargo.toml
|
||||
|
||||
test:
|
||||
cargo test
|
||||
|
||||
|
1
api/rust/build.rs
vendored
1
api/rust/build.rs
vendored
@ -136,6 +136,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
"api/tenant.proto",
|
||||
"api/application.proto",
|
||||
"api/device_profile.proto",
|
||||
"api/device_profile_template.proto",
|
||||
"api/device.proto",
|
||||
"api/gateway.proto",
|
||||
"api/frame_log.proto",
|
||||
|
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "ApplicationProto";
|
||||
|
2
api/rust/proto/chirpstack/api/device.proto
vendored
2
api/rust/proto/chirpstack/api/device.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "DeviceProto";
|
||||
|
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "DeviceProfileProto";
|
||||
@ -54,6 +54,9 @@ message DeviceProfile {
|
||||
// Name.
|
||||
string name = 3;
|
||||
|
||||
// Description.
|
||||
string description = 26;
|
||||
|
||||
// Region.
|
||||
common.Region region = 4;
|
||||
|
||||
@ -69,11 +72,11 @@ message DeviceProfile {
|
||||
// Payload codec runtime.
|
||||
CodecRuntime payload_codec_runtime = 8;
|
||||
|
||||
// Payload codec encoder config.
|
||||
string payload_encoder_config = 9;
|
||||
// Payload codec script.
|
||||
string payload_codec_script = 9;
|
||||
|
||||
// Payload codec decoder config.
|
||||
string payload_decoder_config = 10;
|
||||
// Flush queue on device activation.
|
||||
bool flush_queue_on_activate = 10;
|
||||
|
||||
// Uplink interval (seconds).
|
||||
// This defines the expected uplink interval which the device uses for
|
||||
|
207
api/rust/proto/chirpstack/api/device_profile_template.proto
vendored
Normal file
207
api/rust/proto/chirpstack/api/device_profile_template.proto
vendored
Normal file
@ -0,0 +1,207 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "DeviceProfileTemplateProto";
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/empty.proto";
|
||||
import "common/common.proto";
|
||||
import "api/device_profile.proto";
|
||||
|
||||
// DeviceProfileTemplateService is the service providing API methods for managing device-profile templates.
|
||||
service DeviceProfileTemplateService {
|
||||
// Create the given device-profile template.
|
||||
rpc Create(CreateDeviceProfileTemplateRequest) returns (google.protobuf.Empty) {}
|
||||
|
||||
// Get the device-profile template for the given ID.
|
||||
rpc Get(GetDeviceProfileTemplateRequest) returns (GetDeviceProfileTemplateResponse) {}
|
||||
|
||||
// Update the given device-profile template.
|
||||
rpc Update(UpdateDeviceProfileTemplateRequest) returns (google.protobuf.Empty) {}
|
||||
|
||||
// Delete the device-profile template with the given ID.
|
||||
rpc Delete(DeleteDeviceProfileTemplateRequest) returns (google.protobuf.Empty) {}
|
||||
|
||||
// List the available device-profile templates.
|
||||
rpc List(ListDeviceProfileTemplatesRequest) returns (ListDeviceProfileTemplatesResponse) {}
|
||||
}
|
||||
|
||||
message DeviceProfileTemplate {
|
||||
// Device-profile template ID.
|
||||
string id = 1;
|
||||
|
||||
// Name.
|
||||
string name = 2;
|
||||
|
||||
// Description.
|
||||
string description = 3;
|
||||
|
||||
// Vendor.
|
||||
string vendor = 4;
|
||||
|
||||
// Firmware.
|
||||
string firmware = 5;
|
||||
|
||||
// Region.
|
||||
common.Region region = 6;
|
||||
|
||||
// LoRaWAN mac-version.
|
||||
common.MacVersion mac_version = 7;
|
||||
|
||||
// Regional parameters revision.
|
||||
common.RegParamsRevision reg_params_revision = 8;
|
||||
|
||||
// ADR algorithm ID.
|
||||
string adr_algorithm_id = 9;
|
||||
|
||||
// Payload codec runtime.
|
||||
CodecRuntime payload_codec_runtime = 10;
|
||||
|
||||
// Payload codec script.
|
||||
string payload_codec_script = 11;
|
||||
|
||||
// Flush queue on device activation.
|
||||
bool flush_queue_on_activate = 12;
|
||||
|
||||
// Uplink interval (seconds).
|
||||
// This defines the expected uplink interval which the device uses for
|
||||
// communication. When the uplink interval has expired and no uplink has
|
||||
// been received, the device is considered inactive.
|
||||
uint32 uplink_interval = 13;
|
||||
|
||||
// Device-status request interval (times / day).
|
||||
// This defines the times per day that ChirpStack will request the device-status
|
||||
// from the device.
|
||||
uint32 device_status_req_interval = 14;
|
||||
|
||||
// Supports OTAA.
|
||||
bool supports_otaa = 15;
|
||||
|
||||
// Supports Class B.
|
||||
bool supports_class_b = 16;
|
||||
|
||||
// Supports Class-C.
|
||||
bool supports_class_c = 17;
|
||||
|
||||
// Class-B timeout (seconds).
|
||||
// This is the maximum time ChirpStack will wait to receive an acknowledgement from the device (if requested).
|
||||
uint32 class_b_timeout = 18;
|
||||
|
||||
// Class-B ping-slot periodicity.
|
||||
uint32 class_b_ping_slot_period = 19;
|
||||
|
||||
// Class-B ping-slot DR.
|
||||
uint32 class_b_ping_slot_dr = 20;
|
||||
|
||||
// Class-B ping-slot freq (Hz).
|
||||
uint32 class_b_ping_slot_freq = 21;
|
||||
|
||||
// Class-C timeout (seconds).
|
||||
// This is the maximum time ChirpStack will wait to receive an acknowledgement from the device (if requested).
|
||||
uint32 class_c_timeout = 22;
|
||||
|
||||
// RX1 delay (for ABP).
|
||||
uint32 abp_rx1_delay = 23;
|
||||
|
||||
// RX1 DR offset (for ABP).
|
||||
uint32 abp_rx1_dr_offset = 24;
|
||||
|
||||
// RX2 DR (for ABP).
|
||||
uint32 abp_rx2_dr = 25;
|
||||
|
||||
// RX2 frequency (for ABP, Hz).
|
||||
uint32 abp_rx2_freq = 26;
|
||||
|
||||
// User defined tags.
|
||||
map<string, string> tags = 27;
|
||||
}
|
||||
|
||||
message DeviceProfileTemplateListItem {
|
||||
// Device-profile template ID.
|
||||
string id = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
|
||||
// Name.
|
||||
string name = 4;
|
||||
|
||||
// Vendor.
|
||||
string vendor = 5;
|
||||
|
||||
// Firmware.
|
||||
string firmware = 6;
|
||||
|
||||
// Region.
|
||||
common.Region region = 7;
|
||||
|
||||
// LoRaWAN mac-version.
|
||||
common.MacVersion mac_version = 8;
|
||||
|
||||
// Regional parameters revision.
|
||||
common.RegParamsRevision reg_params_revision = 9;
|
||||
|
||||
// Supports OTAA.
|
||||
bool supports_otaa = 10;
|
||||
|
||||
// Supports Class-B.
|
||||
bool supports_class_b = 11;
|
||||
|
||||
// Supports Class-C.
|
||||
bool supports_class_c = 12;
|
||||
|
||||
}
|
||||
|
||||
message CreateDeviceProfileTemplateRequest {
|
||||
// Object to create.
|
||||
DeviceProfileTemplate device_profile_template = 1;
|
||||
}
|
||||
|
||||
message GetDeviceProfileTemplateRequest {
|
||||
// ID.
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message GetDeviceProfileTemplateResponse {
|
||||
// Device-profile template object.
|
||||
DeviceProfileTemplate device_profile_template = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
}
|
||||
|
||||
message UpdateDeviceProfileTemplateRequest {
|
||||
// Object to update.
|
||||
DeviceProfileTemplate device_profile_template = 1;
|
||||
}
|
||||
|
||||
message DeleteDeviceProfileTemplateRequest {
|
||||
// ID.
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message ListDeviceProfileTemplatesRequest {
|
||||
// Max number of device-profile templates to return in the result-set.
|
||||
uint32 limit = 1;
|
||||
|
||||
// Offset in the result-set (for pagination).
|
||||
uint32 offset = 2;
|
||||
}
|
||||
|
||||
message ListDeviceProfileTemplatesResponse {
|
||||
// Total number of device-profile templates.
|
||||
uint32 total_count = 1;
|
||||
|
||||
// Result-set.
|
||||
repeated DeviceProfileTemplateListItem result = 2;
|
||||
}
|
12
api/rust/proto/chirpstack/api/frame_log.proto
vendored
12
api/rust/proto/chirpstack/api/frame_log.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "FrameLogProto";
|
||||
@ -16,10 +16,10 @@ message UplinkFrameLog {
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
gw.UplinkTXInfo tx_info = 2;
|
||||
gw.UplinkTxInfo tx_info = 2;
|
||||
|
||||
// RX meta-data.
|
||||
repeated gw.UplinkRXInfo rx_info = 3;
|
||||
repeated gw.UplinkRxInfo rx_info = 3;
|
||||
|
||||
// Message type.
|
||||
common.MType m_type = 4;
|
||||
@ -42,10 +42,10 @@ message DownlinkFrameLog {
|
||||
bytes phy_payload = 2;
|
||||
|
||||
// TX meta-data.
|
||||
gw.DownlinkTXInfo tx_info = 3;
|
||||
gw.DownlinkTxInfo tx_info = 3;
|
||||
|
||||
// Downlink ID (UUID).
|
||||
string downlink_id = 4;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 4;
|
||||
|
||||
// Gateway ID (EUI64).
|
||||
string gateway_id = 5;
|
||||
|
2
api/rust/proto/chirpstack/api/gateway.proto
vendored
2
api/rust/proto/chirpstack/api/gateway.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "GatewayProto";
|
||||
|
2
api/rust/proto/chirpstack/api/internal.proto
vendored
2
api/rust/proto/chirpstack/api/internal.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "InternalProto";
|
||||
|
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "MulticastGroupProto";
|
||||
|
2
api/rust/proto/chirpstack/api/tenant.proto
vendored
2
api/rust/proto/chirpstack/api/tenant.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "InternalProto";
|
||||
|
2
api/rust/proto/chirpstack/api/user.proto
vendored
2
api/rust/proto/chirpstack/api/user.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package api;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
||||
option java_package = "io.chirpstack.api";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "UserProto";
|
||||
|
248
api/rust/proto/chirpstack/gw/gw.proto
vendored
248
api/rust/proto/chirpstack/gw/gw.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package gw;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack-api/go/v4/gw";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/gw";
|
||||
option java_package = "io.chirpstack.api.gw";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "GatewayProto";
|
||||
@ -10,8 +10,17 @@ option java_outer_classname = "GatewayProto";
|
||||
import "common/common.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
|
||||
enum CodeRate {
|
||||
CR_UNDEFINED = 0;
|
||||
CR_4_5 = 1;
|
||||
CR_4_6 = 2;
|
||||
CR_4_7 = 3;
|
||||
CR_4_8 = 4;
|
||||
}
|
||||
|
||||
enum DownlinkTiming {
|
||||
// Send the downlink immediately.
|
||||
IMMEDIATELY = 0;
|
||||
@ -23,7 +32,6 @@ enum DownlinkTiming {
|
||||
GPS_EPOCH = 2;
|
||||
}
|
||||
|
||||
|
||||
enum FineTimestampType {
|
||||
// No fine-timestamp available.
|
||||
NONE = 0;
|
||||
@ -84,17 +92,17 @@ enum TxAckStatus {
|
||||
message Modulation {
|
||||
oneof parameters {
|
||||
// LoRa modulation information.
|
||||
LoRaModulationInfo lora = 3 [json_name = "loRa"];
|
||||
LoraModulationInfo lora = 3;
|
||||
|
||||
// FSK modulation information.
|
||||
FSKModulationInfo fsk = 4;
|
||||
FskModulationInfo fsk = 4;
|
||||
|
||||
// LR-FHSS modulation information.
|
||||
LRFHSSModulationInfo lr_fhss = 5 [json_name = "lrFHSS"];
|
||||
LrFhssModulationInfo lr_fhss = 5;
|
||||
}
|
||||
}
|
||||
|
||||
message UplinkTXInfo {
|
||||
message UplinkTxInfoLegacy {
|
||||
// Frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
@ -103,17 +111,25 @@ message UplinkTXInfo {
|
||||
|
||||
oneof modulation_info {
|
||||
// LoRa modulation information.
|
||||
LoRaModulationInfo lora_modulation_info = 3 [json_name = "loRaModulationInfo"];
|
||||
LoraModulationInfo lora_modulation_info = 3;
|
||||
|
||||
// FSK modulation information.
|
||||
FSKModulationInfo fsk_modulation_info = 4;
|
||||
FskModulationInfo fsk_modulation_info = 4;
|
||||
|
||||
// LR-FHSS modulation information.
|
||||
LRFHSSModulationInfo lr_fhss_modulation_info = 5 [json_name = "lrFHSSModulationInfo"];
|
||||
LrFhssModulationInfo lr_fhss_modulation_info = 5;
|
||||
}
|
||||
}
|
||||
|
||||
message LoRaModulationInfo {
|
||||
message UplinkTxInfo {
|
||||
// Frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 2;
|
||||
}
|
||||
|
||||
message LoraModulationInfo {
|
||||
// Bandwidth.
|
||||
uint32 bandwidth = 1;
|
||||
|
||||
@ -121,13 +137,16 @@ message LoRaModulationInfo {
|
||||
uint32 spreading_factor = 2;
|
||||
|
||||
// Code-rate.
|
||||
string code_rate = 3;
|
||||
string code_rate_legacy = 3;
|
||||
|
||||
// Code-rate.
|
||||
CodeRate code_rate = 5;
|
||||
|
||||
// Polarization inversion.
|
||||
bool polarization_inversion = 4;
|
||||
}
|
||||
|
||||
message FSKModulationInfo {
|
||||
message FskModulationInfo {
|
||||
// Frequency deviation.
|
||||
uint32 frequency_deviation = 1;
|
||||
|
||||
@ -135,7 +154,7 @@ message FSKModulationInfo {
|
||||
uint32 datarate = 2;
|
||||
}
|
||||
|
||||
message LRFHSSModulationInfo {
|
||||
message LrFhssModulationInfo {
|
||||
// Operating channel width (OCW) in Hz.
|
||||
uint32 operating_channel_width = 1;
|
||||
|
||||
@ -151,10 +170,10 @@ message EncryptedFineTimestamp {
|
||||
uint32 aes_key_index = 1;
|
||||
|
||||
// Encrypted 'main' fine-timestamp (ns precision part of the timestamp).
|
||||
bytes encrypted_ns = 2 [json_name = "encryptedNS"];
|
||||
bytes encrypted_ns = 2;
|
||||
|
||||
// FPGA ID.
|
||||
bytes fpga_id = 3 [json_name = "fpgaID"];
|
||||
bytes fpga_id = 3;
|
||||
}
|
||||
|
||||
message PlainFineTimestamp {
|
||||
@ -164,7 +183,7 @@ message PlainFineTimestamp {
|
||||
|
||||
message GatewayStats {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Gateway IP.
|
||||
string ip = 9;
|
||||
@ -183,7 +202,7 @@ message GatewayStats {
|
||||
uint32 rx_packets_received = 5;
|
||||
|
||||
// Number of radio packets received with valid PHY CRC.
|
||||
uint32 rx_packets_received_ok = 6 [json_name = "rxPacketsReceivedOK"];
|
||||
uint32 rx_packets_received_ok = 6;
|
||||
|
||||
// Number of downlink packets received for transmission.
|
||||
uint32 tx_packets_received = 7;
|
||||
@ -196,7 +215,7 @@ message GatewayStats {
|
||||
|
||||
// Stats ID (UUID).
|
||||
// Unique identifier for the gateway stats.
|
||||
bytes stats_id = 11 [json_name = "statsID"];
|
||||
bytes stats_id = 11;
|
||||
|
||||
// Tx packets per frequency.
|
||||
map<uint32, uint32> tx_packets_per_frequency = 12;
|
||||
@ -222,21 +241,21 @@ message PerModulationCount {
|
||||
uint32 count = 2;
|
||||
}
|
||||
|
||||
message UplinkRXInfo {
|
||||
message UplinkRxInfoLegacy {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// RX time (only set when the gateway has a GPS module).
|
||||
google.protobuf.Timestamp time = 2;
|
||||
|
||||
// RX time since GPS epoch (only set when the gateway has a GPS module).
|
||||
google.protobuf.Duration time_since_gps_epoch = 3 [json_name = "timeSinceGPSEpoch"];
|
||||
google.protobuf.Duration time_since_gps_epoch = 3;
|
||||
|
||||
// RSSI.
|
||||
int32 rssi = 5;
|
||||
|
||||
// LoRa SNR.
|
||||
double lora_snr = 6 [json_name = "loRaSNR"];
|
||||
double lora_snr = 6;
|
||||
|
||||
// Channel.
|
||||
uint32 channel = 7;
|
||||
@ -270,19 +289,60 @@ message UplinkRXInfo {
|
||||
|
||||
// Uplink ID (UUID bytes).
|
||||
// Unique and random ID which can be used to correlate the uplink across multiple logs.
|
||||
bytes uplink_id = 16 [json_name = "uplinkID"];
|
||||
bytes uplink_id = 16;
|
||||
|
||||
// CRC status.
|
||||
CRCStatus crc_status = 17 [json_name = "crcStatus"];
|
||||
CRCStatus crc_status = 17;
|
||||
|
||||
// Optional meta-data map.
|
||||
map<string, string> metadata = 18;
|
||||
}
|
||||
|
||||
message DownlinkTXInfo {
|
||||
message UplinkRxInfo {
|
||||
// Gateway ID.
|
||||
string gateway_id = 1;
|
||||
|
||||
// Uplink ID.
|
||||
uint32 uplink_id = 2;
|
||||
|
||||
// RX time (only set when the gateway has a GPS module).
|
||||
google.protobuf.Timestamp time = 3;
|
||||
|
||||
// RX time since GPS epoch (only set when the gateway has a GPS module).
|
||||
google.protobuf.Duration time_since_gps_epoch = 4;
|
||||
|
||||
// Fine-timestamp.
|
||||
// This timestamp can be used for TDOA based geolocation.
|
||||
google.protobuf.Duration fine_time_since_gps_epoch = 5;
|
||||
|
||||
// RSSI.
|
||||
int32 rssi = 6;
|
||||
|
||||
// SNR.
|
||||
// Note: only available for LoRa modulation.
|
||||
float snr = 7;
|
||||
|
||||
// Board.
|
||||
uint32 board = 8;
|
||||
|
||||
// Antenna.
|
||||
uint32 antenna = 9;
|
||||
|
||||
// Location.
|
||||
common.Location location = 10;
|
||||
|
||||
// Gateway specific context.
|
||||
// This value must be returned to the gateway on (Class-A) downlink.
|
||||
bytes context = 11;
|
||||
|
||||
// Properties.
|
||||
google.protobuf.Struct metadata = 12;
|
||||
}
|
||||
|
||||
message DownlinkTxInfoLegacy {
|
||||
// Gateway ID.
|
||||
// Deprecated: replaced by gateway_id in DownlinkFrame.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// TX frequency (in Hz).
|
||||
uint32 frequency = 5;
|
||||
@ -295,10 +355,10 @@ message DownlinkTXInfo {
|
||||
|
||||
oneof modulation_info {
|
||||
// LoRa modulation information.
|
||||
LoRaModulationInfo lora_modulation_info = 8 [json_name = "loRaModulationInfo"];
|
||||
LoraModulationInfo lora_modulation_info = 8;
|
||||
|
||||
// FSK modulation information.
|
||||
FSKModulationInfo fsk_modulation_info = 9;
|
||||
FskModulationInfo fsk_modulation_info = 9;
|
||||
}
|
||||
|
||||
// The board identifier for emitting the frame.
|
||||
@ -326,6 +386,43 @@ message DownlinkTXInfo {
|
||||
bytes context = 16;
|
||||
}
|
||||
|
||||
message DownlinkTxInfo {
|
||||
// TX frequency (in Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// TX power (in dBm).
|
||||
int32 power = 2;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 3;
|
||||
|
||||
// The board identifier for emitting the frame.
|
||||
uint32 board = 4;
|
||||
|
||||
// The antenna identifier for emitting the frame.
|
||||
uint32 antenna = 5;
|
||||
|
||||
// Timing.
|
||||
Timing timing = 6;
|
||||
|
||||
// Gateway specific context.
|
||||
// In case of a Class-A downlink, this contains a copy of the uplink context.
|
||||
bytes context = 7;
|
||||
}
|
||||
|
||||
message Timing {
|
||||
oneof parameters {
|
||||
// Immediately timing information.
|
||||
ImmediatelyTimingInfo immediately = 1;
|
||||
|
||||
// Context based delay timing information.
|
||||
DelayTimingInfo delay = 2;
|
||||
|
||||
// GPS Epoch timing information.
|
||||
GPSEpochTimingInfo gps_epoch = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message ImmediatelyTimingInfo {
|
||||
// Not implemented yet.
|
||||
}
|
||||
@ -339,18 +436,24 @@ message DelayTimingInfo {
|
||||
|
||||
message GPSEpochTimingInfo {
|
||||
// Duration since GPS Epoch.
|
||||
google.protobuf.Duration time_since_gps_epoch = 1 [json_name = "timeSinceGPSEpoch"];
|
||||
google.protobuf.Duration time_since_gps_epoch = 1;
|
||||
}
|
||||
|
||||
message UplinkFrame {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
UplinkTXInfo tx_info = 2;
|
||||
// TX meta-data (deprecated).
|
||||
UplinkTxInfoLegacy tx_info_legacy = 2;
|
||||
|
||||
// RX meta-data.
|
||||
UplinkRXInfo rx_info = 3;
|
||||
// RX meta-data (deprecated).
|
||||
UplinkRxInfoLegacy rx_info_legacy = 3;
|
||||
|
||||
// Tx meta-data.
|
||||
UplinkTxInfo tx_info = 4;
|
||||
|
||||
// Rx meta-data.
|
||||
UplinkRxInfo rx_info = 5;
|
||||
}
|
||||
|
||||
message UplinkFrameSet {
|
||||
@ -358,27 +461,19 @@ message UplinkFrameSet {
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
UplinkTXInfo tx_info = 2;
|
||||
UplinkTxInfo tx_info = 2;
|
||||
|
||||
// RX meta-data set.
|
||||
repeated UplinkRXInfo rx_info = 3;
|
||||
repeated UplinkRxInfo rx_info = 3;
|
||||
}
|
||||
|
||||
message DownlinkFrame {
|
||||
// PHYPayload.
|
||||
// Deprecated: replaced by items.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
// Deprecated: replaced by items.
|
||||
DownlinkTXInfo tx_info = 2;
|
||||
|
||||
// Token (uint16 value).
|
||||
// Deprecated: replaced by downlink_id.
|
||||
uint32 token = 3;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 3;
|
||||
|
||||
// Downlink ID (UUID).
|
||||
bytes downlink_id = 4 [json_name = "downlinkID"];
|
||||
// Deprecated: use downlink_id.
|
||||
bytes downlink_id_legacy = 4;
|
||||
|
||||
// Downlink frame items.
|
||||
// This makes it possible to send multiple downlink opportunities to the
|
||||
@ -388,47 +483,52 @@ message DownlinkFrame {
|
||||
repeated DownlinkFrameItem items = 5;
|
||||
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 6 [json_name = "gatewayID"];
|
||||
// Deprecated: use gateway_id
|
||||
bytes gateway_id_legacy = 6;
|
||||
|
||||
// Gateway ID.
|
||||
string gateway_id = 7;
|
||||
}
|
||||
|
||||
message DownlinkFrameItem {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
DownlinkTXInfo tx_info = 2;
|
||||
// TX meta-data (deprecated).
|
||||
DownlinkTxInfoLegacy tx_info_legacy = 2;
|
||||
|
||||
// Tx meta-data.
|
||||
DownlinkTxInfo tx_info = 3;
|
||||
}
|
||||
|
||||
message DownlinkTXAck {
|
||||
message DownlinkTxAck {
|
||||
// Gateway ID (deprecated).
|
||||
bytes gateway_id_legacy = 1;
|
||||
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
string gateway_id = 6;
|
||||
|
||||
// Token (uint16 value).
|
||||
// Deprecated: replaced by downlink_id.
|
||||
uint32 token = 2;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 2;
|
||||
|
||||
// Error.
|
||||
// Deprecated: replaced by items.
|
||||
string error = 3;
|
||||
|
||||
// Downlink ID (UUID).
|
||||
bytes downlink_id = 4 [json_name = "downlinkID"];
|
||||
// Downlink ID (deprecated).
|
||||
bytes downlink_id_legacy = 4;
|
||||
|
||||
// Downlink frame items.
|
||||
// This list has the same length as the request and indicates which
|
||||
// downlink frame has been emitted of the requested list (or why it failed).
|
||||
// Note that at most one item has a positive acknowledgement.
|
||||
repeated DownlinkTXAckItem items = 5;
|
||||
repeated DownlinkTxAckItem items = 5;
|
||||
}
|
||||
|
||||
message DownlinkTXAckItem {
|
||||
message DownlinkTxAckItem {
|
||||
// The Ack status of this item.
|
||||
TxAckStatus status = 1;
|
||||
}
|
||||
|
||||
message GatewayConfiguration {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Configuration version.
|
||||
string version = 2;
|
||||
@ -449,7 +549,7 @@ message ChannelConfiguration {
|
||||
|
||||
oneof modulation_config {
|
||||
// LoRa modulation config.
|
||||
LoRaModulationConfig lora_modulation_config = 3 [json_name = "loRaModulationConfig"];
|
||||
LoRaModulationConfig lora_modulation_config = 3;
|
||||
|
||||
// FSK modulation config.
|
||||
FSKModulationConfig fsk_modulation_config = 4;
|
||||
@ -480,7 +580,7 @@ message FSKModulationConfig {
|
||||
|
||||
message GatewayCommandExecRequest {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Command to execute.
|
||||
// This command must be pre-configured in the LoRa Gateway Bridge configuration.
|
||||
@ -489,7 +589,7 @@ message GatewayCommandExecRequest {
|
||||
// Execution request ID (UUID).
|
||||
// The same token will be returned when the execution of the command has
|
||||
// completed.
|
||||
bytes ExecId = 3 [json_name = "execID"];
|
||||
bytes ExecId = 3;
|
||||
|
||||
// Standard input.
|
||||
bytes stdin = 4;
|
||||
@ -500,10 +600,10 @@ message GatewayCommandExecRequest {
|
||||
|
||||
message GatewayCommandExecResponse {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Execution request ID (UUID).
|
||||
bytes exec_id = 2 [json_name = "execID"];
|
||||
bytes exec_id = 2;
|
||||
|
||||
// Standard output.
|
||||
bytes stdout = 3;
|
||||
@ -520,10 +620,10 @@ message GatewayCommandExecResponse {
|
||||
// integrated with the ChirpStack Gateway Bridge.
|
||||
message RawPacketForwarderEvent {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Raw ID (UUID).
|
||||
bytes raw_id = 2 [json_name = "rawID"];
|
||||
bytes raw_id = 2;
|
||||
|
||||
// Payload contains the raw payload.
|
||||
bytes payload = 3;
|
||||
@ -534,10 +634,10 @@ message RawPacketForwarderEvent {
|
||||
// integrated with the ChirpStack Gateway Bridge.
|
||||
message RawPacketForwarderCommand {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
// Raw ID (UUID).
|
||||
bytes raw_id = 2 [json_name = "rawID"];
|
||||
bytes raw_id = 2;
|
||||
|
||||
// Payload contains the raw payload.
|
||||
bytes payload = 3;
|
||||
@ -546,7 +646,7 @@ message RawPacketForwarderCommand {
|
||||
// ConnState contains the connection state of a gateway.
|
||||
message ConnState {
|
||||
// Gateway ID.
|
||||
bytes gateway_id = 1 [json_name = "gatewayID"];
|
||||
bytes gateway_id = 1;
|
||||
|
||||
enum State {
|
||||
OFFLINE = 0;
|
||||
|
202
api/rust/proto/chirpstack/gw/gw_new.proto
vendored
202
api/rust/proto/chirpstack/gw/gw_new.proto
vendored
@ -1,202 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package gw;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/gw";
|
||||
option java_package = "io.chirpstack.api.gw";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "GatewayProto";
|
||||
|
||||
import "common/common.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
|
||||
enum CodeRate {
|
||||
CR_UNDEFINED = 0;
|
||||
CR_4_5 = 1;
|
||||
CR_4_6 = 2;
|
||||
CR_4_7 = 3;
|
||||
CR_4_8 = 4;
|
||||
}
|
||||
|
||||
message UplinkFrame {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// TX meta-data.
|
||||
UplinkTxParams tx_params = 2;
|
||||
|
||||
// RX meta-data.
|
||||
UplinkRxParams rx_params = 3;
|
||||
}
|
||||
|
||||
message DownlinkFrame {
|
||||
// Gateway ID.
|
||||
string gateway_id = 1;
|
||||
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 2;
|
||||
|
||||
// Downlink frame items.
|
||||
// This makes it possible to send multiple downlink opportunities to the
|
||||
// gateway at once (e.g. RX1 and RX2 in LoRaWAN). The first item has the
|
||||
// highest priority, the last the lowest. The gateway will emit at most
|
||||
// one item.
|
||||
repeated DownlinkFrameItem items = 3;
|
||||
}
|
||||
|
||||
message UplinkTxParams {
|
||||
// Frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 2;
|
||||
}
|
||||
|
||||
message Modulation {
|
||||
oneof parameters {
|
||||
// LoRa.
|
||||
LoraModulationParams lora = 1;
|
||||
|
||||
// FSK.
|
||||
FskModulationParams fsk = 2;
|
||||
|
||||
// LR-FHSS.
|
||||
LrFhssModulationParams lr_fhss = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message LoraModulationParams {
|
||||
// Bandwidth (Hz).
|
||||
uint32 bandwidth = 1;
|
||||
|
||||
// Spreading-factor.
|
||||
uint32 spreading_factor = 2;
|
||||
|
||||
// Polarization inversion.
|
||||
bool polarization_inversion = 3;
|
||||
|
||||
// Code-rate.
|
||||
CodeRate code_rate = 4;
|
||||
}
|
||||
|
||||
message FskModulationParams {
|
||||
// Frequency deviation.
|
||||
uint32 frequency_deviation = 1;
|
||||
|
||||
// FSK datarate (bits / sec).
|
||||
uint32 datarate = 2;
|
||||
}
|
||||
|
||||
message LrFhssModulationParams {
|
||||
// Operating channel width (OCW) in Hz.
|
||||
uint32 operating_channel_width = 1;
|
||||
|
||||
// Code-rate.
|
||||
CodeRate code_rate = 2;
|
||||
|
||||
// Hopping grid number of steps.
|
||||
uint32 grid_steps = 3;
|
||||
}
|
||||
|
||||
message UplinkRxParams {
|
||||
// Gateway ID (EUI).
|
||||
string gateway_id = 1;
|
||||
|
||||
// Uplink ID (UUID).
|
||||
uint32 uplink_id = 2;
|
||||
|
||||
// Rx time.
|
||||
google.protobuf.Timestamp time = 3;
|
||||
|
||||
// RX time since GPS epoch (only set when the gateway has a GPS module).
|
||||
google.protobuf.Duration time_since_gps_epoch = 4;
|
||||
|
||||
// Fine-timestamp.
|
||||
// This timestamp can be used for TDOA based geolocation.
|
||||
google.protobuf.Duration fine_time_since_gps_epoch = 5;
|
||||
|
||||
// RSSI.
|
||||
int32 rssi = 6;
|
||||
|
||||
// SNR.
|
||||
// Note: only available for LoRa modulation.
|
||||
float snr = 7;
|
||||
|
||||
// Board.
|
||||
uint32 board = 8;
|
||||
|
||||
// Antenna.
|
||||
uint32 antenna = 9;
|
||||
|
||||
// Location.
|
||||
common.Location location = 10;
|
||||
|
||||
// Gateway specific context.
|
||||
// This value must be returned to the gateway on (Class-A) downlink.
|
||||
bytes context = 11;
|
||||
|
||||
// Properties.
|
||||
google.protobuf.Struct properties = 12;
|
||||
}
|
||||
|
||||
message DownlinkFrameItem {
|
||||
// PHYPayload.
|
||||
bytes phy_payload = 1;
|
||||
|
||||
// Tx parameters.
|
||||
DownlinkTxParams tx_params = 2;
|
||||
}
|
||||
|
||||
message DownlinkTxParams {
|
||||
// Tx frequency (Hz).
|
||||
uint32 frequency = 1;
|
||||
|
||||
// Tx power (dBm).
|
||||
int32 power = 2;
|
||||
|
||||
// Modulation.
|
||||
Modulation modulation = 3;
|
||||
|
||||
// The board identifier for emitting the frame.
|
||||
uint32 board = 4;
|
||||
|
||||
// The antenna identifier for emitting the frame.
|
||||
uint32 antenna = 5;
|
||||
|
||||
// Downlink timing.
|
||||
DownlinkTiming timing = 6;
|
||||
|
||||
// Gateway specific context.
|
||||
// In case of a Class-A downlink, this must contain a copy of the uplink context.
|
||||
bytes context = 7;
|
||||
}
|
||||
|
||||
message DownlinkTiming {
|
||||
oneof parameters {
|
||||
// Immediately timing information.
|
||||
DownlinkTimingImmediately immediately = 1;
|
||||
|
||||
// Delay timing information.
|
||||
DownlinkTimingDelay delay = 2;
|
||||
|
||||
// GPS epoch timing information.
|
||||
DownlinkTimingGpsEpoch gps_epoch = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message DownlinkTimingImmediately {
|
||||
// No fields implemented yet.
|
||||
}
|
||||
|
||||
message DownlinkTimingDelay {
|
||||
// Delay relative to provided context.
|
||||
google.protobuf.Duration delay = 1;
|
||||
}
|
||||
|
||||
message DownlinkTimingGpsEpoch {
|
||||
// Duration since GPS epoch.
|
||||
google.protobuf.Duration time_since_gps_epoch = 1;
|
||||
}
|
@ -119,10 +119,10 @@ message UplinkEvent {
|
||||
google.protobuf.Struct object = 11;
|
||||
|
||||
// Receiving gateway RX info.
|
||||
repeated gw.UplinkRXInfo rx_info = 12;
|
||||
repeated gw.UplinkRxInfo rx_info = 12;
|
||||
|
||||
// TX info.
|
||||
gw.UplinkTXInfo tx_info = 13;
|
||||
gw.UplinkTxInfo tx_info = 13;
|
||||
}
|
||||
|
||||
// JoinEvent is the message sent when a device joined the network.
|
||||
@ -167,8 +167,8 @@ message AckEvent {
|
||||
// for transmission. As a downlink can be scheduled in the future, this event
|
||||
// does not confirm that the message has already been transmitted.
|
||||
message TxAckEvent {
|
||||
// Downlink ID (UUID).
|
||||
string downlink_id = 1;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 1;
|
||||
|
||||
// Timestamp.
|
||||
google.protobuf.Timestamp time = 2;
|
||||
@ -186,7 +186,7 @@ message TxAckEvent {
|
||||
string gateway_id = 6;
|
||||
|
||||
// TX info.
|
||||
gw.DownlinkTXInfo tx_info = 7;
|
||||
gw.DownlinkTxInfo tx_info = 7;
|
||||
}
|
||||
|
||||
// LogEvent is the message sent when a device-related log was sent.
|
||||
@ -276,3 +276,28 @@ message IntegrationEvent {
|
||||
// Struct containing the event object.
|
||||
google.protobuf.Struct object = 6;
|
||||
}
|
||||
|
||||
// DownlinkCommand is the command to enqueue a downlink payload for the given
|
||||
// device.
|
||||
message DownlinkCommand {
|
||||
// ID (UUID).
|
||||
// If left blank, a random UUID will be generated.
|
||||
string id = 1;
|
||||
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 2;
|
||||
|
||||
// Confirmed.
|
||||
bool confirmed = 3;
|
||||
|
||||
// FPort (must be > 0).
|
||||
uint32 f_port = 4;
|
||||
|
||||
// Data.
|
||||
// Or use the json_object field when a codec has been configured.
|
||||
bytes data = 5;
|
||||
|
||||
// Only use this when a codec has been configured that can encode this
|
||||
// object to bytes.
|
||||
google.protobuf.Struct object = 6;
|
||||
}
|
||||
|
@ -199,8 +199,8 @@ message DeviceGatewayRxInfoItem {
|
||||
}
|
||||
|
||||
message DownlinkFrame {
|
||||
// Downlink ID (UUID).
|
||||
bytes downlink_id = 1;
|
||||
// Downlink ID.
|
||||
uint32 downlink_id = 1;
|
||||
|
||||
// DevEUI.
|
||||
bytes dev_eui = 2;
|
||||
@ -231,5 +231,5 @@ message LoraCloudGeolocBuffer {
|
||||
|
||||
message LoraCloudGeolocBufferUplink {
|
||||
// RxInfo set for a single uplink.
|
||||
repeated gw.UplinkRXInfo rx_info = 1;
|
||||
repeated gw.UplinkRxInfo rx_info = 1;
|
||||
}
|
||||
|
8
api/rust/proto/chirpstack/meta/meta.proto
vendored
8
api/rust/proto/chirpstack/meta/meta.proto
vendored
@ -2,7 +2,7 @@ syntax = "proto3";
|
||||
|
||||
package meta;
|
||||
|
||||
option go_package = "github.com/chirpstack/chirpstack-api/go/v4/meta";
|
||||
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/meta";
|
||||
option java_package = "io.chirpstack.api.meta";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "MetaProto";
|
||||
@ -16,10 +16,10 @@ message UplinkMeta {
|
||||
string dev_eui = 1;
|
||||
|
||||
// TX meta-data.
|
||||
gw.UplinkTXInfo tx_info = 2;
|
||||
gw.UplinkTxInfo tx_info = 2;
|
||||
|
||||
// RX meta-data.
|
||||
repeated gw.UplinkRXInfo rx_info = 3;
|
||||
repeated gw.UplinkRxInfo rx_info = 3;
|
||||
|
||||
// PHYPayload byte count.
|
||||
uint32 phy_payload_byte_count = 4;
|
||||
@ -42,7 +42,7 @@ message DownlinkMeta {
|
||||
string multicast_group_id = 2;
|
||||
|
||||
// TX meta-data.
|
||||
gw.DownlinkTXInfo tx_info = 3;
|
||||
gw.DownlinkTxInfo tx_info = 3;
|
||||
|
||||
// PHYPayload byte count.
|
||||
uint32 phy_payload_byte_count = 4;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user