예제 #1
0
        public static void TestWebSocket()
        {
            CryptoCompareConfig          config         = new CryptoCompareConfig();
            ICryptoCompareServices       services       = new CryptoCompareServices(config);
            ICryptoCompareStreamServices streamServices = new CryptoCompareStreamServices(services, config);

            MessageKey keyCurrent = new MessageKey
            {
                Type       = MessageType.Current,
                Market     = "Cryptsy",
                FromSymbol = "BTC",
                ToSymbol   = "EUR"
            };

            MessageKey keyCurrentAgg = new MessageKey
            {
                Type       = MessageType.CurrentAggregation,
                Market     = "CCCAGG",
                FromSymbol = "BTC",
                ToSymbol   = "EUR"
            };

            MessageKey keyTrade = new MessageKey
            {
                Type       = MessageType.Trade,
                Market     = "Cryptsy",
                FromSymbol = "BTC",
                ToSymbol   = "EUR"
            };

            /*Current current = new Current();
             * streamServices.Subscribe(keyCurrent, (sender, args) =>
             * {
             *  Current update = args.Message as Current;
             *  current.Update(update);
             *  Debug.WriteLine(current);
             * });*/

            Trade trade = new Trade();

            streamServices.Subscribe(keyTrade, (sender, args) =>
            {
                Trade update = args.Message as Trade;
                trade.Update(update);
                Debug.WriteLine(trade);
            });

            streamServices.Error += (sender, args) =>
            {
                Debug.WriteLine(args.Type + " : " + args.Data);
            };

            Task task = Task.Run(() => streamServices.Run());

            task.Wait();
        }
 public CryptoCompareServices(CryptoCompareConfig config)
     : this(config.ApiUrl)
 {
     this.config = config;
 }