En este post te mostraré cómo instalar y compilar lo necesario para montar el código fuente del plugin de impresoras térmicas versión 2 que ya presenté anteriormente y que puedes ver en el siguiente post:
En pocas palabras, ese plugin permite imprimir en impresoras térmicas usando una API de internet, pero al estar en un servidor web necesita una conexión estable a internet, por ello es que ya existe la versión 3.
Al tener el código fuente, tú mismo puedes vender el servicio de la API ESC POS o usarlo para ti mismo modificando los planes y brindándote un plan ilimitado.
Veamos entonces cómo instalar las herramientas necesarias para modificar el código fuente del plugin versión 2.
El plugin utiliza PHP y Go. La API está programada con PHP y el conector o plugin que se comunica con ella utiliza Golang.
Además, se necesita MySQL para la API pues ahí se almacenan los usuarios, administradores y usos del plugin.
El conector sirve prácticamente para cualquier lugar donde Go compile, así que puede funcionar en Android, Mac, Linux y Windows, pero solo lo garantizo en Linux y Windows.
PHP solo es necesario en el servidor, ya sea local o de internet.
Antes de comprar el código fuente toman en cuenta lo siguiente:
El costo del código fuente es de 6000 pesos mexicanos. Para obtenerlo:
Si tienes problemas, hay 3 niveles para buscar errores. El primero es el de la comunicación de JavaScript con el plugin. Puedes inspeccionar las peticiones de red.
El segundo es el del plugin con el servidor de la API. Los errores del plugin estarán en un archivo de registro con el año y mes, en el mismo directorio que el plugin. Ahí aparecerán errores del servidor de la API y del cliente.
El último nivel es el registro de errores de PHP, que estará en php-error.log en donde tienes ubicada la API. Ahí aparecerán los errores que tengan que ver con la API.
A continuación copio y pego el archivo INSTALL que utilizo yo mismo al compilar el plugin y configurar el servidor. Este archivo va junto con el plugin y la API:
Necesitarás tener instalado Go, PHP, MySQL y Composer. También necesitas tener a go y composer en la path para invocarlos desde cualquier lugar. Aquí algunas guías
Para probar que todo funciona, ejecuta:
go version
y debe aparecer algo como: go version go1.17 windows/amd64
composer --version
y debe aparecer algo como: Composer version 2.1.6 2021-08-19 17:11:08
Si aparece algo como no se reconoce como un comando interno o externo programa o archivo por lotes ejecutable es porque no lo agregaste a la PATH correctamente.
Necesitas estar en la carpeta cliente
. Ahora puedes compilar con:
go build -tags desarrollo
go build -tags produccion
Nota: si quieres que no aparezca una ventana, al compilar en Windows agrega -ldflags "-H windowsgui"
por ejemplo go build -tags desarrollo -o plugin_development.exe -ldflags "-H windowsgui"
Nota 2: si quieres compilar para 32 bits, instala Go de 32 bits y antes de compilar establece la PATH así: SET PATH=C:\Go32\go\bin;%PATH% && SET GOROOT=C:\Go32\go\
.
Recuerda que a partir de que la cambies, vas a seguir compilando en 32 bits hasta reiniciar la consola
Recuerda configurar constantes_desarrollo.go
y constantes_produccion.go
con la URL del servidor según sea el caso
Debes estar en la carpeta api
.
composer install
admin/esquema.sql
env.php
con las credenciales necesariasHOST/api/admin/login_admin.php
. En mi caso tengo el sistema en C:\xampp\htdocs\escpos-api\
y para acceder voy a http://localhost/escpos-api/api/admin/login_admin.php
Recuerda que si colocas la API en un servidor debes cambiar ese valor en el plugin de Go y compilar de nuevo
Debes visitar admin/cobrar.php
para descontar el saldo a los usuarios. Debes hacer eso el 1 de cada mes.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.