Efficiënte MobileTogether-services op backendservers voor mobiele applicaties
De geavanceerde editie van MobileTogether Server biedt services op backend-servers voor mobiele apps, die onafhankelijk functioneren van eventuele apps die op een mobiel apparaat draaien, en dit op basis van verschillende triggers. MobileTogether-services kunnen achtergrondfunctionaliteit bieden aan mobiele apps of geautomatiseerde, zelfstandige acties uitvoeren, zonder dat een eindgebruiker interactie hoeft te hebben met een mobiele app. Zo kan een MobileTogether-service bijvoorbeeld een rapport genereren en dit op een bepaald tijdstip naar de serverbeheerder e-mailen. Of, een service kan een database raadplegen op basis van bepaalde externe criteria en een actie uitvoeren, zoals het verzenden van een notificatie of een e-mail.
Een MobileTogether Server-service is een verzameling MobileTogether Designer-acties die als een gespecialiseerd oplossingbestand naar de server zijn geüpload.

MobileTogether-services op backend-servers voor mobiele apps delen bepaalde functionaliteiten met mobiele apps, maar hebben geen gebruikersinterface. Zo kunnen deze services gebruikmaken van dezelfde databronnen als een mobiele app: een XML-, HTML- of JSON-datastructuur, een HTTP/FTP-verzoek, een database of een XQuery-boom.
Ontwikkelaars die al bekend zijn met het MobileTogether Designer-ontwerp voor platformonafhankelijke applicaties Snelle ontwikkeling van mobiele applicaties (RMAD) zal in staat zijn om hun ervaring te benutten om snel diensten te ontwikkelen.
Een MobileTogether Server-service wordt aangemaakt door in het menu "Bestand" van de MobileTogether Designer de optie "Nieuwe service" te selecteren. Dit opent een vereenvoudigde versie van de Designer. Services vereisen geen mobiele app-interface, dus hulpvensters voor pagina's en gebruikersbesturingselementen zijn inactief.
Laten we een service ontwikkelen die een verkoopdatabase doorzoekt om het aantal verkochte producten per dag op te vragen, de resultaten van de zoekopdracht omzet naar gestructureerde XML-gegevens, een e-mail stuurt naar de verkoopbeheerder met de XML-gegevens als bijlage, en een melding verstuurt naar geselecteerde bedrijfsleiders. We gebruiken de verkoopdatabase die is opgenomen in de MobileTogether CompanySales demo-app, die automatisch wordt geïnstalleerd met de MobileTogether Designer en wordt ingezet op de MobileTogether Demo Server.
Onze service vereist een databasequery en een XML-structuur, zoals te zien is in de screenshot van de paginabron hieronder:

De service bevat ook een structuur die "Triggers" wordt genoemd en die op de MobileTogether-server zal bestaan. We zullen de triggers later definiëren, wanneer we de service implementeren.
Zodra de bronnen van de pagina's zijn voltooid, kunnen we de MobileTogether-acties definiëren die moeten worden uitgevoerd wanneer de service wordt gestart. Het ontwerpvenster, dat normaal gesproken wordt gebruikt om paginalay-outs voor mobiele apps te maken, bevat nu een grote knop die de actieboom van de service opent. Hier definiëren we de acties voor de service. Een lijst met alle beschikbare acties voor MobileTogether Server-services wordt in deze screenshot weergegeven:

Let op dat alle MobileTogether-functies die betrekking hebben op paginanavigatie, de gebruikersinterface of de functionaliteit voor de gebruiker, zijn uitgeschakeld om aan te geven dat ze niet beschikbaar zijn voor services op backend-servers voor mobiele apps.
Een MobileTogether Server-service voert een reeks acties uit, die waarschijnlijk meerdere stappen bevatten en complexe "als-dan-anders"-logica kunnen uitvoeren, subroutines kunnen aanroepen die in aparte Actiegroepen zijn gedefinieerd, enzovoort.
De volgende acties worden uitgevoerd door onze rapportageservice voor verkoopgegevens: De service voert een databasequery uit, doorloopt een lus om de XML-structuur bij te werken met de resultaten van de query, en roept actiegroepen aan om de e-mail en de pushnotificatie te verzenden.

Hieronder vindt u de actiegroep "E-mail verzenden" voor de aangewezen ontvanger:

Met deze e-mailfunctie kunnen we de XML-gegevens als een bijlage versturen, zonder dat er ooit een tijdelijk bestand op een andere locatie wordt opgeslagen.
De actiegroep voor onze pushnotificaties wordt hieronder weergegeven. We kunnen een pushnotificatie versturen die is gericht aan drie gebruikers, waarbij we hun MobileTogether gebruikersnamen gebruiken.

De notificatiefunctie stelt ons ook in staat om data naar een MobileTogether-oplossing te sturen. De app "CompanySales" voert zelf een reeks queries uit op de verkoopdatabase, dus we hebben geen data nodig voor deze notificatie.
De services voor backendservers voor mobiele apps worden geïmplementeerd via de optie "Implementeren" in het menu "Bestand" van de MobileTogether Designer. Het implementatievenster voor services bevat een speciale optie om de webinterface van de MobileTogether Server te openen en triggers te definiëren die de service zullen uitvoeren

Drie soorten triggers kunnen de service activeren: timers, wijzigingen in het bestandssysteem, zoals een "hot folder" of een specifiek bestand dat wordt bewaakt, en HTTP-triggers. Voor de eerste tests kunnen we een timer instellen om de service één keer te activeren:

De timer activeert de uitvoering, en het venster "Serverlog" geeft aan dat dit succesvol is verlopen. De vermelding "Voltooid" bovenaan geeft ook aan dat de taak succesvol is afgerond, en de vermelding direct eronder beschrijft de uitvoering in detail, beginnend met de databasequery.

Om ruimte te besparen, hebben we de screenshot ingekort, maar deze toont het proces tot en met het genereren van de e-mail en de melding.
Hieronder ziet u de e-mailbijlage, bekeken in een venster van de Altova XMLSpy XML-editor:

Hieronder staan de meldingen die naar een Android-apparaat en een iPhone zijn verzonden:


Wanneer een ontvanger op de melding tikt, wordt de app "CompanySales" geopend, die gedetailleerde informatie over de verkopen van die dag weergeeft.

Het testresultaat is precies wat we willen, dus we kunnen een nieuwe trigger instellen om de service elke dag na het einde van de werkuren uit te voeren:

Ontdek zelf hoe eenvoudig het is om services te definiëren op backendservers voor mobiele apps en creëer uw eigen, uitgebreide mobiele apps die werken op verschillende platforms, met veel geavanceerde functies, door een app te bouwen in de gratis MobileTogether Designer.