Esempio n. 1
0
        static void Main()
        {
            PrintStatus("Loading config..", ConsoleColor.Green);
            try
            {
                Config = JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Environment.CurrentDirectory, "config.json")));
            }
            catch (JsonReaderException e)
            {
                SetError(e.Message);
            }
            catch (FileNotFoundException ex)
            {
                SetError(ex.Message);
            }

            if (string.IsNullOrWhiteSpace(Config.DisplayName))
            {
                SetError("No display name specified!");
            }

            if (string.IsNullOrWhiteSpace(Config.AuthToken))
            {
                SetError("No authentication token provided!");
            }

            PrintStatus("Setting up account..", ConsoleColor.Green);
            Account = new DliveAccount(Config.AuthToken);
            try
            {
                Account.Query.GetMyInfo();
            }
            catch (JsonSerializationException)
            {
                SetError("Invalid authentication token provided!");
            }
            catch (Exception e)
            {
                SetError(e.Message);
            }

            PublicUserData usr = PublicQuery.GetPublicInfoByDisplayName(Config.DisplayName);

            if (usr.Username == "invalid user")
            {
                SetError("Invalid display name provided!");
            }

            PrintStatus("Connecting to event stream..", ConsoleColor.Green);
            Subscription subscription = Subscription.SubscriptionByDisplayName(Config.DisplayName);

            subscription.OnChatEvent += OnChat;
            subscription.OnConnected += () => PrintStatus($"Connected to {Config.DisplayName}!", ConsoleColor.Green);
            subscription.OnError     += (err) => SetError(err);
            subscription.Connect();

            Console.WriteLine("Press enter to stop the program");
            Console.ReadLine();
        }
Esempio n. 2
0
 public UserQuery(DliveAccount account)
 {
     _account = account;
 }
Esempio n. 3
0
 public Mutation(DliveAccount account)
 {
     _account = account;
 }