Serviços MobileTogether eficientes nos servidores de backend para aplicações móveis
Os serviços da edição avançada do MobileTogether Server, executados em servidores de backend para aplicações móveis, funcionam de forma independente de qualquer aplicação em execução num dispositivo móvel, com base numa variedade de gatilhos. Os serviços MobileTogether podem fornecer funcionalidades em segundo plano para aplicações móveis ou executar ações automatizadas de forma autónoma, sem que qualquer utilizador precise interagir com uma aplicação móvel. Por exemplo, um serviço MobileTogether pode gerar um relatório e enviá-lo por e-mail ao administrador do servidor num horário específico. Ou, um serviço pode consultar uma base de dados com base em determinados critérios externos e executar uma ação, como enviar uma notificação ou um e-mail.
O serviço MobileTogether Server é um conjunto de ações do MobileTogether Designer que são implementadas no servidor como um ficheiro de solução especializado.

Os serviços MobileTogether, executados em servidores de backend para aplicações móveis, partilham algumas funcionalidades com as aplicações móveis, mas não possuem interface de utilizador. Por exemplo, estes serviços podem utilizar as mesmas fontes de dados que uma aplicação móvel: uma estrutura de dados XML, HTML ou JSON, uma requisição HTTP/FTP, uma base de dados ou uma árvore XQuery.
Desenvolvedores que já estejam familiarizados com o paradigma do MobileTogether Designer para desenvolvimento multiplataforma.. Desenvolvimento rápido de aplicações móveis A (RMAD) poderá aproveitar a sua experiência para desenvolver serviços de forma rápida e eficiente.
Um serviço MobileTogether Server é criado selecionando "Novo Serviço" no menu "Ficheiro" do MobileTogether Designer, o que abre uma versão simplificada do Designer. Os serviços não requerem nenhuma interface de aplicação móvel, por isso, as janelas de apoio para páginas e controlos de utilizador estão desativadas.
Vamos criar um serviço que consulta uma base de dados de vendas para obter o número de produtos vendidos num determinado dia, converte os resultados da consulta para dados XML estruturados, envia um e-mail para o administrador de vendas com os dados XML anexados como um ficheiro, e envia uma notificação para os executivos selecionados da empresa. Utilizaremos a base de dados de vendas incluída na aplicação de demonstração "MobileTogether CompanySales", que é instalada automaticamente com o MobileTogether Designer e implementada no servidor de demonstração MobileTogether.
O nosso serviço necessitará de uma consulta a uma base de dados e de uma estrutura XML, como se pode ver na captura de ecrã das fontes da página, apresentada abaixo:

O serviço também contém uma estrutura chamada "Triggers" que existirá no servidor MobileTogether. Definiremos estes "triggers" mais tarde, quando implementarmos o serviço.
Assim que as fontes das páginas estiverem definidas, podemos definir as ações do MobileTogether que serão executadas quando o serviço for iniciado. O painel de design, que normalmente é usado para criar layouts de página para aplicações móveis, agora contém um botão grande que abre a árvore de ações do serviço, onde definiremos as ações para o serviço. Uma lista de todas as ações disponíveis para os serviços do MobileTogether Server é mostrada nesta captura de ecrã:

Note que todas as ações do MobileTogether relacionadas à navegação de páginas, à interface do utilizador ou à funcionalidade do utilizador estão desativadas, indicando que não estão disponíveis para serviços executados em servidores de backend para aplicações móveis.
O serviço MobileTogether Server executa um conjunto único de ações, que provavelmente incluirá várias etapas e poderá realizar lógica complexa de "se-então-senão", chamar sub-rotinas definidas em Grupos de Ações separados, etc.
As ações realizadas pelo nosso serviço de relatórios de vendas são apresentadas abaixo. O serviço executa a consulta à base de dados, percorre um ciclo para atualizar a estrutura XML com os resultados da consulta e chama grupos de ações para enviar o e-mail e a notificação push.

Aqui está o grupo de ações "Enviar email" para o destinatário especificado:

A funcionalidade por e-mail permite-nos enviar os dados XML como um anexo de ficheiro, sem nunca guardar qualquer ficheiro temporário noutro local.
O grupo de ações para as notificações push é apresentado abaixo. Podemos enviar uma notificação push direcionada a três utilizadores, utilizando os seus nomes de utilizador do MobileTogether.

A ação de notificação também nos permite enviar dados para uma solução MobileTogether. A aplicação CompanySales executa as suas próprias consultas à base de dados de vendas, por isso, não precisamos de enviar dados para esta notificação.
Os serviços para servidores de apoio de aplicações móveis são implementados através da opção "Implementar" no menu "Ficheiro" do MobileTogether Designer. A caixa de diálogo de implementação para serviços inclui uma opção especial para abrir a interface web do MobileTogether Server e definir os gatilhos que irão executar o serviço

Existem três tipos de gatilhos que podem executar o serviço: temporizadores, alterações no sistema de ficheiros, como uma pasta ou ficheiro monitorizado, e gatilhos HTTP. Para testes iniciais, podemos definir um temporizador para executar o serviço uma única vez:

O temporizador inicia a execução e a visualização do registo do servidor indica que a operação foi bem-sucedida. A entrada "Serviço concluído" no topo indica o sucesso, e a entrada imediatamente abaixo detalha a execução passo a passo, começando pela consulta à base de dados.

Para poupar espaço, cortámos a captura de ecrã, mas ela continua até à geração da mensagem de e-mail e à notificação.
Aqui está o anexo do e-mail, visualizado numa janela no Altova XMLSpy Editor XML:

Aqui estão as notificações que são enviadas para um dispositivo Android e para um iPhone:


Quando qualquer destinatário toca na notificação, a aplicação CompanySales é aberta, fornecendo informações detalhadas sobre as vendas do dia.

O resultado do teste é exatamente o que desejamos, por isso, podemos definir um novo gatilho para executar o serviço todos os dias, após o encerramento do horário de trabalho:

Descubra por si mesmo como é fácil definir serviços nos servidores de backend para aplicações móveis e crie as suas próprias aplicações móveis avançadas e compatíveis com várias plataformas, com muitas funcionalidades avançadas, utilizando o designer gratuito MobileTogether Designer.