SUTOL Symposium 2014 24.dubna, GreenPoint Praha
Partneři konference www.sutol.cz
Otevřete Domino světu Ondřej Fuxa, YOUR SYSTEM, spol. s r.o. Jak řešíte načítání dat z IBM Domino aplikací do externích IS? Stále si píšete vlastní agenty, kteří data generují do "nějakého" formátu? Nemyslíte, že by to chtělo už něco jiného? standardního? Něco co můžete užívat opakovaně a je to funkční na pár kliků? Pojďme společně objevit možnosti Domino Access Services (REST API), které nativně umí poskytovat data ve formátu JSON, který lze zpracovat nejen v webové aplikaci, ale i kdekoliv jinde, kde je potřeba.
Osnova Integrace, integrace aneb ten svět není jednobarevný Jak to bylo dříve, dnes Jak to může (mělo) být OpenNTF Extension Library Diskuze a konzumace zbytků jídel
Integrace, Neexistuje jen jeden systém, jeden výrobce, jeden formát Potřeba prezentovat data z databází v různorodých klientech Nutnost mít možnost data z databáze užít kdekoliv (čtení, editace, zakládání) Zachování bezpečnosti
Práce s daty v notes databázi Potřeba data synchronizovat s jiným systémem Potřeba data zobrazit na intranetu (např. telefonní seznam) Potřeba vytvořit záznam nový Potřeba upravit stávající záznam Životní situace Přístup ke kalendáři, plánu volného času Přístup k poštovním službám
Klasické možnosti (aneb co známe) Exportní soubor ve formátu CSV, XML Frekvence dle plánovače Offline přístup Typicky Notes Agent v LotusScriptu Nutnost společného místa na síti kam to IBM Domino uloží a cílový systém načte CSV Konzument
Klasické možnosti (aneb co známe) Vlastní online rozhraní Notes Agent LotusScript, Java Připravený pohled Připravený ve správném formátu HTML, XML, JSON
Klasické možnosti (aneb co známe) HTML Pohled do pravěku Proprietární generace Neustálé změny v kódu Obrovské množství přenášených, nepotřebných dat (tagy jako tr, td, table, javascript pro barvení řádek při přejetí myši)
Klasické možnosti (aneb co známe) XML fáze I. Proprietární generace Již nejsou nepotřebné elementy Velký objem přenášených dat XML fáze II.?ReadViewEntries První automatizované řešení umožňující autogeneraci XML z jakéhokoliv pohledu Omezení: jen čtení dat z pohledu
Klasické možnosti (aneb co známe) JSON fáze I. Proprietární generace Již nejsou nepotřebné prvky Minimální objem přenesených dat Často chyby při převodu dat do požadovaného formátu (např. uvozovky, nová řádka) JSON fáze II.???
IBM Domino Access Services (DAS) Standardně dostupné od verze IBM Domino 9.0 (8.5.3 UP1) Data Service Od verze IBM Domino 9.0.1 rozšířeno Core Service, Calendar Service Implementace části OpenNTF Extension Library Ta samotná umí ještě více! Kompletní popis rozhraní http://www-10.lotus.com/ldd/ddwiki.nsf/xpapiviewer.xsp?lookupname=ibm+domino+access+services+9.0.1
Výhody Nativně dostupné bez nutnosti instalace doplňků Připraveno k instantnímu užití Vrací chyby? Pod supportem IBM Smysluplné URL pro získávání informací Postupné pravostranné rozšiřování <db>/api/<služba>/parametr1/parametr2/ Lze je v skoro číst jako příběh s pravostranným rozšiřováním <db.nsf>/api/mail/inbox/messages/<unid>
Jak začít? 1/3 Nutný předpoklad běžící HTTP služba Zapnu službu v Enabled services
Jak začít? 2/3 Ve vlastnostech notes databáze aktivuje, zda chci povolit jen přístup k sestavám (read), či i formulářům (edit)
Jak začít? 3/3 Zapnu nad pohledem, že chci, aby tento pohled byl dostupný tímto způsobem
HOTOVO GET /db.nsf/api/data/collections/unid/d9f69297b6755c41c1256f0d00668229
Příklady z praxe Správa objektů v notes aplikaci Vizualizace přes Google Maps
Příklady z praxe Načítání informací do sestav různorodých frameworků (Bootstrap)
Telefonní seznam Příklady z praxe
OpenNTF Extension Library http://extlib.openntf.org/ Po nahrání na server přidává další možnosti Mezi nimi jsou i 2 rozšíření pro Domino API
Mail Service Přístup k své došlé poště, odeslané poště, konceptům Smazání poštovní zprávy Vytvoření a odeslání nové zprávy, konceptu GET /{database}/api/mail/inbox
Nalezení obsazeného času pro určitou osobu I formát icalendar Freebusy Service Nalezení volné místnosti dle času, kapacity, Vylistování Sites z Domino Directory GET /api/freebusy/busytime?name=deanmelnyk@ acme.com
Zazvonil konec a přednášky je konec YOUR SYSTEM, spol. s r.o. Tel: +420 277 775 500 Email: ics@ys.cz Web: http://www.yoursystem.cz Technické kontakty: Ondrej.Fuxa@ys.cz Radim.Navratil@ys.cz