Blog de conocimiento gratuito: linux, programación, open source, bases de datos, android, frameworks, web e informática en general.
Hoy vamos a ver cómo imprimir tickets en una impresora térmica con Node.js usando JavaScript del lado del servidor. Me imagino que con esto se podrá imprimir usando express, Electron o cualquier otra cosa.
Toma en cuenta que esto imprimirá en el servidor y que funcionará perfectamente para sistemas locales, pero si vas a subirlo al servidor puede que quieras revisar cómo imprimir del lado del cliente así como ya expliqué el problema que tenemos con PHP.
Hace algún tiempo y también hoy me apareció el error de ERR_OSSL_EVP_UNSUPPORTED. Esto es porque se está usando la última versión de Node (me ocurrió con la versión 18 pero no me pasaba con la 16) y por defecto no permite que se usen funciones de openssl que ahora son “inseguras”.
La solución simple es exportar la variable de NODE_OPTIONS
pasando --openssl-legacy-provider
. Todos dicen eso, pero no dicen cómo hacerlo específicamente en Windows. Por ejemplo, yo lo intenté con:
npm run serve --openssl-legacy-provider
Pero no es así. Así que veamos cómo solucionar el error ERR_OSSL_EVP_UNSUPPORTED en Windows al usar Node y NPM.
En este post de JavaScript vamos a mostrar el tiempo relativo transcurrido o faltante entre 2 fechas de manera relativa usando Intl.RelativeTimeFormat
.
Básicamente vamos a mostrar el “hace 2 minutos”, “hace 2 horas,” “dentro de 1 día”, “dentro de un mes” pero siendo capaces de cambiar el idioma.
De este modo podremos mostrar el tiempo que falta o el tiempo que ha transcurrido con JavaScript en cualquier idioma.
En este post vamos a ver cómo realizar la conexión de Telegram con MySQL a través de un bot, de modo que podamos guardar y consultar datos de una base de datos de MySQL desde Telegram.
Con lo que veremos vamos a poder insertar datos en una tabla de MySQL desde Telegram y cualquier chat (siempre y cuando nuestro bot pueda leer los mensajes).
También vamos a ver cómo guardar el nombre del usuario y la fecha de envío del mensaje. Será un CRUD (sin Update) básico pero puedes partir del mismo para hacer cosas más específicas.
Hoy vamos a ver cómo agregar un globo o bocadillo a cualquier imagen con un bot de Telegram usando Node y JavaScript para dicha tarea.
Una cosa será el bot de Telegram y otra el procesamiento de la imagen. Podemos usar ambas cosas por separado y mejorar cada una de ellas o combinarlas.
Técnicamente hablando vamos a escuchar si el usuario envía una imagen en Telegram (ya sea en grupos o en privado) y una vez que la envíe veremos el texto que la acompaña.
En caso de que el texto coincida con la orden vamos a combinar las 2 imágenes, redimensionando el globo o bocadillo según sea el caso y después vamos a responder con esa imagen ya modificada.
Nota: esto fue hecho por diversión para hacer memes y comentar rápidamente en Facebook o similares, aunque se pueden sacar varias cosas de aquí.
En el corto post de hoy veremos cómo leer variables del entorno con Node.js desde un archivo.
Normalmente estas environment variables se guardan en un archivo .env
que no distribuimos junto con el repositorio (mejor distribuimos un .env.example
) y que cada programador debe crear al momento de clonar el proyecto.
Veamos entonces cómo leer cosas secretas como claves API, tokens, etcétera de un archivo .env en Node con JavaScript usando el paquete dotenv.
En el artículo de hoy te enseñaré a calcular la distancia en kilómetros que existe entre 2 puntos geográficos o 2 coordenadas, tomando las longitudes y latitudes.
Básicamente vamos a saber cuál es la medida que separa ambos puntos obtenidos con el GPS usando la fórmula de Haversine en JavaScript, y esto nos funcionará en el navegador así como en Node.js.
Con esto podríamos ordenar los lugares cercanos dependiendo de la ubicación del usuario, por ejemplo.
Ya escribí un artículo indicando cómo usar Sublime POS 3 en internet de manera resumida, pero en este post te enseñaré una pequeña guía específica de cómo subirlo a un servidor con Linux Ubuntu alojado en DigitalOcean.
Te recomiendo leer primero el post que cité anteriormente y después volver a este. También te sugiero que veas cómo compilar el código fuente para que entiendas los conceptos aquí mostrados.