Как опубликовать sh сообщение в Google Cloud MQTT topi c? - PullRequest
0 голосов
/ 28 мая 2020

Используя облачные функции Google с Python, я хочу опубликовать sh сообщение в MQTT topi c.

Я использую pubsub_v1 PublisherClient, и после вызова облачной функции и просмотра журналов он выглядит например "google.api_core.exceptions.InvalidArgument: 400 Указано недопустимое имя ресурса". Я понимаю, что это происходит, потому что мое имя_темы содержит «/», потому что я хочу использовать больше уровней / подтем, например: «устройства / raspberrypi / events / msg / device / 3 / status». У меня есть «msg» topi c, но я не могу создать или опубликовать sh для каких-либо подтем.

Я не нашел никакой информации о подтемах ни в официальной документации, ни где-либо еще. Заранее спасибо.

1 Ответ

0 голосов
/ 28 мая 2020

Клиентская библиотека Cloud Pub / Sub предназначена только для прямого взаимодействия с Google Cloud Pub / Sub. Если вы используете темы MQTT, похоже, вы пытаетесь использовать мост MQTT Cloud IoT Core. В этом случае вам необходимо использовать клиент MQTT, настроенный для аутентификации устройства с помощью Cloud IoT Core и использовать его для публикации sh событий телеметрии. См. Руководство Cloud IoT по публикации .

Подтемы событий должны иметь свои собственные темы, связанные с ними, но они не будут доступны с помощью имени подтемы c через библиотеку Cloud Pub / Sub. Чтобы использовать библиотеку Cloud Pub / Sub, вам нужно будет использовать имя Cloud Pub / Sub topi c. Topi c - это тот элемент, который вы связали с подразделом MQTT c в Cloud Console в разделе «Additional topi c»:

subfolder topic

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...