Flussonic API: Tags

To let Watcher users update streamer (while Watcher has not switched to using tags yet), we implemented conversion of streamer hostnames (https://flussonic.com/doc/api/central/#tag/stream/operation/stream_save%7Cbody%7Cstreamer_hostname) in a newly created/updated/deleted streams to the required tag (https://flussonic.com/doc/api/central/#tag/stream/operation/stream_save%7Cbody%7Ctags)

To simplify the configuration process, the ‘hostname’ and ‘cluster_key’ requirements in the PUT /streamers/{hostname} (https://flussonic.com/doc/api/central/#tag/streamer/operation/streamer_save) requests were removed.

Video export

To export long archive footage without its cutting or being downloaded not in the full volume, we added the “Download TS” option in the export menu that allows users to choose the TS format when exporting content. This feature serves as an alternative option for scenarios where MP4 export may not be suitable or functional.

Watcher Client Web UI (PWA)

As part of upgrading Watcher Client Web UI, we added branding colors (as configured in Watcher UI), push notifications and archive export to the Watcher Client Web UI (PWA).

To easily access and view a list of persons in the Watcher Client UI (PWA), we implemented the GET /persons request in Watcher Client API.

For a convenient navigation, accurate and quick search of episodes in the camera list page, we added filtering the response to GET /streams by the camera name, title, and comment. Besides, we added search by name in the camera list for the Watcher Client Web UI (PWA) and improved the search by camera name in the episode list in the Central Admin UI.

Watcher Admin UI

To explore and evaluate the Watcher Admin UI, users can refer to: http://WATCHER-IP/watcher/admin

To monitor streaming infrastructure status, the display of streamers list was implemented in the Watcher Admin UI.

To provide OpenAPI contracts for Watcher configurations, we implemented user management endpoints in Watcher Admin UI. This functionality can be used for billing integrations. And provided admins with the email configuration properties for its customization (https://flussonic.com/doc/watcher/email-customization/).

Database management

To make it easier to manage the system database and not to set the DB variable anymore, we supported the use of the database path from /etc/watcher/watcher.conf when using the database management utility.

Episodes management

To review content efficiently, gain historical insights into content creation and updates, we added filtering of episodes by the time of their creation (opened_at. With the filter enabled, the episodes are sorted by opened_at (ascending), and -opened_at (descending) without the filter.

Watcher API

For the developers can get the necessary information from Watcher API, we implemented the ‘_like’ filter for the camera title in GET /streams method to allow for camera search by fuzzy match.

For operations in K8s environment and for the systems where the hostname is not FQDN-compliant or a different interface is specifically required, we added setting up API_URL in a Watcher when configuring a cluster to indicate the address for Watcher to be accessed from the Internet, this parameter can be changed when auto set-up does not work correctly.

Person database

To reduce the load to the analytics server, the person updating procedure was improved, so that the photo is not sent to the identification server if the face fingerprint already exists and passed by Watcher.

For accurate operations of analyticsl, and informing Central of the persons existing in the Watcher database (even when analytics nodes are offline), person database synchronization between Watcher and Central was improved.

Users have the flexibility to save person profiles even if an analytics module is not responding or not installed.

To reduce the load on analytics nodes, avoid wasting resources on regenerating fingerprints for the existing persons, the process of person database synchronization was updated by passing existing face fingerprints from Watcher to Central.


The instructions on how to sign up and get started with VSAAS.IO. is updated and set in order: (https://flussonic.com/doc/watcher/signing-up-and-getting-started-with-the-billing-service/)

Bugs fixed

Watcher Client UI We fixed an error ‘Failed to copy’ that was preventing users of the Watcher Client UI (PWA) from successfully using the “Copy Embed URL” and “Share Selected” buttons.

Cameras with Agents To let our customers run updates themselves, if the Central server loses connection to the streamer, it notifies the Agent to reconnect, avoiding situations when streams of cameras with Agents become unavailable after Flussonic restart while the Agents remain live.

To correctly add cameras to their end users, our customers can now set up cameras with Agents that properly connect to a server without the necessity to change a streamer or save settings.

Events API As Central handles an ‘event_sink’ configuration, unnecessary calls from Watcher directly to streamers are eliminated.

License plate recognition Since 23.12 the license plate recognition module returns the best or most accurate license plate detection result, instead of the first one found.

Custom auth_backend To let end-users view cameras and archive on TVs with another software (like IPTVPORTAL), we added an ability to set a custom auth_backend with WATCHER_CUSTOM_AUTH parameter in Watcher config.

Adding a person in Watcher UI There is no more HTTP 500 error issue when adding a person in Watcher UI. The person is always saved in the Watcher database and then synchronized with the analytics module through Central.

Watcher API The requirements for the ‘hostname’ to be specified for any role and cluster_key for vision and identification in the PUT /streamers/{hostname} request was removed.

Displaying event list There is no delay in displaying an event list in Watcher Client UI, the excessive timing of the GET /episodes was fixed.

DVR limit for motion records In 23.12 we fixed an issue where motion records with unlimited DVR limits were being improperly deleted based on expiration (https://flussonic.com/doc/api/central/#tag/stream/operation/stream_save%7Cbody%7Cdvr%7Cexpiration) settings instead of episodes_expiration.

Video analytics We resolved an issue that prevented the video analytics software from starting on Ubuntu 20.04.

Push-message delivery In 23.12 we improved push-message delivery in the Watcher Client UI ensuring that important notifications and alerts are reliably delivered to user devices.

CSV files export Since 23.12 event export in the Watcher UI ensures that users can initiate the process of exporting event data to a CSV format as intended.

The exported CSV files now contain accurate URLs for analytics episodes.

Managing episodes “Back” button on the camera page in the Watcher Client UI returns to the previous episode instead of a camera list when a user clicks several times on episodes.

Camera list display We fixed an issue when not all cameras displayed in the camera list of Watcher Client Web UI (PWA). Now the cameras are displayed in pages (12pcs per page).

Episode filtering Flussonic API filtering capabilities were enhanced with a wider range of filtering conditions (gt, lt, lte, gte, _is, _is_not, and _like) when querying episode data (opened_at. Learn more about filtering in Flussonic API.

Tag mechanism The use of the tag mechanism became mandatory. This change provides users with greater control over stream distribution, better security, and improved management capabilities.

Episodes Watcher Admin UI does not return HTTP 403 error. Administrators are subject to access control rules and can only access episodes or data that they have permission to view or manage. Episodes are now reliably fetched and synchronized from Central to Watcher.

Camera list display The camera list is now correctly displayed and accessible when tags are set for streams or streamers. Watcher update When updating Watcher there is no more issue of Central not being restarted by a postinst script. To avoid any possible breakdowns and a prolonged shutdown of customer operations, we fixed freezing of a postinst script when Watcher is being updated.

Thumbnails To reduce a server load, a thumbnail request is processed for active cameras only.

Episodes with thumbnails are correctly shown in Watcher Client UI.