@scrypted/server 0.7.73 → 0.7.75

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.

Potentially problematic release.


This version of @scrypted/server might be problematic. Click here for more details.

@@ -126,9 +126,10 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
126
126
  try {
127
127
  await (0, events_1.once)(socket, 'connect');
128
128
  const clusterPeerPort = socket.address().port;
129
- const ret = (0, rpc_serializer_1.createDuplexRpcPeer)(peer.selfName, 'cluster-server', socket, socket);
130
- ret.onProxySerialization = (value, proxyId) => onProxySerialization(value, proxyId, clusterPeerPort);
131
- return ret;
129
+ const clusterPeer = (0, rpc_serializer_1.createDuplexRpcPeer)(peer.selfName, 'cluster-server', socket, socket);
130
+ clusterPeer.tags.localPort = clusterPeerPort;
131
+ clusterPeer.onProxySerialization = (value, proxyId) => onProxySerialization(value, proxyId, clusterPeerPort);
132
+ return clusterPeer;
132
133
  }
133
134
  catch (e) {
134
135
  console.error('failure ipc connect', e);
@@ -149,6 +150,9 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
149
150
  try {
150
151
  const clusterPeerPromise = ensureClusterPeer(port);
151
152
  const clusterPeer = await clusterPeerPromise;
153
+ // this object is already connected
154
+ if (clusterPeer.tags.localPort === source)
155
+ return value;
152
156
  const connectRPCObject = await clusterPeer.getParam('connectRPCObject');
153
157
  const portSecret = crypto_1.default.createHash('sha256').update(`${port}${clusterSecret}`).digest().toString('hex');
154
158
  const newValue = await connectRPCObject(proxyId, portSecret, source);
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-remote-worker.js","sourceRoot":"","sources":["../../src/plugin/plugin-remote-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-remote-worker.js","sourceRoot":"","sources":["../../src/plugin/plugin-remote-worker.ts"],"names":[],"mappings":"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"}
@@ -154,14 +154,19 @@ class SystemManagerImpl {
154
154
  getDeviceById(idOrPluginId, nativeId) {
155
155
  let id;
156
156
  if (this.state[idOrPluginId]) {
157
+ // don't allow invalid input on nativeId, must be nullish if there is an exact id match.
158
+ if (nativeId != null)
159
+ return;
157
160
  id = idOrPluginId;
158
161
  }
159
162
  else {
160
163
  for (const check of Object.keys(this.state)) {
161
164
  const state = this.state[check];
162
- if (state[types_1.ScryptedInterfaceProperty.pluginId].value === idOrPluginId) {
165
+ if (!state)
166
+ continue;
167
+ if (state[types_1.ScryptedInterfaceProperty.pluginId]?.value === idOrPluginId) {
163
168
  // null and undefined should match here.
164
- if (nativeId == state[types_1.ScryptedInterfaceProperty.nativeId]?.value) {
169
+ if (state[types_1.ScryptedInterfaceProperty.nativeId]?.value == nativeId) {
165
170
  id = check;
166
171
  break;
167
172
  }
@@ -1 +1 @@
1
- {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/plugin/system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/plugin/system.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@scrypted/server",
3
- "version": "0.7.73",
3
+ "version": "0.7.75",
4
4
  "description": "",
5
5
  "dependencies": {
6
6
  "@mapbox/node-pre-gyp": "^1.0.10",
7
- "@scrypted/types": "^0.2.80",
7
+ "@scrypted/types": "^0.2.87",
8
8
  "adm-zip": "^0.5.10",
9
9
  "axios": "^0.21.4",
10
10
  "body-parser": "^1.20.2",
@@ -23,6 +23,7 @@ import scrypted_python.scrypted_sdk.types
23
23
  from scrypted_python.scrypted_sdk import PluginFork, ScryptedStatic
24
24
  from scrypted_python.scrypted_sdk.types import (Device, DeviceManifest,
25
25
  EventDetails,
26
+ ScryptedInterfaceMethods,
26
27
  ScryptedInterfaceProperty,
27
28
  Storage)
28
29
 
@@ -38,20 +39,121 @@ import multiprocessing.connection
38
39
  import rpc
39
40
  import rpc_reader
40
41
 
42
+
41
43
  class SystemDeviceState(TypedDict):
42
44
  lastEventTime: int
43
45
  stateTime: int
44
46
  value: any
45
47
 
48
+
49
+ class DeviceProxy(object):
50
+ device: asyncio.Future[rpc.RpcPeer]
51
+
52
+ def __init__(self, systemManager: SystemManager, id: str):
53
+ self.systemManager = systemManager
54
+ self.id = id
55
+ self.device = None
56
+
57
+ def __getattr__(self, name):
58
+ if name == 'id':
59
+ return self.id
60
+
61
+ if hasattr(ScryptedInterfaceProperty, name):
62
+ state = self.systemManager.systemState.get(self.id)
63
+ if not state:
64
+ return
65
+ p = state.get(name)
66
+ if not p:
67
+ return
68
+ return p.get('value', None)
69
+ if hasattr(ScryptedInterfaceMethods, name):
70
+ return rpc.RpcProxyMethod(self, name)
71
+
72
+ def __setattr__(self, name: str, value: Any) -> None:
73
+ if name == '__proxy_finalizer_id':
74
+ self.__dict__['__proxy_entry']['finalizerId'] = value
75
+
76
+ return super().__setattr__(name, value)
77
+
78
+ def __apply__(self, method: str, args: list):
79
+ if not self.device:
80
+ self.device = self.systemManager.api.getDeviceById(self.id)
81
+
82
+ async def apply():
83
+ device = await self.device
84
+ return await device.__apply__(method, args)
85
+ return apply()
86
+
87
+
46
88
  class SystemManager(scrypted_python.scrypted_sdk.types.SystemManager):
89
+ deviceProxies: Mapping[str, DeviceProxy]
90
+
47
91
  def __init__(self, api: Any, systemState: Mapping[str, Mapping[str, SystemDeviceState]]) -> None:
48
92
  super().__init__()
49
93
  self.api = api
50
94
  self.systemState = systemState
95
+ self.deviceProxies = {}
51
96
 
52
97
  async def getComponent(self, id: str) -> Any:
53
98
  return await self.api.getComponent(id)
54
99
 
100
+ def getSystemState(self) -> Any:
101
+ return self.systemState
102
+
103
+ def getDeviceById(self, idOrPluginId: str, nativeId: str = None) -> scrypted_python.scrypted_sdk.ScryptedDevice:
104
+ id: str = None
105
+ if self.systemState.get(idOrPluginId, None):
106
+ if nativeId is not None:
107
+ return
108
+ id = idOrPluginId
109
+ else:
110
+ for check in self.systemState:
111
+ state = self.systemState.get(check, None)
112
+ if not state:
113
+ continue
114
+ pluginId = state.get('pluginId', None)
115
+ if not pluginId:
116
+ continue
117
+ pluginId = pluginId.get('value', None)
118
+ if pluginId == idOrPluginId:
119
+ checkNativeId = state.get('nativeId', None)
120
+ if not checkNativeId:
121
+ continue
122
+ checkNativeId = checkNativeId.get('value', None)
123
+ if nativeId == checkNativeId:
124
+ id = idOrPluginId
125
+ break
126
+
127
+ if not id:
128
+ return
129
+ ret = self.deviceProxies.get(id)
130
+ if not ret:
131
+ ret = DeviceProxy(self, id)
132
+ self.deviceProxies[id] = ret
133
+ return ret
134
+
135
+ def getDeviceByName(self, name: str) -> scrypted_python.scrypted_sdk.ScryptedDevice:
136
+ for check in self.systemState:
137
+ state = self.systemState.get(check, None)
138
+ if not state:
139
+ continue
140
+ checkName = state.get('name', None)
141
+ if not checkName:
142
+ continue
143
+ if checkName.get('value', None) == name:
144
+ return self.getDeviceById(check)
145
+
146
+ # TODO
147
+ async def listen(self, callback: scrypted_python.scrypted_sdk.EventListener) -> scrypted_python.scrypted_sdk.EventListenerRegister:
148
+ return super().listen(callback)
149
+
150
+ # TODO
151
+ async def listenDevice(self, id: str, event: str | scrypted_python.scrypted_sdk.EventListenerOptions, callback: scrypted_python.scrypted_sdk.EventListener) -> scrypted_python.scrypted_sdk.EventListenerRegister:
152
+ return super().listenDevice(id, event, callback)
153
+
154
+ async def removeDevice(self, id: str) -> None:
155
+ return await self.api.removeDevice(id)
156
+
55
157
 
56
158
  class MediaObject(scrypted_python.scrypted_sdk.types.MediaObject):
57
159
  def __init__(self, data, mimeType, options):
@@ -216,6 +318,7 @@ class DeviceManager(scrypted_python.scrypted_sdk.types.DeviceManager):
216
318
  def getDeviceStorage(self, nativeId: str = None) -> Storage:
217
319
  return self.nativeIds.get(nativeId, None)
218
320
 
321
+
219
322
  class PluginRemote:
220
323
  systemState: Mapping[str, Mapping[str, SystemDeviceState]] = {}
221
324
  nativeIds: Mapping[str, DeviceStorage] = {}
@@ -272,7 +375,7 @@ class PluginRemote:
272
375
  asyncio.run_coroutine_threadsafe(self.print_async(
273
376
  nativeId, *values, sep=sep, end=end, flush=flush), self.loop)
274
377
 
275
- async def loadZip(self, packageJson, zipData, options: dict=None):
378
+ async def loadZip(self, packageJson, zipData, options: dict = None):
276
379
  try:
277
380
  return await self.loadZipWrapped(packageJson, zipData, options)
278
381
  except:
@@ -280,7 +383,7 @@ class PluginRemote:
280
383
  traceback.print_exc()
281
384
  raise
282
385
 
283
- async def loadZipWrapped(self, packageJson, zipData, options: dict=None):
386
+ async def loadZipWrapped(self, packageJson, zipData, options: dict = None):
284
387
  sdk = ScryptedStatic()
285
388
 
286
389
  clusterId = options['clusterId']
@@ -311,15 +414,18 @@ class PluginRemote:
311
414
  return sourcePeer.localProxyMap.get(id, None)
312
415
 
313
416
  clusterPeers: Mapping[int, asyncio.Future[rpc.RpcPeer]] = {}
417
+
314
418
  async def handleClusterClient(reader: asyncio.StreamReader, writer: asyncio.StreamWriter):
315
419
  _, clusterPeerPort = writer.get_extra_info('peername')
316
420
  rpcTransport = rpc_reader.RpcStreamTransport(reader, writer)
317
421
  peer: rpc.RpcPeer
318
422
  peer, peerReadLoop = await rpc_reader.prepare_peer_readloop(self.loop, rpcTransport)
319
- peer.onProxySerialization = lambda value, proxyId: onProxySerialization(value, proxyId, clusterPeerPort)
423
+ peer.onProxySerialization = lambda value, proxyId: onProxySerialization(
424
+ value, proxyId, clusterPeerPort)
320
425
  future = asyncio.Future[rpc.RpcPeer]()
321
426
  future.set_result(peer)
322
427
  clusterPeers[clusterPeerPort] = future
428
+
323
429
  async def connectRPCObject(id: str, secret: str, sourcePeerPort: int = None):
324
430
  m = hashlib.sha256()
325
431
  m.update(bytes('%s%s' % (clusterPort, clusterSecret), 'utf8'))
@@ -348,9 +454,12 @@ class PluginRemote:
348
454
  reader, writer = await asyncio.open_connection(
349
455
  '127.0.0.1', port)
350
456
  _, clusterPeerPort = writer.get_extra_info('sockname')
351
- rpcTransport = rpc_reader.RpcStreamTransport(reader, writer)
352
- peer, peerReadLoop = await rpc_reader.prepare_peer_readloop(self.loop, rpcTransport)
353
- peer.onProxySerialization = lambda value, proxyId: onProxySerialization(value, proxyId, clusterPeerPort)
457
+ rpcTransport = rpc_reader.RpcStreamTransport(
458
+ reader, writer)
459
+ clusterPeer, peerReadLoop = await rpc_reader.prepare_peer_readloop(self.loop, rpcTransport)
460
+ clusterPeer.tags['localPort'] = clusterPeerPort
461
+ clusterPeer.onProxySerialization = lambda value, proxyId: onProxySerialization(
462
+ value, proxyId, clusterPeerPort)
354
463
 
355
464
  async def run_loop():
356
465
  try:
@@ -360,8 +469,9 @@ class PluginRemote:
360
469
  finally:
361
470
  clusterPeers.pop(port)
362
471
  asyncio.run_coroutine_threadsafe(run_loop(), self.loop)
363
- return peer
364
- clusterPeerPromise = self.loop.create_task(connectClusterPeer())
472
+ return clusterPeer
473
+ clusterPeerPromise = self.loop.create_task(
474
+ connectClusterPeer())
365
475
  clusterPeers[port] = clusterPeerPromise
366
476
  return clusterPeerPromise
367
477
 
@@ -372,7 +482,7 @@ class PluginRemote:
372
482
 
373
483
  if clusterObject.get('id', None) != clusterId:
374
484
  return value
375
-
485
+
376
486
  port = clusterObject['port']
377
487
  proxyId = clusterObject['proxyId']
378
488
  source = clusterObject.get('source', None)
@@ -383,6 +493,8 @@ class PluginRemote:
383
493
 
384
494
  try:
385
495
  clusterPeer = await clusterPeerPromise
496
+ if clusterPeer.tags.get('localPort') == source:
497
+ return value
386
498
  c = await clusterPeer.getParam('connectRPCObject')
387
499
  m = hashlib.sha256()
388
500
  m.update(bytes('%s%s' % (port, clusterSecret), 'utf8'))
@@ -404,7 +516,8 @@ class PluginRemote:
404
516
  zipPath: str
405
517
 
406
518
  if isinstance(zipData, str):
407
- zipPath = (options and options.get('filename', None)) or zipData
519
+ zipPath = (options and options.get(
520
+ 'filename', None)) or zipData
408
521
  if zipPath != zipData:
409
522
  shutil.copyfile(zipData, zipPath)
410
523
  else:
@@ -424,9 +537,12 @@ class PluginRemote:
424
537
  # this will cause prebuilt wheel installation to fail.
425
538
  if platform.machine() == 'aarch64' and platform.architecture()[0] == '32bit':
426
539
  print('=============================================')
427
- print('Python machine vs architecture mismatch detected. Plugin installation may fail.')
428
- print('This issue occurs if a 32bit system was upgraded to a 64bit kernel.')
429
- print('Reverting to the 32bit kernel (or reflashing as native 64 bit is recommended.')
540
+ print(
541
+ 'Python machine vs architecture mismatch detected. Plugin installation may fail.')
542
+ print(
543
+ 'This issue occurs if a 32bit system was upgraded to a 64bit kernel.')
544
+ print(
545
+ 'Reverting to the 32bit kernel (or reflashing as native 64 bit is recommended.')
430
546
  print('https://github.com/koush/scrypted/issues/678')
431
547
  print('=============================================')
432
548
 
@@ -434,7 +550,8 @@ class PluginRemote:
434
550
  sys.version_info[0])+"."+str(sys.version_info[1])
435
551
  print('python version:', python_version)
436
552
 
437
- python_versioned_directory = '%s-%s-%s' % (python_version, platform.system(), platform.machine())
553
+ python_versioned_directory = '%s-%s-%s' % (
554
+ python_version, platform.system(), platform.machine())
438
555
  SCRYPTED_BASE_VERSION = os.environ.get('SCRYPTED_BASE_VERSION')
439
556
  if SCRYPTED_BASE_VERSION:
440
557
  python_versioned_directory += '-' + SCRYPTED_BASE_VERSION
@@ -451,7 +568,8 @@ class PluginRemote:
451
568
  requirements = zip.open('requirements.txt').read()
452
569
  str_requirements = requirements.decode('utf8')
453
570
 
454
- requirementstxt = os.path.join(python_prefix, 'requirements.txt')
571
+ requirementstxt = os.path.join(
572
+ python_prefix, 'requirements.txt')
455
573
  installed_requirementstxt = os.path.join(
456
574
  python_prefix, 'requirements.installed.txt')
457
575
 
@@ -467,7 +585,8 @@ class PluginRemote:
467
585
  for de in os.listdir(plugin_volume):
468
586
  if de.startswith('linux') or de.startswith('darwin') or de.startswith('win32') or de.startswith('python') or de.startswith('node'):
469
587
  filePath = os.path.join(plugin_volume, de)
470
- print('Removing old dependencies: %s' % filePath)
588
+ print('Removing old dependencies: %s' %
589
+ filePath)
471
590
  try:
472
591
  shutil.rmtree(filePath)
473
592
  except:
@@ -485,7 +604,7 @@ class PluginRemote:
485
604
  f.close()
486
605
 
487
606
  p = subprocess.Popen([sys.executable, '-m', 'pip', 'install', '-r', requirementstxt,
488
- '--prefix', python_prefix], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
607
+ '--prefix', python_prefix], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
489
608
  while True:
490
609
  line = p.stdout.readline()
491
610
  if not line:
@@ -536,7 +655,8 @@ class PluginRemote:
536
655
  parent_conn, child_conn = multiprocessing.Pipe()
537
656
  pluginFork = PluginFork()
538
657
  print('new fork')
539
- pluginFork.worker = multiprocessing.Process(target=plugin_fork, args=(child_conn,), daemon=True)
658
+ pluginFork.worker = multiprocessing.Process(
659
+ target=plugin_fork, args=(child_conn,), daemon=True)
540
660
  pluginFork.worker.start()
541
661
 
542
662
  def schedule_exit_check():
@@ -550,7 +670,8 @@ class PluginRemote:
550
670
  schedule_exit_check()
551
671
 
552
672
  async def getFork():
553
- rpcTransport = rpc_reader.RpcConnectionTransport(parent_conn)
673
+ rpcTransport = rpc_reader.RpcConnectionTransport(
674
+ parent_conn)
554
675
  forkPeer, readLoop = await rpc_reader.prepare_peer_readloop(self.loop, rpcTransport)
555
676
  forkPeer.peerName = 'thread'
556
677
 
@@ -570,7 +691,8 @@ class PluginRemote:
570
691
  parent_conn.close()
571
692
  rpcTransport.executor.shutdown()
572
693
  pluginFork.worker.kill()
573
- asyncio.run_coroutine_threadsafe(forkReadLoop(), loop=self.loop)
694
+ asyncio.run_coroutine_threadsafe(
695
+ forkReadLoop(), loop=self.loop)
574
696
  getRemote = await forkPeer.getParam('getRemote')
575
697
  remote: PluginRemote = await getRemote(self.api, self.pluginId, self.hostInfo)
576
698
  await remote.setSystemState(self.systemManager.getSystemState())
@@ -685,16 +807,19 @@ class PluginRemote:
685
807
 
686
808
  stats_runner()
687
809
 
810
+
688
811
  async def plugin_async_main(loop: AbstractEventLoop, rpcTransport: rpc_reader.RpcTransport):
689
812
  peer, readLoop = await rpc_reader.prepare_peer_readloop(loop, rpcTransport)
690
813
  peer.params['print'] = print
691
- peer.params['getRemote'] = lambda api, pluginId, hostInfo: PluginRemote(peer, api, pluginId, hostInfo, loop)
814
+ peer.params['getRemote'] = lambda api, pluginId, hostInfo: PluginRemote(
815
+ peer, api, pluginId, hostInfo, loop)
692
816
 
693
817
  try:
694
818
  await readLoop()
695
819
  finally:
696
820
  os._exit(0)
697
821
 
822
+
698
823
  def main(rpcTransport: rpc_reader.RpcTransport):
699
824
  loop = asyncio.new_event_loop()
700
825
 
@@ -706,6 +831,7 @@ def main(rpcTransport: rpc_reader.RpcTransport):
706
831
  loop.run_until_complete(plugin_async_main(loop, rpcTransport))
707
832
  loop.close()
708
833
 
834
+
709
835
  def plugin_main(rpcTransport: rpc_reader.RpcTransport):
710
836
  # gi import will fail on windows (and posisbly elsewhere)
711
837
  # if it does, try starting without it.
@@ -720,7 +846,8 @@ def plugin_main(rpcTransport: rpc_reader.RpcTransport):
720
846
  # seems optional on other platforms.
721
847
  loop = GLib.MainLoop()
722
848
 
723
- worker = threading.Thread(target=main, args=(rpcTransport,), name="asyncio-main")
849
+ worker = threading.Thread(target=main, args=(
850
+ rpcTransport,), name="asyncio-main")
724
851
  worker.start()
725
852
 
726
853
  loop.run()
@@ -728,12 +855,13 @@ def plugin_main(rpcTransport: rpc_reader.RpcTransport):
728
855
  except:
729
856
  pass
730
857
 
731
- # reattempt without gi outside of the exception handler in case the plugin fails.
858
+ # reattempt without gi outside of the exception handler in case the plugin fails.
732
859
  main(rpcTransport)
733
860
 
734
861
 
735
862
  def plugin_fork(conn: multiprocessing.connection.Connection):
736
863
  plugin_main(rpc_reader.RpcConnectionTransport(conn))
737
864
 
865
+
738
866
  if __name__ == "__main__":
739
867
  plugin_main(rpc_reader.RpcFileTransport(3, 4))
package/python/rpc.py CHANGED
@@ -134,6 +134,7 @@ class RpcPeer:
134
134
  self.nameDeserializerMap: Mapping[str, RpcSerializer] = {}
135
135
  self.onProxySerialization: Callable[[Any, str], Any] = None
136
136
  self.killed = False
137
+ self.tags = {}
137
138
 
138
139
  def __apply__(self, proxyId: str, oneWayMethods: List[str], method: str, args: list):
139
140
  oneway = oneWayMethods and method in oneWayMethods
@@ -151,10 +151,10 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
151
151
  await once(socket, 'connect');
152
152
  const clusterPeerPort = (socket.address() as net.AddressInfo).port;
153
153
 
154
- const ret = createDuplexRpcPeer(peer.selfName, 'cluster-server', socket, socket);
155
- ret.onProxySerialization = (value, proxyId) => onProxySerialization(value, proxyId, clusterPeerPort);
156
-
157
- return ret;
154
+ const clusterPeer = createDuplexRpcPeer(peer.selfName, 'cluster-server', socket, socket);
155
+ clusterPeer.tags.localPort = clusterPeerPort;
156
+ clusterPeer.onProxySerialization = (value, proxyId) => onProxySerialization(value, proxyId, clusterPeerPort);
157
+ return clusterPeer;
158
158
  }
159
159
  catch (e) {
160
160
  console.error('failure ipc connect', e);
@@ -177,6 +177,9 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
177
177
  try {
178
178
  const clusterPeerPromise = ensureClusterPeer(port);
179
179
  const clusterPeer = await clusterPeerPromise;
180
+ // this object is already connected
181
+ if (clusterPeer.tags.localPort === source)
182
+ return value;
180
183
  const connectRPCObject: ConnectRPCObject = await clusterPeer.getParam('connectRPCObject');
181
184
  const portSecret = crypto.createHash('sha256').update(`${port}${clusterSecret}`).digest().toString('hex');
182
185
  const newValue = await connectRPCObject(proxyId, portSecret, source);
@@ -178,14 +178,19 @@ export class SystemManagerImpl implements SystemManager {
178
178
  getDeviceById(idOrPluginId: string, nativeId?: ScryptedNativeId): any {
179
179
  let id: string;
180
180
  if (this.state[idOrPluginId]) {
181
+ // don't allow invalid input on nativeId, must be nullish if there is an exact id match.
182
+ if (nativeId != null)
183
+ return;
181
184
  id = idOrPluginId;
182
185
  }
183
186
  else {
184
187
  for (const check of Object.keys(this.state)) {
185
188
  const state = this.state[check];
186
- if (state[ScryptedInterfaceProperty.pluginId].value === idOrPluginId) {
189
+ if (!state)
190
+ continue;
191
+ if (state[ScryptedInterfaceProperty.pluginId]?.value === idOrPluginId) {
187
192
  // null and undefined should match here.
188
- if (nativeId == state[ScryptedInterfaceProperty.nativeId]?.value) {
193
+ if (state[ScryptedInterfaceProperty.nativeId]?.value == nativeId) {
189
194
  id = check;
190
195
  break;
191
196
  }