Cenário Dispositivo IoT (atualmente dispositivo IPv4) que envia via soquete TCP uma carga útil para um servidor uma vez por dia. O servidor tem um endereço IP público, o dispositivo está atrás de um roteador / NAT. Vou usar um módulo baseado no ESP8266 (ou seja, o Olimex one)
Objetivo O servidor deve poder enviar dados para qualquer cliente sempre que necessário. Não estou interessado em comunicação direta de cliente para cliente (por exemplo, conectar-se a um dispositivo do meu smartphone) como o furador deve fazer.
Outros requisitos Os dispositivos IoT podem crescer até vários milhares. A conexão à Internet é fornecida por um roteador / modem habilitado para 4G.
Solução proposta Até onde eu entendo, uma solução comum é o MQTT. Os clientes enviam periodicamente dados para o broker (por exemplo, Mosquitto em execução no servidor de hospedagem), que por sua vez atualiza o aplicativo Web principal que é executado no mesmo servidor.
Pergunta O aplicativo da web pode enviar dados para qualquer cliente sempre que necessário por meio do broker? Em outras palavras: um assinante pode enviar dados de volta a um editor específico de forma assíncrona (ou seja, sem aguardar a próxima transmissão)?