Exemplo n.º 1
0
        private void CallbackState()
        {
            byte[] data = { };
            try
            {
                _serialPort.DataReceived -= _serialPortDataReceived;
                if (!_serialPort.IsOpen)
                {
                    _serialPort.Open();
                }

                if (_serialPort.IsOpen)
                {
                    data = ConvertHexToByte("0C");
                    _serialPort.Write(data, 0, data.Length);
                    Thread.Sleep(100);
                    CallState(_serialPort);
                }
            }
            catch (Exception exception)
            {
                if (_serialPort.IsOpen)
                {
                    _serialPort.Close();
                }
                _invoke = CashState.Unavailable;
                Console.WriteLine("exception : " + exception);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// current status device
        /// </summary>
        /// <returns>string status</returns>
        public CashState CurrentStatus()
        {
            byte[] data = { };
            try
            {
                _serialPort.DataReceived -= _serialPortDataReceived;
                if (!_serialPort.IsOpen)
                {
                    _serialPort.Open();
                }

                if (_serialPort.IsOpen)
                {
                    CallbackState();
                }
            }
            catch (Exception exception)
            {
                if (_serialPort.IsOpen)
                {
                    _serialPort.Close();
                }
                _invoke = CashState.Unavailable;
                Console.WriteLine("exception : " + exception);
            }
            Console.WriteLine("current state : " + _invoke);
            _serialPort.DataReceived += _serialPortDataReceived;
            return(_invoke);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Enabled Devices.
        /// </summary>
        /// <returns>Command 3E return status</returns>
        public CashState Open()
        {
            Byte[] data = { };
            try
            {
                _serialPort.DataReceived -= _serialPortDataReceived;
                if (!_serialPort.IsOpen)
                {
                    _serialPort.Open();
                }
                if (_serialPort.IsOpen)
                {
                    //Enable Device
                    data = ConvertHexToByte("3E");
                    _serialPort.Write(data, 0, data.Length);
                    //Initial state
                    _accept += Acknowledge;

                    Thread.Sleep(100);
                    CallbackState();
                    if (_invoke.Equals(CashState.Ready))
                    {
                        _serialPort.DataReceived += _serialPortDataReceived;
                    }
                }
            }
            catch (Exception exception)
            {
                if (_serialPort.IsOpen)
                {
                    _serialPort.Close();
                }
                _invoke = CashState.Unavailable;
                Console.WriteLine("exception : " + exception);
            }
            return(_invoke);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Disabled devices.
        /// </summary>
        /// <returns>Boolean</returns>
        public CashState Close()
        {
            Byte[] data = { };
            try
            {
                if (!_serialPort.IsOpen)
                {
                    _serialPort.Open();
                }
                if (_serialPort.IsOpen)
                {
                    //Disabled Device
                    data = ConvertHexToByte("5E");
                    _serialPort.Write(data, 0, data.Length);
                    //Initial state
                    Thread.Sleep(100);
                    CallbackState();
                }

                _serialPort.DiscardOutBuffer();
                _serialPort.DiscardInBuffer();
                _serialPort.Close();
            }
            catch (Exception exception)
            {
                if (_serialPort.IsOpen)
                {
                    _serialPort.Close();
                }
                _invoke = CashState.Unavailable;
                Console.WriteLine("exception : " + exception);
            }
            _accept -= Acknowledge;
            _serialPort.DataReceived -= _serialPortDataReceived;
            return(_invoke);
        }
Exemplo n.º 5
0
        private void GetState(string data)
        {
            switch (data.ToUpper())
            {
            case "00":
                _invoke = CashState.Poweroff;
                break;

            case "20":
                _invoke = CashState.MotorFailure;
                break;

            case "21":
                _invoke = CashState.CheckSumError;
                break;

            case "22":
                _invoke = CashState.BillJam;
                break;

            case "23":
                _invoke = CashState.BillRemove;
                break;

            case "24":
                _invoke = CashState.StackerOpen;
                break;

            case "25":
                _invoke = CashState.SensorProblem;
                break;

            case "27":
                _invoke = CashState.BillFish;
                break;

            case "29":
                Console.WriteLine("Bill Reject");
                break;

            case "2A":
                Console.WriteLine("Invalid Command");
                break;

            case "2E":
                Console.WriteLine("Reserved");
                break;

            case "2F":
                Console.WriteLine("Response when Error Status is Exclusion");
                break;

            case "3E":
                _invoke = CashState.Ready;
                break;

            case "5E":
                _invoke = CashState.Unavailable;
                break;

            default:
                _invoke = CashState.Unknown;
                break;
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// setter state
 /// </summary>
 /// <param name="state">data state</param>
 public CashEvent(CashState state)
 {
     _state = state;
 }