Skip to content
Chris Brooksbank edited this page Jan 24, 2021 · 2 revisions

for gamewatcher :

public class Program
    {
        public static void Main(string[] args)
        {
            // TODO refactor
            // listen for MQTT messages and send onwards as local SignalR messages ( no CORS issues )
            var messenger = new GameMessenger();
            var gameHub = new GameHub();

            messenger.Client.UseConnectedHandler(async e =>
            {
                await  messenger.Client.SubscribeAsync(new MqttTopicFilterBuilder().WithTopic("AutoCardboard").Build());
            });

            messenger.Client.UseApplicationMessageReceivedHandler(e =>
            {
                var topic = e.ApplicationMessage.Topic;
                var payload = Encoding.UTF8.GetString(e.ApplicationMessage.Payload);
                var sendResult = gameHub.SendStatusMessage("test game status message");
            });

            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
Clone this wiki locally