+420 603 755 610
info@inited.cz
flagEnglish (Angličtina)
flagČeština
Vývoj mobilních aplikací - firma INITED Solutions s.r.o.
  • Domů
  • Služby
  • Pro agentury
  • Ukázky naší práce
  • Blog
  • Náš tým
  • 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

Tmavý obrázek s rukou držící telefon, na kterém je zapnutý noční režim.

Tmavý režim: proč byste ho měli mít a které aplikace se bez něj neobejdou

7.9.2022Jaroslav Pavlíček
Ilustrační grafika s počítači, na kterých vývojář připravuje novou mobilní aplikaci.

Hodinová sazba za vývoj mobilní aplikace: na čem závisí a jak se liší u freelancerů a agentur

26.10.2022Jana Marková

Jak tvoříme vaše aplikace aneb 6 etap vývoje mobilních aplikací IV

16.3.2022Jana Marková

Kategorie článků

  • Marketing a prodej (25)
  • Mobilní aplikace (42)
  • Mobilní telefony a HW/Ostatní (13)
  • Ostatní (12)
  • Top (5)
  • Trendy (38)
  • Z naší dílny (19)

Přečtěte si také

  • 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
  • Jak vypadá naše spolupráce s marketingovými agenturami
  • App Store zamítl aplikaci? 3 nejčastější důvody + tipy, jak se tomu vyhnout
  • Jak získat úspěšnou a vydělávající aplikaci? Klíčem jsou AI chatboti
  • Vyšší výkon nebo lepší fotoaparát: 4 největší novinky, které přinese iPhone 15
  • No code a low code programování vs. klasický vývoj mobilní aplikace. Víte, co se víc vyplatí?
  • Mobile marketing automation: Co to je a proč se vám vyplatí
  • O 48 % vyšší engagement. I to vám přinese gamifikace
  • Twitteru roste nová konkurence. Bluesky od Jacka Dorseyho
  • Jak mi „pravidla“ LinkedInu vzala 2 roky práce a dřiny
  • Umělá inteligence off-line? V mobilním telefonu vytvoří obrázek za 15 vteřin
  • 5 důvodů, proč váš klient potřebuje mobilní aplikaci: 5. Lepší přehled o službách
  • Lidé tráví používáním mobilních aplikací přes 5 hodin denně. Víte, co je zajímá nejvíc?

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}