Plugin para impresora térmica

Actualización plugin impresoras: PowerShell, ping en versión y base de datos

En estos días he actualizado mis plugins que permiten la impresión en impresoras térmicas por Bluetooth o USB ya que los estoy preparando para que funcionen correctamente con mi diseñador de tickets.

La última versión de cada plugin ya está publicada en los enlaces correspondientes, aquí solo voy a anunciar cuáles son las nuevas características y cómo es que los programadores pueden aprovecharlas.

Plugin Desktop

Este plugin también se conoce como Plugin v3, pero ahora lo llamo Desktop ya que permite la impresión en sistemas de escritorio como Windows, Raspbian, Debian, etcétera. Las actualizaciones de la API del plugin son:

Al usar GET en la ruta /version puedes obtener la versión del plugin así como la información del sistema operativo. Es útil para hacer un ping al plugin y revisar que esté en ejecución. Te va a devolver un JSON parecido al siguiente:

{"version":"3.2.1","plataforma":"Desktop","sistemaOperativo":"windows"}

Agregada la ruta GET /impresoras_windows_ps para obtener la lista de impresoras pero usando el Powershell. La ruta GET /impresoras sigue funcionando correctamente, pero usa wmic que en algún momento será obsoleto, así que se recomienda migrar.

En este momento, mientras escribo el post, todavía no he migrado los conectores. Los usuarios que tengan ese problema pueden modificar el conector para que apunte a la ruta correcta

Plugin Android

Si tienes una impresora térmica Bluetooth y quieres imprimir desde Android, este es tu plugin. Se hicieron algunas actualizaciones muy parecidas:

Al invocar a GET /version se obtiene la versión del plugin. Útil para hacer un ping. Al hacer una petición a esa ruta, se obtiene algo parecido al siguiente JSON:

{"version":"1.0","plataforma":"Android","sistemaOperativo":"android"}

Se ha modificado la ruta GET /impresoras. Anteriormente, se hacía un escaneo Bluetooth para llenar y mostrar la lista. En varias ocasiones la petición ni siquiera se resolvía, ya sea porque no se puede escanear si el plugin no está en primer plano, el Bluetooth está desactivado, etcétera.

La solución al problema descrito anteriormente fue usar una base de datos como caché. Cuando, desde el plugin se selecciona “Ver impresoras disponibles” y la lista se llena, todos los dispositivos que aparecen ahí serán agregados a la base de datos (usando la MAC como clave, evitando duplicados).

Al invocar a GET /impresoras se lee la base de datos. Entonces, si quieres que la impresora aparezca en la lista, primero debiste ver las impresoras disponibles.

Por cierto, a diferencia de la versión Desktop, en este caso las impresoras devueltas son una lista de objetos, y cada objeto tiene la propiedad name, mac y type.

¿Esto afecta las licencias?

No, no afecta a los usuarios que tienen una licencia. Ellos pueden seguir usando las versiones anteriores o las actuales, la licencia funciona exactamente igual.

Recomiendo actualizar y migrar para ir haciendo pruebas. Además, el método para hacer ping es útil para asegurarse de que el plugin se está ejecutando.

Descargar plugins

Si llegaste aquí y todavía no conoces los plugin de los que hablo, puedes revisarlos a continuación.

Para la versión Desktop puedes ver la presentación en: https://parzibyte.me/blog/2022/09/30/plugin-impresoras-termicas-version-3/ y su descarga en: https://github.com/parzibyte/plugin-impresora-termica-v3/releases/latest

En el caso de la versión Android, revisa su presentación en: https://parzibyte.me/blog/2022/11/01/plugin-gratuito-impresoras-termicas-bluetooth-android/ y descarga en: https://github.com/parzibyte/plugin-impresora-termica-bt-android/releases/latest

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

1 semana hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 semanas hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 semanas hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 semanas hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 semanas hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

2 semanas hace

Esta web usa cookies.