2.0.1 • Published 6 years ago

sdkn-scradvance v2.0.1

Weekly downloads
3
License
ISC
Repository
-
Last release
6 years ago

Modulo Para Billetero SCR Advance @ci24/scradvance

Descripcion

Modulo que sirve para manejar el Billetero MEI SCRAdvance usado en los puntos de pago de Controles Inteligentes

Instalación

npm install --save @ci24/scradvance

Como usarlo

var billetero = require('@ci24/scradvance');
var callbackEvento = null;

Para Escuchar los Eventos que emite el billetero Usar lo siguiente

billetero.on('EVENT',function (data)
{
    //console.log(JSON.stringify(data));

    if (callbackEvento != null)
        callbackEvento(data.cmd, data.data);
});

###Funciones

Establecer Comunicacion: Usar la siguiente funcion

billetero.PortListener({port:'/dev/ttyUSB0',baudrate:9600},function (err,data) {
    if(err !=null) {
        console.log("Error en port listener");
    }
    else {
        console.log(data);

     }

si el billetero establece comunicacion, se muestra el mensaje --> CHECK OK!!

Recuerde que baudrate siempre es 9600

Habilitar Lectura de Billetes: Para recibir billetes debera habilitar el billetero con la siguiente funcion.

 billetero.READBILLS(null,function (err,data) {
      if(err!=null)
           console.log("error");
      else
           console.log(data);
      });

Si se habilita de manera adecuada se mostrara el siguiente mensaje -> OK READBILLS

Deshabilitar Billetero: Para dejar de recibir billetes usar la siguiente funcion.

billetero.DISABLE(null,function (err,data) {
    if(err !=null) {
        console.log("Error");
    }
    else {
        console.log( data);
    }
    
});

Si se deshabilita de manera correcta se envia el siguiente mensaje -> OK DISABLED

RECICLAR BILLETES: Para enviar billetes al reciclador o cashbox use la siguiente funcion

 billetero.SENDBILLS(null,function (err,data) {
                    if(err!=null)
                    {console.log("error");}
                    else
                    {console.log(data);}
                    })

El reciclador admite dos denominaciones, las demas se iran al cashbox. Si el billete llega al reciclador se mostrara el siguiente mensaje -> OK RECICLADOR Si el billete llega al cashbox se mostrara el siguiente mensaje -> OK CASHBOX

RECHAZAR BILLETE: Para que el billetero rechaze el billete introducido usar la siguiente funcion

   billetero.RETURNBILL(null,function (err,data) {
      if(err!=null)
         {console.log("error");}
      else
         {console.log(data);}
         })

Si la funcion se realiza con exito, se mostrara el siguiente mensaje -> OK RETURN

INVENTARIO: Esta funcion devolvera la cantidad de billetes que se encuentran en el reciclador, los cuales son los billetes que se pueden dispensar en caso de efectuar un pago

   billetero.INVENTORY(null,function (err,data)
      {
       if(err!=null)
          console.log("error");
          else
              console.log(JSON.stringify(data));
  
      });

Si la funcion se cumple, se mostrara la cantidad de billetes de las dos denominaciones

DISPENSAR BILLETES: Para dispensar billetes use la siguiente funcion

  billetero.PAYLIST([{'V':'2000','C':1},{'V':'5000','C':1}],function (err,data) {
          if(err !=null) {
              console.log("Error Pay");
          }
          else {
              console.log(data);
          }
      });

Si el pago se efectua se mostrara el siguiente mensaje -> OK PAYLIST En el ejemplo se muestra el pago de 1 billete de $2000 y 1 billete $5000.

###EVENTOS

CHECK: Indica que se establecio la comunicacion y esta listo para ser usado.

ESCROW: Este evento se dispara cuando se ingresa un billete. Para saber que billete ha sido ingresado se puede usar el siguiente ejemplo

case 'ESCROW':
var moneda = data.moneda;
console.log("Billete  de $"+moneda + " En Escrow");
break;

STACK: Cuando el billete esta en SCROW y se usa la funcion SENDBILLS y una vez el billete llego a su destino se emite el evento STACK para indicar que el billete se apilo de manera correcta.

RETURNED: Cuando el billete esta en SCROW y se usa la funcion RETURNBILLS se emite el evento RETURNED indicando que el billete se ha devuelto

DISPENSED: Cuando la dispensacion de billetes ha finalizado se emite el evento DISPENSED, indicando que todos los billetes fueron dispensados y tomados por el cliente.

ERROR: el evento ERROR se emite cuando el billetero presenta inconvenientes, el evento va acompañado de un dato como se muestra a continuacion

 case 'ERROR':
            var error=data.err;
            if(error==1)
            {
                console.log("Error en el cashbox, reviselo");
            }

El valor del dato puede variar, a continuacion se muestran los posibles errores

error=1 : El Cashbox no se encuentra conectado o esta en mal estado.

error=2 : El Direccionador del Billetero o El Reciclador no estan conectados o presentan problemas, El direccionador se encuentra entre el lector de billetes y el Reciclador.

error=3 : Atasco, Se emite este error cuando algunas de las vias se encuentran atascadas, sea en el cashbox reciclador o scrow, para solucionar este inconveniente se debe apagar el billetero y extraer los componentes del billetero en busca de algun billete atascado, roto o algun objeto que obstruya el paso de los billetes.

error=4 : Cashbox Lleno, se emite este evento cuando el cashbox esta lleno de billetes, se debe extraer y retirar los billetes