На стороне сервера можно обойтись без PHP. В примере клиент данные запрашивает через TCP соединение у MODBUS TCP сервера.
Добавлено через 7 минут
Могу конечно ошибаться тема не моя.
Насколько я понял websocket это двусторонний канал обмена.
MQTT - это протокол. Использует этот (или другой) канал обмена.
JSON - это точно не источник, а формат данных.