Pessoal,
Preciso entrar com alguns dados na tela da TV com o controle remoto, enviá-los a um servidor, onde será feita uma consulta a um banco de dados, e em seguida receber uma resposta do servidor.
Pelo que entendi, é possível fazer a entrada de dados em um formulário html, fazer uma requisição http com os dados e receber a resposta.
1) Como colocar o foco no <input> ?
2) Como recebo e processo a resposta no meu documento ncl ?
É esse mesmo o caminho ?
Também já vi um exemplo de entrada de dados, utilizando script Lua (cálculo do índice de massa corporal).
Qual abordagem seria mais apropriada ?
Hugo Lavalle
Autor: Hugo Cesar Crohare Lavalle
66 comentários
<head><title>Teste</title>
<body>
<form action="http://www.softwarepublico.gov.br/dotlrn/clubs/ginga/gingancl/one-community?page_num=0"
method="get"><br>
<input type="text" maxLength="8" size="11" id="x"><br>
<input type="text" maxLength="8" size="11" id="y"><br>
<input type="submit" id="z">
</form>
</body>
</html> Só consegui o foco no primeiro campo após pressionar "enter". Agora, como posso disparar algum evento a partir desta mídia ? Por exemplo, em Lua, um script dispara o "onBegin" da âncora "fim" da seguinte maneira: event.post('out', { class='ncl', type='presentation', area='fim', transition='starts' })
<area id="ancora1" ... />
</media> O caminho para identificar uma âncora textual é usar os atributos text e position. Através disso, um elo NCL capturaria o clicar em uma âncora. Mas ACHO eu que para identificar o submit de um form você deve usar o atributo label (que antes era anchorLabel) para indicar o id do form (ou do input de submit ...). Consulte a norma! Só reforçando que a implementação aqui presente não dá suporte a tais âncoras. Ainda! Quem sabe a comunidade trabalha nisso em breve.
Dê uma olhada neste exemplo do tutorial de nclua, que usa a classe de eventos tcp: www.telemidia.puc-rio.br/~francisco/nclua/tutorial/exemplo_06.html Eu acabei fazendo um pouco diferente, sem coroutines. Como a chamada aos eventos tcp é asíncrona, optei por capturar as "respostas" no event handler. Por exemplo: if evt.class == 'tcp' then
if evt.type == 'connect' then
solicitarTransfDados(evt.connection)
return
end
if evt.type == 'data' then
parseDadosRecebidos(evt.value)
return
end
end