Skip to content

v.5.119.0#

Changes

  • The matching algorithm has been optimized.

    Matching speed has increased by 3–5% in some cases due to a library update in the Python Matcher service.

  • Sending of analytics validation schemas implemented in Video Agentt to Video Manager has now been enabled by default.

    Now, when creating a stream, in case of incorrectly specified analytics parameters, the system will immediately indicate a specific field and the reason for the discrepancy, which speeds up the process of setting up and correcting errors. This helps prevent errors from appearing at the stage of stream processing. This is especially important for complex analytics, where the parameters must strictly correspond to the expected scheme.

  • The capability for additional lambda configuration by the user via the API service has been added.

    Now, for each lambda, you can specify additional settings (user_config) in JSON format. This allows you to flexibly manage the lambda's behavior (for example, set threshold values ​​or file paths) without having to rebuild the Docker image — the system automatically restarts the lambda with new parameters.

    The settings are passed when creating, updating, or importing a lambda via the user_config parameter. Example:

    {
      "SETTING_1": "value",
      "SETTING_2": {"key": "value"}
    }
    

    New requests for getting and updating settings have been added: update lambda config and get lambda config

    For more information, see the Lambda configuration section of the developer guide.

Fixed errors

  • Fixed the CORS mechanism.

    Now the Access-Control-Expose-Headers header from the LUNA_API_CORS parameter group, containing X-Luna-Meta-Rescale and X-Luna-Expiry-Date, is correctly returned in all server responses.

    Previously, it was used only for preliminary requests, which did not comply with the specification.

  • Fixed a bug where the connection to the Licenses service was not checked when starting the Video Agent service.

  • Fixed incorrect behavior when re-registering analytics created by an external agent.

    Previously, when restarting an external agent, the analytics created by it could be mistakenly identified by the system as internal (created by an internal agent). Because of this, the analytics became available to all users, although it should have remained tied only to the external agent account. Now, when re-registering the agent, the analytics continues to be considered external.

    For more information, see the Video Manager and Video Agent services documentation in the developer guide.

  • The logic of the "ws handshake for general events" request has been fixed.

    Previously, users could receive general events from all accounts in the system via WebSocket. For example, a user with user rights saw events created by a user with admin rights from another account.

    Now users receive only those general events that were created within their own account.

  • Fixed an error in processing the generate stream events request, due to which the avatar field was not set for the face.

    Previously, the avatar field was not set if the first element of the sources > source detection array did not have a face sample. This happened even if the sample was present in subsequent detections of the same event. Now the system correctly processes all elements of the array and uses the sample identifier from the first detection where it is present for the avatar, regardless of the order of detections.

    Previously, if the first element in the sources > source detection array was a body, not a face, then the avatar was not created, even if the face sample was present in the event. Now the system correctly processes all elements of the array and uses the first found face sample to create the avatar, regardless of its order in the array.

  • Fixed a bug where OpenAPI documentation for lambdas of type agent was missing in response to a get lambda openapi documentation request.

    Previously, when executing a request, the server returned an error with the status code 500 and the message "Internal server error Service static folder not being loaded", since the necessary documentation files (OpenAPI) were missing. Now, a request to get the specification reliably returns data in the required format (YAML/HTML) instead of a server error.