示例#1
0
        public static Messages.Response EpaymentProcess(Messages.Request request)
        {
            float  amount   = request.Parameters.Value <float>("amount");
            string device   = request.Parameters.Value <string>("device");
            string protocol = request.Parameters.Value <string>("protocol");
            string port     = request.Parameters.Value <string>("port");
            string data     = request.Parameters.Value <string>("data");
            int    pos      = request.Parameters.Value <int>("pos");

            PaymentRequest paymentRequest = new PaymentRequest(amount);

            ConcertProtocol concertProtocol = ConcertProtocol.find(protocol);

            concertProtocol.Terminal = new SerialTerminal(port);

            Issue issue = concertProtocol.SendPaymentRequest(paymentRequest);

            if (issue.Type == Issue.SUCCESS)
            {
                return(request.Success(issue.Response));
            }
            else
            {
                return(request.Failure("", issue.Message));
            }
        }
示例#2
0
        public static Messages.Response EpaymentPing(Messages.Request request)
        {
            string device   = request.Parameters.Value <string>("device");
            string port     = request.Parameters.Value <string>("port");
            string protocol = request.Parameters.Value <string>("protocol");

            ConcertProtocol concertProtocol = ConcertProtocol.find(protocol);

            concertProtocol.Terminal = new SerialTerminal(port);
            concertProtocol.SendTest();

            return(request.Success(true));
        }
示例#3
0
        public static Messages.Response EpaymentTest(Messages.Request request)
        {
            Concert2Protocol protocol = new Concert2Protocol(new SerialTerminal(""));

            string payload = request.Parameters.Value <string>("payload");

            payload += ConcertProtocol.FromCharCode(ConcertProtocol.ETX).ToString();

            string message = ConcertProtocol.FromCharCode(ConcertProtocol.STX);

            message += payload;
            message += ConcertProtocol.FromCharCode(ConcertProtocol.LRC(payload));

            protocol.PrepareResponse(ConcertProtocol.ToBytes(message));

            return(request.Success("OK"));
        }
示例#4
0
 public static Messages.Response EpaymentSupportedProtocols(Messages.Request request)
 {
     return(request.Success(ConcertProtocol.SupportedProtocols()));
 }