Commit Graph

132 Commits

Author SHA1 Message Date
Orne Brocaar
3ab830f5a0 Change clean_session default + fix re-subscribe.
This changes the clean_session default to false, as only in case of a
persistent session, qos > 0 would be effective. If the client_id is not
set, then ChirpStack will generate a random client_id, which stays the
same during the lifetime of the chirpstack process.

This also implements a subscribe loop, as the client re-connect feature
does not re-subscribe. Even in case of a persistent session there is no
guarantee that the subscription is recovered, as it might have been a
MQTT broker restart. In case the broker stores the sessions in-memory,
the client would re-connect, but without subscriptions.

The (re)subscribe logic is placed outside the on-connected callback, as
the callback function must not block, thus can not wait for the
subscribe result. No the (re)subscribe happens async from the
on-connected.
2022-07-30 13:23:54 +01:00
Orne Brocaar
f58e39e503 Bump version to 4.0.0-test.14 2022-07-28 09:02:54 +01:00
Orne Brocaar
ffa8aa9518 Fix clippy warning. 2022-07-28 08:58:31 +01:00
Orne Brocaar
a53a90b646 Make deduplication_delay configurable. Handle duplicated acks. 2022-07-27 20:19:02 +01:00
Orne Brocaar
35b2f4112d Remove version fix for (lib)clang.
Clang is used by bindgen to generate the quickjs bindings at compile
time.
2022-07-27 12:00:11 +01:00
Orne Brocaar
7a7d3dbd4e Add missing LoRa 2.4 gHz code-rates to enum. 2022-07-27 10:06:14 +01:00
Orne Brocaar
73d581fc4c Update version. 2022-07-26 15:29:01 +01:00
Orne Brocaar
3bfb7d577f Fix coding_rate string in test.
The CodeRate type (in Rust) will decode both "1/3" and "2/6" as
CodeRate::Cr26. To string, this type is always encoded to "2/6".
2022-07-25 10:29:46 +01:00
Orne Brocaar
d10551bce1 Change command exec_id to uint32. 2022-07-22 20:29:07 +01:00
Orne Brocaar
f7f2fa82f2 Update diesel_cli to 2.0.0-rc.1. 2022-07-22 14:44:14 +01:00
Orne Brocaar
85cd5e0b80 Fix formatting after clippy fixes. 2022-07-22 13:06:52 +01:00
Orne Brocaar
4612f84045 Update to diesel 2.0.0-rc.1. 2022-07-22 13:05:45 +01:00
Orne Brocaar
b187efe84c Cleanup clippy warnings. 2022-07-22 13:00:30 +01:00
Orne Brocaar
4d665d3ded Remove update, change apt to apt-get to avoid warnings. 2022-07-22 12:20:20 +01:00
Orne Brocaar
c0a450c8f8 Change LR-FHSS code_rate to CodeRate type. 2022-07-22 12:19:36 +01:00
Orne Brocaar
e7432986cd Bump version to v4.0.0-test.11. 2022-07-21 16:17:41 +01:00
Orne Brocaar
69e3b672ac Fix field types for GatewayStats and GatewayConfiguration.
The gateway_id field now has type string and bandwidth is in Hz, which
is consistent with the other messages.
2022-07-21 15:28:09 +01:00
Orne Brocaar
067869e4f0 Bump version to v4.0.0-test.10. 2022-07-21 13:49:51 +01:00
dependabot[bot]
3cbc2eba9b
Bump terser from 5.13.1 to 5.14.2 in /ui (#30)
Bumps [terser](https://github.com/terser/terser) from 5.13.1 to 5.14.2.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/commits)

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

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-21 12:36:43 +01:00
Orne Brocaar
5436582f03 Refactor testing and (cross)compile.
With the update to diesel 2.0.0-rc0, it is now possible to cross-compile
without emulation. Note that during each (cross)compile, we have to
install libpq-dev for the target platform, as only one version can be
installed at a time (e.g. libpq-dev:amd64 conflicts with libpq-dev:armhf).
2022-07-21 11:00:47 +01:00
Orne Brocaar
9db867906d Update Cargo.lock. 2022-07-20 14:11:59 +01:00
Orne Brocaar
954c408247 Add rdkafka cmake-build feature. 2022-07-20 14:07:53 +01:00
Orne Brocaar
cbb1449868 Bump version. 2022-07-20 13:27:34 +01:00
Orne Brocaar
634aea6a71 Update diesel to 2.0.0-rc.0.
Diesel 1.4.x makes it impossible to properly cross-compile when using
PostgreSQL and thus having a dependency on libpq. On compile and I
believe when using the diesel_migrations crate, there is a dependency on
both the host and target libpq. Unfortunately, only one can be installed
at a time, because of conflicts. See also:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=995768

Until now the cross-compile solution is based on docker buildx, which
uses qemu to emulate the different targets. This works, but is very,
very slow.

Diesel 2.0.0-rc.0 no longer depends on both the host and target libpq on
compile and makes it possible to implement proper cross-compiling (using
the rust --target flag in combination with the cross-compile
toolchains).
2022-07-20 10:55:59 +01:00
Orne Brocaar
11d433a394 Show loader on aggregation interval change or refresh. 2022-07-19 11:13:47 +01:00
Orne Brocaar
b5c1fd4082 Update Rust image. 2022-07-18 21:10:20 +01:00
Orne Brocaar
038614b44d Update Python SDK. 2022-07-18 14:25:32 +01:00
Orne Brocaar
626af4fadc Update configfile template. 2022-07-18 12:01:29 +01:00
Orne Brocaar
bfefdf2ae5 Run cargo update. 2022-07-18 10:14:30 +01:00
Orne Brocaar
72e72446a2 Disable activation key form for OTAA.
Closes #10.
2022-07-14 11:42:07 +01:00
Orne Brocaar
68b1de87f3 Rename setItem to setQueueItem.
This was renamed to be more consistent with the multicast enqueue message.
2022-07-13 12:35:13 +01:00
dependabot[bot]
51a93f851e
Bump openssl-src from 111.20.0+1.1.1o to 111.22.0+1.1.1q (#29)
Bumps [openssl-src](https://github.com/alexcrichton/openssl-src-rs) from 111.20.0+1.1.1o to 111.22.0+1.1.1q.
- [Release notes](https://github.com/alexcrichton/openssl-src-rs/releases)
- [Commits](https://github.com/alexcrichton/openssl-src-rs/commits)

---
updated-dependencies:
- dependency-name: openssl-src
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-13 12:22:44 +01:00
dependabot[bot]
ae94d0ce43
Bump moment from 2.29.3 to 2.29.4 in /ui (#28)
Bumps [moment](https://github.com/moment/moment) from 2.29.3 to 2.29.4.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.3...2.29.4)

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

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-13 12:22:12 +01:00
Orne Brocaar
36ec11d175 Annotate gRPC methods for REST interface gen.
The option(google.api.http) annotations can be used by for example
https://github.com/grpc-ecosystem/grpc-gateway to generate a gRPC to
REST proxy.
2022-07-13 12:18:46 +01:00
Orne Brocaar
e1da9f75ae Fix serving backend interfaces using TLS. 2022-07-13 12:15:38 +01:00
Orne Brocaar
4131ed38ec Add Kafka integration. 2022-07-12 09:37:15 +01:00
Orne Brocaar
8350494846 Remove mqtt state topic.
Adding this was probably not a good idea. For a number of reasons:

Persisted messages do not expire, so the database of messages will grow
over time, even when devices are removed.

Other integrations have nothing similar.

Decoded uplink events will probably data that could be seen as a certain
state (e.g. parking spot occupied or not), but are published as events.
2022-07-11 13:59:54 +01:00
Orne Brocaar
9ecfbab5b5 Add missing re-connect config in mqtt connection options. 2022-07-08 13:57:34 +01:00
Orne Brocaar
0d4003a2be Add global AMQP integration. 2022-07-07 10:16:55 +01:00
Orne Brocaar
96ab49944c Add IFTTT integration. 2022-07-06 15:43:00 +01:00
Orne Brocaar
9ab2f77ee2 Fix CodeMirror not refreshing on value change.
On changing a different device-profile template and thus changing the
this.state.value, CodeMirror would not rerender until focussing the
textarea field.
2022-07-05 15:18:43 +01:00
Orne Brocaar
6dbbaff7b6 Add button to set gw to current location. 2022-07-05 14:48:02 +01:00
Orne Brocaar
7baedd1bf9 Add Prometheus metrics for gw backend + API methods. 2022-07-05 14:00:57 +01:00
Orne Brocaar
9eeee3759c Rename f_cnt_up to f_cnt. 2022-07-01 15:09:50 +01:00
Orne Brocaar
fb74bda3fd Fix merging device-profile and device tags. 2022-07-01 14:53:29 +01:00
Orne Brocaar
777b95ef1d Add global PostgreSQL integration. 2022-07-01 14:52:38 +01:00
Orne Brocaar
a46b0a9469 Move deduplication_id in LogEvent to context field. 2022-06-30 19:30:56 +01:00
Orne Brocaar
f27b8da38d Re-implement passive-roaming. 2022-06-30 11:17:26 +01:00
Orne Brocaar
3fd821ebdf Update version to v4.0.0-test.7. 2022-06-29 14:10:50 +01:00
Orne Brocaar
a04d47833f Render empty bar and heatmap charts. 2022-06-29 09:26:42 +01:00