Exemple #1
0
        public static JsonPacket fromJson(string dataString)
        {
            var        mStream    = new MemoryStream(Encoding.Default.GetBytes(dataString));
            var        serializer = new DataContractJsonSerializer(typeof(JsonPacket));
            JsonPacket packet     = (JsonPacket)serializer.ReadObject(mStream);

            return(packet);
        }
        void onTest1(object[] param)
        {
            JsonPacket pk    = JsonPacket.fromJson("{\"f\":\"fun\", \"p\":null}");
            string     pkStr = pk.toJson();

            pk = JsonPacket.fromJson(pkStr);

            //m_socket.remoteCall("fun", new object[]{1, "obj"});
        }
Exemple #3
0
        public void remoteCall(string functionName, object[] param = null)
        {
            JsonPacket packet = new JsonPacket()
            {
                f = functionName, p = param
            };
            string jsonStr = packet.toJson();

            sendMessage(jsonStr);
        }
Exemple #4
0
        private void receiveMessage()
        {
            byte[]   data     = new byte[2048];
            EndPoint endPoint = new IPEndPoint(IPAddress.Parse(m_remoteAddress), m_remotePort);

            while (true)
            {
                try
                {
                    int        rlen   = m_socket.ReceiveFrom(data, ref endPoint);
                    string     msg    = Encoding.Default.GetString(data, 0, rlen);
                    JsonPacket packet = JsonPacket.fromJson(msg);
                    if (m_socketCallback != null)
                    {
                        m_socketCallback(packet.f, packet.p);
                    }
                }
                catch (Exception ex)
                {
                    System.Console.Out.WriteLine(ex.ToString());
                }
            }
        }