private void WsClient_Subscribe(Params param) { byte[] msg; if (param is TickerParams) { TickerParams tickerParams = ((TickerParams)param); var message = new protobuf.ws.SubscribeTickerChannelRequest { CurrencyPair = tickerParams.symbol }; if (tickerParams.frequency != null) { message.Frequency = (float)tickerParams.frequency; } using (MemoryStream msgStream = new MemoryStream()) { ProtoBuf.Serializer.Serialize(msgStream, message); msg = msgStream.ToArray(); } } else { throw new NotImplementedException(); } var meta = new protobuf.ws.WsRequestMetaData { RequestType = protobuf.ws.WsRequestMetaData.WsRequestMsgType.SubscribeTicker }; protobuf.ws.WsRequest request = new protobuf.ws.WsRequest { Meta = meta, Msg = msg }; sendRequest(request); }
private void WsClient_Subscribe(Params param) { // creating request protobuf.ws.WsRequestMetaData meta; protobuf.ws.WsRequestMetaData.WsRequestMsgType requestType; string token; byte[] msg; if (param is TickerParams) { TickerParams tickerParams = ((TickerParams)param); var message = new protobuf.ws.SubscribeTickerChannelRequest { CurrencyPair = tickerParams.symbol }; if (tickerParams.frequency != null) { message.Frequency = (float)tickerParams.frequency; } using (MemoryStream msgStream = new MemoryStream()) { ProtoBuf.Serializer.Serialize(msgStream, message); msg = msgStream.ToArray(); requestType = protobuf.ws.WsRequestMetaData.WsRequestMsgType.SubscribeTicker; token = "Ticker_" + tickerParams.symbol + " channel"; } } else if (param is TradeParams) { TradeParams tradeParams = ((TradeParams)param); var message = new protobuf.ws.SubscribeTradeChannelRequest { CurrencyPair = tradeParams.symbol }; using (MemoryStream msgStream = new MemoryStream()) { ProtoBuf.Serializer.Serialize(msgStream, message); msg = msgStream.ToArray(); requestType = protobuf.ws.WsRequestMetaData.WsRequestMsgType.SubscribeTrade; token = "Trade_" + tradeParams.symbol + " channel"; } } //here you can make your trade decision else { throw new NotImplementedException(); } meta = new protobuf.ws.WsRequestMetaData { RequestType = requestType, Token = token }; protobuf.ws.WsRequest request = new protobuf.ws.WsRequest { Meta = meta, Msg = msg }; sendRequest(request); }