Ik heb het idee dat het niet kan, maar wellicht weet iemand van jullie een oplossing.

- Een cronjob (php) checkt in database of er nog niet geprinte keukenbonnen zijn (WHERE geprint = 0 bijvoorbeeld)
- Indien ja; roep een javascript bestand aan om te printen

Het javascript bestand zet dan een Epson TM-88V-i bonnenprinter in werking om te printen.

- Een cronjob instellen is geen probleem
- Database verhaal ook niet
- De printer laten printen met JS ook niet

... maar die cronjob dat js bestand aan laten roepen... kan dat?
Hoi Ikku Hier,

Bedankt, dat ga ik eens proberen.

Maar is dat ook voor de Epson TM-88V-i ?
Ik gebruik het ook voor een EPSON TM-88V.
Succes.
Dank je! Ik ga het proberen en hopen dat de -i variant het ook ondersteunt!
Als je alleen printer_open(); gebruikt opent hij de default printer.
Dan moet et toch wel lukken?
Hallo Ikku Hier,

Ik krijg inderdaad een print zo uit de printer, ook de cutter wordt aangestuurd.
Geweldig!

Heel apart dat er niets over in de handleiding staat dat het ook met php kan.

Heb jij toevallig ergens een overzicht wat de codes betekenen zoals "\x1B\x40" ?

Dan kan ik namelijk daarop door gaan zoeken zoals voor de pulse voor een kassalade.

[size=xsmall]Toevoeging op 11/08/2015 12:18:34:[/size]

Blijkt dit dus te zijn: fwrite($pp, "\x1B\x70\x0\x100\x100");

[size=xsmall]Toevoeging op 11/08/2015 12:28:32:[/size]

Voor iemand anders die er ooit naar aan het zoeken is: http://content.epson.de/fileadmin/content/files/RSD/downloads/escpos.pdf
Gosh
code-bom
ifelseelseifififelse-hell
waterval php

Ik heb er geen andere woorden voor.
Tijd voor een refactor nadat het werkt ;)
Enkel met dit komt er al een bon uit met daarop: "Een regel tekst", maar dankzij het script van Ikku Hier.

<?php
$printer  = '192.168.100.10'; // ip adres printer
$pp = fsockopen($printer, 9100); // verbinding met printer maken, openen

fwrite($pp, "\x1B\x40"); // clear buffer
fwrite($pp, "Een regel tekst"."\r\n");
fwrite($pp, "\x0A\x0A\x1D\x56\x41"); // op paar mm na cutten
fwrite($pp, "\x1B\x40"); // clear buffer

fclose($pp); // verbinding sluiten
?>


Een heel stuk simpeler en overzichtelijker dan wat dus standaard in de voorbeelden van de TM-88V-i meegeleverd wordt.
Dat is al een stuk beter ja.
perfecto
Nog een klein beetje netter ...

<?php
$printer = fsockopen('192.168.100.10', 9100);
$clear_buffer = '\x1B\x40';
$break = PHP_EOL;

fwrite($printer, $clear_buffer);
fwrite($printer, 'Een regel tekst' . $break);
fwrite($printer, '\x0A\x0A\x1D\x56\x41');
fwrite($printer, $clear_buffer);

fclose($printer);
?>
Wat ik me dan afvraag; zou het een reden hebben dat Epson alleen maar een omslachtige methode met Javascript of XML meelevert terwijl dit volgens mij veel stabieler is maar sowieso simpeler?

Reageren