efa2000 / node-red-contrib-alice

The module allows you to use Node-Red together with the Yandex.Alice voice assistant service (voice control of Yandex smart home devices)
MIT License
39 stars 8 forks source link

В логе при старте NR сыпет такое Unhandled promise rejection... #69

Closed aleksandrdobrynin closed 3 years ago

aleksandrdobrynin commented 3 years ago

(node:31362) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 10) (node:31362) UnhandledPromiseRejectionWarning: FirebaseError: Function DocumentReference.set() called with invalid data. Unsupported field value: undefined (found in field retrievable in document users/I4a9Dk31AhOWTyTGPcWbWMdOewB2/devices/7cd475d4.f68a8c/capabilities/e31a90f7.2e4f) at new FirestoreError (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:266:28) at createError (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:22270:12) at ParseContext.createError (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:21828:16) at parseScalarValue (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:22166:23) at parseData (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:22047:20) at /home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:22062:31 at forEach (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:711:13) at parseObject (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:22061:9) at parseSetData (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:21886:22) at setDoc (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:22492:18) at DocumentReference$1.set (/home/pi/.node-red/node_modules/@firebase/firestore/dist/index.node.cjs.js:24536:20) at AliceRange.init (/home/pi/.node-red/node_modules/node-red-contrib-alice/nodes/alice-range.js:51:18) at AliceDevice. (/home/pi/.node-red/node_modules/node-red-contrib-alice/nodes/alice-range.js:68:14) at AliceDevice.emit (events.js:326:22) at AliceDevice.Node.emit (/usr/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:181:20) at /home/pi/.node-red/node_modules/node-red-contrib-alice/nodes/alice.js:131:14

efa2000 commented 3 years ago

Очень похоже что вы используете не последнюю версию плагина в последней версии была обновлена версия firebase и это ошибка ушла можете проверить какую версию используете?

efa2000 commented 3 years ago

да, еще подскажите вашу версию nodejs

aleksandrdobrynin commented 3 years ago

alice 0.4.4 node v12.20.0

bttrem commented 3 years ago

У меня после обновления с 0.4.1 до 0.4.4 аналогичные логи, но ошибок больше. Беглая проверка показала что все работает. Возможно что-то пропустил.

Node-RED version: v1.0.5 Node.js version: v12.17.0 Linux 4.19.75-v7+ arm LE node-red-contrib-alice: 0.4.4

aleksandrdobrynin commented 3 years ago

У меня после обновления с 0.4.1 до 0.4.4 аналогичные логи, но ошибок больше. Беглая проверка показала что все работает. Возможно что-то пропустил.

Node-RED version: v1.0.5 Node.js version: v12.17.0 Linux 4.19.75-v7+ arm LE node-red-contrib-alice: 0.4.4

Что сразу бросается в глаза, так это древний NR. Может его обновить?

bttrem commented 3 years ago

Обязательно обновлю NR. Похоже поспешил с выводом что всё работает. Добавил новое устройство и половина старых ушла в офлайн. Вернулись только после того как зашел настройки каждого потерянного устройства и сделал "Update". После перезагрузки NR лог чистый...

efa2000 commented 3 years ago

я сейчас переделываю полностью логику статусов для нод постараюсь до конца праздников доделать

на всякий случай при деплоее схемы, выбирайте full deploy так будет корректней применяться

efa2000 commented 3 years ago

Больше не должно выплывать В последних версиях обновлён firebase и все исключения обрабатываются