• Nenhum resultado encontrado

3.2 DESENVOLVIMENTO

3.2.2 TVQI

Com a emissora em funcionamento o passo seguinte do desenvolvimento foi a aplicação, ou seja, o TVQI. Sendo que todas as funcionalidades necessárias entre o set-top-box e a emissora já pode ser emulada, entre elas o broadcasting e o canal de retorno.

Tratando-se de aplicação local, inicialmente foi desenvolvido um pequeno aplicativo, que emulasse um sintonizador de canal, sendo que para este fim, só sintonizaria uma dentre as três aplicações disponíveis. O aplicativo foi desenvolvido em C#. Este aplicativo, denominado sintonizador de canal, apresenta a ilustração de uma TV, onde exibe as opções de aplicações disponíveis, além de um controle remoto, que contém apenas os botões 1, 2 e 3, pois serão os únicos utilizados, conforme Figura 20.

Figura 20. Sintonizador de Canal

O sintonizador faz referencia ao Web Service, com isso contempla a funcionalidade de executar a emulação das três aplicações do projeto. Para cada nível de aplicação, o sintonizador chama o método correspondente para receber o binário do pacote de dados. Ao receber esse binário o mesmo cria o arquivo .ZIP conforme bytes recebidos e armazena na pasta “C:\temp\setbox”. Após este procedimento, descompacta o arquivo no diretório atual.

Com todos os arquivos necessários para emulação da aplicação, o sintonizador executa um arquivo BAT que foi descompactado, arquivo este que abre o emulador XletView instanciando a aplicação que também foi descompactada na pasta temporária, assim executando o TVQI, conforme Figura 21.

Figura 21. [TVQI] Tela inicial de login

Após a execução do sistema, o usuário deve informar o seu código cadastrado e posteriormente a sua senha, que será validado de acordo com os dados do arquivo “usuario.txt” que também foi descompactado do pacote recebido. Todas as classes desenvolvidas na emissora foram desenvolvidas em JAVA para utilização no Xlet da aplicação. Ou seja, quem manipula o arquivo “usuario.txt” é a classe usuário.

Após a validação do usuário, o telespectador é direcionado ao menu principal, onde ele pode iniciar o desafio, ou consultar o ranking, conforme Figura 22.

Figura 22. [TVQI] Menu principal

Para controlar a aplicação é necessário o uso do controle remoto. Para melhor navegação, sempre ao lado de um item contem o número correspondente a este número, assim basta ao usuário clicar sobre o número no controle para selecionar a opção desejada.

Ao iniciar uma nova rodada do desafio, o usuário é direcionado a tela das tarefas, sendo uma tela padrão onde apenas mudarão as figuras relativas à questão. No topo da tela é apresentado o título da tarefa, no centro a imagem principal, e abaixo a lista de figuras enumerada das seis opções de escolha, sendo que o usuário deve escolher o número e clicar nesta escolha no controle remoto. A Figura 23 representa a tela das tarefas.

Figura 23. [TVQI] Tarefas da aplicação

Assim como a usuário, a classe Tarefa controla as tarefas a serem mostradas na tela, e a classe Rodada gerencia a sequência em que as tarefas serão alocadas. Todas as tarefas estão listada no arquivo “tarefas.txt”, onde contém informações utilizadas para montagem de tela, como o nome das figuras relativa a tarefa, assim como informações para posterior gerenciamento de pontos, como qual número dentre as alternativas é a resposta correta.

Ao completar cinco tarefas, o usuário finalizou uma rodada, completando o primeiro nível de dificuldade, dentre os três disponíveis. Ao finalizar cada tarefa o sistema armazena a pontuação obtida, assim ao final da rodada é calculada a pontuação total. Esses dados são apresentados em uma tela que indica o fim da rodada, conforme Figura 24.

Figura 24. [TVQI] Fim de Rodada

Caso o usuário execute a aplicação com nível de interatividade três, a cada final de rodada a aplicação aciona o Web Service invocando o método Atualiza Ranking, informando o usuário, o nível e a quantidade de pontos obtidos, com isto a emissora recalcula os rankings para o usuário. Além deste método é executado o método Resgata Ranking, recebendo uma string com usuários e suas respectivas pontuações por ranking, utilizada para atualização do arquivo “ranking.txt”.

Quando o usuário termina o desafio, ou seja, completa a série com três níveis de dificuldade, o sistema permite que seja enviado para emissora a quantidade de pontos obtidos. Quando é executado com o nível de interatividade três, isto é feito automaticamente, porém nos demais níveis ao fim do desafio o telespectador recebe uma mensagem, questionando se o mesmo deseja enviar sua pontuação para atualização dos rankings, conforme Figura 25.

Figura 25. [TVQI] Fim do desafio

Ao clicar sobre o botão azul do controle remoto, o sistema enviará os pontos para a emissora, caso possível. Se o nível de interatividade da aplicação for igual a um, o usuário receberá uma mensagem dizendo que não foi possível conectar-se com a emissora, pois teoricamente não possui um canal de retorno, conforme Figura 26.

Figura 26. [TVQI] Problema na conexão com a emissora

No segundo nível de interatividade, a conexão é realizada e os dados são enviados a emissora pela aplicação local. Para o envio dos dados a aplicação requisita o método Atualiza Rankings, disponibilizado pela emissora, passando os parâmetros: usuário, quantidade de pontos no nível um, dois e três. Diferentemente do nível de interatividade três, a aplicação não recebe dados com a atualização dos rankings, sendo assim, só é possível visualizar essas alterações em uma nova sintonização da aplicação.

Ao fim da terceira rodada, caso queria enviar a pontuação obtida para a emissora, o sistema faz a chamada da função e retorna para o usuário uma mensagem de sucesso. A classe Rodada é quem gerencia a pontuação obtida em cada rodada assim armazenando os pontos a serem enviados ao fim de cada uma desta no nível três, ou enviando todas as pontuações na aplicação de nível dois. A segunda opção do Menu é a visualização dos rankings, sendo que o sistema disponibiliza ao usuário um ranking para cada nível e um ranking geral onde o é somado todas as pontuações do usuário. Quando o usuário seleciona a opção Ranking, o ranking geral é apresentado em tela, para montar o ranking a aplicação utiliza dados do arquivo “ranking.txt” que é transmitido pela emissora com o pacote de dados inicial, e atualizado a cada rodada no caso da aplicação de nível três. A Figura 27 mostra o ranking da aplicação.

Figura 27. [TVQI] Problema na conexão com a emissora

Documentos relacionados