Have more questions? Submit a request

Platform

[9.0.1] - 2025-02-06

Fixed

  • Optimized large payload handling in /http-socket/transmit-messages by streaming JSON with stream-json package, preventing memory overflow and PayloadTooLargeError error

[9.0.0] - 2024-10-30

Added

  • Export metrics sos_platform_incoming_messages_bytes_total and sos_platform_outgoing_messages_bytes_total that track how many bytes were sent/received to/from devices

Removed

  • ServerInstance managing and pinging with serverInstanceUid

[8.1.3] - 2024-10-07

Fixed

  • Fixed a bug introduced in 8.1.2 where new devices would get rejected

[8.1.2] - 2024-10-04

Fixed

  • Log even more granular information about device in socket connected/disconnected logs

[8.1.1] - 2024-10-03

Fixed

  • Better logging of device socket disconnection in case of error

[8.1.0] - 2024-09-30

Added

  • Exports max allowed active sockets at the same time as a metric
  • Log all device socket connected/disconnected to stdout

[8.0.6] - 2024-06-05

Fixed

  • Reject devices with duid shorter than 8 characters

[8.0.5] - 2024-04-24

Fixed

  • Throttling actions in the queue (more optimal way)

[8.0.3] - 2024-04-03

Fixed

  • Parse env vars config using the standard lib
  • Prometheus metrics for device connections, incoming and outgoing messages and throttled actions

[8.0.2] - 2024-02-08

Security

  • CVE-2020-7598
  • CVE-2020-7598
  • CVE-2021-44906
  • CVE-2022-25883

[8.0.1] - 2023-12-20

Security

  • Address security issues
  • Upgrade to Node.js 20

[8.0.0] - 2023-11-21

Removed

  • PostgreSQL database

[7.9.3] - 2023-11-16

Fixed

  • BACKUP_RESTART Power Actions API

[7.9.2] - 2023-11-07

Fixed

  • Fetch license validity information from MongoDB instead of Postgres

[7.9.1] - 2023-11-06

Fixed

  • Device connection computes the index for organizations correctly (online/offline status of devices)

[7.9.0] - 2023-04-05

Added

  • Collect number of throttled pending actions per action type
  • Collect number of websocket new connections and disconnections

[7.8.0] - 2023-03-15

Added

  • Collect number of incoming/outgoing messages for each device

[7.7.1] - 2023-02-15

Fixed

  • The actions to device with socketUid target is not expecting response (so they are resolved immediately when rabbit accepts the message)

[7.7.0] - 2023-01-23

Added

  • PodMonitor Kubernetes resource so that Prometheus starts scraping metrics

[7.6.1] - 2023-01-18

Fixed

  • Emulator on /display endpoint with using redirect instead of proxy

[7.6.0] - 2022-11-30

Added

  • Collect number of connected websockets to prometheus

Fixed

  • Emulator serving all static files like serviceWorker.js

[7.5.0] - 2022-11-02

Added

  • Prometheus metrics scraping

Fixed

  • More strict node and npm versions

[7.4.0] - 2022-07-20

Added

  • Ability to throttle certain commands per device

[7.3.0] - 2022-06-29

Added

  • Device connections are stored directly to telemetry

[7.2.1] - 2022-06-01

Fixed

  • Socket device logs contain disconnected code and reason even in cases when the socket was closed by the server

[7.2.0] - 2022-05-30

Added

  • Log device socket connected/disconnected to device logs

Fixed

  • Ensure that websocket closes with frame body that fits in the limit according to websocket spec

[7.1.0] - 2022-03-16

Added

  • Actions monitoring
  • Exclude processing of applet video events
  • Prevent connecting sockets when service is overloaded on memory or number of sockets

[7.0.0] - 2021-10-27

Changed

  • Publishing actions to new exchange with action type as routing key

[6.0.0] - 2021-10-06

Changed

  • Rewrite of AMQP architecture of device actions to dramatically improve performance

[5.0.0] - 2021-09-08

Added

  • Timestamp on actions sent from device
  • Socket rate limiting of connections to platforms (prevent peak traffic to overload services/rabbitmqs)
  • Readiness probe based on number of sockets & used memory

Removed

  • No more used /configuration/* REST API which was moved to configuration-server instead

Fixed

  • Devices are not periodically reconnecting
  • Devices will not end up in invalid socket connections state (not accepting messages)

[4.4.3] - 2021-08-04

Fixed

  • Improved storing data for device connections for fetching purposes
  • Improve device AMQP queues

Removed

  • Configuration endpoint and api, now it is a separate service

[4.4.2] - 2021-07-23

Fixed

  • Performance issues when devices are reconnecting too fast

[4.4.1] - 2021-04-14

Fixed

  • Prevent possible rejecting socket connections when the same by name is already open

[4.4.0] - 2021-04-07

Added

  • Updating last used configuration protocol

[4.3.0] - 2021-03-24

Added

  • Add extendedManagementUrl into device /configuration API

[4.2.0] - 2021-03-17

Added

  • HTTP only support for device connections (instead of WebSocket only connections)

[4.1.2] - 2021-01-13

Fixed

  • Optimize consumption of actions from device (skip some unused actions)

[4.1.1] - 2020-12-30

Fixed

  • Marking device as offline in organization context to fix box devices filter for offline

[4.1.0] - 2020-10-28

Fixed

  • Platform server pings optimization

Added

  • If configuration endpoint fail during SSL handshake the same endpoint will be called without SSL

[4.0.1] - 2020-08-12

Fixed

  • Updated model dependencies, containing the fix of online devices per organization statistics

[4.0.0] - 2020-08-05

Changed

  • Updated model dependencies, device connections redesigned

[3.0.1] - 2020-07-15

Fixed

  • Returns new static url for windows displays

[3.0.0] - 2020-06-09

Changed

  • AMQP library upgraded with an updated schema of device action queue (major incompatible changes)

[2.9.4] - 2020-06-03

Fixed

  • Removed deprecated raven and use sentry instead

[2.9.1] - 2020-01-14

Fixed

  • Fetch device from Postgres to get it's details before registering it to device connections watcher

[2.9.0] - 2019-12-23

Added

  • Use redis connections watcher to track connected devices

Fixed

  • Old dependencies replaced by new from sOS namespace
  • Readability refactoring of configurationAPI and powerActionAPI

[2.8.0] - 2019-11-20

Added

  • Most of the business logic is extracted into a separate device consumer service so platform is now just a lightweight gateway for devices to connect to and the rest is handled in device consumer

[2.7.0] - 2019-10-14

Added

  • Subscription type of device registration based on subscription type of organization

[2.6.0] - 2019-08-28

Added

  • Handling client-side device deprovisioning

Fixed

  • Allow to omit frontAppletVersion in appletVersion

[2.5.3] - 2019-07-23

Fixed

  • Optimize platform server pinging

[2.5.2] - 2019-07-22

Fixed

  • Added platform server pinging (notifying alive servers)

[2.5.0] - 2019-05-29

Added

  • Option to configure priority class in kubernetes
  • Option to configure node affinity in kubernetes
  • Rolling update in kubernetes with configurable parameters

[2.4.0] - 2019-05-08

Added

  • Power action accepts and handle device power action backup restart
  • Add subscription type to device configuration to enable toggle Open/Platform

[2.3.0] - 2019-04-04

Added

  • Servlets - send the list of active servlets to the device when it requests it

[2.2.2] - 2019-03-14

Fixed

  • Possible memory leaks in WebSocket server factory and AMQP consumption

[2.2.1] - 2019-03-11

Fixed

  • This time REALLY the fixed bug with keeping devices with icons (with AMQP double consumption)
  • Major fixes in web socket devices connnection to amqp queues

[2.2.0] - 2019-02-27

Fixed

  • Devices sometimes not receiving actions due to a bug in AMQP consumption logic

Added

  • Server requires license to allow connect devices

[2.1.2] - 2019-02-13

Fixed

  • Device socket error codes wrong range of numbers used
  • If device socket doesn't close even after calling disconnect, terminate it forcefully
  • Applet enable/disable device support

[2.1.1] - 2019-02-01

Fixed

  • Device socket accidently multiple binding

[2.1.0] - 2018-12-16

Added

  • Don't convert applet timing commands to CQRS commands but straight to events to bypass command handler. This is a major optimization for command handler.
  • Don't convert pings to CQRS commands but straight to events to bypass command handler. This is a major optimization for command handler.

[2.0.4] - 2018-11-14

Fixed

  • Updating of IP addresses

[2.0.3] - 2018-11-13

Fixed

  • Supress error when action to device is not delivered correctly (socket is probably terminated)

[2.0.0] - 2018-09-11

Added

  • Dispatching of applet commands to device

Changed

  • External WebSocket (and socket.io) API is in new version called v2. Every new device must be connected to path /v2/ (or /v2/socket.io/) instead of to root which means v1

[1.0.3] - 2018-08-10

Fixed

  • Postponing of device settings actions. Now, it shouldn't happen that some action is not delivered.
  • Weinre debuging of devices

[1.0.0] - 2018-07-09

Added

  • New API for upgrading device firmware version
  • New API for scheduling device power actions

Changed

  • Added new possibility to connect displays over basic WebSocket

[0.36.3] - 2018-06-20

Fixed

  • Fixed /display emmulators for new version of default app 2.3.0+

[0.36.1] - 2018-06-08

Fixed

  • Fixed typo in set video orientation action sent to the device, that prevented explicit video orientation being set at all.

[0.36.0] - 2018-06-05

Added

  • Set explicit video orientation different from screen orientation

[0.35.2] - 2018-05-24

Fixed

  • Downgraded socket.io library to fix repetable reconnecting of devices
  • Disallow banned devices to connect a server

[0.35.0] - 2018-05-11

Added

  • Changelog file containing all changes in current project
  • Devices will not show the invalid verification hash for short time until valid one come
Was this article helpful?
0 out of 0 found this helpful
Share