Esempio n. 1
0
        internal void SendScenario(ScenarioData scenario)
        {
            var env = new Envelope()
            {
                Content = JsonConvert.SerializeObject(scenario),
                Type    = typeof(ScenarioData).Name
            };

            _tcpListner.Send(JsonConvert.SerializeObject(env));
        }
Esempio n. 2
0
        public void HandleRequests(string json, Socket handler)

        {
            var request = JsonConvert.DeserializeObject <JsonPackage>(json);

            switch (request.Type)
            {
            case ("AddRequest"):
                EmployeeDatabaseController.AddNewEmployee((request.Content.ToObject <EmployeeRequest>()).Employee);
                break;

            case ("RemoveRequest"):
                EmployeeDatabaseController.RemoveEmployee((request.Content.ToObject <EmployeeRequest>()).Employee);
                break;

            case ("GetOneRequest"):
                String toSend = EmployeeDatabaseController.GetOneEmployee((request.Content.ToObject <EmployeeRequest>()).Employee);
                //socketListener.Send(handler ,toSend);
                break;

            case ("GetEmployees"):

                break;

            case ("CheckPassword"):
                String verification = EmployeeDatabaseController.CheckPassword((request.Content.ToObject <EmployeeRequest>()).Employee);
                socket.Send(handler, verification);


                break;
            }
        }
Esempio n. 3
0
        public void SendMessage(EQOAClient ThisClient)
        {
            //Get Packet Length, need to include the 4 bytes for the length also
            int Length = ThisClient.ResponsePacket.Count + 4;

            //Add to beginning of List
            ThisClient.ResponsePacket.InsertRange(0, Utilities.ReturnByteArray(Length));

            AsynchronousSocketListener.Send(ThisClient.Handler, ThisClient.ResponsePacket.ToArray());

            //Clear messages
            ThisClient.ClearMessages();
        }
 public void ProcessUniversalGetPacketCommand(string messageData, ClientWorkObject client, AsynchronousSocketListener server)
 {
     server.Send(client, "Unsupported Request");
 }
Esempio n. 5
0
        /// <summary>
        /// A new measurment has been recieved from the HRM.
        /// </summary>
        /// <param name="response">The response object recieved by the ANT+ driver. This contains the status of the HRM device and the value measured by the sensor.</param>
        static void ChannelResponse(ANT_Response response)
        {
            try
            {
                switch ((ANT_ReferenceLibrary.ANTMessageID)response.responseID)
                {
                case ANT_ReferenceLibrary.ANTMessageID.RESPONSE_EVENT_0x40:
                {
                    switch (response.getChannelEventCode())
                    {
                    case ANT_ReferenceLibrary.ANTEventID.EVENT_RX_SEARCH_TIMEOUT_0x01:
                    {
                        Console.WriteLine("Search Timeout");
                        break;
                    }

                    case ANT_ReferenceLibrary.ANTEventID.EVENT_RX_FAIL_0x02:
                    {
                        Console.WriteLine("Rx Fail");
                        break;
                    }

                    case ANT_ReferenceLibrary.ANTEventID.EVENT_TRANSFER_RX_FAILED_0x04:
                    {
                        Console.WriteLine("Burst receive has failed");
                        break;
                    }

                    case ANT_ReferenceLibrary.ANTEventID.EVENT_CHANNEL_CLOSED_0x07:
                    {
                        // This event should be used to determine that the channel is closed.
                        Console.WriteLine("Channel Closed");
                        Console.WriteLine("Unassigning Channel...");
                        if (channel0.unassignChannel(500))
                        {
                            Console.WriteLine("Unassigned Channel");
                            Console.WriteLine("Press enter to exit");
                        }
                        break;
                    }

                    case ANT_ReferenceLibrary.ANTEventID.EVENT_RX_FAIL_GO_TO_SEARCH_0x08:
                    {
                        Console.WriteLine("Go to Search");
                        break;
                    }

                    case ANT_ReferenceLibrary.ANTEventID.EVENT_CHANNEL_COLLISION_0x09:
                    {
                        Console.WriteLine("Channel Collision");
                        break;
                    }

                    default:
                    {
                        Console.WriteLine("Unhandled Channel Event " + response.getChannelEventCode());
                        break;
                    }
                    }
                    break;
                }

                case ANT_ReferenceLibrary.ANTMessageID.BROADCAST_DATA_0x4E:
                case ANT_ReferenceLibrary.ANTMessageID.ACKNOWLEDGED_DATA_0x4F:
                case ANT_ReferenceLibrary.ANTMessageID.BURST_DATA_0x50:
                case ANT_ReferenceLibrary.ANTMessageID.EXT_BROADCAST_DATA_0x5D:
                case ANT_ReferenceLibrary.ANTMessageID.EXT_ACKNOWLEDGED_DATA_0x5E:
                case ANT_ReferenceLibrary.ANTMessageID.EXT_BURST_DATA_0x5F:
                {
                    // Send the recieved packet to Unity
                    AsynchronousSocketListener.Send(response.messageContents[8].ToString());

                    Console.WriteLine(response.messageContents[8]);
                    Console.Write(BitConverter.ToString(response.getDataPayload()) + Environment.NewLine);          // Display data payload

                    break;
                }

                default:
                {
                    Console.WriteLine("Unknown Message " + response.responseID);
                    break;
                }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Channel response processing failed with exception: " + ex.Message);
            }
        }