@ 2bad/ onvif
没有运行时间依赖的 TypeScript 的 ONVIF 客户端 .
安装
npm install @2bad/onvif
需要节点.js 26或后. 仅限无害环境管理.
发现、事件、成像、设备管理、媒体和PTZ @2bad/onvif-discovery, (中文(简体) ), @2bad/onvif-events, (中文(简体) ), @2bad/onvif-imaging, (中文(简体) ), @2bad/onvif-management, (中文(简体) ), @2bad/onvif-media 财务报告和审定财务报表 @2bad/onvif-ptz。 。 。 .
快开始
import { Device } from '@2bad/onvif'
using device = await Device.connect({ hostname: '192.0.2.10', username: 'admin', password: 'secret' })
const info = await device.getDeviceInformation()
console.log(info.manufacturer, info.model, info.firmwareVersion) // DVC DCN-BM2220LPR 2.1.0
using 关闭块尾的闲置连接.
实例
- 连接中: 每一个
Device.connect()选项 - 呼叫业务: 请求、超时和取消
- 错误: 错误类别及其所载内容
- 警卫: 认证、 TLS 和服务地址
- 成套服务:设备上的管理、媒体和事件方法
- 从
onvif数字 :Cam财务报告和审定财务报表Onvif2.x中的呼叫和选项
API 密码
class Device {
static connect(options: ConnectOptions): Promise<Device>
getCapabilities(request?, options?: CallOptions): Promise<GetCapabilitiesResponse>
getDeviceInformation(request?, options?: CallOptions): Promise<GetDeviceInformationResponse>
getHostname(request?, options?: CallOptions): Promise<GetHostnameResponse>
getNetworkInterfaces(request?, options?: CallOptions): Promise<GetNetworkInterfacesResponse>
getScopes(request?, options?: CallOptions): Promise<GetScopesResponse>
getServiceCapabilities(request?, options?: CallOptions): Promise<GetServiceCapabilitiesResponse>
getServices(request, options?: CallOptions): Promise<GetServicesResponse>
getSystemDateAndTime(request?, options?: CallOptions): Promise<GetSystemDateAndTimeResponse>
systemReboot(request?, options?: CallOptions): Promise<SystemRebootResponse>
call(operation: Operation, request?: Request, options?: CallOptions): Promise<Response>
use(extension: (device: Device) => Extension): Device & Extension
download(address: string | URL, options?: { signal; timeoutMs }): Promise<{ contentType; body: Uint8Array }>
synchronizeClock(options?: { signal; timeoutMs }): Promise<void>
resolveAddress(address: string): URL // the URL a reported address is sent to
close(): void // closes idle connections, the device still works after it
readonly address: URL // URL of the device service
get services(): ReadonlyMap<string, URL> // service namespace to URL
get clock(): { skewMs: number; source: 'device' | 'local' } // camera time minus local time
get timeoutMs(): number
get serviceAddresses(): 'rewrite' | 'sameHost' | 'reject'
}
每一个错误都是 OnvifError 与 host, (中文(简体) ), service 财务报告和审定财务报表 action。 。 。 .
许可证
麻省理工学院