+420 603 755 610
info@inited.cz
flagEnglish (Angličtina)
flagČeština
INITED Solutions s.r.o.
  • Domů
  • Služby
    • Vývoj mobilních aplikací
    • Záchrana projektů
    • Konzultace
    • Provoz a rozvoj mobilních aplikací
  • Pro agentury
  • Ukázky naší práce
  • Blog
  • Kontakt

Tiskárna Cashino PTP-III – tisk z iPadu

6.1.2017Jaroslav Pavlíček

Vývoj mobilní aplikace pro prodej zboží v terénu přišel s požadavkem tisknout účtenky. Hledali jsme tedy způsob, jak vytisknout z hybridní aplikace definovanou šablonu. Chtěli jsme tiskárnu, která se připojuje přes Bluetooth a která spolupracuje s iPadem, na kterém naše aplikace funguje.

Dotaz do komunity, hleadání na Alze. Tiskárny EPSON jsou prý spolehlivé, avšak nejsou v nabídce. Alza nabízí značku Cashino. Tisknou na termopapír, mají možnost připojení přes wifi, infrared a bluetooth. Z diskuse pod produkty bylo vidět, že je nějaký problém s podporou iOS.

Na technické podpoře firmy Expro Mobil s.r.o., která tiskárny dováží, jsme se dozvěděli, že s iOS problém není, jen je třeba objednat ten správný typ, případně si nechat vyměnit čip, výměna stojí 200,- Kč.

Tiskárnu jsme objednali, konkrétně typ PTP-III BT4 se šířkou 80mm v Bluetooth verzi pro iOS. Tiskárna má připojení přes infraport, Bluetooth a USB.

cashino

Na první pohled bylo jasné, proč je třeba jiný HW pro iOS – poslední verze produktů Apple podporují pouze Bluetooth verze 4, klasický BT verze 2 s iPhone nefunguje. Na Androidu starý Bluetooth stále funguje.

Ani na iPadu ani na iPhone nebyla tiskárna v nastavení Bluetooth iPadu vidět. Až pomocí speciální aplikace LightBlue Explorer (https://itunes.apple.com/us/app/lightblue-explorer-bluetooth/id557428110?mt=8) bylo vidět, že je všechno v pořádku, ukázala se tiskárna i služby, které nabízí.

Další krok bylo připojit se a vytisknout něco z Cordovy. Pomohl plugin Bluetooth LE: https://github.com/randdusing/cordova-plugin-bluetoothle , který má poměrně dobrou dokumentaci, takže zde nebudeme rozebírat detaily, které jsou napsané tam.

Výsledná funkční sekvence kroků je:

  • bluetooth search
  • bluetooth connect
  • bluetooth discover
  • bluetooth write
  • bluetooth close

Poslat na tiskárnu samotný řetězec „Hello world“ nevystiskne nic. Na začátku tisku je potřeba poslat inicializační řetězec ESC @, třeba takto: „\x1b@Write Hello World\r\n“.

Ovládání tiskárny a formátování textu se provádí přes ESC POS sekvence. Pro první pokusy s ESC POS a pro vyvíjení šablony je výhodné si tiskárnu připojit přes USB a posílat do ní data přímo. Na OS X je třeba doinstalovat ovladač pro PL2303, v linuxu je přístupná ihned na ttyUSB:

> echo -n -e "\x1B@ahoj\n" > /dev/ttyUSB0

Formátování textu – velikost a typ písma, zarovnání, … se provádí pomocí ESC POS sekvencí. Např. pro vytisknutí textu tučně: „\x1B!\x08text\x1B!\x00“. Vytvořili jsme jednoduchý překladač podmnožiny HTML tagů do ESC POS sekvencí a šablonu účtenky spáchali v HTML.

Kódování češtiny: tiskárna nepodporuje UTF-8, pouze vybrané kódové stránky, např. win 1250.
Obrázky: je možné vytisknout obrázek a funguje to. Protože ale na účtenkách tiskneme stále dokola jeden stejný obrázek – logo, je možné si ho uložit do NV paměti a při tisku se na něj odkázat – je to rychlejší, není třeba vždy posílat tisková data.

V pondělí začíná pilotní provoz v terénu.

Ještě odkaz do githubu na testovací aplikaci: https://github.com/inited/tisk-cashino
To zajímavé je v souboru www/app/services/print.service.js a bluetooth.service.js

Detail vlastní aplikace: Firmu jsme zbavili papírů a zrychlili prodej zboží

Diskuse k článku na Facebooku.

Jaroslav Pavlíček
Jaroslav je certifikovaný architekt (TOGAF) s 25+ lety praxe v IT. Díky tomu mají naše mobilní aplikace vysokou technickou úroveň a jsou postavené na spolehlivých technologiích. Své zkušenosti získával na projektech v zahraničí (Velká Británie, Malta) a vedle INITED působí jako konzultant Adobe Experience Manager, AEM.
Předchozí článek Push notifikace zvyšují prodej v aplikacích Další článek Schvalování aplikací na Android a iPhone – Jak na něj vyzrát

Related Articles

Jak navrhnout aplikaci? 7 věcí, které si musíte předem promyslet

9.3.2022Jana Marková
Grafika: žena řešící spoustu úkolů.

Spolehlivější a přehlednější: Jak se náš vývoj aplikací liší od konkurence

17.8.2022Jana Marková
Stůl, na kterém leží noviny v papírovém vydání a v responzivní aplikaci na tabletu a mobilním telefonu.

Dokonalé přizpůsobení a spokojení uživatelé. To přináší responzivní aplikace

19.10.2022Jaroslav Pavlíček

Kategorie článků

  • Marketing a prodej (26)
  • Mobilní aplikace (47)
  • Mobilní telefony a HW/Ostatní (13)
  • Ostatní (13)
  • Top (5)
  • Trendy (39)
  • Z naší dílny (20)

Přečtěte si také

  • Jana Marková: Mobilní, nebo webová aplikace? Někdy je nejlepší mít obě
  • Apple umožňuje publikovat aplikace v alternativních obchodech. Jaké jsou podmínky?
  • Od nápadu na aplikaci k dokonalému projektu: 6 kroků, které musíte ujít
  • 6 rozdílů mezi ASO pro App Store a pro Google Play
  • Hodinová sazba za vývoj mobilní aplikace: jak se liší u freelancerů a agentur
  • Cena vývoje mobilní aplikace 2024
  • Co jsou widgety a proč se vyplatí i vaší aplikaci
  • Chcete, aby vaše aplikace zůstala na Google Play? Musíte ji aktualizovat!
  • 7 trendů ve vývoji mobilních aplikací pro rok 2024
  • Povinné ověření účtů vývojářů na Google Play
  • Jak funguje našich 6 etap vývoje mobilních aplikací
  • Nebuďte součástí hloupých předsudků a pověr! Můžete tím přijít o peníze i o zákazníky
  • Máte aktuální API? Bez ní vás někteří uživatelé v Google Play nenajdou
  • UX mobilní aplikace: 3 věci, na které musíte myslet
  • AI na vlastní kůži: Jak vypadá aplikace s texty od ChatGPT
  • Proč je práce z domova okolím vnímána jako podřadnější než práce v kanceláři?
  • 3 největší novinky, které přinese Google Pixel 8
  • 6 technologií, které vylepší vaši aplikaci
  • 5 tipů, jak využít umělou inteligenci v mobilní aplikaci
  • 7 nejčastějších chyb, které firmy dělají v ASO

Ahoj 123

blablabl

  • Domů
  • Služby
  • Pro agentury
  • Ukázky naší práce
  • Blog
  • Náš tým
  • Kontakt
© 2023 Created by Provocado
Na tomto webu používáme cookies
Cookies nám pomáhají vidět realitu - co návštěvníky zajímá, co čtou a co naopak přeskakují. Používáme Google Analytics, Google Fonts aYouTube. Více o cookies, najdete v dokumentu níže.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Manage options Manage services Manage vendors Read more about these purposes
Předvolby
{title} {title} {title}