Esta consulta es de hace 7 años. No tome esta información como actualizada. Si tiene problemas con FacturaScripts, consulte la sección ayuda o la sección contacto
retegi84_f74d39

Buenas,

retegi84_f74d39   España   02-06-2017 00:48:38   06-06-2017 10:56:52   933   [NeoRazorX]
Buenas,
Acabo de adquirir una impresora de ticket TM-T20II, y utilizo MacBook (Sistema Operativo Macos Sierra). Parece ser que para poder imprimir tickets hay que descargar un plugin (ya lo he descargado) y dice lo siguiente en la web de descarga e instalación de facturascripts:

Para poder imprimir tickets en FacturaScripts necesitas dos cosas:
Python 2.x o 3.x
Una impresora de tickets correctamente instalada. No se imprimen tickets en otro tipo de impresoras.
El script remote-printer.

La impresora está bien instalada, desde el editor de texto del mac, imprimo sin problema.
¿Qué hago con lo descargado? ¿Y Python? ¿Debo descargar Python?

Saludos y gracias!
Mira esto:

http://beckism.com/2008/05/run_python_mac_os_x/
Gracias, muchas gracias por la respuesta, pero no lo consigo.
Vamos a ver, de facturascripts he descargado el script que en realidad vienen 4 archivos que los tengo en downloads de mi mac:

LiCENSE
README.md
remote-printer.py
remote-printer3.py

Según en esa web que me indicas, debo ejecutar en el terminal:

python path/to/script [options]

Luego dice algo así como: Por supuesto remplace [options] por lo que corresponda:

python ~/Documents/My\ Python\ Scripts/script.sh

Al introducir en la terminal:

python ~/Downloads/facturascripts/remote-printer.php

Me devuelve la siguiente respuesta:

Fri Jun 2 08:23:46 2017 Server Starts - localhost:10080

Pero sigue sin funcionar... ¿Qué hago mal?
(En facturascripts en terminales tengo los comandos y la impresora seleccionadas corréctamente)
(No he indicado pero también me a hecho introducir la url de la API:
http://localhost/facturascripts/api.php
(Ya que mi facturascripts está en http://localhost/facturascripts/index.php)
y el nombre de la impresora que he puesto:
Epson TM-T20ii)
El mensaje que devuelve es correcto. Remote printer en una aplicación que sirve para imprimir lo tickets que se van haciendo, conforme se van haciendo. Al ejecutarla no se va a imprimir todo lo que haya pendiente, tienes que ir al tpv. Conforme vas haciendo tickets, entonces se van imprimiendo.

Lamento que la versión para linux/mac sea tan anti-intuitiva. Hay pendiente una renovación de la aplicación, pero aun falta para eso.
Saludos.
Buenas majo! Agradecerte una vez más tu creación.
La primera implantación de facturascripts que vamos a realizar será en Linux para un comercio de Donosti, pero me interesa tener controlados los pasos correctos para conseguirlo en windows, linux y mac. Y sí, que parece que está como asignatura pendiente la "fácil instalación" de impresora almenos en Mac, y condiciona bastante a la hora de ofrecerlo a futuros clientes. Mientras sigo sin poder imprimir en Macos Sierra...¿álguien lo a conseguido? ; )
Perooo ¿No te ha servido lo que te he dicho? Cuando ejecutas remote printer y vas al TPV ¿No hace nada? ¿No muestra nada en el terminal?
PD: hoy me está costando que lean lo que escribo...
Debo decir que yo desde linux tampoco lo conseguí, aunque hice una prueba básica tampoco es que le insistiera mucho además de que no tenga una impresora POS. Algún día que estuve donde un cliente quise ver como funcionaba... pero no pude usando ninguno de los 2 .py
Carlos, he leido tus sabias palabras, perdona si no lo a parecido. Es muy probable que el motivo de que no me imprima sea que no sigo los pasos corréctamente, pero no doy con el misterio, y lo veo muy sencillo y no funciona. Te cuenta los pasos que sigo paso a paso a ver si damos con el error.

Resumen y situación actual:
No imprime ni abre cajón, ni con la versión demo ni con la de localhost ni en mac ni en windows. Todavía no he probado en Linux.

IMPRESORA CONFIGURADA, IMPRIME...
Tras instalar la impresora en mac y windows y hacer pruebas de impresión con bloc de notas (dejo confirmado que la impresora funciona correctamente) ya que me imprime ticket con lo que escriba en el block de notas.

Remote printer (windows):
Doble click, se instala y sale una venta donde se introduce la url API
En el caso de la demo de la web:
http://www.facturascripts/demo/api.php
Selecciono TM-T20ii
Guardar...(y por cierto la ventana no se cierra, se queda que no sabes si a guardado o no)

En el caso de la versión instalada en localhost:
http://localhost/facturascripts/api.php
Selecciono TM-T20ii
Guardar...(y por cierto la ventana no se cierra, se queda que no sabes si a guardado o no)

ARQUEOS Y TERMINALES - TERMINALES
Comando corte: 27.109
Comando apertura: 27.112.48.55.121

¡A IMPRIMIR TICKET!
Los pasos que sigo para imprimir ticket son los siguientes y no consigo imprimir en windows ni en mac:

TPV Genérico
Buscar artículo, "clic"eo
Sale en el ticket en pantalla con el producto indicado
Le doy a guardar
Sale una ventana donde introduzco el importe que me da (el cliente)
Guardar e imprimir
...nada

Y nada de nada, ni en mac, ni en windows, ni en la versión demo ni en la versión localhost.

¿Qué sucede?

Gracias por vuestra paciencia Carlos García y resto de foreros.

Saludos!!
Remote printer está funcionando en muchísimos establecimientos, en windows, linux y Mac.
Lo único que se me ocurre es que tengas algún bloqueo de firewall o en el navegador. El TPV le indica a remote printer cuando imprimir mediante una imagen que apunta a http://localhost:10080?terminal=X. Si tienes algo que lo bloquea, entonces no imprime nada.
Error que me devuelve en MAC tras tener ejecutado remote-printe.py, pero el error se genera cuando le doy a imprimier ticket (que comienza lo de "Exception happened...)... ¿Alguna pista?

MacBook-Pro-de-inaki:downloads inaki$ python remote-printer.py
Sat Jun 3 13:42:46 2017 Server Starts - localhost:10080
127.0.0.1 - - [03/Jun/2017 13:44:16] "GET /?terminal=1 HTTP/1.1" 200 -
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 49867)
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 295, in _handle_request_noblock
self.process_request(request, client_address)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 321, in process_request
self.finish_request(request, client_address)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 334, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 655, in __init__
self.handle()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 340, in handle
self.handle_one_request()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 328, in handle_one_request
method()
File "remote-printer.py", line 29, in do_GET
response = urllib2.urlopen(api_url+'?v=2&f=remote_printer'+extra_url)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 423, in open
protocol = req.get_type()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 285, in get_type
raise ValueError, "unknown url type: %s" % self.__original
ValueError: unknown url type: ?v=2&f=remote_printer&terminal=1
----------------------------------------
127.0.0.1 - - [03/Jun/2017 13:44:16] "GET /?terminal=1 HTTP/1.1" 200 -
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 49869)
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 295, in _handle_request_noblock
self.process_request(request, client_address)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 321, in process_request
self.finish_request(request, client_address)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 334, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 655, in __init__
self.handle()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 340, in handle
self.handle_one_request()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 328, in handle_one_request
method()
File "remote-printer.py", line 29, in do_GET
response = urllib2.urlopen(api_url+'?v=2&f=remote_printer'+extra_url)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 423, in open
protocol = req.get_type()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 285, in get_type
raise ValueError, "unknown url type: %s" % self.__original
ValueError: unknown url type: ?v=2&f=remote_printer&terminal=1
----------------------------------------
Bueno a mi en windows si me funciona de una, es muy fácil y no puede quedar el software cerrado debe quedar minimizado junto al reloj de windows si se cierra no imprime, estoy tratando de conseguir una impresora prestada para hacer más pruebas desde Linux
Buenas, hlopez, si fueras de por aquí del Donosti o la zona, podríamos hacer una quedada para hacer pruebas con mi Espson TM-T20ii, con mi Mac, Linux y Windows, pero no creo que seas de por aquí... xD

A mi el invento no me funciona la verdad ni en Mac ni en Windows (Linux no he probado)., pero conseguiré que funcione en las 3...xD

No se si comprando un ticket de asistencia de estos de 25€ remotamente me ayudarían o algo.

Saludos y suerte con la búsqueda de tu impresora de tickets.
Tu eres de España y yo de Colombia igual muchas gracias, ya conseguí con un par de clientes 2 que no están usando para hacer pruebas y poder retroalimentar a la comunidad (pero primero debo ir por ellas). En Windows el icono no lo cierres, fijate que quede minimizado junto al reloj de windows y con el link del api. Ej http://www.ejemplo.com/sistema/api.php y con la impresora POS seleccionada, te aseguro que esto no falla lo he usado en varios computadores con varias impresoras sin problemas durante varios meses
Parece como que la url de la api que está leyendo es '', es decir, nada.
¿Hay un archivo config.txt en la carpeta del script? ¿Tiene algo?
Gracias por tu interés NeoRazorX
Al abrir el directorio, al principio hay cuatro ficheros. Despues tras ejecutar el script aparecen 2 más que antes no había: config.txt y ticket.txt pero como puedes ver, después dice que la impreso o clase no existe.
Al ejecutar el script pide la url api que en mi caso pongo:
http://localhost/facturascripts/api.php

Después pide nombre de impresora que pongo:
Epson TM-T20II

MacBook-Pro-de-inaki:facturascripts-client-master inaki$ ls
LICENSE config.txt remote-printer3.py
README.md remote-printer.py ticket.txt
MacBook-Pro-de-inaki:facturascripts-client-master inaki$ python remote-printer.py
Sun Jun 4 22:41:42 2017 Server Starts - localhost:10080
127.0.0.1 - - [04/Jun/2017 22:42:47] "GET /?terminal=1 HTTP/1.1" 200 -
lpr: La impresora o clase no existe.

Sigo intentándolo a ver, pero qué misterio. Por cierto con otra aplicación TPV he probado y funciona UNICENTA se llama. Y con Facturascripts todavía no lo consigo.

Saludos y a ver si lo conseguimos que me hará un pelín más feliz. xD
Cada vez que le doy a imprimir en la versión DEMO de la web me devuelve esto siguiente:

127.0.0.1 - - [04/Jun/2017 23:01:24] "GET /?terminal=91 HTTP/1.1" 200 -
lpr: La impresora o clase no existe.
Prueba con el nombre de la impresora, que no tenga espacios
Cierto, los nombres de impresora con espacios suelen dar problemas con el actual script.
He probado ponerlo sin espacio incluso sin guión y sigue igual...

POR CIERTO, si pongo en el navegador
La ruta de la API
http://localhost/facturascripts_2015-master/api.php
Me da el siguiente resultado:
"Version de la API de FacturaScripts ausente. Actualiza el cliente."

¿Puede ser alguna pista?

Saludos.
Puede ser una pista de que no estás usando la url correcta. En los mensajes anteriores decías que usabas http://localhost/facturascripts/api.php
Remote-printer ya proporciona la versión de la api que utiliza.

La url que consultaría realmente remote-printer es http://localhost/facturascripts_2015-master/api.php?v=2&f=remote_printer&terminal=1, pero tú solamente debes proporcionar hasta api.php
Eso es porque he probado e instalado varias veces incluso probando diferentes url...xD
La última lo he hecho teniéndolo todo con el nombre de directorio llamado "facturascripts_2015-master" dentro del localhost. La anterior vez la llamé "facturascripts".
Pero nada de nada... por supuesto siempre poniendo a la api, el directorio correspondiente apuntando al archivo api.php

La carpeta del script debe colocarse en algún directorio en concreto, no ¿verdad? ¿O hay que meterlo en el localhost en algún directorio?

Saludos.
El script puede estar en cualquier sitio.

Vale, estoy mirando la documentación de cups y veo que cambian los parámetros de lpr en ciertas versiones. Prueba a cambiar la línea 36:
https://github.com/NeoRazorX/facturascripts-client/blob/master/remote-printer.py#L36

Por esta:
call(['lp', '-d', printer_name, 'ticket.txt'])
Ya lo miraré cuando pueda y te diré. Sí que te puedo confirmar que el ticket.txt se crea automáticamente si recibe incluso la información de la venta realizada.
Ya probaré cambiar ese código a ver qué sucede... y te cuento.
Acabo de probar el código y me devuelve lo siguiente, sin imprimir nada:

MacBook-Pro-de-inaki:remoteprinter inaki$ python remote-printer.py
URL de la api: http://localhost/facturascripts_2015-master/api.php
Nombre de la impresora: epsontmt20ii
Mon Jun 5 23:27:36 2017 Server Starts - localhost:10080
127.0.0.1 - - [05/Jun/2017 23:29:55] "GET /?terminal=1 HTTP/1.1" 200 -
lp: La impresora o clase no existe.
127.0.0.1 - - [05/Jun/2017 23:30:04] "GET /?terminal=1 HTTP/1.1" 200 -
lp: La impresora o clase no existe.


Seguimos con el misterio... xD
OK, abre un terminal y prueba a ejecutar directamente:
lp -d nombre_de_la_impresora archivo_texto.txt
Parece que todo el problema viene del comando. Hay que encontrar el comando en Mac con el que poder enviar un archivo de texto a una impresora.
Los datos son correctos, ¿verdad? No es nada raro lo que pongo, entiendo...
api: http://localhost/facturascripts/api.php
printer: EpsonTMT20II

Si meto directamente la url http://localhost/facturascripts/api.php me devuelve lo siguiente:
Version de la API de FacturaScripts ausente. Actualiza el cliente.
Que si. No demos pasos hacia atrás.
El problema viene del comando lp o lpr.
Ok, esto me devuelve...

MacBook-Pro-de-inaki:remoteprinter inaki$ lp -d EpsonTMT20II config.txt
lp: La impresora o clase no existe.

MacBook-Pro-de-inaki:remoteprinter inaki$ lp -d nombre_de_la_impresora archivo_texto.txt
lp: Error: no se puede acceder a “archivo_texto.txt” (No such file or directory).
MacBook-Pro-de-inaki:remoteprinter inaki$
Si hago desde terminal o comando lp config.txt o lpr config.txt imprime el archivo desde el Epson TM-T20II sin problema...
Parece que macos espera algo más que el nombre de la impresora. Cambia la línea 36:
https://github.com/NeoRazorX/facturascripts-client/blob/master/remote-printer.py#L36

Por esta:
call(['lp', 'ticket.txt'])
[[Cerrado por inactividad]]
¿Problemas con FacturaScripts?
Si tiene problemas con FacturaScripts consulte la sección ayuda o la sección contacto



Cookies
Usamos cookies en nuestro sitio web para brindarte la experiencia más relevante recordando tus preferencias y visitas repetidas. Al hacer clic en "Aceptar", aceptas el uso de TODAS las cookies necesarias.
Copyright (c) 2013-2024 FacturaScripts
0.14414s

Soporte