variable abilityInfo

Codec for <AbilityInfo>.

Examples

Read per-channel streaming permissions

import { assertEquals } from "@std/assert";
import { parse } from "@std/xml";
import { abilityInfo } from "@hertzg/reolink-api/protocol/params";

const root = parse(
  '<AbilityInfo version="1.1"><userName>guest</userName><streaming>' +
    "<subModule><channelId>0</channelId><abilityValue>preview_ro</abilityValue>" +
    "</subModule></streaming></AbilityInfo>",
).root;

assertEquals(abilityInfo.decode(root).streaming?.subModule, [
  { channelId: 0, abilityValue: "preview_ro" },
]);

Type

XmlParam<"AbilityInfo", AbilityInfo>

Usage

import { abilityInfo } from "protocol/params/mod.ts";