yo-moss-ai 0.0.46 → 0.0.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/runtime-manifest.json +1 -1
- package/dist-server/board-presets.mjs +1 -1
- package/dist-server/camera-discover.mjs +1 -1
- package/dist-server/camera.mjs +1 -1
- package/dist-server/dev-ui.mjs +1 -1
- package/dist-server/device-chat-sync.mjs +1 -1
- package/dist-server/device-config-view.mjs +1 -1
- package/dist-server/device-focus.mjs +1 -1
- package/dist-server/device-http.mjs +1 -1
- package/dist-server/device-identity.mjs +1 -1
- package/dist-server/device-live.mjs +1 -1
- package/dist-server/device-presence.mjs +1 -1
- package/dist-server/device-probe.mjs +1 -1
- package/dist-server/device-registry.mjs +1 -1
- package/dist-server/device-routes.mjs +1 -1
- package/dist-server/device-runtime.mjs +1 -1
- package/dist-server/device-session.mjs +1 -1
- package/dist-server/ffmpeg.mjs +1 -1
- package/dist-server/gamepad-rumble.mjs +1 -1
- package/dist-server/gimbal-control.mjs +1 -1
- package/dist-server/home-path.mjs +1 -1
- package/dist-server/http-header.mjs +1 -1
- package/dist-server/index.mjs +1 -1
- package/dist-server/ir-import-validate.mjs +1 -1
- package/dist-server/known-scan-device.mjs +1 -1
- package/dist-server/lan-discover.mjs +1 -1
- package/dist-server/listen-port.mjs +1 -1
- package/dist-server/mcp/backoff.mjs +1 -1
- package/dist-server/mcp/bridge-manager.mjs +1 -1
- package/dist-server/mcp/builtin-tools.mjs +1 -1
- package/dist-server/mcp/dedupe-servers.mjs +1 -1
- package/dist-server/mcp/doctor.mjs +1 -1
- package/dist-server/mcp/fixtures/echo-mcp.mjs +1 -1
- package/dist-server/mcp/fixtures/hotkey-mcp.mjs +1 -1
- package/dist-server/mcp/fixtures/mihome-mcp.mjs +1 -1
- package/dist-server/mcp/fixtures/onvif-mcp.mjs +1 -1
- package/dist-server/mcp/fixtures/shell-mcp.mjs +1 -1
- package/dist-server/mcp/fixtures/yunxiangji-mcp.mjs +1 -1
- package/dist-server/mcp/hotkey-agent-docs.mjs +1 -1
- package/dist-server/mcp/hotkey-capture-session.mjs +1 -1
- package/dist-server/mcp/hotkey-driver.mjs +1 -1
- package/dist-server/mcp/hotkey-handlers.mjs +1 -1
- package/dist-server/mcp/hotkey-import-validate.mjs +1 -1
- package/dist-server/mcp/hotkey-store.mjs +1 -1
- package/dist-server/mcp/hotkey-tokens.mjs +1 -1
- package/dist-server/mcp/http-client.mjs +1 -1
- package/dist-server/mcp/http-pipe.mjs +1 -1
- package/dist-server/mcp/local-probe.mjs +1 -1
- package/dist-server/mcp/marketplace.mjs +1 -1
- package/dist-server/mcp/onvif-handlers.mjs +1 -1
- package/dist-server/mcp/parse-server-json.mjs +1 -1
- package/dist-server/mcp/paths.mjs +1 -1
- package/dist-server/mcp/routes.mjs +1 -1
- package/dist-server/mcp/schema.mjs +1 -1
- package/dist-server/mcp/settings.mjs +1 -1
- package/dist-server/mcp/shell-approval.mjs +1 -1
- package/dist-server/mcp/shell-policy.mjs +1 -1
- package/dist-server/mcp/shell-trash.mjs +1 -1
- package/dist-server/mcp/stdio-command.mjs +1 -1
- package/dist-server/mcp/stdio-launch.mjs +1 -1
- package/dist-server/mcp/stdio-pipe.mjs +1 -1
- package/dist-server/mcp/store.mjs +1 -1
- package/dist-server/mcp/task-notify.mjs +1 -1
- package/dist-server/mcp/ws-connect.mjs +1 -1
- package/dist-server/mcp/xiaozhi-compat.mjs +1 -1
- package/dist-server/mcp/yunxiangji.mjs +1 -1
- package/dist-server/media-cache.mjs +1 -1
- package/dist-server/mihome/cloud.mjs +1 -1
- package/dist-server/mihome/devices.mjs +1 -1
- package/dist-server/mihome/local.mjs +1 -1
- package/dist-server/mihome/mcp-desc.mjs +1 -1
- package/dist-server/mihome/queue.mjs +1 -1
- package/dist-server/mihome/rc4.mjs +1 -1
- package/dist-server/mihome/routes.mjs +1 -1
- package/dist-server/mihome/service.mjs +1 -1
- package/dist-server/mihome/sign.mjs +1 -1
- package/dist-server/mihome/spec.mjs +1 -1
- package/dist-server/mihome/store.mjs +1 -1
- package/dist-server/onboard-preview.mjs +1 -1
- package/dist-server/onvif-ws-discover.mjs +1 -1
- package/dist-server/spa-fallback.mjs +1 -1
- package/dist-server/tab-focus.mjs +1 -1
- package/dist-server/voice-wake.mjs +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x8cbce0=_0xa1c2;(function(_0xf39217,_0x3da5d4){const _0x10e5dc=_0xa1c2,_0x137f90=_0xf39217();while(!![]){try{const _0x2f1ed3=-parseInt(_0x10e5dc(0xba))/0x1+parseInt(_0x10e5dc(0xaf))/0x2*(parseInt(_0x10e5dc(0xbc))/0x3)+-parseInt(_0x10e5dc(0xca))/0x4+-parseInt(_0x10e5dc(0xbf))/0x5*(-parseInt(_0x10e5dc(0xb3))/0x6)+parseInt(_0x10e5dc(0xc9))/0x7*(-parseInt(_0x10e5dc(0xbe))/0x8)+-parseInt(_0x10e5dc(0xad))/0x9*(parseInt(_0x10e5dc(0xcb))/0xa)+-parseInt(_0x10e5dc(0xc0))/0xb*(-parseInt(_0x10e5dc(0xb9))/0xc);if(_0x2f1ed3===_0x3da5d4)break;else _0x137f90['push'](_0x137f90['shift']());}catch(_0x4730a1){_0x137f90['push'](_0x137f90['shift']());}}}(_0x6795,0x43eab));export const BOARD_ONVIF=_0x8cbce0(0xb0)+_0x8cbce0(0xb5);export const BOARD_OV2640=_0x8cbce0(0xb0)+_0x8cbce0(0xc2);export const BOARD_PCB_V1=_0x8cbce0(0xbd)+_0x8cbce0(0xc3);export const BOARD_CAMERA_TD=_0x8cbce0(0xae)+_0x8cbce0(0xcc)+'td';export const BOARD_PCB_BOARD='moss-p'+_0x8cbce0(0xb7)+'rd';export const BOARD_BREAD_COMPACT=_0x8cbce0(0xb2)+_0x8cbce0(0xc1)+'ompact';export const KNOWN_BOARDS=[BOARD_ONVIF,BOARD_OV2640,BOARD_PCB_V1,BOARD_CAMERA_TD,BOARD_PCB_BOARD,BOARD_BREAD_COMPACT];function isKnownBoard(_0x20e0ab){const _0x4c703a=_0x8cbce0;return KNOWN_BOARDS[_0x4c703a(0xcd)+'es'](_0x20e0ab);}export function resolveBoard(_0x270e1a={}){const _0x5e0c26=_0x8cbce0,_0x1dd530=String(_0x270e1a[_0x5e0c26(0xc5)]||'')[_0x5e0c26(0xc7)]();if(isKnownBoard(_0x1dd530))return _0x1dd530;const _0x3e8b38=String(_0x270e1a['name']||'')[_0x5e0c26(0xc7)]();if(isKnownBoard(_0x3e8b38))return _0x3e8b38;return BOARD_ONVIF;}function _0x6795(){const _0x50b518=['nZe2otC2tvPNz2n6','Bw9ZCY1W','mJrZzgT4Cw4','mtbcEMXXwLa','mtfvCMn0zfC','CMvHzc1J','DJi2nda','y2iTDJe','B2jQzwn0','yM9HCMq','5Asw5O6L6kEg6kEj','DhjPBq','zgv2AwnL','nJy5mtuXzKP5sxre','mJC0otaWtNLHCMXk','mJeYmJqYmgPOB2TYtW','yw1LCMeT','Aw5JBhvK','tu9tuW','ChjVzhvJ','owzhrLPXzG','Bw9ZCY1J','nfHUALvSAW','Bw9ZCY1V','uencihyX','Bw9ZCY1I','ndq0odq2sNLqDgrL','q2fTzxjH','BNzPzG','6z2I5yYf5P2/','y2iTyM9H','yxjK','ode4mtq5mMjjsKvcAq','ndyYmti0C1vAAuzb','ifre'];_0x6795=function(){return _0x50b518;};return _0x6795();}export function boardTypeLabel(_0x10ece3){const _0x28cbd8=_0x8cbce0;if(_0x10ece3===BOARD_OV2640)return'板载视觉';if(_0x10ece3===BOARD_ONVIF)return _0x28cbd8(0xc6);if(_0x10ece3===BOARD_PCB_V1)return _0x28cbd8(0xb1);if(_0x10ece3===BOARD_CAMERA_TD)return _0x28cbd8(0xb4)+_0x28cbd8(0xbb);if(_0x10ece3===BOARD_PCB_BOARD)return'PCB\x20Bo'+_0x28cbd8(0xb8);if(_0x10ece3===BOARD_BREAD_COMPACT)return _0x28cbd8(0xb6);return _0x28cbd8(0xab);}function _0xa1c2(_0x5a5269,_0x3b3340){_0x5a5269=_0x5a5269-0xab;const _0x6795e6=_0x6795();let _0xa1c219=_0x6795e6[_0x5a5269];if(_0xa1c2['oAQgXD']===undefined){var _0x22126d=function(_0x160862){const _0x457cc8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20e0ab='',_0x270e1a='';for(let _0x1dd530=0x0,_0x3e8b38,_0x10ece3,_0x2c9d95=0x0;_0x10ece3=_0x160862['charAt'](_0x2c9d95++);~_0x10ece3&&(_0x3e8b38=_0x1dd530%0x4?_0x3e8b38*0x40+_0x10ece3:_0x10ece3,_0x1dd530++%0x4)?_0x20e0ab+=String['fromCharCode'](0xff&_0x3e8b38>>(-0x2*_0x1dd530&0x6)):0x0){_0x10ece3=_0x457cc8['indexOf'](_0x10ece3);}for(let _0x2b611d=0x0,_0x4ccb32=_0x20e0ab['length'];_0x2b611d<_0x4ccb32;_0x2b611d++){_0x270e1a+='%'+('00'+_0x20e0ab['charCodeAt'](_0x2b611d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x270e1a);};_0xa1c2['kLkFPw']=_0x22126d,_0xa1c2['SUkudJ']={},_0xa1c2['oAQgXD']=!![];}const _0x125fe0=_0x6795e6[0x0],_0x2483ec=_0x5a5269+_0x125fe0,_0x254cc6=_0xa1c2['SUkudJ'][_0x2483ec];return!_0x254cc6?(_0xa1c219=_0xa1c2['kLkFPw'](_0xa1c219),_0xa1c2['SUkudJ'][_0x2483ec]=_0xa1c219):_0xa1c219=_0x254cc6,_0xa1c219;}export function capsForBoard(_0x2c9d95){const _0x2b611d=_0x2c9d95===BOARD_OV2640,_0x4ccb32=_0x2c9d95===BOARD_PCB_V1||_0x2c9d95===BOARD_CAMERA_TD||_0x2c9d95===BOARD_PCB_BOARD||_0x2c9d95===BOARD_BREAD_COMPACT;return{'onboard_camera':_0x2b611d,'onboard_preview':![],'ir':!![],'gimbal':_0x2b611d,'face_track':_0x2b611d,'lamps':!![],'panel':!_0x4ccb32,'bottom':!_0x4ccb32,'motor':!_0x4ccb32};}export function normalizeCaps(_0x1417ad={}){return capsForBoard(resolveBoard(_0x1417ad));}export function applyDeviceHealthTo(_0x4f49db,_0x5b63b1){const _0x544d20=_0x8cbce0;if(!_0x5b63b1||typeof _0x5b63b1!==_0x544d20(0xc4))return _0x4f49db;const _0x3de851=resolveBoard(_0x5b63b1);if(_0x5b63b1[_0x544d20(0xac)+'t'])_0x4f49db[_0x544d20(0xac)+'t']=_0x5b63b1[_0x544d20(0xac)+'t'];return _0x4f49db[_0x544d20(0xc5)]=_0x3de851,_0x4f49db[_0x544d20(0xc8)+'Caps']=capsForBoard(_0x3de851),_0x4f49db;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x34b33=_0x4e26;function _0x4e26(_0x1cec2f,_0x297421){_0x1cec2f=_0x1cec2f-0x124;const _0x508609=_0x5086();let _0x4e263f=_0x508609[_0x1cec2f];if(_0x4e26['olEqvk']===undefined){var _0x12dadc=function(_0x38de18){const _0x5c87f0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc07063='',_0x5d8a79='';for(let _0x26d2c3=0x0,_0x13dc62,_0x53cd5d,_0x18a494=0x0;_0x53cd5d=_0x38de18['charAt'](_0x18a494++);~_0x53cd5d&&(_0x13dc62=_0x26d2c3%0x4?_0x13dc62*0x40+_0x53cd5d:_0x53cd5d,_0x26d2c3++%0x4)?_0xc07063+=String['fromCharCode'](0xff&_0x13dc62>>(-0x2*_0x26d2c3&0x6)):0x0){_0x53cd5d=_0x5c87f0['indexOf'](_0x53cd5d);}for(let _0x111630=0x0,_0x5291b0=_0xc07063['length'];_0x111630<_0x5291b0;_0x111630++){_0x5d8a79+='%'+('00'+_0xc07063['charCodeAt'](_0x111630)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5d8a79);};_0x4e26['AteiTn']=_0x12dadc,_0x4e26['sIHEqZ']={},_0x4e26['olEqvk']=!![];}const _0x5ef771=_0x508609[0x0],_0x19ba72=_0x1cec2f+_0x5ef771,_0x203e6c=_0x4e26['sIHEqZ'][_0x19ba72];return!_0x203e6c?(_0x4e263f=_0x4e26['AteiTn'](_0x4e263f),_0x4e26['sIHEqZ'][_0x19ba72]=_0x4e263f):_0x4e263f=_0x203e6c,_0x4e263f;}(function(_0x42b249,_0x289c61){const _0x5e3aef=_0x4e26,_0x4d1c02=_0x42b249();while(!![]){try{const _0x1f7271=-parseInt(_0x5e3aef(0x155))/0x1*(parseInt(_0x5e3aef(0x127))/0x2)+parseInt(_0x5e3aef(0x13a))/0x3+parseInt(_0x5e3aef(0x130))/0x4*(-parseInt(_0x5e3aef(0x154))/0x5)+-parseInt(_0x5e3aef(0x170))/0x6+parseInt(_0x5e3aef(0x146))/0x7+parseInt(_0x5e3aef(0x124))/0x8*(-parseInt(_0x5e3aef(0x13e))/0x9)+-parseInt(_0x5e3aef(0x16c))/0xa*(-parseInt(_0x5e3aef(0x169))/0xb);if(_0x1f7271===_0x289c61)break;else _0x4d1c02['push'](_0x4d1c02['shift']());}catch(_0x5d810d){_0x4d1c02['push'](_0x4d1c02['shift']());}}}(_0x5086,0x5ae77));import _0xc07063 from'node:os';import{execFileSync}from'node:child_process';export const ONVIF_LAN_PORTS=[0x50,0x1f40,0x1f90,0x22c3,0x7e4,0x2704];export const ONVIF_LAN_SOAP_MS=0x1f4;export const ONVIF_LAN_CONCURRENCY=0x320;export const COMMON_CAMERA_SUBNETS=[_0x34b33(0x140)+_0x34b33(0x135),_0x34b33(0x140)+'8.0',_0x34b33(0x140)+_0x34b33(0x132),_0x34b33(0x157),_0x34b33(0x14b)+'.0'];function isIpv4Host(_0x5d8a79){const _0xdd3b45=_0x34b33;return/^\d{1,3}(?:\.\d{1,3}){3}$/[_0xdd3b45(0x14a)](String(_0x5d8a79||'')['trim']());}export function sameHost(_0x26d2c3,_0x13dc62){const _0x551b9f=_0x34b33;return String(_0x26d2c3||'')[_0x551b9f(0x167)]()[_0x551b9f(0x136)+_0x551b9f(0x162)]()===String(_0x13dc62||'')[_0x551b9f(0x167)]()[_0x551b9f(0x136)+_0x551b9f(0x162)]();}export function isPrivatePrefix(_0x53cd5d){const _0x57d115=_0x34b33,_0x18a494=String(_0x53cd5d||'')[_0x57d115(0x16a)]('.')[_0x57d115(0x172)](Number);if(_0x18a494[_0x57d115(0x156)]<0x2||_0x18a494[_0x57d115(0x15b)](_0x5993f9=>Number[_0x57d115(0x137)](_0x5993f9)))return![];const [_0x111630,_0x5291b0]=_0x18a494;if(_0x111630===0xa)return!![];if(_0x111630===0xac&&_0x5291b0>=0x10&&_0x5291b0<=0x1f)return!![];if(_0x111630===0xc0&&_0x5291b0===0xa8)return!![];return![];}export function prefixFromIpv4(_0x1a852f,_0x2b6ef6='255.25'+_0x34b33(0x141)+'0'){const _0x5358e5=_0x34b33,_0x4af81e=String(_0x1a852f||'')[_0x5358e5(0x16a)]('.')[_0x5358e5(0x172)](Number),_0x1dc78f=String(_0x2b6ef6||_0x5358e5(0x142)+_0x5358e5(0x141)+'0')[_0x5358e5(0x16a)]('.')[_0x5358e5(0x172)](Number);if(_0x4af81e[_0x5358e5(0x156)]!==0x4||_0x4af81e['some'](_0x50d444=>Number[_0x5358e5(0x137)](_0x50d444)))return'';const _0x34ad96=_0x4af81e[_0x5358e5(0x172)]((_0x992796,_0x329658)=>_0x992796&(Number['isNaN'](_0x1dc78f[_0x329658])?0x0:_0x1dc78f[_0x329658]));if(_0x34ad96[0x0]===0xa9&&_0x34ad96[0x1]===0xfe)return'';return _0x34ad96[0x0]+'.'+_0x34ad96[0x1]+'.'+_0x34ad96[0x2];}export function parseRoutePrefixes(_0x29590b){const _0x8f3ed5=_0x34b33,_0x36c425=new Set(),_0x29f9bf=String(_0x29590b||''),_0x27c3d7=[/(\d+\.\d+\.\d+)\.0(?:\s|\/)/g,/(\d+\.\d+\.\d+)\.0\/\d+/g];for(const _0x8cce9c of _0x27c3d7){_0x8cce9c[_0x8f3ed5(0x133)+_0x8f3ed5(0x15a)]=0x0;let _0xace101;while(_0xace101=_0x8cce9c[_0x8f3ed5(0x15e)](_0x29f9bf)){if(isPrivatePrefix(_0xace101[0x1]))_0x36c425[_0x8f3ed5(0x147)](_0xace101[0x1]);}}return[..._0x36c425];}function readRouteTable(){const _0x31533b=_0x34b33,_0x5e90ec=process[_0x31533b(0x159)+'rm']==='win32'?[[_0x31533b(0x12b)+'t',['-rn']]]:[[_0x31533b(0x12b)+'t',[_0x31533b(0x164)]],['route',['-n']],['ip',[_0x31533b(0x148)]]];for(const [_0x2e5ef1,_0x1bb10d]of _0x5e90ec){try{return execFileSync(_0x2e5ef1,_0x1bb10d,{'encoding':'utf8','timeout':0xbb8,'stdio':[_0x31533b(0x144),_0x31533b(0x125),_0x31533b(0x144)]});}catch{}}return'';}export function discoverOnvifSubnets({ifaces:_0x39ba1e,routeText:_0x58710f,includeCommon:includeCommon=!![]}={}){const _0x31dd13=_0x34b33;let _0x25ec02=_0x39ba1e;if(!_0x25ec02)try{_0x25ec02=_0xc07063[_0x31dd13(0x13c)+_0x31dd13(0x126)+_0x31dd13(0x16b)]();}catch{_0x25ec02={};}const _0x5a5c3a=new Set();for(const [_0x36af6d,_0x280241]of Object[_0x31dd13(0x12c)+'s'](_0x25ec02||{})){for(const _0x225ff6 of _0x280241||[]){if(_0x225ff6[_0x31dd13(0x143)+'al'])continue;if(_0x225ff6[_0x31dd13(0x158)]!==0x4&&_0x225ff6[_0x31dd13(0x158)]!==_0x31dd13(0x145))continue;const _0x3d0bdf=prefixFromIpv4(_0x225ff6[_0x31dd13(0x15d)+'s'],_0x225ff6[_0x31dd13(0x150)+'k']);if(!_0x3d0bdf||!isPrivatePrefix(_0x3d0bdf))continue;_0x5a5c3a['add'](_0x3d0bdf);if(includeCommon)console[_0x31dd13(0x163)]('[onvif'+_0x31dd13(0x12d)+'e\x20'+_0x36af6d+'\x20'+_0x225ff6[_0x31dd13(0x15d)+'s']+_0x31dd13(0x15f)+_0x3d0bdf+_0x31dd13(0x12f));}}const _0x56e71b=_0x58710f===undefined?readRouteTable():_0x58710f;for(const _0x5c1372 of parseRoutePrefixes(_0x56e71b))_0x5a5c3a['add'](_0x5c1372);if(includeCommon){for(const _0x1807dd of COMMON_CAMERA_SUBNETS)_0x5a5c3a[_0x31dd13(0x147)](_0x1807dd);}return[..._0x5a5c3a];}function _0x5086(){const _0x3e251b=['ChvZAa','BwLU','Ag9ZDg5H','oty5mdCYsenjDfrM','Cgf0Aa','BwfW','AgfYzhDH','mZu1ntm2ogjmquTQCG','CgLWzq','A0LUDgvY','mtjYre5wrvi','AM9PBG','A2LUza','ywXS','BMv0C3rH','zw50CMLL','xsbPzMfJ','xsbZB2fW','lJaVmJq','mJaYnZzPzLPPDei','ihnJyw4G','oc4Y','BgfZDeLU','CNjLBMn5','oc4X','Dg9mB3DL','Axnoyu4','zMLSDgvY','w29UDMLM','mtaWotyZnwjPuwfREG','BMfTzq','BMv0D29Y','l29UDMLM','owXOBhnjtq','DxjU','mtKYlJe2','ns4YntuU','mJu1lJi1','Aw50zxjU','AwDUB3jL','svb2na','nta2mduYnfnitxrewq','ywrK','CM91Dgu','AgfZ','DgvZDa','mtCYlJe2','B252Awy','zNjVBq','AwnL','ignVBMn1','BMv0BwfZ','Bwf4','zv9Zzxj2','Aw5JBhvK','nJq1BMjkAgzk','mJC5m1PVt3vjrG','BgvUz3rO','mtaUmc4W','zMfTAwX5','CgXHDgzV','zgv4','C29Tzq','DMfSDwvZ','ywrKCMvZ','zxHLyW','ic0+ia','zMLUzeLU','zMLUza','CKnHC2u','Bg9N','lxjU','Cg9YDa','zNvUy3rP','DhjPBq','l2rLDMLJ','mtfSr2X6r3u','C3bSAxq','zMfJzxm','ntG5ndu4mhbys1fKuW'];_0x5086=function(){return _0x3e251b;};return _0x5086();}export function lanPrefixesFromIfaces(_0x42e2d5=_0xc07063[_0x34b33(0x13c)+_0x34b33(0x126)+_0x34b33(0x16b)]()){return discoverOnvifSubnets({'ifaces':_0x42e2d5,'routeText':'','includeCommon':![]});}export function hostOnLocalLan(_0x134de7,_0x4daed2=[]){const _0x44e8f0=_0x34b33,_0x1a8740=String(_0x134de7||'')['trim']();if(!isIpv4Host(_0x1a8740))return![];const _0x1935b9=_0x1a8740[_0x44e8f0(0x16a)]('.')['slice'](0x0,0x3)[_0x44e8f0(0x128)]('.');return _0x4daed2[_0x44e8f0(0x153)+'es'](_0x1935b9);}export function deviceKey(_0x3434ac){const _0x2e3ea2=_0x34b33;if(!_0x3434ac?.[_0x2e3ea2(0x16f)+'me'])return'';return String(_0x3434ac[_0x2e3ea2(0x16f)+'me'])[_0x2e3ea2(0x167)]()[_0x2e3ea2(0x136)+_0x2e3ea2(0x162)]()+':'+Number(_0x3434ac['port']||0x50)+(_0x3434ac['path']||_0x2e3ea2(0x13d)+_0x2e3ea2(0x168)+_0x2e3ea2(0x152)+_0x2e3ea2(0x14e));}export function mergeCameraDevices(_0x27bf8e,_0x4815bd){const _0x34259b=_0x34b33;if(!_0x4815bd?.[_0x34259b(0x16f)+'me'])return _0x27bf8e;const _0x2e86ba={'hostname':String(_0x4815bd[_0x34259b(0x16f)+'me'])['trim'](),'port':Number(_0x4815bd[_0x34259b(0x165)]||0x50)||0x50,'path':String(_0x4815bd[_0x34259b(0x171)]||_0x34259b(0x13d)+_0x34259b(0x168)+_0x34259b(0x152)+_0x34259b(0x14e))[_0x34259b(0x167)]()||_0x34259b(0x13d)+_0x34259b(0x168)+'e_serv'+_0x34259b(0x14e),'urn':_0x4815bd[_0x34259b(0x13f)]||'','name':_0x4815bd[_0x34259b(0x13b)]||_0x4815bd[_0x34259b(0x16f)+'me'],'hardware':_0x4815bd[_0x34259b(0x173)+'re']||'','kind':_0x4815bd[_0x34259b(0x129)]||_0x34259b(0x14c)},_0x2629a8=_0x27bf8e[_0x34259b(0x160)+_0x34259b(0x15a)](_0x4f14f0=>sameHost(_0x4f14f0[_0x34259b(0x16f)+'me'],_0x2e86ba[_0x34259b(0x16f)+'me']));if(_0x2629a8>=0x0){const _0x2d4f52=_0x27bf8e[_0x2629a8];if(!_0x2d4f52[_0x34259b(0x173)+'re']&&_0x2e86ba[_0x34259b(0x173)+'re'])_0x2d4f52[_0x34259b(0x173)+'re']=_0x2e86ba[_0x34259b(0x173)+'re'];if(_0x2d4f52['name']===_0x2d4f52[_0x34259b(0x16f)+'me']&&_0x2e86ba[_0x34259b(0x13b)]&&_0x2e86ba[_0x34259b(0x13b)]!==_0x2e86ba['hostna'+'me'])_0x2d4f52[_0x34259b(0x13b)]=_0x2e86ba[_0x34259b(0x13b)];return _0x2d4f52[_0x34259b(0x165)]===0x50&&_0x2e86ba[_0x34259b(0x165)]!==0x50&&(_0x2d4f52['port']=_0x2e86ba[_0x34259b(0x165)],_0x2d4f52[_0x34259b(0x171)]=_0x2e86ba[_0x34259b(0x171)]),_0x27bf8e;}const _0x12f679=deviceKey(_0x2e86ba);if(!_0x27bf8e['some'](_0x1a13ef=>deviceKey(_0x1a13ef)===_0x12f679))_0x27bf8e['push'](_0x2e86ba);return _0x27bf8e;}export function collectCameraDevices(_0x56f32c){const _0x48380f=[];for(const _0x59f3a2 of _0x56f32c||[]){for(const _0x424e7c of _0x59f3a2||[])mergeCameraDevices(_0x48380f,_0x424e7c);}return _0x48380f;}export function pickOnvifAdvertisement({advertised:advertised=[],sourceHost:sourceHost='',prefixes:prefixes=[]}={}){const _0x27da29=_0x34b33,_0x5ef99c=String(sourceHost||'')[_0x27da29(0x167)](),_0x31f5f9=(advertised||[])['filter'](_0xbd2c9e=>_0xbd2c9e?.[_0x27da29(0x16f)+'me']),_0x4167d4=hostOnLocalLan(_0x5ef99c,prefixes),_0x5ae2dc=_0x31f5f9[_0x27da29(0x138)](_0x41cb1a=>hostOnLocalLan(_0x41cb1a[_0x27da29(0x16f)+'me'],prefixes)),_0x223bd0=_0x31f5f9[_0x27da29(0x161)](_0x3467fa=>sameHost(_0x3467fa[_0x27da29(0x16f)+'me'],_0x5ef99c))||_0x5ae2dc[0x0]||_0x31f5f9[0x0];if(_0x4167d4)return{'hostname':_0x5ef99c,'port':Number(_0x223bd0?.[_0x27da29(0x165)]||0x50)||0x50,'path':_0x223bd0?.['path']||'/onvif'+_0x27da29(0x168)+_0x27da29(0x152)+_0x27da29(0x14e)};if(_0x5ae2dc[0x0])return{..._0x5ae2dc[0x0]};if(_0x223bd0)return{..._0x223bd0};if(_0x5ef99c)return{'hostname':_0x5ef99c,'port':0x50,'path':_0x27da29(0x13d)+_0x27da29(0x168)+_0x27da29(0x152)+_0x27da29(0x14e)};return null;}export function lanScanTargets(_0x29c431,_0x2ee8b5=ONVIF_LAN_PORTS,_0x2bfa8b=new Set()){const _0x304017=_0x34b33,_0x1a93d1=[];for(const _0x2b24ab of _0x29c431||[]){for(let _0x4b6d5c=0x1;_0x4b6d5c<=0xfe;_0x4b6d5c+=0x1){const _0x47ea8a=_0x2b24ab+'.'+_0x4b6d5c;if(_0x2bfa8b[_0x304017(0x149)](_0x47ea8a))continue;for(const _0x5c7ae8 of _0x2ee8b5)_0x1a93d1[_0x304017(0x16d)]({'hostname':_0x47ea8a,'port':_0x5c7ae8});}}return _0x1a93d1;}async function mapPool(_0x3e2e54,_0x450a8d,_0x4941e8){const _0x2dbc66=_0x34b33,_0x565b3d=new Array(_0x3e2e54['length']);let _0x25382b=0x0;async function _0x49249c(){while(_0x25382b<_0x3e2e54['length']){const _0x4b8f29=_0x25382b++;_0x565b3d[_0x4b8f29]=await _0x4941e8(_0x3e2e54[_0x4b8f29],_0x4b8f29);}}const _0x24d0f8=Math[_0x2dbc66(0x151)](0x1,Math[_0x2dbc66(0x16e)](_0x450a8d,_0x3e2e54[_0x2dbc66(0x156)]||0x1));return await Promise[_0x2dbc66(0x12a)](Array[_0x2dbc66(0x14d)]({'length':_0x24d0f8},()=>_0x49249c())),_0x565b3d;}function localIpv4s(_0xb0d8b7){const _0x3e014e=_0x34b33,_0x2bbb65=new Set();let _0x561854=_0xb0d8b7;if(!_0x561854)try{_0x561854=_0xc07063[_0x3e014e(0x13c)+_0x3e014e(0x126)+_0x3e014e(0x16b)]();}catch{return _0x2bbb65;}for(const _0x53c7a4 of Object[_0x3e014e(0x15c)](_0x561854||{})){for(const _0x29f5ac of _0x53c7a4||[]){if(_0x29f5ac[_0x3e014e(0x143)+'al'])continue;if(_0x29f5ac[_0x3e014e(0x158)]!==0x4&&_0x29f5ac[_0x3e014e(0x158)]!==_0x3e014e(0x145))continue;if(_0x29f5ac[_0x3e014e(0x15d)+'s'])_0x2bbb65[_0x3e014e(0x147)](_0x29f5ac['addres'+'s']);}}return _0x2bbb65;}export async function keepReachableOnvif(_0x20911a,_0x122571,_0x1afb1c=0x258){const _0x3c2019=[];return await mapPool(_0x20911a||[],0x18,async _0xa3cc7c=>{const _0xac8999=_0x4e26;if(!_0xa3cc7c?.[_0xac8999(0x16f)+'me'])return;const _0x556265=await _0x122571(_0xa3cc7c['hostna'+'me'],_0xa3cc7c[_0xac8999(0x165)],_0x1afb1c);if(_0x556265)_0x3c2019[_0xac8999(0x16d)](_0xa3cc7c);}),collectCameraDevices([_0x3c2019]);}export async function scanLanOnvifHosts({prefixes:prefixes=discoverOnvifSubnets(),ports:ports=ONVIF_LAN_PORTS,fingerprint:_0x99d512,concurrency:concurrency=ONVIF_LAN_CONCURRENCY,skipHosts:skipHosts=localIpv4s()}={}){const _0x5b8fc9=_0x34b33;if(typeof _0x99d512!==_0x5b8fc9(0x166)+'on')return[];const _0x5e6746=lanScanTargets(prefixes,ports,skipHosts);console['log'](_0x5b8fc9(0x139)+_0x5b8fc9(0x12e)+_0x5b8fc9(0x131)+'tasks='+_0x5e6746[_0x5b8fc9(0x156)]+(_0x5b8fc9(0x14f)+_0x5b8fc9(0x134)+'=')+concurrency+('\x20ports'+'=')+ports[_0x5b8fc9(0x128)]('/')+('\x20subne'+'ts=')+(prefixes[_0x5b8fc9(0x128)](',')||'-'));const _0x515d11=[];return await mapPool(_0x5e6746,concurrency,async _0x5321a3=>{const _0x3dff94=_0x5b8fc9,_0x5003b2=_0x3dff94(0x13d)+_0x3dff94(0x168)+_0x3dff94(0x152)+_0x3dff94(0x14e),_0xbd2de9=await _0x99d512(_0x5321a3[_0x3dff94(0x16f)+'me'],_0x5321a3[_0x3dff94(0x165)],_0x5003b2);if(!_0xbd2de9)return;mergeCameraDevices(_0x515d11,{'hostname':_0x5321a3[_0x3dff94(0x16f)+'me'],'port':_0x5321a3[_0x3dff94(0x165)],'path':_0x5003b2,'name':_0x5321a3[_0x3dff94(0x16f)+'me'],'hardware':''});}),_0x515d11;}
|
|
1
|
+
const _0xe3cc2c=_0x5729;(function(_0x7eccc0,_0x20638d){const _0x4f9ebf=_0x5729,_0x253d18=_0x7eccc0();while(!![]){try{const _0x53a08c=parseInt(_0x4f9ebf(0x18d))/0x1+parseInt(_0x4f9ebf(0x190))/0x2+parseInt(_0x4f9ebf(0x156))/0x3+-parseInt(_0x4f9ebf(0x175))/0x4*(parseInt(_0x4f9ebf(0x18c))/0x5)+-parseInt(_0x4f9ebf(0x189))/0x6*(-parseInt(_0x4f9ebf(0x15a))/0x7)+parseInt(_0x4f9ebf(0x160))/0x8*(parseInt(_0x4f9ebf(0x187))/0x9)+-parseInt(_0x4f9ebf(0x183))/0xa;if(_0x53a08c===_0x20638d)break;else _0x253d18['push'](_0x253d18['shift']());}catch(_0x3e6c90){_0x253d18['push'](_0x253d18['shift']());}}}(_0x3970,0x631de));import _0x1c8e1c from'node:os';import{execFileSync}from'node:child_process';export const ONVIF_LAN_PORTS=[0x50,0x1f40,0x1f90,0x22c3,0x7e4,0x2704];export const ONVIF_LAN_SOAP_MS=0x1f4;export const ONVIF_LAN_CONCURRENCY=0x320;export const COMMON_CAMERA_SUBNETS=[_0xe3cc2c(0x164)+_0xe3cc2c(0x172),_0xe3cc2c(0x164)+'8.0','192.16'+_0xe3cc2c(0x165),_0xe3cc2c(0x192),'172.16'+'.0'];function isIpv4Host(_0x39461b){const _0x1f680c=_0xe3cc2c;return/^\d{1,3}(?:\.\d{1,3}){3}$/[_0x1f680c(0x185)](String(_0x39461b||'')[_0x1f680c(0x198)]());}export function sameHost(_0x342df2,_0x57088a){const _0x3e5c13=_0xe3cc2c;return String(_0x342df2||'')[_0x3e5c13(0x198)]()[_0x3e5c13(0x17a)+_0x3e5c13(0x19a)]()===String(_0x57088a||'')[_0x3e5c13(0x198)]()['toLowe'+_0x3e5c13(0x19a)]();}export function isPrivatePrefix(_0x5112cd){const _0xa83c7a=_0xe3cc2c,_0x7ee928=String(_0x5112cd||'')[_0xa83c7a(0x154)]('.')['map'](Number);if(_0x7ee928['length']<0x2||_0x7ee928[_0xa83c7a(0x150)](_0x246f02=>Number[_0xa83c7a(0x17d)](_0x246f02)))return![];const [_0x2eea55,_0x17ca41]=_0x7ee928;if(_0x2eea55===0xa)return!![];if(_0x2eea55===0xac&&_0x17ca41>=0x10&&_0x17ca41<=0x1f)return!![];if(_0x2eea55===0xc0&&_0x17ca41===0xa8)return!![];return![];}export function prefixFromIpv4(_0x41dc53,_0x1c5aa2=_0xe3cc2c(0x178)+_0xe3cc2c(0x16a)+'0'){const _0x10daaf=_0xe3cc2c,_0x997de3=String(_0x41dc53||'')[_0x10daaf(0x154)]('.')[_0x10daaf(0x180)](Number),_0x12c333=String(_0x1c5aa2||_0x10daaf(0x178)+_0x10daaf(0x16a)+'0')[_0x10daaf(0x154)]('.')[_0x10daaf(0x180)](Number);if(_0x997de3[_0x10daaf(0x193)]!==0x4||_0x997de3['some'](_0x3767db=>Number[_0x10daaf(0x17d)](_0x3767db)))return'';const _0x4850a4=_0x997de3[_0x10daaf(0x180)]((_0x3f228f,_0x864c34)=>_0x3f228f&(Number[_0x10daaf(0x17d)](_0x12c333[_0x864c34])?0x0:_0x12c333[_0x864c34]));if(_0x4850a4[0x0]===0xa9&&_0x4850a4[0x1]===0xfe)return'';return _0x4850a4[0x0]+'.'+_0x4850a4[0x1]+'.'+_0x4850a4[0x2];}function _0x5729(_0x4447e8,_0x5aebdd){_0x4447e8=_0x4447e8-0x14d;const _0x397099=_0x3970();let _0x572915=_0x397099[_0x4447e8];if(_0x5729['HIRHsP']===undefined){var _0xac8532=function(_0x33a479){const _0x5b0b98='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1c8e1c='',_0x39461b='';for(let _0x342df2=0x0,_0x57088a,_0x5112cd,_0x7ee928=0x0;_0x5112cd=_0x33a479['charAt'](_0x7ee928++);~_0x5112cd&&(_0x57088a=_0x342df2%0x4?_0x57088a*0x40+_0x5112cd:_0x5112cd,_0x342df2++%0x4)?_0x1c8e1c+=String['fromCharCode'](0xff&_0x57088a>>(-0x2*_0x342df2&0x6)):0x0){_0x5112cd=_0x5b0b98['indexOf'](_0x5112cd);}for(let _0x2eea55=0x0,_0x17ca41=_0x1c8e1c['length'];_0x2eea55<_0x17ca41;_0x2eea55++){_0x39461b+='%'+('00'+_0x1c8e1c['charCodeAt'](_0x2eea55)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x39461b);};_0x5729['OdGMKl']=_0xac8532,_0x5729['kgUqwc']={},_0x5729['HIRHsP']=!![];}const _0x127458=_0x397099[0x0],_0xb04963=_0x4447e8+_0x127458,_0x3ff98b=_0x5729['kgUqwc'][_0xb04963];return!_0x3ff98b?(_0x572915=_0x5729['OdGMKl'](_0x572915),_0x5729['kgUqwc'][_0xb04963]=_0x572915):_0x572915=_0x3ff98b,_0x572915;}export function parseRoutePrefixes(_0x555cec){const _0x34c23b=_0xe3cc2c,_0x2895a0=new Set(),_0x5a076e=String(_0x555cec||''),_0x3b8612=[/(\d+\.\d+\.\d+)\.0(?:\s|\/)/g,/(\d+\.\d+\.\d+)\.0\/\d+/g];for(const _0x3b3216 of _0x3b8612){_0x3b3216['lastIn'+_0x34c23b(0x157)]=0x0;let _0x5f3d23;while(_0x5f3d23=_0x3b3216[_0x34c23b(0x166)](_0x5a076e)){if(isPrivatePrefix(_0x5f3d23[0x1]))_0x2895a0[_0x34c23b(0x191)](_0x5f3d23[0x1]);}}return[..._0x2895a0];}function readRouteTable(){const _0x7e60b6=_0xe3cc2c,_0x2e1a37=process[_0x7e60b6(0x152)+'rm']===_0x7e60b6(0x162)?[[_0x7e60b6(0x19b)+'t',[_0x7e60b6(0x181)]]]:[[_0x7e60b6(0x19b)+'t',['-rn']],[_0x7e60b6(0x16e),['-n']],['ip',[_0x7e60b6(0x16e)]]];for(const [_0x29aedb,_0x2997dc]of _0x2e1a37){try{return execFileSync(_0x29aedb,_0x2997dc,{'encoding':_0x7e60b6(0x15b),'timeout':0xbb8,'stdio':[_0x7e60b6(0x171),_0x7e60b6(0x197),_0x7e60b6(0x171)]});}catch{}}return'';}export function discoverOnvifSubnets({ifaces:_0x1623b1,routeText:_0x48e443,includeCommon:includeCommon=!![]}={}){const _0x16d938=_0xe3cc2c;let _0x33acc8=_0x1623b1;if(!_0x33acc8)try{_0x33acc8=_0x1c8e1c['networ'+_0x16d938(0x153)+_0x16d938(0x194)]();}catch{_0x33acc8={};}const _0x4f8d76=new Set();for(const [_0x38232a,_0xdeeb2e]of Object[_0x16d938(0x161)+'s'](_0x33acc8||{})){for(const _0xb40d25 of _0xdeeb2e||[]){if(_0xb40d25['intern'+'al'])continue;if(_0xb40d25[_0x16d938(0x168)]!==0x4&&_0xb40d25[_0x16d938(0x168)]!=='IPv4')continue;const _0x1c16a1=prefixFromIpv4(_0xb40d25[_0x16d938(0x17f)+'s'],_0xb40d25[_0x16d938(0x17b)+'k']);if(!_0x1c16a1||!isPrivatePrefix(_0x1c16a1))continue;_0x4f8d76[_0x16d938(0x191)](_0x1c16a1);if(includeCommon)console[_0x16d938(0x173)](_0x16d938(0x19c)+']\x20ifac'+'e\x20'+_0x38232a+'\x20'+_0xb40d25[_0x16d938(0x17f)+'s']+_0x16d938(0x167)+_0x1c16a1+_0x16d938(0x186));}}const _0x1e8571=_0x48e443===undefined?readRouteTable():_0x48e443;for(const _0x5e642b of parseRoutePrefixes(_0x1e8571))_0x4f8d76[_0x16d938(0x191)](_0x5e642b);if(includeCommon){for(const _0x360ae3 of COMMON_CAMERA_SUBNETS)_0x4f8d76[_0x16d938(0x191)](_0x360ae3);}return[..._0x4f8d76];}export function lanPrefixesFromIfaces(_0x1cf68d=_0x1c8e1c[_0xe3cc2c(0x17c)+_0xe3cc2c(0x153)+_0xe3cc2c(0x194)]()){return discoverOnvifSubnets({'ifaces':_0x1cf68d,'routeText':'','includeCommon':![]});}export function hostOnLocalLan(_0x2dc5a1,_0x519542=[]){const _0x1d72fc=_0xe3cc2c,_0x4883e4=String(_0x2dc5a1||'')[_0x1d72fc(0x198)]();if(!isIpv4Host(_0x4883e4))return![];const _0x1eff4a=_0x4883e4[_0x1d72fc(0x154)]('.')[_0x1d72fc(0x16f)](0x0,0x3)[_0x1d72fc(0x15c)]('.');return _0x519542[_0x1d72fc(0x155)+'es'](_0x1eff4a);}export function deviceKey(_0x183783){const _0x4a42ec=_0xe3cc2c;if(!_0x183783?.[_0x4a42ec(0x16b)+'me'])return'';return String(_0x183783[_0x4a42ec(0x16b)+'me'])[_0x4a42ec(0x198)]()['toLowe'+_0x4a42ec(0x19a)]()+':'+Number(_0x183783[_0x4a42ec(0x179)]||0x50)+(_0x183783[_0x4a42ec(0x170)]||'/onvif'+_0x4a42ec(0x18e)+_0x4a42ec(0x176)+_0x4a42ec(0x18b));}export function mergeCameraDevices(_0x4aa1d6,_0x54735a){const _0x2b8c64=_0xe3cc2c;if(!_0x54735a?.[_0x2b8c64(0x16b)+'me'])return _0x4aa1d6;const _0x371111={'hostname':String(_0x54735a[_0x2b8c64(0x16b)+'me'])[_0x2b8c64(0x198)](),'port':Number(_0x54735a[_0x2b8c64(0x179)]||0x50)||0x50,'path':String(_0x54735a[_0x2b8c64(0x170)]||_0x2b8c64(0x184)+'/devic'+'e_serv'+_0x2b8c64(0x18b))[_0x2b8c64(0x198)]()||_0x2b8c64(0x184)+_0x2b8c64(0x18e)+_0x2b8c64(0x176)+_0x2b8c64(0x18b),'urn':_0x54735a[_0x2b8c64(0x196)]||'','name':_0x54735a['name']||_0x54735a['hostna'+'me'],'hardware':_0x54735a[_0x2b8c64(0x18f)+'re']||'','kind':_0x54735a[_0x2b8c64(0x14f)]||_0x2b8c64(0x182)},_0x3003dc=_0x4aa1d6[_0x2b8c64(0x199)+_0x2b8c64(0x157)](_0x45820c=>sameHost(_0x45820c[_0x2b8c64(0x16b)+'me'],_0x371111[_0x2b8c64(0x16b)+'me']));if(_0x3003dc>=0x0){const _0x2acfc4=_0x4aa1d6[_0x3003dc];if(!_0x2acfc4[_0x2b8c64(0x18f)+'re']&&_0x371111[_0x2b8c64(0x18f)+'re'])_0x2acfc4[_0x2b8c64(0x18f)+'re']=_0x371111[_0x2b8c64(0x18f)+'re'];if(_0x2acfc4['name']===_0x2acfc4[_0x2b8c64(0x16b)+'me']&&_0x371111['name']&&_0x371111[_0x2b8c64(0x151)]!==_0x371111[_0x2b8c64(0x16b)+'me'])_0x2acfc4['name']=_0x371111[_0x2b8c64(0x151)];return _0x2acfc4[_0x2b8c64(0x179)]===0x50&&_0x371111['port']!==0x50&&(_0x2acfc4[_0x2b8c64(0x179)]=_0x371111[_0x2b8c64(0x179)],_0x2acfc4['path']=_0x371111[_0x2b8c64(0x170)]),_0x4aa1d6;}const _0x3edcf5=deviceKey(_0x371111);if(!_0x4aa1d6[_0x2b8c64(0x150)](_0x316665=>deviceKey(_0x316665)===_0x3edcf5))_0x4aa1d6['push'](_0x371111);return _0x4aa1d6;}export function collectCameraDevices(_0x4a5faa){const _0x3cb2b9=[];for(const _0x2125f8 of _0x4a5faa||[]){for(const _0x37e2d0 of _0x2125f8||[])mergeCameraDevices(_0x3cb2b9,_0x37e2d0);}return _0x3cb2b9;}export function pickOnvifAdvertisement({advertised:advertised=[],sourceHost:sourceHost='',prefixes:prefixes=[]}={}){const _0x502079=_0xe3cc2c,_0x1d0716=String(sourceHost||'')[_0x502079(0x198)](),_0x2792dd=(advertised||[])['filter'](_0x4fe92b=>_0x4fe92b?.[_0x502079(0x16b)+'me']),_0x57fa69=hostOnLocalLan(_0x1d0716,prefixes),_0x27469a=_0x2792dd[_0x502079(0x15f)](_0x20b57f=>hostOnLocalLan(_0x20b57f['hostna'+'me'],prefixes)),_0x4ab43b=_0x2792dd[_0x502079(0x15d)](_0x498b02=>sameHost(_0x498b02[_0x502079(0x16b)+'me'],_0x1d0716))||_0x27469a[0x0]||_0x2792dd[0x0];if(_0x57fa69)return{'hostname':_0x1d0716,'port':Number(_0x4ab43b?.[_0x502079(0x179)]||0x50)||0x50,'path':_0x4ab43b?.[_0x502079(0x170)]||_0x502079(0x184)+'/devic'+'e_serv'+_0x502079(0x18b)};if(_0x27469a[0x0])return{..._0x27469a[0x0]};if(_0x4ab43b)return{..._0x4ab43b};if(_0x1d0716)return{'hostname':_0x1d0716,'port':0x50,'path':_0x502079(0x184)+'/devic'+_0x502079(0x176)+_0x502079(0x18b)};return null;}export function lanScanTargets(_0xd042ec,_0x4b11ff=ONVIF_LAN_PORTS,_0x3e5b27=new Set()){const _0x530b6b=_0xe3cc2c,_0x218429=[];for(const _0x599bb8 of _0xd042ec||[]){for(let _0x595d32=0x1;_0x595d32<=0xfe;_0x595d32+=0x1){const _0x1ec912=_0x599bb8+'.'+_0x595d32;if(_0x3e5b27[_0x530b6b(0x195)](_0x1ec912))continue;for(const _0x184cdf of _0x4b11ff)_0x218429['push']({'hostname':_0x1ec912,'port':_0x184cdf});}}return _0x218429;}async function mapPool(_0x126da1,_0x242915,_0x128004){const _0x527911=_0xe3cc2c,_0x9bdad6=new Array(_0x126da1[_0x527911(0x193)]);let _0x30a10c=0x0;async function _0x120549(){const _0x4588f2=_0x527911;while(_0x30a10c<_0x126da1[_0x4588f2(0x193)]){const _0x4101c6=_0x30a10c++;_0x9bdad6[_0x4101c6]=await _0x128004(_0x126da1[_0x4101c6],_0x4101c6);}}const _0x307a5a=Math[_0x527911(0x15e)](0x1,Math[_0x527911(0x17e)](_0x242915,_0x126da1[_0x527911(0x193)]||0x1));return await Promise[_0x527911(0x188)](Array[_0x527911(0x14d)]({'length':_0x307a5a},()=>_0x120549())),_0x9bdad6;}function localIpv4s(_0x21094e){const _0x398820=_0xe3cc2c,_0x44801a=new Set();let _0x5f541e=_0x21094e;if(!_0x5f541e)try{_0x5f541e=_0x1c8e1c[_0x398820(0x17c)+_0x398820(0x153)+_0x398820(0x194)]();}catch{return _0x44801a;}for(const _0x134f5d of Object[_0x398820(0x169)](_0x5f541e||{})){for(const _0x4be242 of _0x134f5d||[]){if(_0x4be242['intern'+'al'])continue;if(_0x4be242['family']!==0x4&&_0x4be242[_0x398820(0x168)]!=='IPv4')continue;if(_0x4be242['addres'+'s'])_0x44801a[_0x398820(0x191)](_0x4be242[_0x398820(0x17f)+'s']);}}return _0x44801a;}export async function keepReachableOnvif(_0x3981fb,_0x2e2f93,_0x3bf64a=0x258){const _0x98d3f4=[];return await mapPool(_0x3981fb||[],0x18,async _0x12a779=>{const _0x8d495b=_0x5729;if(!_0x12a779?.[_0x8d495b(0x16b)+'me'])return;const _0x5922d4=await _0x2e2f93(_0x12a779[_0x8d495b(0x16b)+'me'],_0x12a779['port'],_0x3bf64a);if(_0x5922d4)_0x98d3f4['push'](_0x12a779);}),collectCameraDevices([_0x98d3f4]);}export async function scanLanOnvifHosts({prefixes:prefixes=discoverOnvifSubnets(),ports:ports=ONVIF_LAN_PORTS,fingerprint:_0x5818e6,concurrency:concurrency=ONVIF_LAN_CONCURRENCY,skipHosts:skipHosts=localIpv4s()}={}){const _0x310668=_0xe3cc2c;if(typeof _0x5818e6!==_0x310668(0x16d)+'on')return[];const _0x467fe7=lanScanTargets(prefixes,ports,skipHosts);console[_0x310668(0x173)](_0x310668(0x19c)+_0x310668(0x14e)+_0x310668(0x174)+_0x310668(0x16c)+_0x467fe7[_0x310668(0x193)]+(_0x310668(0x163)+_0x310668(0x159)+'=')+concurrency+(_0x310668(0x177)+'=')+ports[_0x310668(0x15c)]('/')+(_0x310668(0x18a)+_0x310668(0x158))+(prefixes['join'](',')||'-'));const _0x26a11e=[];return await mapPool(_0x467fe7,concurrency,async _0x407caf=>{const _0x1b2267=_0x310668,_0x72b710='/onvif'+_0x1b2267(0x18e)+_0x1b2267(0x176)+_0x1b2267(0x18b),_0x39fa51=await _0x5818e6(_0x407caf[_0x1b2267(0x16b)+'me'],_0x407caf[_0x1b2267(0x179)],_0x72b710);if(!_0x39fa51)return;mergeCameraDevices(_0x26a11e,{'hostname':_0x407caf['hostna'+'me'],'port':_0x407caf[_0x1b2267(0x179)],'path':_0x72b710,'name':_0x407caf[_0x1b2267(0x16b)+'me'],'hardware':''});}),_0x26a11e;}function _0x3970(){const _0x3ef59f=['zMfJzxm','AgfZ','DxjU','CgLWzq','DhjPBq','zMLUzeLU','CKnHC2u','BMv0C3rH','w29UDMLM','zNjVBq','xsbZB2fW','A2LUza','C29Tzq','BMfTzq','CgXHDgzV','A0LUDgvY','C3bSAxq','Aw5JBhvK','mtG2mJa2n0DwweTQEa','zgv4','Dhm9','CNjLBMn5','mJm3mdqXCfzfDM9w','DxrMoa','AM9PBG','zMLUza','Bwf4','zMLSDgvY','mtzAA3PfEgu','zw50CMLL','D2LUmZi','ignVBMn1','mtKYlJe2','oc4Y','zxHLyW','ic0+ia','zMfTAwX5','DMfSDwvZ','ns4YntuU','Ag9ZDg5H','DgfZA3m9','zNvUy3rP','CM91Dgu','C2XPy2u','Cgf0Aa','AwDUB3jL','oc4X','Bg9N','ihnJyw4G','ody5nLDtCgnqCq','zv9Zzxj2','ihbVCNrZ','mJu1lJi1','Cg9YDa','Dg9mB3DL','BMv0BwfZ','BMv0D29Y','Axnoyu4','BwLU','ywrKCMvZ','BwfW','lxjU','B252Awy','nJq0mZqWmeTZEg5Mwa','l29UDMLM','DgvZDa','lJaVmJq','mta1nda4oujvu2XsEq','ywXS','ndjVugLWve0','ihn1yM5L','AwnL','mta3nxzbDe5nuG','mJq5nJC3v2PVC0Ps','l2rLDMLJ','AgfYzhDH','mZuYmty2BKjurMXd','ywrK','mtaUmc4W','BgvUz3rO'];_0x3970=function(){return _0x3ef59f;};return _0x3970();}
|