Есть ряд вещей, которые сделали это невозможным.
Во-первых, само устройство Google Home не позволяет осуществлять локальный мониторинг или управление чем-либо. Хотя он имеет голосовые действия «Умный дом», все эти команды отправляются на облачный сервер, а локальные устройства отвечают за получение своих команд от облачного сервера производителя.
Второе. Действия в Google в основном относятся к устройству (динамику или телефону) как к устройству с пользовательским интерфейсом. За некоторыми исключениями, он не разрешает доступ к самому оборудованию, поэтому он не может получить доступ к сетевому стеку напрямую и не может получить доступ ни к каким операциям SNMP.
Третье. Хотя команды с Dialogflow отправляются на сервер выполнения, этот сервер должен находиться по общедоступному адресу HTTPS-сервера, и каждый, кто использует ваше действие, будет использовать один и тот же сервер. Таким образом, вы не можете просто получить доступ к службе, работающей в локальной сети пользователя. Вы можете создать общедоступную службу, которая идентифицирует каждого пользователя, обращающегося к ней, и перенаправляет команду чему-либо, зарегистрированному в их сети, но вам все равно нужен способ установить это соединение.
Один из возможных обходных путей - локальный сервер собирает информацию SNMP и сохраняет ее в облачной базе данных, а затем предоставляет вашей службе выполнения доступ к базе данных для предоставления запрашиваемой информации. Однако в этой схеме есть много подводных камней, и вам необходимо убедиться, что вы принимаете соответствующие меры безопасности данных.