示例#1
0
        public WebsocketMonitor(ICensusStreamClient censusStreamClient, ILogger <WebsocketMonitor> logger)
        {
            _client = censusStreamClient;
            _logger = logger;

            _client.OnConnect(OnConnect)
            .OnMessage(OnMessage)
            .OnDisconnect(OnDisconnect);
        }
示例#2
0
        public RealtimeMonitor(ILogger <RealtimeMonitor> logger,
                               ICensusStreamClient stream,
                               IBackgroundTaskQueue queue)
        {
            _Logger = logger;

            _Stream = stream ?? throw new ArgumentNullException(nameof(stream));
            _Queue  = queue ?? throw new ArgumentNullException(nameof(queue));

            _Stream.OnConnect(_OnConnectAsync)
            .OnMessage(_OnMessageAsync)
            .OnDisconnect(_OnDisconnectAsync);
        }
        public WebsocketMonitor(ICensusStreamClient censusStreamClient, ILogger <WebsocketMonitor> logger)
        {
            _client = censusStreamClient;
            _logger = logger;

            var subscription = new CensusStreamSubscription
            {
                Characters = new[] { "all" },
                Worlds     = new[] { "all" },
                EventNames = new[] { "PlayerLogin" }
            };

            _client.Subscribe(subscription)
            .OnMessage(OnMessage)
            .OnDisconnect(OnDisconnect);
        }