private void finish(EventSocketSendProgram eventData) { var ticket = eventData.Ticket; string counterID = ""; counterID = ticket.counter_id; var objAudioFinish = new ObjectAudio("", "", "", "", counterID); EventAudio eventSendFinish = new EventAudio(eventData.Action, null, null, objAudioFinish); DataReceived(eventSendFinish); }
public void Received(string str) { var handle = str.Split(' ')[0].Trim('/'); var data = str.Remove(0, str.IndexOf(' ')); log.sendLog("handle " + handle); ObjectSend objSend = null; switch (handle) { case ActionTicket.INITIAL: if (dicAllCounters.Count() == 0) { string action1 = ActionTicket.INITIAL; Initial dataUser = JsonConvert.DeserializeObject <Initial>(data); addDicSrcCounter(dataUser.Services, dataUser.Counters); objSend = setDataToObjectSend(dataUser, null, ActionTicket.INITIAL); EventSocketSendProgram even = new EventSocketSendProgram(action1, dicAllServices, dicAllCounters, objSend); Thread.Sleep(2000); DataReceived(even); } break; case ActionTicket.TICKET_ACTION: var tkAc = JsonConvert.DeserializeObject <TicketAction>(data); string action = tkAc.Action; if (ActionTicket.ACTION_CREATE.Equals(action) || ActionTicket.ACTION_CANCEL.Equals(action)) { InitialCreate dataz = JsonConvert.DeserializeObject <InitialCreate>(data); Initial tickets = new Initial(); tickets.Tickets.Add(dataz.ticket.Id, dataz.ticket); objSend = setDataToObjectSend(tickets, null, action); } else { objSend = setDataToObjectSend(null, tkAc, tkAc.Action); } if (!ActionTicket.ACTION_CREATE.Equals(action)) { EventSocketSendProgram even1 = new EventSocketSendProgram(action, null, null, objSend); DataReceived(even1); } break; default: break; } }
void call(EventSocketSendProgram eventData) { if (eventData != null && eventData.Ticket != null && !string.IsNullOrWhiteSpace(eventData.Ticket.id)) { var ticketID = eventData.Ticket.id; if (!checkExistNum(ticketID)) { var counterID = eventData.Ticket.counter_id; var counterNum = dicCounter[counterID].Data.Cnum; var objAudio = new ObjectAudio(eventData.Ticket.cnum, counterNum + "", ticketID, eventData.Ticket.lang, counterID); mQueue.WaitOne(); this.sendQueueByNum.Enqueue(objAudio); mQueue.ReleaseMutex(); EventAudio eventSendFinish = new EventAudio(eventData.Action, null, null, objAudio); DataReceived(eventSendFinish); } } }
private void ReciveDataSocket(EventSocketSendProgram eventData) { try { switch (eventData.Action) { case ActionTicket.INITIAL: dicCounter = sortCounter(eventData.DicAllCounter); EventAudio eventSend = new EventAudio(ActionTicket.INITIAL, eventData.DicAllCounter, eventData.DicServing, null); Thread.Sleep(2000); DataReceived(eventSend); return; case ActionTicket.ASSETS: voice = eventData.Voice; loadAudio(urlFolderAudio); Thread.Sleep(200); return; case ActionTicket.ACTION_CALL: call(eventData); return; case ActionTicket.ACTION_RECALL: call(eventData); return; case ActionTicket.ACTION_CANCEL: finish(eventData); return; case ActionTicket.ACTION_MOVE: finish(eventData); return; case ActionTicket.ACTION_FINISH: finish(eventData); return; case ActionTicket.RELOAD: SetThreadExecutionState(ES_CONTINUOUS); tPlayAudio.Abort(); EventAudio eventSendRe = new EventAudio(ActionTicket.RELOAD, null, null, null); DataReceived(eventSendRe); return; default: return; } } catch { } }
public void Received(string str) { var handle = str.Split(' ')[0].Trim('/'); var data = str.Remove(0, str.IndexOf(' ')); Console.WriteLine("handle " + handle); try { switch (handle) { case ActionTicket.INITIAL: if (isInitial) { Initial dataUser = JsonConvert.DeserializeObject <Initial>(data); EventSocketSendProgram eventSend = new EventSocketSendProgram(ActionTicket.INITIAL, null, dataUser.Counters, dataUser.Serving, null); Thread.Sleep(2000); DataReceived(eventSend); } break; case ActionTicket.ASSETS: if (isInitial) { isInitial = false; var voice = JsonConvert.DeserializeObject <List <Asset> >(data); if (voice.Count() > 0) { EventSocketSendProgram eventSend1 = new EventSocketSendProgram(ActionTicket.ASSETS, null, null, null, voice[0].voice); DataReceived(eventSend1); } } break; case ActionTicket.TICKET_ACTION: var tkAc = JsonConvert.DeserializeObject <TicketActionRecive>(data); string action = tkAc.action; switch (action) { case ActionTicket.ACTION_FEEDBACK: break; case ActionTicket.ACTION_MOVE: Ticket tk = tkAc.ticket; tk.counter_id = tkAc.counter_id; EventSocketSendProgram eventSendMove = new EventSocketSendProgram(action, tk, null, null, null); DataReceived(eventSendMove); break; case ActionTicket.ACTION_FINISH: case ActionTicket.ACTION_CANCEL: case ActionTicket.ACTION_RECALL: case ActionTicket.ACTION_CALL: string counterID = tkAc.ticket.counter_id; string cnum = tkAc.ticket.cnum; string ticketID = tkAc.ticket.id; EventSocketSendProgram eventSendTK = new EventSocketSendProgram(action, tkAc.ticket, null, null, null); DataReceived(eventSendTK); break; default: break; } break; case ActionTicket.RELOAD: isReload = true; SetThreadExecutionState(ES_CONTINUOUS); Thread.Sleep(500); EventSocketSendProgram eventSendReload = new EventSocketSendProgram(ActionTicket.RELOAD, null, null, null, null); DataReceived(eventSendReload); CloseSocket(); // khi close sẽ tự mở break; default: break; } } catch (Exception ex) { Console.WriteLine("Loi send data" + ex.Message); } }
private static void ReciveDataSocket(EventSocketSendProgram eventData) { int command = 0; switch (eventData.Action) { case ActionTicket.INITIAL: if (dicCounter.Count() == 0 && dicService.Count() == 0) { InitKeyBoardSend(eventData.DicCounter, eventData.DicService); } return; case ActionTicket.ACTION_CREATE: // không làm gì break; case ActionTicket.ACTION_CALL: command = (int)CheckByteSend.BYTE_COMMAND.NEXT_COMMAND; break; case ActionTicket.ACTION_RECALL: command = (int)CheckByteSend.BYTE_COMMAND.RECALL_COMMAND; break; case ActionTicket.ACTION_RESTORE: command = (int)CheckByteSend.BYTE_COMMAND.RESTORE_COMMAND; break; case ActionTicket.ACTION_MOVE: command = (int)CheckByteSend.BYTE_COMMAND.FORWARD_COMMAND_COUNTER; command = (int)CheckByteSend.BYTE_COMMAND.FORWARD_COMMAND_SERVICE; break; case ActionTicket.ACTION_CANCEL: command = (int)CheckByteSend.BYTE_COMMAND.DELETE_COMMAND; break; case ActionTicket.ACTION_FINISH: command = (int)CheckByteSend.BYTE_COMMAND.FINISH_COMMAND; break; default: //bug break; } if (eventData.ObjSend != null) { string counterID = eventData.ObjSend.counter_id; int indexService = getIndexService(eventData.ObjSend.service_id, counterID); if (indexService != -1) { string data = eventData.ObjSend.cnum; var address = dicCounterKeyboard.FirstOrDefault(d => d.Value.CounterID == counterID).Key; if (address > 0) { var byteRes = modBus.BuildText(ActionTicket.DEVICE_ID, address, command, data, indexService); serialPort.SendData(byteRes); } else { //bug } } else { //truyền lỗi xuống port } } resByte = null; }