onvif-rx
Version:
Interact with ONVIF cameras and devices using RXJS
229 lines (228 loc) • 15.7 kB
TypeScript
import { IDeviceConfig } from "../config";
import { ReferenceToken, Config } from "./types";
export declare class ONVIFAnalytics {
private config;
constructor(config: IDeviceConfig);
/**
*
* List all rules that are supported by the given VideoAnalyticsConfiguration.
*
*/
static GetSupportedRules(ConfigurationToken: ReferenceToken): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Add one or more rules to an existing VideoAnalyticsConfiguration.
* The available supported types can be retrieved via GetSupportedRules,
* where the Name of the supported rule correspond to the type of an rule instance.
* Pass unique module names which can be later used as reference.
* The Parameters of the rules must match those of the corresponding description.
*
* Although this method is mandatory a device implementation must not support adding rules.
* Instead it can provide a fixed set of predefined configurations via the media service function
* GetCompatibleVideoAnalyticsConfigurations.
*
*/
static CreateRules(ConfigurationToken: ReferenceToken, Rule: Config): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Remove one or more rules from a VideoAnalyticsConfiguration.
*
*/
static DeleteRules(ConfigurationToken: ReferenceToken, RuleName: string): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* List the currently assigned set of rules of a VideoAnalyticsConfiguration.
*
*/
static GetRules(ConfigurationToken: ReferenceToken): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Return the options for the supported rules that specify an Option attribute.
*
*/
static GetRuleOptions(ConfigurationToken: ReferenceToken, RuleType?: any): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Modify one or more rules of a VideoAnalyticsConfiguration. The rules are referenced by their names.
*
*/
static ModifyRules(ConfigurationToken: ReferenceToken, Rule: Config): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
* Returns the capabilities of the analytics service. The result is returned in a typed answer.
*/
static GetServiceCapabilities(): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* List all analytics modules that are supported by the given VideoAnalyticsConfiguration.
*
*/
static GetSupportedAnalyticsModules(ConfigurationToken: ReferenceToken): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Return the options for the supported analytics modules that specify an Option attribute.
*
*/
static GetAnalyticsModuleOptions(ConfigurationToken: ReferenceToken, Type?: any): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Add one or more analytics modules to an existing VideoAnalyticsConfiguration.
* The available supported types can be retrieved via GetSupportedAnalyticsModules,
* where the Name of the supported AnalyticsModules correspond to the type of an AnalyticsModule instance.
* Pass unique module names which can be later used as reference. The Parameters of the analytics module must match those of the corresponding AnalyticsModuleDescription.
*
* Although this method is mandatory a device implementation may not support adding modules.
* Instead it can provide a fixed set of predefined configurations via the media service functions
* GetCompatibleVideoAnalyticsConfigurations and
* GetAnalyticsConfigurations.
*
* The device shall ensure that a corresponding analytics engine starts operation when a client
* subscribes directly or indirectly for events produced by the analytics or rule engine or when a
* client requests the corresponding scene description stream.
* An analytics module must be attached to a Video source using the media profiles before it can be used.
* In case differing analytics configurations are attached to the same profile it is undefined which
* of the analytics module configuration becomes active if no stream is activated or multiple streams
* with different profiles are activated at the same time.
*
*/
static CreateAnalyticsModules(ConfigurationToken: ReferenceToken, AnalyticsModule: Config): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Remove one or more analytics modules from a VideoAnalyticsConfiguration referenced by their names.
*
*/
static DeleteAnalyticsModules(ConfigurationToken: ReferenceToken, AnalyticsModuleName: string): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* List the currently assigned set of analytics modules of a VideoAnalyticsConfiguration.
*
*/
static GetAnalyticsModules(ConfigurationToken: ReferenceToken): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* Modify the settings of one or more analytics modules of a VideoAnalyticsConfiguration. The modules are referenced by their names.
* It is allowed to pass only a subset to be modified.
*
*/
static ModifyAnalyticsModules(ConfigurationToken: ReferenceToken, AnalyticsModule: Config): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* This method provides a computer readable description of the metadata that the selected analytics modules can generate.
* The type parameter allows to select a single analytics module. By default the output shall relate to all analytics modules that exist in the device.
* The response shall provide a sample XML frame.
* The sample frame shall include all potentially generated elements by the selected analytics modules.
* Note that this e.g. does not need to include all possible class type enumerations.
*
*/
static GetSupportedMetadata(Type?: any): import("typescript-monads").IReader<IDeviceConfig, import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>>;
/**
*
* List all rules that are supported by the given VideoAnalyticsConfiguration.
*
*/
GetSupportedRules(ConfigurationToken: ReferenceToken): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Add one or more rules to an existing VideoAnalyticsConfiguration.
* The available supported types can be retrieved via GetSupportedRules,
* where the Name of the supported rule correspond to the type of an rule instance.
* Pass unique module names which can be later used as reference.
* The Parameters of the rules must match those of the corresponding description.
*
* Although this method is mandatory a device implementation must not support adding rules.
* Instead it can provide a fixed set of predefined configurations via the media service function
* GetCompatibleVideoAnalyticsConfigurations.
*
*/
CreateRules(ConfigurationToken: ReferenceToken, Rule: Config): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Remove one or more rules from a VideoAnalyticsConfiguration.
*
*/
DeleteRules(ConfigurationToken: ReferenceToken, RuleName: string): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* List the currently assigned set of rules of a VideoAnalyticsConfiguration.
*
*/
GetRules(ConfigurationToken: ReferenceToken): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Return the options for the supported rules that specify an Option attribute.
*
*/
GetRuleOptions(ConfigurationToken: ReferenceToken, RuleType?: any): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Modify one or more rules of a VideoAnalyticsConfiguration. The rules are referenced by their names.
*
*/
ModifyRules(ConfigurationToken: ReferenceToken, Rule: Config): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
* Returns the capabilities of the analytics service. The result is returned in a typed answer.
*/
GetServiceCapabilities(): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* List all analytics modules that are supported by the given VideoAnalyticsConfiguration.
*
*/
GetSupportedAnalyticsModules(ConfigurationToken: ReferenceToken): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Return the options for the supported analytics modules that specify an Option attribute.
*
*/
GetAnalyticsModuleOptions(ConfigurationToken: ReferenceToken, Type?: any): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Add one or more analytics modules to an existing VideoAnalyticsConfiguration.
* The available supported types can be retrieved via GetSupportedAnalyticsModules,
* where the Name of the supported AnalyticsModules correspond to the type of an AnalyticsModule instance.
* Pass unique module names which can be later used as reference. The Parameters of the analytics module must match those of the corresponding AnalyticsModuleDescription.
*
* Although this method is mandatory a device implementation may not support adding modules.
* Instead it can provide a fixed set of predefined configurations via the media service functions
* GetCompatibleVideoAnalyticsConfigurations and
* GetAnalyticsConfigurations.
*
* The device shall ensure that a corresponding analytics engine starts operation when a client
* subscribes directly or indirectly for events produced by the analytics or rule engine or when a
* client requests the corresponding scene description stream.
* An analytics module must be attached to a Video source using the media profiles before it can be used.
* In case differing analytics configurations are attached to the same profile it is undefined which
* of the analytics module configuration becomes active if no stream is activated or multiple streams
* with different profiles are activated at the same time.
*
*/
CreateAnalyticsModules(ConfigurationToken: ReferenceToken, AnalyticsModule: Config): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Remove one or more analytics modules from a VideoAnalyticsConfiguration referenced by their names.
*
*/
DeleteAnalyticsModules(ConfigurationToken: ReferenceToken, AnalyticsModuleName: string): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* List the currently assigned set of analytics modules of a VideoAnalyticsConfiguration.
*
*/
GetAnalyticsModules(ConfigurationToken: ReferenceToken): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* Modify the settings of one or more analytics modules of a VideoAnalyticsConfiguration. The modules are referenced by their names.
* It is allowed to pass only a subset to be modified.
*
*/
ModifyAnalyticsModules(ConfigurationToken: ReferenceToken, AnalyticsModule: Config): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
/**
*
* This method provides a computer readable description of the metadata that the selected analytics modules can generate.
* The type parameter allows to select a single analytics module. By default the output shall relate to all analytics modules that exist in the device.
* The response shall provide a sample XML frame.
* The sample frame shall include all potentially generated elements by the selected analytics modules.
* Note that this e.g. does not need to include all possible class type enumerations.
*
*/
GetSupportedMetadata(Type?: any): import("rxjs").Observable<import("typescript-monads").IResult<import("../soap/request").IResultStructure<any>, import("../config").ITransportPayoad>>;
}