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!

hace 3 meses   hlopez_04fd16
Mira esto:

http://beckism.com/2008/05/run_python_mac_os_x/
hace 3 meses   retegi84_f74d39
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)
hace 3 meses   retegi84_f74d39
(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)
hace 3 meses   NeoRazorX   [admin]
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.
hace 3 meses   retegi84_f74d39
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? ; )
hace 3 meses   NeoRazorX   [admin]
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...
hace 3 meses   hlopez_04fd16
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
hace 3 meses   retegi84_f74d39
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!!
hace 3 meses   NeoRazorX   [admin]
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.
hace 3 meses   retegi84_f74d39
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
----------------------------------------
hace 3 meses   hlopez_04fd16
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
hace 3 meses   retegi84_f74d39
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.
hace 3 meses   hlopez_04fd16
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
hace 3 meses   NeoRazorX   [admin]
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?
hace 3 meses   retegi84_f74d39
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
hace 3 meses   retegi84_f74d39
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.
hace 3 meses   hlopez_04fd16
Prueba con el nombre de la impresora, que no tenga espacios
hace 3 meses   NeoRazorX   [admin]
Cierto, los nombres de impresora con espacios suelen dar problemas con el actual script.
hace 3 meses   retegi84_f74d39
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.
hace 3 meses   NeoRazorX   [admin]
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
hace 3 meses   retegi84_f74d39
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.
hace 3 meses   NeoRazorX   [admin]
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'])
hace 3 meses   retegi84_f74d39
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.
hace 3 meses   retegi84_f74d39
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
hace 3 meses   NeoRazorX   [admin]
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.
hace 3 meses   retegi84_f74d39
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.
hace 3 meses   NeoRazorX   [admin]
Que si. No demos pasos hacia atrás.
El problema viene del comando lp o lpr.
hace 3 meses   retegi84_f74d39
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$
hace 3 meses   retegi84_f74d39
Si hago desde terminal o comando lp config.txt o lpr config.txt imprime el archivo desde el Epson TM-T20II sin problema...
hace 3 meses   NeoRazorX   [admin]
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'])
hace 2 meses   -   [cron]
[[Cerrado por inactividad]]
No se pueden hacer más comentarios. Mejor escribe una nueva pregunta

Financiación extra

13 patrocinadores

Este mes se han realizado un total de 13 aportaciones económicas para acelerar el desarrollo del proyecto.

34% Complete

170 € este mes. Puedes aumentar estas cifras ;-)

+5 € +4 votos

+25 € +20 votos




Soporte

FacturaScripts es software libre y gratuito, pero si lo que busca es asesoramiento y soporte profesional, use la sección soporte. Encontrará el partner apropiado para el trabajo apropiado.

  Soporte

O síganos en las redes sociales.





© 2013-2017 FacturaScripts