GameCore

O GameCore fornece uma Interface web para os Publishers, onde é possível fazer a gestão de Containers e criar os Gamelets específicos para cada Container.

Esta interface está disponível em:

http://api.gamefoundry.ubbin.com/backend.php

Fornece também uma API que é usada pelos Gamelets e pelo SIAJ, a qual disponibiliza os recursos do GameCore, nomeadamente os Gamelets para determinado Container e permite fazer autenticação de utilizadores no GameCore.

Interface web

A interface web permite registar um novo utilizador, mediante a introdução de um nome, e-mail e password de autenticação, onde o e-mail e password serão usados para autenticação no GameCore.

Após registo e autenticação na interface web, o Publisher tem acesso aos Containers previamente criados e tem também a possibilidade de criar novos Containers.

Na criação de um novo Container, é pedido para definir uma plataforma, onde atualmente apenas é possível escolher Android, iOS ou Facebook, e é também pedido para definir um par Key/Token que será usado pelo Container para aceder API do GameCore.

Criação de Gamelet

Após a criação do Container é possível adicionar Gamelets. A web interface oferece a possibilidade de visualizar todos os Gamelets criados para determinado Container e é também possível filtrar estes de acordo com o seu tipo: Crosswords, Differences e Quiz.

API GameCore

Tendo em conta a arquitetura cliente-servidor do GameCore, foi determinado que seria fornecida uma API REST para a comunicação entre Container e GameCore.

Todas as chamadas são feitas via protocolo HTTP e a resposta é gerada em formato JSON. Por forma a permitir usar AJAX em diferentes domínios, a API suporta também JSONP. Para isso basta incluir na “query-string” o parâmetro “callback=<XYZ>”.

Esta API fornece apenas os métodos estritamente essenciais para fazer a comunicação entre o GameCore e o Container, e pode ser vista como um “work-in-progress”.

Autenticação do Container

Para o Container ter acesso aos seus Gameletes, este tem de usar a API do GameCore. Para isso, é necessário autenticar-se via API, a qual necessita de saber qual o seu ID, e a sua API_KEY.

Após autenticação válida, é retornado um TOKEN, o qual poderá então ser usado para obter os Gamelets associados ao Container.

Autenticação de jogador

Nesta iteração ficou definido que apenas seria possível um jogador registar-se no GameCore usando o Facebook ou Google. Tanto o Facebook como Google fornecem APIs OAuth que permitem autenticar os seus utilizadores e estas são utilizadas pelo Container para validar os jogadores.

Após a autenticação do utilizador nas redes sociais, é então necessário obter o perfil de jogador no GameCore. Para isso, o Container usa a API do GameCore para obter o seu perfil de jogador.

O workflow para obtenção do perfil de jogador do GameCore é o seguinte:

  • Utilizador autentica-se no Container usando Facebook/Google;
  • Container envia o TOKEN obtido do Facebook/Google para o GameCore;
  • O GameCore retorna os dados referentes ao jogador que correspondem às credenciais obtidas.