Commit Graph

212 Commits

Author SHA1 Message Date
ef0a97ab3d Log .send() error, rather than returning.
Closes https://github.com/chirpstack/chirpstack-docker/issues/80.
2023-04-11 15:10:08 +01:00
e93d3bc534 Update AWS SNS SDK crate. 2023-04-11 14:57:03 +01:00
31e359b314 Disable v3-v4 GW<>NS message migration and make config option.
By making this opt-in, we can reduce the overhead of supporting both v3
and v4 gateway messages. In case of v3 to v4 migration, one would
upgrade all ChirpStack Gateway Bridge instances to the latest v3
version, migrate ChirpStack as described here + enable this config flag:
https://www.chirpstack.io/docs/v3-v4-migration.html

Then upgrade ChirpStack Gateway Bridge to the latest v4 version followed
by disabling / removing this config flag (`v4_migrate`) again.
2023-04-11 14:19:07 +01:00
0a3fcaeb2d Bump version to 4.3.1 2023-04-10 12:24:52 +01:00
101b155d91 Update dependencies. 2023-04-10 11:10:52 +01:00
269b7f4d9d Fix gnss_assist_position enable toggle for gnss msg. 2023-04-06 16:26:45 +01:00
0ce60b789f Remove unused dependencies. 2023-03-28 22:11:06 +01:00
4917de2b32 Earlier db initialization + change unwrap for error.
Closes #147.
2023-03-28 14:05:39 +01:00
cb6ac27ba4 Update dependencies. 2023-03-28 13:41:20 +01:00
1430c30ab3 Make using gateway location optional (LoRa Cloud). 2023-03-28 13:11:49 +01:00
9ba826963c Let serde use defaults for LoraCloudModemGeolocationServices.
This lets serde use default values in case a field is missing.
Specifically, this fixes the 'missing field `forward_f_ports`'
if migrating from an older LoRa Cloud configuration where the
`forward_f_ports` field was not yet present.
2023-03-23 11:01:35 +00:00
ef97eccf62 Update LoRa Cloud integration. 2023-03-08 17:01:11 +00:00
50f8093c07 Bump version to 4.3.0 2023-03-08 09:20:50 +00:00
eaad8586a1 Bump version to 4.3.0-test.3 2023-03-02 14:32:56 +00:00
43567ccfd2 Show fcnt in event log.
Closes #121.
2023-03-02 13:40:06 +00:00
ddea09d9d4 Decode frm_payload mac-commands in device frame log. 2023-03-02 12:21:42 +00:00
9ab059a552 Fix disabling mac-commands. 2023-03-02 09:19:36 +00:00
4b41893f42 Bump version to 4.3.0-test.2 2023-02-28 12:07:16 +00:00
1d4de3bd7f Update dependencies (cargo update). 2023-02-28 11:45:39 +00:00
de6054c45a Remove tls_enabled as this config option is not actually used.
Closes #128.
2023-02-28 11:45:39 +00:00
ed1c84e0f1 To not log stats handing NotFound error if allow_unknown_gateways.
In this case it is expected that (some) gateways can't be found in the
database.
2023-02-28 11:33:58 +00:00
a76a198ec6 Do not overwrite RxInfo location if it is already set. 2023-02-28 10:39:25 +00:00
3db01e66c0 Bump version to 4.3.0-test.1 2023-02-24 11:59:12 +00:00
f71cea7716 Fix configfile command template (#124)
The template was not rendering integration.mqtt.client.ca_key  and  integration.mqtt.client.ca_cert correctly.
2023-02-22 13:19:47 +00:00
a3c1638c75 Fix region config defaults + use region id if description is missing.
In case the region description was missing, EU868 was set as default. As
well the default configuration (in case no regions were set) would
always fallback to EU868 which was used for testing. This removes the
default EU868 configuration and moves this configuration to tests.

This updates the region API methods to use the region id as description,
in case the description is not configured.

Closes #120.
2023-02-20 11:01:08 +00:00
c568586281 Fix test after adding f_port validation. 2023-02-15 12:19:32 +00:00
6f10bd907e Add missing validation to avoid multicast enqueue on fPort=0. 2023-02-15 12:15:04 +00:00
0126286f75 Add missing validation to avoid enqueue on fPort=0. 2023-02-15 12:04:11 +00:00
eda5753bb9 Improve error messages. Fix gateway_id is missing ... errors.
The error would occur when the uplink was also received by an unknown
gateway. In this case fetching the metadata for this gateway would fail,
causing the gateway_private_up and _down not to be populated with the
gateway_id.
2023-02-14 14:32:49 +00:00
f776dd3898 Split private gateways under tenant in uplink / downlink.
This makes it possible to share uplink data with other tenants, but do
not allow other tenants to use these gateways for downlinks.
2023-02-14 13:41:22 +00:00
d3defb7dff Fix auth when listing adr algorithms using api key.
Closes #112.
2023-02-10 11:23:35 +00:00
f657c3e971 Implement adding gws to multicast-group + Class-C scheduling config.
This makes it possible to add gateways to a multicast-group, which in
case configured will always be used for transmitting the multicast
downlinks.

This also moves the multicast class-c scheduling to the multicast-group
configuration. Options are delay between multiple gateways, or GPS time
synchronized transmission.
2023-02-09 15:29:23 +00:00
8d34bb0d0c Remove usage of deprecated date() method.
As the date_naive() method (recommended replacement for date()) does not
contain tz information, we need to add it back using
and_local_timezone().
2023-02-06 12:34:15 +00:00
5953542a72 Update dependencies. 2023-02-06 12:23:44 +00:00
3cb4f3d7f2 Bump redis from 0.21.6 to 0.22.3 (#104)
Bumps [redis](https://github.com/redis-rs/redis-rs) from 0.21.6 to 0.22.3.
- [Release notes](https://github.com/redis-rs/redis-rs/releases)
- [Commits](https://github.com/redis-rs/redis-rs/compare/0.21.6...redis-0.22.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-01 11:07:30 +00:00
81ce56a9a0 Implement get_downlink_data_delay config.
This config option was present in v3 to set a delay before starting the
downlink flow (Class-A) so that an end-application can enqueue a
downlink to be used within the same uplink / downlink transaction.
However, this option was still missing in v4.
2023-01-31 11:28:18 +00:00
1d2f627bbb Bump version to 4.2.0 2023-01-24 12:23:44 +00:00
54815f03ca Reset channels to default on AdrAckReq uplink.
As part of the ADR back-off, the device will eventually revert to the
default channel-plan but there is no explicit signalling if this
happened.

This might cause some small overhead in case the device did not (yet)
revert to the default channel-mask, but it avoids scenarios where the
device and NS are out-of-sync.
2023-01-24 09:46:31 +00:00
20b454d519 Fix not recording device-metrics if auto-detect is disabled.
Fixes #94.
2023-01-23 15:28:31 +00:00
7c68500e81 Bump paho-mqtt from 0.11.1 to 0.12.0 (#96)
Bumps [paho-mqtt](https://github.com/eclipse/paho.mqtt.rust) from 0.11.1 to 0.12.0.
- [Release notes](https://github.com/eclipse/paho.mqtt.rust/releases)
- [Changelog](https://github.com/eclipse/paho.mqtt.rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eclipse/paho.mqtt.rust/compare/v0.11.1...v0.12.0)

---
updated-dependencies:
- dependency-name: paho-mqtt
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 09:50:05 +00:00
25f1b224f7 Bump tokio from 1.23.1 to 1.24.2 (#97)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.23.1 to 1.24.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/commits)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 09:49:56 +00:00
a36d323f2b Migrate to topic prefix instead of individual topic config.
This makes the configuration easier, as well if new topics are added in
the future, there is no need to update all the configuration files
again to add the missing topic configuration.
2023-01-19 12:01:20 +00:00
b6209d760e Bump version to 4.2.0-test.1 2023-01-16 11:14:05 +00:00
e850d74d60 Bump openidconnect from 2.3.2 to 2.5.0 (#92)
Bumps [openidconnect](https://github.com/ramosbugs/openidconnect-rs) from 2.3.2 to 2.5.0.
- [Release notes](https://github.com/ramosbugs/openidconnect-rs/releases)
- [Commits](https://github.com/ramosbugs/openidconnect-rs/compare/2.3.2...2.5.0)

---
updated-dependencies:
- dependency-name: openidconnect
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 09:51:02 +00:00
ef93445bc9 Update class-b ping-slot data-rate config examples. 2023-01-12 16:38:03 +00:00
24d9b6db54 Add Class-B ping-slot parameters back to device-profile UI.
The device might not always send its periodicity to the network-server
(using mac-commands). As well there is some ambiguity about the default
ping-slot data-rates. While the Regional Parameters Specification
defines the default beacon data-rates, it only defines the default
ping-slot frequency for Class-B.

This also changes the API field from class_b_ping_slot_period to
class_b_ping_slot_nb_k, where ..._k must be between 0 - 7 as defined by
the LoRaWAN Specification. This removes some ambiguity as 'period' could
mean different things in different contexts.
2023-01-12 14:41:42 +00:00
10371e66a2 Update tonic-web to v0.5.0. 2023-01-11 12:38:05 +00:00
5b6d5c00e2 Bump diesel from 2.0.0 to 2.0.2 (#84)
Bumps [diesel](https://github.com/diesel-rs/diesel) from 2.0.0 to 2.0.2.
- [Release notes](https://github.com/diesel-rs/diesel/releases)
- [Changelog](https://github.com/diesel-rs/diesel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/diesel-rs/diesel/compare/v2.0.0...v2.0.2)

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

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-11 12:11:56 +00:00
438d120fb0 Make gateway state consistent + make stats interval configurable.
This:

* Makes the gateway stats interval configurable (default 30 sec)
* Adds GatewayState type (NEVER_SEEN, OFFLINE, ONLINE)
* Adds gateway state to gateway lists
* Fixes dashboard inconsistencies

Closes #76.
2023-01-11 10:51:53 +00:00
85a064ea5b Bump tokio from 1.21.1 to 1.23.1 (#78)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.21.1 to 1.23.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.21.1...tokio-1.23.1)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
...

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-11 10:49:32 +00:00