示例#1
0
        public override async Task <bool> OnPush(IDataProtocol ps)
        {
            var more = ps as DefaultDataProtocol;

            switch ((EOps)more.Ops)
            {
            case EOps.Push:
            {
                var proto = PiSerializer.Deserialize <PushProto>(more.Data);

                // ¹ã²¥Àý×Ó
                return(await BroadcastAsync(new DefaultDataProtocol
                    {
                        Ops = (short)EOps.Push,
                        Data = PiSerializer.Serialize(new PushProto
                        {
                            Message = ID + " : " + proto.Message
                        })
                    }));
            }

            default:
                return(RpcResult.Failure);
            }
        }
示例#2
0
        public override async Task <bool> OnPush(IDataProtocol ps)
        {
            var more = ps as DefaultDataProtocol;

            switch ((EOps)more.Ops)
            {
            case EOps.Push:
            {
                var proto = PiSerializer.Deserialize <PushProto>(more.Data);
                return(true);
            }

            default:
                return(false);
            }
        }
示例#3
0
        public override async Task <RpcResult> OnRequest(IDataProtocol rq)
        {
            var more = rq as DefaultDataProtocol;

            switch ((EOps)more.Ops)
            {
            case EOps.Reqeust:
            {
                var proto = PiSerializer.Deserialize <RequestProto>(more.Data);
                return(RpcResult.MakeSuccess(new ResponseProto
                    {
                        Message = $"Response from server : {proto.Message}"
                    }));
            }

            default:
                return(RpcResult.Failure);
            }
        }