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.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *