Зарегистрированные устройства iot-smart-home-cloud (проект gcp) не отображаются в приложении fluter и в Angular / web

У меня эта проблема открыта на github в течение 10 дней: https://github.com/GoogleCloudPlatform/iot-smart-home-cloud/issues/20.

Я могу видеть устройства, зарегистрированные в firestore (см. Фото ниже), но они не отображаются на экране мобильного устройства или в приложении Angular / веб-приложении. В последнем случае устройства правильно зарегистрированы в GCP / Cloud Iot Core Api / PubSub.

Я уже зарегистрировал 1 устройство, используя приведенное ниже руководство, которое также не отображается http://nilhcem.com/iot/cloud-iot-core-with-the-esp32-and-arduino

Как решить?

введите описание изображения здесь

введите описание изображения здесь


person NEUBER SOUSA    schedule 25.08.2020    source источник
comment
Вы уверены, что успешно зарегистрировали устройство в iot-core gcp? В журнале ошибок, который вы включили в проблему с github, упоминалось, что ему не удалось зарегистрировать устройство, поэтому я не уверен, что проблема здесь в том, что вы не регистрируете устройства в iot-core, что объяснит, почему вы не смогу увидеть их позже   -  person Tlaquetzal    schedule 01.09.2020
comment
@Tlaquetzal Да, я уверен: drive.google.com/drive / папки /   -  person NEUBER SOUSA    schedule 01.09.2020
comment
На изображении, которым вы поделились, показаны реестры, а не устройства в реестрах. В одном из ваших журналов отображается ошибка разрешения, поэтому, сосредоточившись на веб-приложении, видите ли вы какие-либо ошибки на вкладке «Консоль» или «Сеть»? Если для перечисления устройств недостаточно разрешений, возможно, вы столкнулись с ошибкой.   -  person Tlaquetzal    schedule 02.09.2020
comment
@Tlaquetzal пока что спасибо. Я активировал уведомления в своем приложении gcp-android-app, и как только я что-то попробовал, я получил уведомление, которое находится ниже. Удалось ли вам развить этот проект? Я хотел бы иметь ваш гитхаб, чтобы я мог добавить его в частный гитхаб для этого проекта. Я прочитал на носителе, написанном Devunwired (сказано ниже), что есть часть облачных функций, которые прослушивают ожидающую коллекцию и преобразуют ее в devices-config (collection). Я проверяю, происходит это здесь или нет: drive.google. ru / диск / папки /   -  person NEUBER SOUSA    schedule 02.09.2020
comment
@Tlaquetzal На самом деле проблема связана с облачными функциями firebase. Я делаю это руководство и создаю устройство f2f gist.github.com/neuberfran/2ba2390ddddb991a125 из консоли firebase / облачных функций: gist.github.com/neuberfran/ef15a668fed3e47987ed1ae2e2   -  person NEUBER SOUSA    schedule 03.09.2020
comment
@Tlaquetzal drive.google.com/drive/folders/   -  person NEUBER SOUSA    schedule 03.09.2020
comment
В последней части, которой вы поделились, вы показали, что создали устройство в реестре io2019; однако файл журнала показал, что устройство искалось в реестре iotcore-registry. Это связано с тем, что имя реестра взято из конфигурации, которая задается на шаге 3 quickstart, поэтому вы видите ошибку" Не найдено ". Попробуйте создать устройство в iotcore-реестре или изменить конфигурацию функции firebase   -  person Tlaquetzal    schedule 04.09.2020
comment
@Tlaquetzal спасибо. Вчера я решил. Есть еще кое-что, что нужно исправить в команде openssl (как видно на фото ниже), но моя главная цель - интегрировать что-то здесь с помощником Google / умным домом, а не обязательно с облачным iot core / pub / sub drive.google.com/file/d/15_-psIG7X6t_Z1TnTn   -  person NEUBER SOUSA    schedule 06.09.2020
comment
Рад, что это сработало. Что касается двух других ваших проблем (открытый ssl) и изменения интеграции, попробуйте создать два новых вопроса.   -  person Tlaquetzal    schedule 07.09.2020


Ответы (2)


Несмотря на то, что в сообщении об ошибке на снимках экрана упоминается проблема с аутентификацией, настоящим сообщением об ошибке было «Устройство не найдено».

Проблема заключалась в том, что код искал конкретное устройство реестра, которое не существовало из-за несоответствия имени реестра.

Для справки, конфигурация настроек iot в firebase упоминается на шаге 3 краткое руководство:

Добавьте информацию о проекте Cloud IoT Core в качестве переменных среды конфигурации Firebase:

$ firebase functions:config:set \
cloudiot.region=$REGION \
cloudiot.registry=$REGISTRY
person Tlaquetzal    schedule 07.09.2020

образец приложения диспетчера устройств, с которым вы работаете, регистрирует данные, отсканированные с устройства. QR-код для коллекции pending Firestore до тех пор, пока серверная часть не установит, что предоставленные данные соответствуют существующему допустимому устройству в Cloud IoT Core (см. соответствующий код).

Если вам удалось успешно зарегистрировать устройство в pending, но оно никогда не удалялось из этой коллекции, значит проблема где-то в этом пути кода. Журналы облачных функций должны дать некоторое представление о том, почему ваш код там дает сбой (например, неверные учетные данные, неправильная конфигурация и т. Д.)

Вы также можете найти это сообщение в блоге полезно, в котором рассматривается архитектура варианта использования примера кода.

person devunwired    schedule 31.08.2020