Added
- Email sent to admins when an OAuth client is requested by a non-admin user.
- Packet Broker UI in the Console (admin only).
- New config option
--console.oauth.cross-site-cookieto control access to OAuth state cookie between origins.- This option needs to be set to
true(default isfalse) in multi-cluster deployments in order to support OAuth clients that use POST callbacks.
- This option needs to be set to
- Application Server forwards upstream messages of type
ApplicationDownlinkSentfor application downlink messages that were acknowledged with a TxAck message from the gateway.- MQTT clients can subscribe to the topic
v3/{application-id}/devices/{device-id}/down/sent. - For HTTP webhooks, make sure that the Downlink Sent messages are enabled.
- MQTT clients can subscribe to the topic
- Query for the most recent application messages from the Storage Integration API with the new
lastparameter (for example,?last=10mor?last=2h). See also--lastargument for thettn-lw-cli applications storage getandttn-lw-cli end-devices storage getcommands. - A location solved message is published automatically by Application Server when the decoded payload contains coordinates (e.g.
latitudeandlongitude, among other combinations, as well as support for accuracy and altitude). - Configuration option to include Packet Broker metadata in uplink messages:
pba.home-network.include-hops. By default, this is now disabled. - Update gateway identity, status, antennas, frequency plan, location and receive and transmit rates to Packet Broker Mapper. Mapping is enabled when the Forwarder role is enabled. The following new configuration options are introduced to change the default behavior:
gs.packetbroker.update-gateway-interval: Update gateway intervalgs.packetbroker.update-gateway-jitter: Jitter (fraction) to apply to the update interval to randomize intervalsgs.packetbroker.online-ttl-margin: Time to extend the online status before it expirespba.mapper-address: Address of Packet Broker Mapperpba.forwarder.gateway-online-ttl: Time-to-live of online status reported to Packet Broker
- Improved error messages for Gateway Claiming and additional defaults for non-existing gateways.
Changed
- Low-level log messages from the
go-redislibrary are printed only when the log level is set toDEBUG. - GS will discard repeated gateway uplink messages (often received due to buggy gateway forwarder implementations). A gateway uplink is considered to be repeated when it has the same payload, frequency and antenna index as the last one.
- The new
gs_uplink_repeated_totalmetric counts how many repeated uplinks have been discarded. - A
gs.up.repeatevent is emitted (once per minute maximum) for gateways that are stuck in a loop and forward the same uplink message.
- The new
- For ABP sessions, the CLI now requests a DevAddr from the Network Server instead of generating one from the testing NetID.
- Descriptions, tooltips and defaults for checkboxes for public gateway status and location in the Console.
- All HTTP requests made by The Things Stack now contain a
User-Agentheader in the form ofTheThingsStack/{version}. - No connection to Packet Broker is being made when neither the Forwarder nor the Home Network role is enabled.
- Increase the default size limit for payload formatter scripts to 40KB (up from 4KB). The maximum size enforced at API level is 40KB (up from 16KB).
- For more context see issue #4053 and issue #4278.
Fixed
- Parse error in Webhook Templates.
- Clarified errors in device claiming.
- Application deletion handling in the Console.
- Error when logging into the Console when using connections without TLS.
- Account for antenna gain when the gateway is not authenticated (i.e. UDP gateway).
- Preserve antenna gain when the gateway status message contains GPS coordinates.
- Location map coordinate selection in the Console.
- Rights required for reading scheduled downlinks.