Commit Graph

116 Commits

Author SHA1 Message Date
Orne Brocaar
b4845b5613 api: Rename time to gw_time. Add ns_time.
The gw_time defines the RX time by the gateway, the ns_time defines when
it was received by the NS. The latter could for example help to debug
latency between the GW <> NS.
2023-10-16 12:11:57 +01:00
Orne Brocaar
c82bfa5a72 api: Ignore unknown fields (Rust JSON decode).
The JSON encoding should only be used for debugging purposes! However
this change avoids showing errors in case there are unknown fields in the
JSON payload. This would happen when for example the MQTT Forwarder
and ChirpStack uses a different API version (which in case of Protobuf
would be fine, as long as the major version remains the same).
2023-10-16 10:51:29 +01:00
Orne Brocaar
41d00cb651 Implement end-to-end app payload encryption.
This implements end-to-end encryption between the end-device and
end-application. The encrypted AppSKey or SessionKeyID is forwarded to
the end-application which should be able to decrypt or request the
AppSKey to decrypt the uplink payload. As well the end-application will
be able to enqueue encrypted application payloads.

Using this mechanism, ChirpStack will never have access to the uplink
and downlink application-payloads.
2023-10-05 13:06:09 +01:00
Orne Brocaar
503beaa2fd Bump version to 4.5.1 2023-10-05 10:20:32 +01:00
Michael Jeffrey
fe131c070a
api: Re-export prost dependency. (#285) 2023-10-03 15:29:49 +01:00
Orne Brocaar
a402b487f8 Update dependencies. 2023-09-18 16:22:05 +01:00
Orne Brocaar
4ebee8d614 Bump version to 4.5.0 2023-09-11 16:58:25 +01:00
Orne Brocaar
81ac49ff8f Bump version to 4.5.0-test.3 2023-09-07 16:53:20 +01:00
Orne Brocaar
f06f11334e Bump version to 4.5.0-test.2 2023-09-05 12:14:35 +01:00
Orne Brocaar
295cd5e4b1 Bump version to 4.5.0-test.1 2023-09-04 15:06:38 +01:00
Orne Brocaar
cd57929b43 Update dependencies. 2023-09-04 14:10:27 +01:00
Orne Brocaar
7ff12f5ae7 Bump version to 4.4.3 2023-07-24 11:54:31 +01:00
Orne Brocaar
f66186bb7b Bump version to 4.4.2 2023-07-14 10:56:00 +01:00
Orne Brocaar
9d543603d5 Bump version to 4.4.1 2023-07-05 11:18:51 +01:00
Orne Brocaar
407ebd2d3f Bump version to 4.4.0 2023-06-26 12:05:45 +00:00
Orne Brocaar
ba7b262323 Change enabled_class > class_enabled for consistency. 2023-06-14 13:13:13 +01:00
Orne Brocaar
6480b3bbd5 Add enabled class to DeviceInfo in events. 2023-06-14 13:13:13 +01:00
Orne Brocaar
a1a34abaf7 Refactor device enabled_class to enum + expose in API. 2023-06-14 11:17:04 +01:00
Orne Brocaar
3f77203516 Bump version to 4.4.0-test.1 2023-05-30 14:08:45 +00:00
Orne Brocaar
28e940d2b7 Update api generated code. 2023-05-30 14:51:15 +01:00
Orne Brocaar
cefe61072d Initial Relay support implementation (TS011).
Closes #59.
2023-05-22 11:04:13 +01:00
Orne Brocaar
513aa7804d Add event prefix + arbitrary JSON options for IFTTT. 2023-05-19 14:43:39 +01:00
Orne Brocaar
08d69502de Bump version to 4.3.2 2023-04-26 13:02:10 +01:00
Orne Brocaar
683f59c063 Update Rust API dependencies. 2023-04-26 12:36:10 +01:00
Orne Brocaar
0a3fcaeb2d Bump version to 4.3.1 2023-04-10 12:24:52 +01:00
Orne Brocaar
77051e8956 Update Rust API Cargo.lock. 2023-04-10 12:08:12 +01:00
Orne Brocaar
101b155d91 Update dependencies. 2023-04-10 11:10:52 +01:00
Orne Brocaar
8fe0c7c6c2 Improve Rust SDK build flags / reduce dependencies.
This reduces the amount of dependencies in case not all features are
being used. E.g. tonic is only needed if using gRPC and pbjson,
pbjson-types and serde are only needed if using the JSON serialization.
2023-03-28 21:11:54 +01:00
Orne Brocaar
1430c30ab3 Make using gateway location optional (LoRa Cloud). 2023-03-28 13:11:49 +01:00
Orne Brocaar
ef97eccf62 Update LoRa Cloud integration. 2023-03-08 17:01:11 +00:00
Orne Brocaar
50f8093c07 Bump version to 4.3.0 2023-03-08 09:20:50 +00:00
Orne Brocaar
eaad8586a1 Bump version to 4.3.0-test.3 2023-03-02 14:32:56 +00:00
Orne Brocaar
ddea09d9d4 Decode frm_payload mac-commands in device frame log. 2023-03-02 12:21:42 +00:00
Orne Brocaar
4b41893f42 Bump version to 4.3.0-test.2 2023-02-28 12:07:16 +00:00
Orne Brocaar
3db01e66c0 Bump version to 4.3.0-test.1 2023-02-24 11:59:12 +00:00
Orne Brocaar
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
Orne Brocaar
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
Orne Brocaar
5953542a72 Update dependencies. 2023-02-06 12:23:44 +00:00
Orne Brocaar
1d2f627bbb Bump version to 4.2.0 2023-01-24 12:23:44 +00:00
dependabot[bot]
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
Orne Brocaar
b6209d760e Bump version to 4.2.0-test.1 2023-01-16 11:14:05 +00:00
Orne Brocaar
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
Orne Brocaar
e57748087c Add back crc_status to UplinkRxInfo.
This is needed for implementing
https://github.com/chirpstack/chirpstack-concentratord/issues/29.
2023-01-11 11:13:47 +00:00
dependabot[bot]
1ebf5e7179
Bump tokio from 1.21.1 to 1.23.1 in /api/rust (#81)
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 11:07:34 +00:00
Orne Brocaar
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
dependabot[bot]
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
Orne Brocaar
ac30f68d85 Update .gitignore + re-generate API. 2023-01-10 15:57:06 +00:00
Orne Brocaar
b24ca28adb Fix java_outer_classname for request_log.proto.
See #64.
2023-01-10 15:43:21 +00:00
Orne Brocaar
103e4298fb Add device-profile option to configure region configuration.
By selecting a region configuration, devices using the device-profile
will only stick to the selected region configuration, rather than the
configurations provided by the selected region common-name.

This change also renames the region 'name' option to 'id' in the region
configuration, as well it adds a 'description' to provide a human
readable description, which is used in the drop-down in the UI.

This also fixes the JS API generation. In a previous commit the the
protobuf package was updated, but the latest protobuf compiler no longer
supports generating JS code (this now requires an external plugin). This
has been fixed.

Please note that if you have implemented custom ADR algorithms that are
referring to the 'regionName' key, that you must change this to
'regionConfigId' (see the ADR code example).
2023-01-09 12:04:10 +00:00
Orne Brocaar
927a68a436 Bump version to 4.1.3 2022-12-27 11:14:43 +00:00