Skip to content

LUNA PLATFORM v.5.95.0#

LP changes

  • Now the Remote SDK service has been classified as optional and is regulated within the group of parameters "ADDITIONAL_SERVICE_USAGE".

    When disabling the Remote SDK service:

    • all functionality related to neural networks will be unavailable, namely: detection of faces and bodies in images, estimation of image parameters, as well as extraction of basic attributes and biometric template;
    • it will not be possible to work with the Additional extraction task, and the Estimator task will only work if the handler used by this task does not require the Remote SDK service.

    A new component "remote_sdk" has also been added to the "get platform features" request, allowing the tracking of the Remote SDK service's state (enabled/disabled).

  • A new resource, /groups/{group_id}/streams, has been added, allowing the management of streams that belong to a specific group.

    A request, patch streams in group, has been added, which brings all streams in the group to the desired state (start/stop). The changes are applied only to those streams that are in a state other than the target state. For example, if you want to start all the streams in a group, but some of them are already running, the operation will only be applied to those streams that are in the stop state. Streams that are already in the target state (e.g., already running pending) will not be changed. If there is at least one stream in the group that can be moved to a new state (e.g. from stop to pending), the request will be fulfilled. However, if no streams can be changed (e.g. all streams are already in the target state or their state cannot be changed for other reasons), an error with code 44015 and description Unable to patch streams. No streams suitable for patching will be returned.

    A new request, remove all streams in the group, has been added, allowing the removal of all streams from the group without deleting the group itself.

    A parameter, with_streams, has been added to the remove group request, allowing flexible management of deletion: - if set to 0 (default), only the group is deleted, and the streams are left unchanged; - if set to 1, both the group and all streams associated with it are deleted.

    Also introduced is the ability to use group_id as a filter for the get streams request to get all streams belonging to the specified group.

  • The functionality for matching based on general events has been added, which is implemented through a new request general events matching.

    This functionality allows you to match specified references - general events or descriptors in binary format - with candidates represented as general events.

    The results of the matching are returned as a list of matches for the candidates according to the specified filters, or an empty list if no matches are found.

  • The ability to run video processing as a background task has been added by using the new deferred_task parameter in the request to the /videosdk resource.

    When a video processing request is made with the deferred_task parameter enabled, the task will be executed in the background and a task_id will be provided to track its status.

    You can track the task status and get the result URL (if successful) by task_id using the new request get task.

    The Video Agent service now uses the Redis database to store background video processing tasks. In this regard, a new group of settings LUNA_VIDEO_AGENT_REDIS_DB_ADDRESS has been introduced, which includes the following parameters: * "user" and "password" — the Redis authorization parameters; * "host" — the Redis IP address; * "port" — the port on which Redis runs; * "number" — the Redis database number (from 0 to 15).

    A new parameter, max_active_tasks, has also been added to the LUNA_VIDEO_AGENT_SETTINGS configuration, allowing the regulation of the maximum number of simultaneously executed background tasks by a single agent. The default value is 2. Created tasks will be executed in the order of the queue if the number of active tasks reaches the specified limit.

  • A new parameter, notification_policy, has been added to the stream creation settings, enabling the sending of notifications about stream processing status changes using the Callback mechanism.
    For example, when a stream is taken into operation, its status takes the value "pending", during processing by the agent, the status changes to "in_progress", upon successful processing it becomes "done", etc.

There are two types of callbacks available for sending notifications:
- http — notifications are sent to the specified URL;
- telegram — notifications are sent to the Telegram chat. To do this, you need to specify the chat ID chat_id, and the authorization token token for Telegram.

See [`create stream`](https://docs.visionlabs.ai/luna/v.5.95.0/ReferenceManuals/APIReferenceManual.html#tag/streams/operation/createStream).
  • The ability to use Poetry for dependency installation has been added to the Lambda service.

    Using Poetry improves dependency management by allowing precise control over which versions of packages are installed (via poetry.lock) and making dependency updates more predictable and manageable.

    The classic way of installing dependencies via pip install and a requirements.txt file is still available, but if a Lambda archive contains both a requirements.txt file and Poetry files (e.g. pyproject.toml and poetry.lock), Poetry will take precedence.

    See the section for details "Lambda requirements".

LP fixed errors

  • The resources token permission to use one or more resources now allows the /videosdk resource to be selected. See create token.

  • Fixed an issue where the rate analytics parameter would not work correctly when using server time as a source of timestamps for processing streams.

    The rate parameter, which is responsible for the frame rate, now works correctly even when using server time as a source of timestamps.

    Previously, if data was received with a delay, but the timestamps were tied to the server, this could lead to dropped frames or incorrect processing.