SlideShare une entreprise Scribd logo
1  sur  48
Télécharger pour lire hors ligne
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
www.filemaker-konferenz.com
Einsatz einer 'low overhead web technique' für schnellen Datenabgleich
Mobile Apps müssen funktionieren, auch bei aktuell fehlender oder langsamer Internet Verbindung.

Das Arbeiten mit Sync-Techniken ist gut, erfordert aber eine FileMaker Server Verbindung.

Volker Krambrich
REST mobil - die andere Serververbindung
Neu!		
FileMaker	Server	16	Data	API
Version	vom	15.10.2017	mit	Nachträgen	zum	Data	API
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Über den Sprecher
• Volker Krambrich

Dr. phil., linguist, computer sciences

• Ich habe als Koch gearbeitet und Flugpassagiere
damals noch mit exzellentem Essen versorgt.
Schiffe gemakelt (Tramp und Liniendienst) und
einiges mehr.Ich koche und esse noch immer
gern, gehe im Herbst Pilze und Beeren sammeln
und spiele Cello im Returorkester in Helsinki.

• FileMaker ist meine Passion. Es ist die einfachste
Software um schnell eine Individual
Programmierung für nahezu jede Plattform zu
machen.
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Über NORSULT…
• gegründet 1987 in Hamburg, Deutschland

• seit 2005 in Espoo, Finnland

• plan and build smart and effective applications

• appreciate happy customers and longterm relationships

• customers all over Europe

• serve many industries form sciences & research, medical care, sales, clothing
industry, airlines and public services
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
– Norsult philosophy
“We are here to help make
your work easier in a changing world.”
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Überblick

1. REST - was ist das?

2. URI und URL

3. Endlich FileMaker

3.1. Datei "Translator.fmp12"*)

3.2. RESTfm

3.3. Data API

4. Real-World: iHandwerk

4.1.Kurze Demo

4.2.Hinter den Kulissen

5. Diskussion & Fragestunde
*)	Gibt	es	komplett	zum	
Download
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
REST? Was ist das
• Steht für "Representational State Transfer"

• Beschreibt eine Kommunikationsarchitiktur

• Erstmals im Jahr 2000 von Roy Fielding in einer Dissertation beschrieben

• Umfasst 6 Prinzipien des Client-Server Datenaustauschs im Internet:

• Uniform Interface (einheitliche Schnittstelle)

Ressourcen-basiert (z. B. Datenbank) und URI identifiziert - einheitliche äußere Form, freie 'innere Werte' (z. B. Finnisch
in UTF-8 codiert); selbst erklärend; Repräsentation der Daten (nicht die Datenbank sondern HTML, XML or JSON als
Repräsentation eines Records

• Stateless (siehe Name)

Alle Daten und Informationen zu Ihrer Verarbeitung sind in einer Nachricht enthalten

• Cacheable (Lebensdauer)

Daten können im Browser gespeichert bleiben. Die Nachricht (soll) hier explizit sein

• Client - Server (Trennung der Zuständigkeit)

Clients müssen nichts über die Speicherung auf dem Server wissen; der Server ignoriert die Benutzerschnittstelle

• Layered System (Aufbau in Schichten)

Clients können mit einem Server direkt verbunden sein oder über zwischengeschaltete Stationen

• Code on demand (optional)

Server können verarbeitende Logik an den Client übertragen (z. B.precompiled Java)
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
URI und URL
• URI Universal Ressource Identifier 

• beschreibt allgemein ein gesuchtes Objekt (Dokument) im Internet Jargon

• URL Universal Ressource Locator

• eine konventionelle Notation um eine Objekt im Internet zu finden,
Sonderform des URI; 'Webadresse'
Wir	benötigen	die	URL	einer	Ressource	die	wir	mit	REST	nutzen	wollen.	
Beispiel	(FMS16	REST	API):	
https://fmfipro.norsult.net/fmi/rest/api/auth/Translator
Protokoll Internet	Adresse Ressource
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Endlich Filemaker
• Die Datei 'Translator.fmp12' – Beispieldatei zum Kennenlernen

• liegt auf Server 16, hat sehr einfache Struktur, Zugriff REST, PHP, XML

• Tabelle 'Translator' - 2 Felder 'Deutsch', 'Englisch'

• zugänglich über das Layout 'Translator' mit zwei Feldern

• das ist unsere Ressource, die wir über REST erreichen wollen
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
FileMaker und Technik
• FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen

• API (experimentell bis 27. September 2018) freigeschaltet

• FileMaker PHP installiert und aktiviert

• RESTfm V.5.0.0 REST Server von Goya, freeware
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
FileMaker und Technik
• FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen

• API (experimentell bis 27. September 2018) freigeschaltet

• FileMaker PHP installiert und aktiviert

• RESTfm V.5.0.0 REST Server von Goya, freeware
gültiges	SSL	Zertifikat!
Nachtrag	15.10.2017:	
Man	kann	ohne	oder	mit	dem	
FileMaker	Test	Zertifkat	
experimentieren!
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
FileMaker und Technik
• FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen

• API (experimentell bis 27. September 2018) freigeschaltet

• FileMaker PHP installiert und aktiviert

• RESTfm V.5.0.0 REST Server von Goya, freeware
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
FileMaker und Technik
• FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen

• API (experimentell bis 27. September 2018) freigeschaltet

• FileMaker PHP installiert und aktiviert

• RESTfm V.5.0.0 REST Server von Goya, freeware
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
FileMaker und Technik
• FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen

• API (experimentell bis 27. September 2018) freigeschaltet

• FileMaker PHP installiert und aktiviert

• RESTfm V.5.0.0 REST Server von Goya, freeware
http://manual.restfm.com/restfm-manual/install
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Demo	Translator
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Desktop
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Desktop
your.server.name
REST
REST
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Login Nachtrag	15.10.2017:	
Man	kann	Suchbegriffe	mit	den	
Standard	Suchoperatoren		
verknüpfen!	
"=Montag"	sucht	ganze	Worte,	
"*tag"	sucht	Wörter	die	auf		
'tag'	enden…
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Methodenwechsel
FileMaker Data API

Bei dieser Methode wird der Filemaker Server direkt vom Client angesprochen.
Wissen über die innere Struktur der Datenbank ist unabdingbar!

RESTfm

Der Vorgänger und weitaus entwickeltere REST Server für FileMaker

Hier steht ein weiterer Dienst zwischen dem Client und dem Server (Definition von
Fielding, s. Folie 6)
Client ServerHTTP	
Message
Client RESTfmHTTP	
Message
Server
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Wochentag
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Skriptaufruf	
Antwort-Layout
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Live-Demo	Translator
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
RESTfm Schnittstelle – was sahen wir
• Interaktion mit dem Server über "insert from URL" Skript Schritt

https://REST:REST@fmfipro.norsult.net/RESTfm/Translator/script/
TranslateFromGerman/TranslatorResult.json?RFMscriptParam=Montag
• Jede Aktion ist in sich abgeschlossen "Stateless"

Eine Anfrage an den Server, eine Antwort.
• Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben

data: "Ergebnis__gt" : "Monday"
• Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach
Bedarf

• Es ist möglich nicht nur Daten zu holen (siehe ScriptParam); es können
umfangreiche Daten gesendet werden

• FileMaker Skripts können ausgeführt werden!
Dataformat ist wählbar JSON, simple, FMPXML etc..
Beispiel:
{
"data" :
[
{
"Ergebnis__gt" : "Monday"
}
],
"info" :
{
"X-RESTfm-Method" : "GET",
"X-RESTfm-PHP-memory_limit" : "128M",
"X-RESTfm-PHP-post_max_size" : "8M",
"X-RESTfm-Profile" : "38ms 1.1M 128M",
"X-RESTfm-Protocol" : "6",
"X-RESTfm-Reason" : "OK",
"X-RESTfm-Status" : 200,
"X-RESTfm-Version" : "5.0.0/20170821-1ee8f4e"
},
"meta" :
[
{
"href" : "/RESTfm/Translator/layout/TranslatorResult/1.json",
"recordID" : "1"
}
],
"metaField" :
[
{
"autoEntered" : 0,
"global" : 1,
"maxRepeat" : 1,
"name" : "Ergebnis__gt",
"resultType" : "text"
}
]
}
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
RESTfm Schnittstelle – was sahen wir
• Interaktion mit dem Server über "insert from URL" Skript Schritt

https://REST:REST@fmfipro.norsult.net/RESTfm/Translator/script/
TranslateFromGerman/TranslatorResult.json?RFMscriptParam=Montag
• Jede Aktion ist in sich abgeschlossen "Stateless"

Eine Anfrage an den Server, eine Antwort.
• Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben

data: "Ergebnis__gt" : "Monday"
• Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach
Bedarf

• Es ist möglich nicht nur Daten zu holen (siehe ScriptParam); es können
umfangreiche Daten gesendet werden

• FileMaker Skripts können ausgeführt werden! 

• Der Server hat einen einzigen Client! (RESTfm PHP call)
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Data API Schnittstelle – was sahen wir
• Interaktion mit dem Server über "insert from URL" Skript Schritt

https://REST:REST@fmfipro.norsult.net/fmi/rest/api/record/
Translator/Translator +
--header Content-Type:application/json
--header FM-Data-token:<FM-token> -X GET
• Jede Aktion ist in sich abgeschlossen "Stateless"

Eine Anfrage an den Server, eine Antwort.
• Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben

data: "Ergebnis__gt" : "Monday"
• Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach Bedarf

• Es ist möglich nicht nur Daten zu holen; es können umfangreiche Daten
gesendet werden

• FileMaker Skripts können nicht ausgeführt werden!
Eigentlich immer drei Zyklen ( 2 + n {n >=1}):
LOGIN
<some Operation>
LOGOUT
Dataformat ist immer JSON.
Beispiel:
{
"data" :
[
{
"fieldData" :
{
"Deutsch" : "Montag",
"English" : "Monday"
},
"modId" : "0",
"portalData" : {},
"recordId" : "1"
},
{…}
],
"errorCode" : "0",
"result" : "OK"
}
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Data API Schnittstelle – was sahen wir
• Interaktion mit dem Server über "insert from URL" Skript Schritt

https://REST:REST@fmfipro.norsult.net/fmi/rest/api/record/
Translator/Translator +
--header Content-Type:application/json
--header FM-Data-token:<FM-token> -X GET
• Jede Aktion ist in sich abgeschlossen "Stateless"

Eine Anfrage an den Server, eine Antwort.
• Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben

data: "Ergebnis__gt" : "Monday"
• Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach Bedarf

• Es ist möglich nicht nur Daten zu holen; es können umfangreiche Daten
gesendet werden

• FileMaker Skripts können nicht ausgeführt werden! Die Suche funktioniert nicht!

• Der Server hat einen Client pro Session! (Data API Login call)
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Data API Session
Öffnen jeder Verbindung (Aktion: 'auth') erzeugt eine Sitzung auf dem Server.

Sessiondauer ist wie bei Webdirect (Standard 15 min. bei Inaktivität)
2	parallele	User	-->	2	Connections
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
RESTfm (PHP) Session
Öffnen der ersten Verbindung erzeugt eine Sitzung auf dem Server.

Weitere Verbindungen nutzen dieselbe Session!

Sessiondauer ist wie bei Webdirect (Standard 15 min. bei Inaktivität)
2	parallele	User	-->	1	Connection
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Fragen?
Weiter mit einem realen Projekt…
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
iHandwerk
Probleme:
• Zettelwirtschaft
• Zeiterfassung
Lösung:
• mobile Erfassung
• asynchrone Anbindung ans
Büro
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Demo	iHandwerk
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Stammdaten	aus	
der	Office	
Anwendung
Update	der	Lösung	
'in-App'…
1
2
3
…Feierabend!
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
iHandwerk: Fotos, Skizzen, Nachrichten…
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
iHandwerk -
• Entwickelt als Gemeinschaftsprojekt: Kunde und zwei FBA Partner

• Schrittweise eingeführt (seit 2015 in der Produktion)

• Getrieben vom Kundenwunsch „Ich will mich nicht tief einarbeiten, nur klicken!”

• Innovativ besonders in der Anbindung der mobilen Geräte

• Extensive Nutzung der REST Kommunikation

• Innovatives Synch Verfahren

• viele kleine Lösungen um das Leben auf iOS zu erleichtern (ClockPicker etc.)

• Abschliessend ein Blick auf das Backend…
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Benutzerverwaltung
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
RESTexchange - das Herzstück
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
SYNCdown - Daten an mobil
Prozess in drei
Schritten:

Frage nach neuen
Daten für 'mich'

Ergibt leere Liste oder
Liste der RecIDs die
zu holen sind

Hole jeden einzelnen
Record, schicke
Quittung und
verarbeite lokal.
SYNCdown	[<RecordID1>]
SYNCdown	[<RecordID2>]
Alle	Datenrecords	sind	
uniform!	
Details	sind	in	den	Daten	enthalten:	
Datentyp,	Schlüsselangaben,	Bilder	
etc.
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
– John Doe
“Time for a break?”
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
ELIZA „???”
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Fragen und Antworten
mailto:dr.filemaker@mac.com
Quellen	und	Literaturtipps,	Links	zur	Dokumentation	sind	auf	der	allerletzten	Folie!
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
– John Doe
“Time for a break!”
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
Vortrag und Sprecher
Vielen Dank unseren Sponsoren
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Literatur & Quellen
• Fielding, Roy Thomas (2000). "Chapter 5: Representational State Transfer
(REST)". Architectural Styles and the Design of Network-based Software
Architectures (Ph.D.). University of California, Irvine. “This chapter
introduced the Representational State Transfer (REST) architectural style
for distributed hypermedia systems. REST provides a set of architectural
constraints that, when applied as a whole, emphasizes scalability of
component interactions, generality of interfaces, independent deployment
of components, and intermediary components to reduce interaction
latency, enforce security, and encapsulate legacy systems.”

• REST API Tutorial (Pearson o.J) zitiert 5.10.2017 von http://
www.restapitutorial.com/lessons/whatisrest.html

• Goya RESTfm, https://github.com/GoyaPtyLtd/RESTfm/releases;
Dokumentation unter http://manual.restfm.com

• FileMaker Server 16, Dokumentation zum REST API auf jeder Installation
des Produkts unter: https://host/fmi/rest/apidoc/ (<host> ist der DNS
Name der Maschine, 'localhost' auf der Maschine selbst funktioniert auch)

• Beeswax Blog, https://blog.beezwax.net/2017/05/21/getting-started-with-
rest-and-curl-using-filemaker-16s-data-api/ Einführung in die Methoden.

• Rose, "To-code-or-not-to-code, if that is the question, so what is the
answer?", BBC The Knowledge Illusion; zitiert 10.10.2017 von https://
knowledgeillusion.wordpress.com/tag/bbc-basic/ (Eliza Zitat)
8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017
REST mobil, Volker Krambrich NORSULT
Abgabe
• Bitte die fertigen Folien im Format Keynote oder Powerpoint an
office@filemaker-konferenz.com schicken.

• Dateiname: FMK2017-Vorname-Nachname-Titel.Dateiendung

• Beispiel: FMK2017-Bernhard-Schulz-FileMaker_16_iBeacons.pptx

• Bitte Kurzbeschreibung angeben, zum Beispiel: „Bernhard Schulz zeigt die
neuen iBeacon Funktionen in FileMaker 16“

• Bitte Keywords angeben, zum Beispiel: FileMaker 16, iBeacon, Geofencing

• Warum? Wir laden die Folien zu Slideshare hoch. Je besser Kurzbeschreibung,
Keywords und Titel sind, desto besser wird der Inhalt bei Google gefunden!

•Deadline: 9.10.2017

Contenu connexe

Tendances

Tendances (20)

FMK2017 - Was ist neu in FileMaker 16 by Michael Valentin
FMK2017 - Was ist neu in FileMaker 16 by Michael ValentinFMK2017 - Was ist neu in FileMaker 16 by Michael Valentin
FMK2017 - Was ist neu in FileMaker 16 by Michael Valentin
 
FMK2017 - FileMaker Server in der Cloud by Volker Krambrich
FMK2017 - FileMaker Server in der Cloud by Volker KrambrichFMK2017 - FileMaker Server in der Cloud by Volker Krambrich
FMK2017 - FileMaker Server in der Cloud by Volker Krambrich
 
FMK2017 - FileMaker iOS App SDK by Robert Kaiser
FMK2017 - FileMaker iOS App SDK by Robert KaiserFMK2017 - FileMaker iOS App SDK by Robert Kaiser
FMK2017 - FileMaker iOS App SDK by Robert Kaiser
 
FMK2017 - Plugins für die FileMaker Cloud by Christian Schmitz
FMK2017 - Plugins für die FileMaker Cloud by Christian SchmitzFMK2017 - Plugins für die FileMaker Cloud by Christian Schmitz
FMK2017 - Plugins für die FileMaker Cloud by Christian Schmitz
 
FMK2017 - Tools für FileMaker Entwickler by Alexis Gehrt
FMK2017 -  Tools für FileMaker Entwickler by Alexis GehrtFMK2017 -  Tools für FileMaker Entwickler by Alexis Gehrt
FMK2017 - Tools für FileMaker Entwickler by Alexis Gehrt
 
FMK2017 - Das FileMaker Selector-Connector Modell - Wie kann ich es sinnvoll ...
FMK2017 - Das FileMaker Selector-Connector Modell - Wie kann ich es sinnvoll ...FMK2017 - Das FileMaker Selector-Connector Modell - Wie kann ich es sinnvoll ...
FMK2017 - Das FileMaker Selector-Connector Modell - Wie kann ich es sinnvoll ...
 
FMK2017 - Wordpress und FileMaker by Karsten Risseeuw
FMK2017 - Wordpress und FileMaker by Karsten RisseeuwFMK2017 - Wordpress und FileMaker by Karsten Risseeuw
FMK2017 - Wordpress und FileMaker by Karsten Risseeuw
 
FMK2017 - MBS FileMaker Plugin by Christian Schmitz
FMK2017 - MBS FileMaker Plugin by Christian SchmitzFMK2017 - MBS FileMaker Plugin by Christian Schmitz
FMK2017 - MBS FileMaker Plugin by Christian Schmitz
 
FMK2017 - iBeacons und FileMaker by Alexis Gehrt
FMK2017 -  iBeacons und FileMaker by Alexis GehrtFMK2017 -  iBeacons und FileMaker by Alexis Gehrt
FMK2017 - iBeacons und FileMaker by Alexis Gehrt
 
FMK2017 - WebDirect vs. FileMaker Pro by Klemens Kegebein und Holger Darjus
FMK2017 - WebDirect vs. FileMaker Pro by Klemens Kegebein und Holger DarjusFMK2017 - WebDirect vs. FileMaker Pro by Klemens Kegebein und Holger Darjus
FMK2017 - WebDirect vs. FileMaker Pro by Klemens Kegebein und Holger Darjus
 
FMK2017 - GUI Tipps für mobile Lösungen by Robert Kaiser
FMK2017 - GUI Tipps für mobile Lösungen by Robert KaiserFMK2017 - GUI Tipps für mobile Lösungen by Robert Kaiser
FMK2017 - GUI Tipps für mobile Lösungen by Robert Kaiser
 
FMK2017 - Plugins für FileMaker SDK für iOS by Christian Schmitz
FMK2017 - Plugins für FileMaker SDK für iOS by Christian SchmitzFMK2017 - Plugins für FileMaker SDK für iOS by Christian Schmitz
FMK2017 - Plugins für FileMaker SDK für iOS by Christian Schmitz
 
FMK2016 - Arnold Kegebein - Recycling
FMK2016 - Arnold Kegebein - RecyclingFMK2016 - Arnold Kegebein - Recycling
FMK2016 - Arnold Kegebein - Recycling
 
FMK2016 - Holger Darjus und Jörg Köster - Migration und Synchronisation
FMK2016 - Holger Darjus und Jörg Köster - Migration und SynchronisationFMK2016 - Holger Darjus und Jörg Köster - Migration und Synchronisation
FMK2016 - Holger Darjus und Jörg Köster - Migration und Synchronisation
 
FMK2017 - Die Anker Boje Methode by Gerhard Schwingenschlögl
FMK2017 - Die Anker Boje Methode by Gerhard SchwingenschlöglFMK2017 - Die Anker Boje Methode by Gerhard Schwingenschlögl
FMK2017 - Die Anker Boje Methode by Gerhard Schwingenschlögl
 
FMK 2016 - Robert Kaiser - FileMaker iOS App SDK
FMK 2016 - Robert Kaiser - FileMaker iOS App SDKFMK 2016 - Robert Kaiser - FileMaker iOS App SDK
FMK 2016 - Robert Kaiser - FileMaker iOS App SDK
 
FMK2016 - Christian Schmitz - MBS FileMaker Plugin
FMK2016 - Christian Schmitz - MBS FileMaker PluginFMK2016 - Christian Schmitz - MBS FileMaker Plugin
FMK2016 - Christian Schmitz - MBS FileMaker Plugin
 
FMK2016 - Christian Schmitz - Einblick in das FileMaker SDK für iOS
FMK2016 - Christian Schmitz - Einblick in das FileMaker SDK für iOSFMK2016 - Christian Schmitz - Einblick in das FileMaker SDK für iOS
FMK2016 - Christian Schmitz - Einblick in das FileMaker SDK für iOS
 
FMK2016 - Ingo Thoden - Etikettendruck in über 20 Sprachen
FMK2016 - Ingo Thoden - Etikettendruck in über 20 SprachenFMK2016 - Ingo Thoden - Etikettendruck in über 20 Sprachen
FMK2016 - Ingo Thoden - Etikettendruck in über 20 Sprachen
 
FMK2015: Entwicklung von modernen Benutzeroberflächen mit FileMaker Pro by Ad...
FMK2015: Entwicklung von modernen Benutzeroberflächen mit FileMaker Pro by Ad...FMK2015: Entwicklung von modernen Benutzeroberflächen mit FileMaker Pro by Ad...
FMK2015: Entwicklung von modernen Benutzeroberflächen mit FileMaker Pro by Ad...
 

Similaire à FMK2017 - REST mobil- die andere Serververbindung by Volker Krambrich

FMK2015: FileMaker Server 14 by Volker Krambrich
FMK2015: FileMaker Server 14 by Volker KrambrichFMK2015: FileMaker Server 14 by Volker Krambrich
FMK2015: FileMaker Server 14 by Volker Krambrich
Verein FM Konferenz
 

Similaire à FMK2017 - REST mobil- die andere Serververbindung by Volker Krambrich (20)

FMK2018-FileMaker und JSON/REST by Bernhard Schulz schubec.com
FMK2018-FileMaker und JSON/REST by Bernhard Schulz schubec.comFMK2018-FileMaker und JSON/REST by Bernhard Schulz schubec.com
FMK2018-FileMaker und JSON/REST by Bernhard Schulz schubec.com
 
FMK2019 FileMaker Data API mit Node.js nutzen by Adam Augustin
FMK2019 FileMaker Data API mit Node.js nutzen by Adam AugustinFMK2019 FileMaker Data API mit Node.js nutzen by Adam Augustin
FMK2019 FileMaker Data API mit Node.js nutzen by Adam Augustin
 
FMK2019 PSoS - Perform Script on Server Wie einsetzen und wie entwickeln? by ...
FMK2019 PSoS - Perform Script on Server Wie einsetzen und wie entwickeln? by ...FMK2019 PSoS - Perform Script on Server Wie einsetzen und wie entwickeln? by ...
FMK2019 PSoS - Perform Script on Server Wie einsetzen und wie entwickeln? by ...
 
FMK2018 FileMaker Server 17 - Solution Deployment neu gedacht Der Bruch mit d...
FMK2018 FileMaker Server 17 - Solution Deployment neu gedacht Der Bruch mit d...FMK2018 FileMaker Server 17 - Solution Deployment neu gedacht Der Bruch mit d...
FMK2018 FileMaker Server 17 - Solution Deployment neu gedacht Der Bruch mit d...
 
FMK2016 - Volker Krambrich - FileMaker Cloud - Amazon Web Services
FMK2016 - Volker Krambrich - FileMaker Cloud - Amazon Web ServicesFMK2016 - Volker Krambrich - FileMaker Cloud - Amazon Web Services
FMK2016 - Volker Krambrich - FileMaker Cloud - Amazon Web Services
 
FMK2018 Mein erster FileMaker Server Was ist das? Was kann der Server? Brauch...
FMK2018 Mein erster FileMaker Server Was ist das? Was kann der Server? Brauch...FMK2018 Mein erster FileMaker Server Was ist das? Was kann der Server? Brauch...
FMK2018 Mein erster FileMaker Server Was ist das? Was kann der Server? Brauch...
 
Apple iOS - Webservices
Apple iOS - WebservicesApple iOS - Webservices
Apple iOS - Webservices
 
FMK2017 - Schnittstellen zu Fremdsystemen by Robert Rohrkemper-
FMK2017 - Schnittstellen zu Fremdsystemen by Robert Rohrkemper-FMK2017 - Schnittstellen zu Fremdsystemen by Robert Rohrkemper-
FMK2017 - Schnittstellen zu Fremdsystemen by Robert Rohrkemper-
 
FMK2018- FileMaker und Linux mit SSH zusammenführen Christian Schmitz
FMK2018- FileMaker und Linux mit SSH zusammenführen Christian SchmitzFMK2018- FileMaker und Linux mit SSH zusammenführen Christian Schmitz
FMK2018- FileMaker und Linux mit SSH zusammenführen Christian Schmitz
 
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico BuschFMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
 
FMK2019 FileMaker Data API mit Node.js nutzen - Workshop by Adam Augustin
FMK2019 FileMaker Data API mit Node.js nutzen - Workshop by Adam AugustinFMK2019 FileMaker Data API mit Node.js nutzen - Workshop by Adam Augustin
FMK2019 FileMaker Data API mit Node.js nutzen - Workshop by Adam Augustin
 
FMK2019 FileMaker Anbindung an Online Systeme by Michael Heider
FMK2019 FileMaker Anbindung an Online Systeme by Michael HeiderFMK2019 FileMaker Anbindung an Online Systeme by Michael Heider
FMK2019 FileMaker Anbindung an Online Systeme by Michael Heider
 
FMK2018- Migration tool Philipp Puls
FMK2018- Migration tool Philipp PulsFMK2018- Migration tool Philipp Puls
FMK2018- Migration tool Philipp Puls
 
FMK2018- Das neue Migrationstool/… per Hand oder geht das doch bequemer? Phil...
FMK2018- Das neue Migrationstool/… per Hand oder geht das doch bequemer? Phil...FMK2018- Das neue Migrationstool/… per Hand oder geht das doch bequemer? Phil...
FMK2018- Das neue Migrationstool/… per Hand oder geht das doch bequemer? Phil...
 
FMK2018- Audit Log Arnold Kegebein
FMK2018- Audit Log Arnold KegebeinFMK2018- Audit Log Arnold Kegebein
FMK2018- Audit Log Arnold Kegebein
 
FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC by Philipp Puls
FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC by Philipp PulsFMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC by Philipp Puls
FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC by Philipp Puls
 
FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC Brauch ich da wen, oder...
FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC Brauch ich da wen, oder...FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC Brauch ich da wen, oder...
FMK2019 FileMaker und ESS (MySQL) mit cURL statt ODBC Brauch ich da wen, oder...
 
FMK2018- Neues im MBS FileMaker Plugin Christian Schmitz
FMK2018- Neues im MBS FileMaker Plugin Christian SchmitzFMK2018- Neues im MBS FileMaker Plugin Christian Schmitz
FMK2018- Neues im MBS FileMaker Plugin Christian Schmitz
 
FMK2022 FileMaker DataAPI und Java von Bernhard Schulz
FMK2022 FileMaker DataAPI und Java von Bernhard SchulzFMK2022 FileMaker DataAPI und Java von Bernhard Schulz
FMK2022 FileMaker DataAPI und Java von Bernhard Schulz
 
FMK2015: FileMaker Server 14 by Volker Krambrich
FMK2015: FileMaker Server 14 by Volker KrambrichFMK2015: FileMaker Server 14 by Volker Krambrich
FMK2015: FileMaker Server 14 by Volker Krambrich
 

Plus de Verein FM Konferenz

Plus de Verein FM Konferenz (20)

FMK2022 Excel und FileMaker Schittko.pdf
FMK2022 Excel und FileMaker Schittko.pdfFMK2022 Excel und FileMaker Schittko.pdf
FMK2022 Excel und FileMaker Schittko.pdf
 
FMK2022 Drucken über Dateigrenzen hinweg von Philipp Puls
FMK2022 Drucken über Dateigrenzen hinweg von Philipp PulsFMK2022 Drucken über Dateigrenzen hinweg von Philipp Puls
FMK2022 Drucken über Dateigrenzen hinweg von Philipp Puls
 
FMK2022 Custom Functions von Philipp Puls
FMK2022 Custom Functions von Philipp PulsFMK2022 Custom Functions von Philipp Puls
FMK2022 Custom Functions von Philipp Puls
 
FMK2022 FileMaker Fehler von Martin Schwarz
FMK2022 FileMaker Fehler von Martin SchwarzFMK2022 FileMaker Fehler von Martin Schwarz
FMK2022 FileMaker Fehler von Martin Schwarz
 
FMK2022 FileMaker Server unter Linux Workshop von Bernhard Schulz
FMK2022 FileMaker Server unter Linux Workshop von Bernhard SchulzFMK2022 FileMaker Server unter Linux Workshop von Bernhard Schulz
FMK2022 FileMaker Server unter Linux Workshop von Bernhard Schulz
 
FMK2022 Neue Programmiertechniken von Adam Augusting
FMK2022 Neue Programmiertechniken von Adam AugustingFMK2022 Neue Programmiertechniken von Adam Augusting
FMK2022 Neue Programmiertechniken von Adam Augusting
 
FMK2022 FileMaker und Javascript von Adam Augustin
FMK2022 FileMaker und Javascript von Adam AugustinFMK2022 FileMaker und Javascript von Adam Augustin
FMK2022 FileMaker und Javascript von Adam Augustin
 
FMK2022 Arbeiten mit SVG in FileMaker - Robert Kaiser
FMK2022 Arbeiten mit SVG in FileMaker - Robert KaiserFMK2022 Arbeiten mit SVG in FileMaker - Robert Kaiser
FMK2022 Arbeiten mit SVG in FileMaker - Robert Kaiser
 
FMK2022 Dokumentation - Thomas Hirt
FMK2022 Dokumentation - Thomas HirtFMK2022 Dokumentation - Thomas Hirt
FMK2022 Dokumentation - Thomas Hirt
 
FMK2022 CustomFunctions Fuer Einsteiger - Thomas Hirt
FMK2022 CustomFunctions Fuer Einsteiger - Thomas HirtFMK2022 CustomFunctions Fuer Einsteiger - Thomas Hirt
FMK2022 CustomFunctions Fuer Einsteiger - Thomas Hirt
 
FMK2022 FileMaker Integrated Development Environment - Russell Watson
FMK2022 FileMaker Integrated Development Environment - Russell WatsonFMK2022 FileMaker Integrated Development Environment - Russell Watson
FMK2022 FileMaker Integrated Development Environment - Russell Watson
 
FMK2022 Datenschutz DSGVO Christoph Kluss
FMK2022 Datenschutz DSGVO Christoph KlussFMK2022 Datenschutz DSGVO Christoph Kluss
FMK2022 Datenschutz DSGVO Christoph Kluss
 
FMK2022 Rechnungen Inkasso - Christoph Kluss
FMK2022 Rechnungen Inkasso - Christoph KlussFMK2022 Rechnungen Inkasso - Christoph Kluss
FMK2022 Rechnungen Inkasso - Christoph Kluss
 
FMK2022 Die Zukunft von FileMaker - Marcel Moré.pdf
FMK2022 Die Zukunft von FileMaker - Marcel Moré.pdfFMK2022 Die Zukunft von FileMaker - Marcel Moré.pdf
FMK2022 Die Zukunft von FileMaker - Marcel Moré.pdf
 
FMK2019 bug off lightning talk by Russell Watson
FMK2019 bug off lightning talk by Russell WatsonFMK2019 bug off lightning talk by Russell Watson
FMK2019 bug off lightning talk by Russell Watson
 
FMK2019 being an optimist in a pessimistic world by vincenzo menanno
FMK2019 being an optimist in a pessimistic world by vincenzo menannoFMK2019 being an optimist in a pessimistic world by vincenzo menanno
FMK2019 being an optimist in a pessimistic world by vincenzo menanno
 
FMK2019 FileMaker Performance Update 2019 by HOnza Koudelka
FMK2019 FileMaker Performance Update 2019 by HOnza KoudelkaFMK2019 FileMaker Performance Update 2019 by HOnza Koudelka
FMK2019 FileMaker Performance Update 2019 by HOnza Koudelka
 
FMK2019 Hardware Integrated by HOnza Koudelka
FMK2019 Hardware Integrated by HOnza KoudelkaFMK2019 Hardware Integrated by HOnza Koudelka
FMK2019 Hardware Integrated by HOnza Koudelka
 
Fmk2019 Produktentwicklung mit FileMaker by Harald Mair
Fmk2019 Produktentwicklung mit FileMaker by Harald MairFmk2019 Produktentwicklung mit FileMaker by Harald Mair
Fmk2019 Produktentwicklung mit FileMaker by Harald Mair
 
FMK2019 Layout und Eigene Menüs-Management by Jörg Köster
FMK2019 Layout und Eigene Menüs-Management  by Jörg KösterFMK2019 Layout und Eigene Menüs-Management  by Jörg Köster
FMK2019 Layout und Eigene Menüs-Management by Jörg Köster
 

FMK2017 - REST mobil- die andere Serververbindung by Volker Krambrich

  • 1. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 www.filemaker-konferenz.com Einsatz einer 'low overhead web technique' für schnellen Datenabgleich Mobile Apps müssen funktionieren, auch bei aktuell fehlender oder langsamer Internet Verbindung.
 Das Arbeiten mit Sync-Techniken ist gut, erfordert aber eine FileMaker Server Verbindung.
 Volker Krambrich REST mobil - die andere Serververbindung Neu! FileMaker Server 16 Data API Version vom 15.10.2017 mit Nachträgen zum Data API
  • 2. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Über den Sprecher • Volker Krambrich Dr. phil., linguist, computer sciences • Ich habe als Koch gearbeitet und Flugpassagiere damals noch mit exzellentem Essen versorgt. Schiffe gemakelt (Tramp und Liniendienst) und einiges mehr.Ich koche und esse noch immer gern, gehe im Herbst Pilze und Beeren sammeln und spiele Cello im Returorkester in Helsinki. • FileMaker ist meine Passion. Es ist die einfachste Software um schnell eine Individual Programmierung für nahezu jede Plattform zu machen.
  • 3. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Über NORSULT… • gegründet 1987 in Hamburg, Deutschland • seit 2005 in Espoo, Finnland • plan and build smart and effective applications • appreciate happy customers and longterm relationships • customers all over Europe • serve many industries form sciences & research, medical care, sales, clothing industry, airlines and public services
  • 4. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT – Norsult philosophy “We are here to help make your work easier in a changing world.”
  • 5. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Überblick 1. REST - was ist das? 2. URI und URL 3. Endlich FileMaker 3.1. Datei "Translator.fmp12"*) 3.2. RESTfm 3.3. Data API 4. Real-World: iHandwerk 4.1.Kurze Demo 4.2.Hinter den Kulissen 5. Diskussion & Fragestunde *) Gibt es komplett zum Download
  • 6. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT REST? Was ist das • Steht für "Representational State Transfer" • Beschreibt eine Kommunikationsarchitiktur • Erstmals im Jahr 2000 von Roy Fielding in einer Dissertation beschrieben • Umfasst 6 Prinzipien des Client-Server Datenaustauschs im Internet: • Uniform Interface (einheitliche Schnittstelle) Ressourcen-basiert (z. B. Datenbank) und URI identifiziert - einheitliche äußere Form, freie 'innere Werte' (z. B. Finnisch in UTF-8 codiert); selbst erklärend; Repräsentation der Daten (nicht die Datenbank sondern HTML, XML or JSON als Repräsentation eines Records • Stateless (siehe Name) Alle Daten und Informationen zu Ihrer Verarbeitung sind in einer Nachricht enthalten • Cacheable (Lebensdauer) Daten können im Browser gespeichert bleiben. Die Nachricht (soll) hier explizit sein • Client - Server (Trennung der Zuständigkeit) Clients müssen nichts über die Speicherung auf dem Server wissen; der Server ignoriert die Benutzerschnittstelle • Layered System (Aufbau in Schichten) Clients können mit einem Server direkt verbunden sein oder über zwischengeschaltete Stationen • Code on demand (optional) Server können verarbeitende Logik an den Client übertragen (z. B.precompiled Java)
  • 7. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT URI und URL • URI Universal Ressource Identifier • beschreibt allgemein ein gesuchtes Objekt (Dokument) im Internet Jargon • URL Universal Ressource Locator • eine konventionelle Notation um eine Objekt im Internet zu finden, Sonderform des URI; 'Webadresse' Wir benötigen die URL einer Ressource die wir mit REST nutzen wollen. Beispiel (FMS16 REST API): https://fmfipro.norsult.net/fmi/rest/api/auth/Translator Protokoll Internet Adresse Ressource
  • 8. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Endlich Filemaker • Die Datei 'Translator.fmp12' – Beispieldatei zum Kennenlernen • liegt auf Server 16, hat sehr einfache Struktur, Zugriff REST, PHP, XML • Tabelle 'Translator' - 2 Felder 'Deutsch', 'Englisch' • zugänglich über das Layout 'Translator' mit zwei Feldern • das ist unsere Ressource, die wir über REST erreichen wollen
  • 9. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT FileMaker und Technik • FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen • API (experimentell bis 27. September 2018) freigeschaltet • FileMaker PHP installiert und aktiviert • RESTfm V.5.0.0 REST Server von Goya, freeware
  • 10. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT FileMaker und Technik • FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen • API (experimentell bis 27. September 2018) freigeschaltet • FileMaker PHP installiert und aktiviert • RESTfm V.5.0.0 REST Server von Goya, freeware gültiges SSL Zertifikat! Nachtrag 15.10.2017: Man kann ohne oder mit dem FileMaker Test Zertifkat experimentieren!
  • 11. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT FileMaker und Technik • FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen • API (experimentell bis 27. September 2018) freigeschaltet • FileMaker PHP installiert und aktiviert • RESTfm V.5.0.0 REST Server von Goya, freeware
  • 12. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT FileMaker und Technik • FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen • API (experimentell bis 27. September 2018) freigeschaltet • FileMaker PHP installiert und aktiviert • RESTfm V.5.0.0 REST Server von Goya, freeware
  • 13. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT FileMaker und Technik • FileMaker Server 16 auf WIN2016 Server mit mässigen Ressourcen • API (experimentell bis 27. September 2018) freigeschaltet • FileMaker PHP installiert und aktiviert • RESTfm V.5.0.0 REST Server von Goya, freeware http://manual.restfm.com/restfm-manual/install
  • 14. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Demo Translator
  • 15. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Desktop
  • 16. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Desktop your.server.name REST REST
  • 17. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT
  • 18. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Login Nachtrag 15.10.2017: Man kann Suchbegriffe mit den Standard Suchoperatoren verknüpfen! "=Montag" sucht ganze Worte, "*tag" sucht Wörter die auf 'tag' enden…
  • 19. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Methodenwechsel FileMaker Data API Bei dieser Methode wird der Filemaker Server direkt vom Client angesprochen. Wissen über die innere Struktur der Datenbank ist unabdingbar! RESTfm Der Vorgänger und weitaus entwickeltere REST Server für FileMaker Hier steht ein weiterer Dienst zwischen dem Client und dem Server (Definition von Fielding, s. Folie 6) Client ServerHTTP Message Client RESTfmHTTP Message Server
  • 20. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Wochentag
  • 21. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Skriptaufruf Antwort-Layout
  • 22. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Live-Demo Translator
  • 23. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT RESTfm Schnittstelle – was sahen wir • Interaktion mit dem Server über "insert from URL" Skript Schritt https://REST:REST@fmfipro.norsult.net/RESTfm/Translator/script/ TranslateFromGerman/TranslatorResult.json?RFMscriptParam=Montag • Jede Aktion ist in sich abgeschlossen "Stateless" Eine Anfrage an den Server, eine Antwort. • Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben data: "Ergebnis__gt" : "Monday" • Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach Bedarf • Es ist möglich nicht nur Daten zu holen (siehe ScriptParam); es können umfangreiche Daten gesendet werden • FileMaker Skripts können ausgeführt werden! Dataformat ist wählbar JSON, simple, FMPXML etc.. Beispiel: { "data" : [ { "Ergebnis__gt" : "Monday" } ], "info" : { "X-RESTfm-Method" : "GET", "X-RESTfm-PHP-memory_limit" : "128M", "X-RESTfm-PHP-post_max_size" : "8M", "X-RESTfm-Profile" : "38ms 1.1M 128M", "X-RESTfm-Protocol" : "6", "X-RESTfm-Reason" : "OK", "X-RESTfm-Status" : 200, "X-RESTfm-Version" : "5.0.0/20170821-1ee8f4e" }, "meta" : [ { "href" : "/RESTfm/Translator/layout/TranslatorResult/1.json", "recordID" : "1" } ], "metaField" : [ { "autoEntered" : 0, "global" : 1, "maxRepeat" : 1, "name" : "Ergebnis__gt", "resultType" : "text" } ] }
  • 24. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT RESTfm Schnittstelle – was sahen wir • Interaktion mit dem Server über "insert from URL" Skript Schritt https://REST:REST@fmfipro.norsult.net/RESTfm/Translator/script/ TranslateFromGerman/TranslatorResult.json?RFMscriptParam=Montag • Jede Aktion ist in sich abgeschlossen "Stateless" Eine Anfrage an den Server, eine Antwort. • Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben data: "Ergebnis__gt" : "Monday" • Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach Bedarf • Es ist möglich nicht nur Daten zu holen (siehe ScriptParam); es können umfangreiche Daten gesendet werden • FileMaker Skripts können ausgeführt werden! • Der Server hat einen einzigen Client! (RESTfm PHP call)
  • 25. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Data API Schnittstelle – was sahen wir • Interaktion mit dem Server über "insert from URL" Skript Schritt https://REST:REST@fmfipro.norsult.net/fmi/rest/api/record/ Translator/Translator + --header Content-Type:application/json --header FM-Data-token:<FM-token> -X GET • Jede Aktion ist in sich abgeschlossen "Stateless" Eine Anfrage an den Server, eine Antwort. • Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben data: "Ergebnis__gt" : "Monday" • Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach Bedarf • Es ist möglich nicht nur Daten zu holen; es können umfangreiche Daten gesendet werden • FileMaker Skripts können nicht ausgeführt werden! Eigentlich immer drei Zyklen ( 2 + n {n >=1}): LOGIN <some Operation> LOGOUT Dataformat ist immer JSON. Beispiel: { "data" : [ { "fieldData" : { "Deutsch" : "Montag", "English" : "Monday" }, "modId" : "0", "portalData" : {}, "recordId" : "1" }, {…} ], "errorCode" : "0", "result" : "OK" }
  • 26. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Data API Schnittstelle – was sahen wir • Interaktion mit dem Server über "insert from URL" Skript Schritt https://REST:REST@fmfipro.norsult.net/fmi/rest/api/record/ Translator/Translator + --header Content-Type:application/json --header FM-Data-token:<FM-token> -X GET • Jede Aktion ist in sich abgeschlossen "Stateless" Eine Anfrage an den Server, eine Antwort. • Trennung Client-Server - eine Repräsentation wird zur Verwendung übergeben data: "Ergebnis__gt" : "Monday" • Das aufrufende Programm (FileMaker Go App) verwendet die Daten nach Bedarf • Es ist möglich nicht nur Daten zu holen; es können umfangreiche Daten gesendet werden • FileMaker Skripts können nicht ausgeführt werden! Die Suche funktioniert nicht! • Der Server hat einen Client pro Session! (Data API Login call)
  • 27. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Data API Session Öffnen jeder Verbindung (Aktion: 'auth') erzeugt eine Sitzung auf dem Server. Sessiondauer ist wie bei Webdirect (Standard 15 min. bei Inaktivität) 2 parallele User --> 2 Connections
  • 28. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT RESTfm (PHP) Session Öffnen der ersten Verbindung erzeugt eine Sitzung auf dem Server. Weitere Verbindungen nutzen dieselbe Session! Sessiondauer ist wie bei Webdirect (Standard 15 min. bei Inaktivität) 2 parallele User --> 1 Connection
  • 29. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Fragen? Weiter mit einem realen Projekt…
  • 30. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT iHandwerk Probleme: • Zettelwirtschaft • Zeiterfassung Lösung: • mobile Erfassung • asynchrone Anbindung ans Büro
  • 31. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT
  • 32. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Demo iHandwerk
  • 33. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Stammdaten aus der Office Anwendung Update der Lösung 'in-App'… 1 2 3 …Feierabend!
  • 34. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT
  • 35. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT
  • 36. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT
  • 37. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT iHandwerk: Fotos, Skizzen, Nachrichten…
  • 38. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT iHandwerk - • Entwickelt als Gemeinschaftsprojekt: Kunde und zwei FBA Partner • Schrittweise eingeführt (seit 2015 in der Produktion) • Getrieben vom Kundenwunsch „Ich will mich nicht tief einarbeiten, nur klicken!” • Innovativ besonders in der Anbindung der mobilen Geräte • Extensive Nutzung der REST Kommunikation • Innovatives Synch Verfahren • viele kleine Lösungen um das Leben auf iOS zu erleichtern (ClockPicker etc.) • Abschliessend ein Blick auf das Backend…
  • 39. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Benutzerverwaltung
  • 40. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT RESTexchange - das Herzstück
  • 41. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT SYNCdown - Daten an mobil Prozess in drei Schritten: Frage nach neuen Daten für 'mich' Ergibt leere Liste oder Liste der RecIDs die zu holen sind Hole jeden einzelnen Record, schicke Quittung und verarbeite lokal. SYNCdown [<RecordID1>] SYNCdown [<RecordID2>] Alle Datenrecords sind uniform! Details sind in den Daten enthalten: Datentyp, Schlüsselangaben, Bilder etc.
  • 42. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT – John Doe “Time for a break?”
  • 43. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT ELIZA „???”
  • 44. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Fragen und Antworten mailto:dr.filemaker@mac.com Quellen und Literaturtipps, Links zur Dokumentation sind auf der allerletzten Folie!
  • 45. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT – John Doe “Time for a break!”
  • 46. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 Vortrag und Sprecher Vielen Dank unseren Sponsoren
  • 47. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Literatur & Quellen • Fielding, Roy Thomas (2000). "Chapter 5: Representational State Transfer (REST)". Architectural Styles and the Design of Network-based Software Architectures (Ph.D.). University of California, Irvine. “This chapter introduced the Representational State Transfer (REST) architectural style for distributed hypermedia systems. REST provides a set of architectural constraints that, when applied as a whole, emphasizes scalability of component interactions, generality of interfaces, independent deployment of components, and intermediary components to reduce interaction latency, enforce security, and encapsulate legacy systems.” • REST API Tutorial (Pearson o.J) zitiert 5.10.2017 von http:// www.restapitutorial.com/lessons/whatisrest.html • Goya RESTfm, https://github.com/GoyaPtyLtd/RESTfm/releases; Dokumentation unter http://manual.restfm.com • FileMaker Server 16, Dokumentation zum REST API auf jeder Installation des Produkts unter: https://host/fmi/rest/apidoc/ (<host> ist der DNS Name der Maschine, 'localhost' auf der Maschine selbst funktioniert auch) • Beeswax Blog, https://blog.beezwax.net/2017/05/21/getting-started-with- rest-and-curl-using-filemaker-16s-data-api/ Einführung in die Methoden. • Rose, "To-code-or-not-to-code, if that is the question, so what is the answer?", BBC The Knowledge Illusion; zitiert 10.10.2017 von https:// knowledgeillusion.wordpress.com/tag/bbc-basic/ (Eliza Zitat)
  • 48. 8. FileMaker Konferenz | Salzburg | 12.-14. Oktober 2017 REST mobil, Volker Krambrich NORSULT Abgabe • Bitte die fertigen Folien im Format Keynote oder Powerpoint an office@filemaker-konferenz.com schicken. • Dateiname: FMK2017-Vorname-Nachname-Titel.Dateiendung • Beispiel: FMK2017-Bernhard-Schulz-FileMaker_16_iBeacons.pptx • Bitte Kurzbeschreibung angeben, zum Beispiel: „Bernhard Schulz zeigt die neuen iBeacon Funktionen in FileMaker 16“ • Bitte Keywords angeben, zum Beispiel: FileMaker 16, iBeacon, Geofencing • Warum? Wir laden die Folien zu Slideshare hoch. Je besser Kurzbeschreibung, Keywords und Titel sind, desto besser wird der Inhalt bei Google gefunden! •Deadline: 9.10.2017