gecos-mobile-print-web
v0.1.7
Published
Parte web del módulo de Impresión Android de Gecos
Downloads
6
Readme
Gecos Mobile Print Web
Descripción
Librería JavaScript parte del módulo de impresión de móvil de Gecos. Es la intermediaria entre las app web que la utilicen y el servicio nativo Android que se comunica con la impresora.
Se puede ver la especificación de la API REST de comunicación aquí.
Instalación:
npm install gecos-mobile-print-web
Forma de instanciación:
// se debe indicar puerto en que está corriendo el Servicio Android
const lib = new PrinterManager({ port: X });
Funcionalidades
Ping
Envía un ping para comprobar que el servicio android está disponible en el dispositivo.
let serviceAvailable = false;
try {
serviceAvailable = await printLib.ping();
} catch (error) {
// no se pudo conectar al servicio por lo que serviceAvailable quedará en false
}
Check
Permite realizar un chequeo de conexión a una determinada impresora para comprobar disponibilidad de la misma. NO chequea status, solo conexión.
const checkResult = await lib.check({
connectionMode: 'BLUETOOTH',
driver: 'ZEBRA',
language: 'CPCL',
printerBrand: 'ZEBRA',
printerModel: 'ZQ320',
printerBluetoothMAC: 'AA:BB:CC:DD:EE:FF',
});
Permite realizar un trabajo de impresión. Consiste en la conexión a la impresora, el chequeo de status (salvo que se indique su salteo expresamente) y el envío de la impresión.
const printResult = await lib.print({
dataToPrint: 'raw printer code in language',
printerConfiguration: {
connectionMode: 'BLUETOOTH',
driver: 'ZEBRA',
language: 'CPCL',
printerBrand: 'ZEBRA',
printerModel: 'ZQ320',
printerBluetoothMAC: 'AA:BB:CC:DD:EE:FF',
},
jobConfiguration: {
checkStatusPreviousToPrint: true,
checkSuccessPrint: true,
}
});
Logs
Realiza una consulta a los logs del backend Android del módulo. El siguiente ejemplo obtiene logs con el tag
SERVICE con level
mínimo WARNING, considerando solamente los últimos 100 registros y los retorna en formato string plano.
const logsResult = await lib.logs({
filters: 'SERVICE:W',
options: '-t 100',
destination: 'return'
});