Acabo de actualizar el plugin para imprimir en impresoras térmicas y esta nueva actualización mejora la obtención de las impresoras térmicas, pues:
- El listado de impresoras es más rápido
- Internamente uso WMI que es compatible con la mayoría de sistemas de Windows
- Ya no se abre una ventana de PowerShell
Puedes descargar la nueva versión en:
http://parzibyte.me/static/ESC_POS_3.5.2_W64.zip
Lista de cambios
Los cambios desde la versión 3.5.1 y la versión 3.5.2 son:
- El plugin consulta las impresoras térmicas compartidas usando la API de Windows WMI
- Se ha removido el endpoint GET /impresoras_windows_ps que me parece nunca publiqué, pero por si alguien lo usaba te aviso que ya no existe
- Ya no se usa powershell ni wmic
- Al no usar cmd ni powershell el plugin ya no abre una ventana emergente que además de distraer la atención quitaba el enfoque del mouse
Midiendo velocidad
No solo la ventana ha desaparecido. Como lo dije, la lista de impresoras se obtiene más rápido. Midamos esto para que no solo se quede en palabras.
Con 3.5.1:
C:\Users\parzibyte\Desktop\medir_plugin>curl -w "@formato.txt" -s "http://localhost:8000/version"
{"version":"3.5.1","plataforma":"Desktop","sistemaOperativo":"windows"}
time_namelookup: 0.000024s
time_connect: 0.000843s
time_appconnect: 0.000000s
time_pretransfer: 0.000883s
time_redirect: 0.000000s
time_starttransfer: 0.001114s
----------
time_total: 0.001201s
C:\Users\parzibyte\Desktop\medir_plugin>curl -w "@formato.txt" -s "http://localhost:8000/impresoras"
["MiImp"]
time_namelookup: 0.000026s
time_connect: 0.001193s
time_appconnect: 0.000000s
time_pretransfer: 0.001245s
time_redirect: 0.000000s
time_starttransfer: 0.767491s
----------
time_total: 0.767675s
Fíjate en time_total de GET /impresoras que es 0.767675s
Con 3.5.2:
C:\Users\parzibyte\Desktop\medir_plugin>curl -w "@formato.txt" -s "http://localhost:8000/version"
{"version":"3.5.2","plataforma":"Desktop","sistemaOperativo":"windows"}
time_namelookup: 0.000028s
time_connect: 0.000924s
time_appconnect: 0.000000s
time_pretransfer: 0.000969s
time_redirect: 0.000000s
time_starttransfer: 0.001185s
----------
time_total: 0.001262s
C:\Users\parzibyte\Desktop\medir_plugin>curl -w "@formato.txt" -s "http://localhost:8000/impresoras"
["MiImp"]
time_namelookup: 0.000025s
time_connect: 0.000835s
time_appconnect: 0.000000s
time_pretransfer: 0.000940s
time_redirect: 0.000000s
time_starttransfer: 0.469937s
----------
time_total: 0.470099s
C:\Users\parzibyte\Desktop\medir_plugin>
Y el time_total es 0.470099
En conclusión:
El plugin 3.5.1 tardaba 0.76 segundos en obtener las impresoras. El plugin 3.5.2 tarda 0.47 segundos y no abre ninguna ventana
Obviamente esto fue medido en mi computadora, pero no mires los segundos, mira el porcentaje de mejora que es de aproximadamente el 38 %
Si no sabes para qué sirve este plugin yo te cuento que te permite imprimir en impresoras térmicas principalmente desde JavaScript dentro del navegador web pero también desde cualquier otro lenguaje de programación.
Es compatible con mi diseñador de tickets, con varios sistemas de ventas, de restaurantes y disponible para cualquier programador que quiera imprimir texto, imágenes, códigos qr, de barras, etcétera.
Más información: https://parzibyte.me/blog/posts/plugin-impresoras-termicas-version-3/
Y documentación oficial: https://parzibyte.me/http-esc-pos-desktop-docs/es/