Olá, tenho uma aplicação Java JSF com primefaces e preciso que a aplicação que esta em execução no browser do usuário fique a esperando de forma assíncrona sem travar a tela por uma chamada remota que vem de um leitor de código de barras ethernet (tem vários protocolos, tipo sockets tcp/modbus/etc.) com o código lido e execute a ação de inclusão deste código.
Obs.: Já tenho a rotina desenvolvida, mas usando um leitor USB que funciona como um teclado, que quando lido o código é preenchido no formulário e ao perder o foco executa a inclusão. A comunicação com o equipamento eu já tenho o código funcionando em uma aplicação síncrona iniciada pelo JSF, mas não sei fazer sendo iniciada pelo cliente (leitor).
Gostaria de ideias e/ou exemplos de tecnologias e/ou patterns que poderia usar para atender essa necessidade.