Added
- Newly redesigned The Things Stack Console. The most notable changes are as follows:
- New look and feel
- New sidebar-based navigation and structure
- Top entities are automatically stored and displayed for faster access
- More useful panels in the overviews of gateways, applications and end devices
- Quick search feature to search globally for any entity
- New event overlay for better in-context event examination
- Notifications can now be viewed from within the Console
- Support for managed gateways and claiming through The Things Gateway Controller.
- Support for The Things Industries gateway protocol. This is adds a new pair of ports to Gateway Server:
1889for Envoy or Traefik terminated TLS mutual authentication, and8889for The Things Stack terminated TLS mutual authentication. - Option to filter the output of the
ListRPCs for end devices and gateways based on when they were updated.ListGatewaysRequestandListEndDevicesRequestRPCs have a newFilterfield that supports anupdated_sincetimestamp.
- Preparation for universal rights assigned to users.
- This requires a database schema migration (
ttn-lw-stack is-db migrate).
- This requires a database schema migration (
Changed
- Enforce
NOT NULLconstraint on Network Operations Center’send_device_data_uplinkhypertable.- This requires a Network Operations Center migration (
tti-lw-stack noc-db migrate).
- This requires a Network Operations Center migration (
Deprecated
- Experimental RPCs
AuthorizeGatewayandUnauthorizeGatewayof the Gateway Claiming Server (GCLS). CUPSRedirectionfield ofClaimGatewayRequest.
Removed
authorizeandunauthorizesub-commands of the gatewayclaimcommand.
Fixed
- Fixed an issue where an downlink message was scheduled by the Application Layer Clock Synchronization (ALCS) implementation when there is no answer to send (i.e.
AnsRequiredis not set and the difference with what the end device reports falls within the threshold). - Fix unhandled video stream in QR code scanner
- Recreate Network Operations Center’s
gateway_end_device_uplink_statistics_1haggregate with a proper time bucket.- This requires a Network Operations Center migration (
tti-lw-stack noc-db migrate). - Decreases aggregate’s total data size to be less than 10% of the previous size.
- To generate data for the new table, run the following command:
CALL refresh_continuous_aggregate('gateway_end_device_uplink_statistics_1h', NOW() - interval '30d', null);
- Deployments that have retention period for the hypertable
gateway_end_device_uplinkshorter than 30 days will see a loss of data in the migration. Specifically the data loss happens in the period between [‘30d’, retention_period). - Grafana graphs will be impacted but slowly replenished by the new aggregate.
- This requires a Network Operations Center migration (
- The Network Operation Center no longer returns an incorrect amount of active Gateways, End-devices and Applications on the bigger bucket intervals.
- This requires a Network Operations Center migration (
tti-lw-stack noc-db migrate). - To generate data for the new aggregates, run the following commands:
CALL refresh_continuous_aggregate('active_gateways_1h', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_gateways_1d', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_end_devices_1h', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_end_devices_1d', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_applications_1h', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_applications_1d', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_gateway_count_1d', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_gateway_count_1w', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_end_device_count_1d', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_end_device_count_1w', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_application_count_1d', NOW() - interval '30d', null);CALL refresh_continuous_aggregate('active_application_count_1w', NOW() - interval '30d', null);
- This requires a Network Operations Center migration (
- Network Operations Center no longer returns only the last three days of data of gateways’ connection events.