onvif
    Preparing search index...

    Interface DeviceIO

    DeviceIO service — relays, digital inputs, serial ports, physical A/V I/O.

    import { Onvif } from 'onvif';

    const onvif = new Onvif({ hostname: '192.168.1.13', username: 'admin', password: 'admin' });
    await onvif.connect();

    const caps = await onvif.deviceIO.getServiceCapabilities();
    const relays = await onvif.deviceIO.getRelayOutputs();
    const inputs = await onvif.deviceIO.getDigitalInputs();
    const videoOutputs = await onvif.deviceIO.getVideoOutputs();
    console.log(caps, relays.length, inputs.length, videoOutputs.map((v) => v.token));

    const relayOutputToken = relays[0]!.token;
    await onvif.deviceIO.setRelayOutputState({ relayOutputToken, logicalState: 'active' });
    await new Promise((r) => setTimeout(r, 500));
    await onvif.deviceIO.setRelayOutputState({ relayOutputToken, logicalState: 'inactive' });
    interface DeviceIO {
        onvif: Onvif;
        service: keyof OnvifServices;
        xmlns: string;
        getAudioOutputConfiguration(
            options: GetAudioOutputConfiguration,
        ): Promise<AudioOutputConfiguration>;
        getAudioOutputConfigurationOptions(
            options: GetAudioOutputConfigurationOptions,
        ): Promise<AudioOutputConfigurationOptions>;
        getAudioOutputs(): Promise<string[]>;
        getAudioSourceConfiguration(
            options: GetAudioSourceConfiguration,
        ): Promise<AudioSourceConfiguration>;
        getAudioSourceConfigurationOptions(
            options: GetAudioSourceConfigurationOptions,
        ): Promise<AudioSourceConfigurationOptions>;
        getAudioSources(): Promise<string[]>;
        getDigitalInputConfigurationOptions(
            options?: GetDigitalInputConfigurationOptions,
        ): Promise<DigitalInputConfigurationOptions>;
        getDigitalInputs(): Promise<DigitalInput[]>;
        getRelayOutputOptions(
            options?: GetRelayOutputOptions,
        ): Promise<RelayOutputOptions[]>;
        getRelayOutputs(): Promise<RelayOutput[]>;
        getSerialPortConfiguration(
            options: GetSerialPortConfiguration,
        ): Promise<SerialPortConfiguration>;
        getSerialPortConfigurationOptions(
            options: GetSerialPortConfigurationOptions,
        ): Promise<SerialPortConfigurationOptions>;
        getSerialPorts(): Promise<SerialPort[]>;
        getServiceCapabilities(): Promise<Capabilities>;
        getVideoOutputConfiguration(
            options: GetVideoOutputConfiguration,
        ): Promise<VideoOutputConfiguration>;
        getVideoOutputConfigurationOptions(
            options: GetVideoOutputConfigurationOptions,
        ): Promise<VideoOutputConfigurationOptions>;
        getVideoOutputs(): Promise<VideoOutput[]>;
        getVideoSourceConfiguration(
            options?: Partial<GetVideoSourceConfiguration>,
        ): Promise<VideoSourceConfiguration>;
        getVideoSourceConfigurationOptions(
            options: GetVideoSourceConfigurationOptions,
        ): Promise<VideoSourceConfigurationOptions>;
        getVideoSources(): Promise<string[]>;
        request<T = any>(
            body: OnvifSoapBody,
            options?: LineraseOptions,
        ): Promise<T>;
        sendReceiveSerialCommand(
            options: SendReceiveSerialCommand,
        ): Promise<SerialData | undefined>;
        setAudioOutputConfiguration(
            options: SetAudioOutputConfiguration,
        ): Promise<void>;
        setAudioSourceConfiguration(
            options: SetAudioSourceConfiguration,
        ): Promise<void>;
        setDigitalInputConfigurations(
            options: SetDigitalInputConfigurations,
        ): Promise<void>;
        setRelayOutputSettings(options: SetRelayOutputSettings): Promise<void>;
        setRelayOutputState(options: SetRelayOutputState): Promise<void>;
        setSerialPortConfiguration(
            options: SetSerialPortConfiguration,
        ): Promise<void>;
        setVideoOutputConfiguration(
            options: SetVideoOutputConfiguration,
        ): Promise<void>;
        setVideoSourceConfiguration(
            options: SetVideoSourceConfiguration,
        ): Promise<void>;
    }

    Hierarchy (View Summary)

    Index
    onvif: Onvif
    service: keyof OnvifServices
    xmlns: string
    • Returns tokens of available audio outputs.

      Returns Promise<string[]>

    • Returns tokens of available audio sources.

      Returns Promise<string[]>

    • Returns tokens of available video sources.

      Returns Promise<string[]>