Commit Graph

206 Commits

Author SHA1 Message Date
Orne Brocaar
ebc4065ca2 Bump version to 4.9.0-test.5 2024-07-23 11:03:39 +01:00
Orne Brocaar
8fabfd925e Bump version to 4.9.0-test.4 2024-07-22 14:40:01 +01:00
Orne Brocaar
a22ed43883 Update dependencies.
There are still a few dependencies left to update, but these updates
require additional code changes.
2024-07-22 11:48:08 +01:00
tuialexandre
15461d8cc5
Improved device activation api documentation (#454) 2024-07-10 15:06:01 +01:00
Bernd Storath
ad2fecd1d2
ui: Make tileserver + attribution configurable. (#451)
Co-authored-by: Orne Brocaar <info@brocaar.com>
2024-07-10 15:05:33 +01:00
dependabot[bot]
6c8e87f505
Bump @grpc/grpc-js from 1.10.4 to 1.10.9 in /api/js (#434)
Bumps [@grpc/grpc-js](https://github.com/grpc/grpc-node) from 1.10.4 to 1.10.9.
- [Release notes](https://github.com/grpc/grpc-node/releases)
- [Commits](https://github.com/grpc/grpc-node/compare/@grpc/grpc-js@1.10.4...@grpc/grpc-js@1.10.9)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 12:21:16 +01:00
Bernd Storath
c173ace8bc
api: Remove generated PHP code. (#452) 2024-07-09 12:15:16 +01:00
Orne Brocaar
f854236b79 Bump version to 4.9.0-test.3 2024-06-26 14:57:17 +01:00
Orne Brocaar
68473906c9 Bump version to 4.9.0-test.2 2024-06-25 12:27:28 +01:00
Orne Brocaar
3f1a47e1e2 Integrate Gateway Mesh feature.
This adds a Gateway Mesh section to the web-interface (+ API endpoints)
to see the status op each Relay Gateway within the Gateway Mesh.

The Gateway Mesh (https://github.com/chirpstack/chirpstack-gateway-mesh)
is an experimental feature to extend LoRaWAN coverage throug Relay
Gateways.
2024-06-25 11:37:57 +01:00
Bernd Storath
38d544a5f7
api: add grpc php support (#431) 2024-06-11 11:50:02 +01:00
Orne Brocaar
c7f1367bf8 api: Remove frame_log from __init__.py (Python).
Closes #422.
2024-05-16 11:54:39 +01:00
Orne Brocaar
4968f5d792 Bump version to 4.8.1 2024-05-13 16:47:14 +01:00
Orne Brocaar
36bbf8f153 api: Fix empty JS packages.
NPM uses the .gitignore file, which includes the generated JS code. This
caused the v4.8.0 JS packages to be completely empty. Adding an empty
.npmignore file resolves the issue as if a .npmignore file is detected,
the .gitignore file is ignored.
2024-05-13 16:32:59 +01:00
Orne Brocaar
c3de89a4a4 Bump version to 4.8.0 2024-05-13 15:35:00 +01:00
Orne Brocaar
73ad79a356 Bump version to 4.8.0-test.5 2024-05-09 13:45:24 +01:00
Orne Brocaar
d03870ff11 Bump version to 4.8.0-test.4 2024-05-09 11:22:22 +01:00
Orne Brocaar
e0a9e52cca Bump version to 4.8.0-test.3 2024-05-09 08:48:43 +01:00
Orne Brocaar
b7dad2a7d0 Add RP002-1.0.4 option to device-profile. 2024-05-08 15:05:14 +01:00
Sajad Abdollahi
26832f3a5f
api: add --depth=1 to googleapis and protobuf clones (#420) 2024-05-07 12:21:14 +01:00
dependabot[bot]
0d11ad609a
Bump golang.org/x/net from 0.22.0 to 0.23.0 in /api/go (#406)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.22.0 to 0.23.0.
- [Commits](https://github.com/golang/net/compare/v0.22.0...v0.23.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 10:39:09 +01:00
dependabot[bot]
0b665c7a11
Bump protobufjs from 7.2.4 to 7.2.6 in /api/js (#401)
Bumps [protobufjs](https://github.com/protobufjs/protobuf.js) from 7.2.4 to 7.2.6.
- [Release notes](https://github.com/protobufjs/protobuf.js/releases)
- [Changelog](https://github.com/protobufjs/protobuf.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/protobufjs/protobuf.js/compare/protobufjs-v7.2.4...protobufjs-v7.2.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 10:38:29 +01:00
dependabot[bot]
3ee4598320
Bump tar from 6.1.15 to 6.2.1 in /api/grpc-web (#400)
Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.15 to 6.2.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.1.15...v6.2.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 10:38:15 +01:00
dependabot[bot]
8adc80bf4e
Bump tar from 6.1.15 to 6.2.1 in /api/js (#399)
Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.15 to 6.2.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.1.15...v6.2.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 10:38:04 +01:00
Orne Brocaar
487f785302 Add option to increase RX1 Delay in device-profile.
In general ChirpStack is configured with a rx1_delay configuration
matching the network latency (e.g. on cellular, one might want to set
this to rx1_delay=3). However, this does not take into account a
possible latency of the end-application. Handling the uplink and
enqueueing a downlink might take more time than the configured rx1_delay
(and get_downlink_data_delay) allows.

This option makes it possible to increase the RX1 Delay in the
device-profile. If the RX1 Delay has between increased relative to
the system default, then the get_downlink_data_delay will be
incremented with the same amount of seconds.
2024-05-02 10:29:10 +01:00
Orne Brocaar
a5ff416fa2 Implement storing + display duty-cycle stats.
Note that these stats are only available for Concentratord based
gateways as these metrics must be aggregated by the gateway.
2024-04-17 14:34:11 +01:00
Orne Brocaar
9207effb5b Bump version to 4.8.0-test.2 2024-04-10 10:12:06 +01:00
Orne Brocaar
6ef100c9b7 api: Add back rust/proto directory.
This needs to be tracked by git to make cargo publish work. If this
folder is in the .gitignore, then cargo publish will ignore this folder
as well and the publish command will fail because of missing .proto
files. If we would temporarily remove / rename the .gitignore file, then
cargo publish will error because the git state is dirty.
2024-04-04 15:55:59 +01:00
Orne Brocaar
b3ba23f32c Bump version to 4.8.0-test.1 2024-04-04 15:25:59 +01:00
Orne Brocaar
f283261636 api: Remove Python proto folder.
There is no point in tracking this folder in git, as on each make we
will copy it from the original api/proto folder.
2024-04-04 14:30:03 +01:00
Orne Brocaar
ac9923e120 api: Add duty-cycle stats messages + types. 2024-04-04 14:28:24 +01:00
Orne Brocaar
c238e8f6da api: Use protoc-gen-go & -go-grpc from nix. 2024-04-01 14:37:41 +01:00
Orne Brocaar
d170c7dd79 api: Remove generated API files from repo + update build.
All these files can be generated using the `make api` command and there
is no real need to commit these into the repo. Only the api/go files
need to be comitted of how the Go import system works.

This also updates the Rust, Go, JS and gRPC-web (JS) code generation and
UI build to use the nix-shell environment instead of using Docker.
2024-04-01 14:27:15 +01:00
Orne Brocaar
286d8b33b2 Generate API code. 2024-03-26 16:47:55 +00:00
Orne Brocaar
c71b856c78 Align multicast class-b ping-slot config.
This aligns the multicast class-b ping-slot configuration with the way
how it is configured in the device-profile. This deprecates the
class_b_ping_slot_period field in favor of the class_b_ping_slot_nb_k
field, which should be a value between 0 - 7 (this is defined and
explained by the LoRaWAN specification).

Closes #255.
2024-03-26 16:45:24 +00:00
Orne Brocaar
f970e94cca Show version in UI (for admin users).
Closes #73 and #158.
2024-03-26 09:01:21 +00:00
Orne Brocaar
9de0354f13 api: Update dependencies. 2024-03-19 10:57:29 +00:00
dependabot[bot]
7e0c18cf00
Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /api/go (#379)
Bumps google.golang.org/protobuf from 1.31.0 to 1.33.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-19 10:39:55 +00:00
Orne Brocaar
06bcca147c Update tonic. 2024-03-19 10:38:08 +00:00
Orne Brocaar
8c875c3bf1 Bump version to 4.7.0 2024-03-13 10:44:21 +00:00
Aidar
5f72db234f
Updated docker-compose to docker compose (#377) 2024-03-12 11:27:27 +00:00
Orne Brocaar
519f53940e Bump version to 4.7.0-test.4 2024-02-27 16:48:40 +00:00
Orne Brocaar
f816ca469b Update generated api code. 2024-02-27 16:34:31 +00:00
Orne Brocaar
098f8db4c6 Migrate device-sessions from Redis to PostgreSQL.
This migrates the device-sessions from Redis into PostgreSQL. This fixes
a performance issue in case the same DevAddr is reused many times
(e.g. devices rejoining very often or a NetID with small DevAddr space).

There were two issues:

The Redis key containing the DevAddr -> DevEUIs mapping could contain
DevEUIs that no longer used the DevAddr. This mapping would only expire
from the Redis database after none of the devices would use the DevAddr
for more than the configured device_session_ttl.

The other issue with the previous approach was that on for example a
Type 7 NetID, a single DevAddr could be re-used multiple times. As each
device-session could be stored on a different Redis Cluster instance,
there was no option to retrieve all device-sessions at once. Thus a high
re-usage of a single DevAddr would cause an increase in Redis queries.

Both issues are solved by moving the device-session into PostgreSQL
as the DevAddr is a column of the device record and thus filtering on
this DevAddr would always result in the devices using that DevAddr, as
well all device-sessions for a DevAddr can be retrieved by a single
query.

Note that to migrate the device-sessions, you must run:

chirpstack -c path/to/config migrate-device-sessions-to-postgres

A nice side-effect is that a PostgreSQL backup / restore will also
restore the device connectivity.

Closes #362 and #74.
2024-02-27 16:17:15 +00:00
Orne Brocaar
d599e7a276 Add js context to get_activation api method. 2024-02-06 13:16:26 +00:00
Orne Brocaar
be26e60111 Bump version to 4.7.0-test.3 2024-01-12 09:19:50 +00:00
Orne Brocaar
e1334f647d Bump version to 4.7.0-test.2 2024-01-11 15:42:16 +00:00
Orne Brocaar
cc47958839 Bump version to 4.7.0-test.1 2024-01-11 12:48:18 +00:00
Orne Brocaar
9f67b9c221 Implement direct redirect for OIDC and OAuth login. 2023-12-19 14:31:21 +00:00
Orne Brocaar
9198d7d51b Implement Clerk as authentication backend (OAuth2). 2023-12-19 13:49:16 +00:00