Pro společnost Copy General jsme dostali příležitost navrhnout a vytvořit samoobslužný kiosek, který by zákazníkům na pobočkách zefektivnil samoobslužnou zónu a zároveň snížil zátěž zaměstnancům. Ti se pak mohou věnovat požadavkům zákazníků, kteří potřebují lidskou pomoc.
Samoobslužná zóna zprvu vznikala pouze pro platby za vykonané tisky. Zadání vypadalo jednoduše. Zákazník přijde na pobočku, dostane rfid čip, kterým se „pípne“ u daných tiskáren, kde chce tisknout/kopírovat… Jakmile má hotovo, přijde k samoobslužnému kiosku, přiloží čip a chytrý kiosek si zjistí, co vše zákazník tiskl a jaká je cena za všechny tisky. Cenu zobrazí a vyzve zákazníka k platbě prostřednictvím platebního terminálu. Po úspěšné platbě se vytiskne účtenka.
Zní to jednoduše, ale oříšek byl v tom, že celé zařízení běží na androidu a kiosek jako takový je webovou aplikací. Tím, že je to web, jednoznačně kladnou stránkou je škálovatelnost a poměrně snadné rozšiřování funkcí kiosku. Zároveň cena je nižší než u nativních android aplikací a v neposlední řadě responzivita umožňuje dotykový tablet nahradit jiným větším/menším zařízením, na pobočkách používat dle potřeby takovou velikost, jaká vyhovuje podmínkám.
Zároveň ale web řešení má svá úskalí, s nimiž jsme se museli vyrovnávat. A sice zejména policy s přístupem na periferie. První věc bylo vůbec získat data rfid čtečky - přečíst jí. To šlo celkem hladce. Přes USB připojená rfid čtečka komunikuje jako klávesnice a tak prakticky do skrytého input pole na focus vkládá požadovaná data.
Potom přišel na řadu platební terminál, který byl celkem dobře vybaven ke komunikaci s webem a možnostmi testování platebních karet.
A konečně tiskárna. Kupodivu právě tak jednoduchá záležitost jako je tisk z webu s androidem, byl největším oříškem. Při testech a simulacích jsme se s tím vypořádali na úrovni silent printu, který při testování fungoval dobře.
Na ostrém zařízení však nemohl kiosek kvůli propojení s periferiemi a kioskovému režimu běžet v rámci nativního browseru. I přesto, že vykreslovací jádro kioskového browseru bylo totožné, aplikace po tisku přesměrovává mimo požadovaný browser a tím celý proces po prvním pokusu vždy skončil chybou v nativním browseru tabletu. Navíc se objevovala policy hláška o tisku.
To nešlo. Testovali jsme způsoby, jak to řešit, od testů na zpětné volání browseru, který požadavek na tisk odeslal, přes SDK výrobců tiskáren, komunikaci s výrobcem apod. Vše bez úspěchu. Nakonec jsme zjistili, že ten použitý hardware a metoda předávání dat prostě nejsou průchozí a museli jsme tisk kompletně přepracovat. Kdy tisková data nejsou PDF, ale skládají se na úrovni javascriptu a jdou na jinak připojenou tiskárnu. A hle, vše funguje. Tiskárna tiskne, kiosek jede!
V neposlední řadě je třeba zmínit, že díky webovému rozhraní kiosek na webových API komunikuje se systémy třetích stran, které CG využívá. Zároveň je kiosek vzdáleně konfigurovatelný na úrovni položek, které má nabízet a je multijazyčný.
Postupně se začínají nabalovat rozvojové požadavky na další funkce zadávání fotografií, další tisk, dobíjení předplacené karty, zjišťování stavu předplacené karty apod.
Čeká nás další rozvoj, na který se těšíme, protože tahle kreativní práce nás baví.