ts-onvif
Version:
Client to ONVIF devices
87 lines (86 loc) • 3.56 kB
TypeScript
/**
* Analytics ver20 module
* @author Andrew D.Laptev <a.d.laptev@gmail.com>
* @see https://www.onvif.org/ver20/analytics/wsdl/analytics.wsdl
*/
import { Onvif } from './onvif';
import Service from './service';
import { Config, SupportedAnalyticsModules, SupportedRules } from './interfaces/onvif';
import { Capabilities, ConfigOptions, CreateAnalyticsModules, CreateRules, DeleteAnalyticsModules, DeleteRules, GetAnalyticsModuleOptions, GetAnalyticsModules, GetRuleOptions, GetRules, GetSupportedAnalyticsModules, GetSupportedMetadata, GetSupportedRules, MetadataInfo, ModifyAnalyticsModules, ModifyRules } from './interfaces/analytics.2';
/**
* Analytics service
*/
export default class Analytics extends Service {
constructor(onvif: Onvif);
private static configsToBuild;
private static namesToBuild;
/**
* Returns the capabilities of the analytics service.
*/
getServiceCapabilities(): Promise<Capabilities>;
/**
* Returns the types of rules supported by the device for a video analytics configuration.
* @param options
*/
getSupportedRules({ configurationToken }: GetSupportedRules): Promise<SupportedRules>;
/**
* Creates one or more rules on a video analytics configuration.
* @param options
*/
createRules({ configurationToken, rule }: CreateRules): Promise<void>;
/**
* Deletes rules from a video analytics configuration.
* @param options
*/
deleteRules({ configurationToken, ruleName }: DeleteRules): Promise<void>;
/**
* Modifies rules on a video analytics configuration.
* @param options
*/
modifyRules({ configurationToken, rule }: ModifyRules): Promise<void>;
/**
* Returns the rules configured on a video analytics configuration.
* @param options
*/
getRules({ configurationToken }: GetRules): Promise<Config[]>;
/**
* Returns options for a supported rule type.
* @param options
*/
getRuleOptions({ configurationToken, ruleType }: GetRuleOptions): Promise<ConfigOptions[]>;
/**
* Returns the types of analytics modules supported by the device.
* @param options
*/
getSupportedAnalyticsModules({ configurationToken, }: GetSupportedAnalyticsModules): Promise<SupportedAnalyticsModules>;
/**
* Creates analytics modules on a video analytics configuration.
* @param options
*/
createAnalyticsModules({ configurationToken, analyticsModule }: CreateAnalyticsModules): Promise<void>;
/**
* Deletes analytics modules from a video analytics configuration.
* @param options
*/
deleteAnalyticsModules({ configurationToken, analyticsModuleName }: DeleteAnalyticsModules): Promise<void>;
/**
* Returns analytics modules configured on a video analytics configuration.
* @param options
*/
getAnalyticsModules({ configurationToken }: GetAnalyticsModules): Promise<Config[]>;
/**
* Modifies analytics modules on a video analytics configuration.
* @param options
*/
modifyAnalyticsModules({ configurationToken, analyticsModule }: ModifyAnalyticsModules): Promise<void>;
/**
* Returns options for a supported analytics module type.
* @param options
*/
getAnalyticsModuleOptions({ configurationToken, type }: GetAnalyticsModuleOptions): Promise<ConfigOptions[]>;
/**
* Returns sample metadata produced by analytics modules.
* @param options
*/
getSupportedMetadata(options?: GetSupportedMetadata): Promise<MetadataInfo[]>;
}