TabrisJs работает с Upnp

Upnp выглядит сложнее в TabrisJs.
Он в значительной степени поддерживает пакеты узлов, но мне сложно работать с Upnp.

В package.json я получил узел-upnp-клиент

"dependencies": {
    "tabris": "^2.0.0-rc2",
    "moment": "~2.8.4",
    "moment-timezone": "~0.2.5",
    "android-versions": "1.1.0", 
    "node-mind": "1.0.1",
    "node-ssdp": "3.2.1",
    "node-upnp-client" : "0.0.2",
    "node-ssdp-lite": "0.2.0"
  },

В приложении JS я инициализировал его как

const upnpClient = require('node-upnp-client');
const cli = new upnpClient();
console.log(cli.searchDevices());

я получаю

Could not load main module: 
Reference error: process is not defined

Теперь его указание на эту строку первым var path = process.env.SSDP_COV ? './lib-cov/' : './lib/', в node-ssdp/index.js, ^

Я не знаю почему, но он отлично работает в CLI, но не в приложении.

требующий node-ssdp один говорит, что не может загрузить dgramхотя это часть Node

И я не уверен, что dgram Пакет доступен отдельно.

Как исправить эту ошибку и получить поддержку Upnp в tabrisJs?

1 ответ

Решение

Tabris.js использует совместимую систему модулей Node.js, чтобы позволить использовать в вашем приложении модули, размещенные на npm. Однако он не реализует большинство API-интерфейсов Node.js.

Доступны некоторые базовые API, такие как Timer и Console. В дополнение к этому, модуль tabris-js-node поддерживает небольшое подмножество Node API. К сожалению, сетевые API Node.js (одним из них является dgram) не реализованы в Tabris.js.

Это исключает плагины npm, основанные на этих API. Вы должны реализовать эту функцию поверх API-интерфейсов Tabris, таких как fetch или жеwebsockets,

Другие вопросы по тегам