示例#1
0
        /// <summary>
        /// Main method.
        /// </summary>
        /// <param name="args">Command line args.</param>
        public static void Main(string[] args)
        {
            string userId = "xxxxxxxxxxxxxxxxxxxxxxxx";
            string auth   = "auth+live+xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
            string roomId = "xxxxxxxxxxxxxxxxxxxxxxxx";

            TurntableBot bot = new TurntableBot(userId, auth, roomId);

            bot.NewSongStarted += new TurntableBot.TurntableBotEventHandler(delegate(object sender, TurntableBotEventArgs e)
            {
                JObject json = e.Json;
                bot.Vote(
                    TurntableBot.VoteOptions.Up,
                    delegate(JObject responseJson)
                {
                    if ((bool?)responseJson["success"] ?? false)
                    {
                        string artist = (string)json["room"]["metadata"]["current_song"]["metadata"]["artist"];
                        string song   = (string)json["room"]["metadata"]["current_song"]["metadata"]["song"];

                        Console.WriteLine(string.Format("Voted Awesome for {0} - {1}.", artist, song));
                    }
                    else
                    {
                        string err = (string)responseJson["err"] ?? "unknown reason";
                        Console.WriteLine(string.Format("Could not vote: {0}.", err));
                    }
                });
            });

            Console.ReadLine();
        }
        /// <summary>
        /// Main method.
        /// </summary>
        /// <param name="args">Command line args.</param>
        public static void Main(string[] args)
        {
            string userId = "xxxxxxxxxxxxxxxxxxxxxxxx";
            string auth   = "auth+live+xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
            string roomId = "xxxxxxxxxxxxxxxxxxxxxxxx";

            Dictionary <string, JObject> usersList = new Dictionary <string, JObject>();

            TurntableBot bot = new TurntableBot(userId, auth, roomId);

            bot.RoomChanged += new TurntableBot.TurntableBotEventHandler(delegate(object sender, TurntableBotEventArgs e)
            {
                JObject json = e.Json;

                // reset the users list
                usersList    = new Dictionary <string, JObject>();
                JArray users = (JArray)json["users"];

                foreach (JObject user in users)
                {
                    usersList[(string)user["userid"]] = user;
                }
            });

            bot.UserRegistered += new TurntableBot.TurntableBotEventHandler(delegate(object sender, TurntableBotEventArgs e)
            {
                JObject json = e.Json;

                JObject user = (JObject)json["user"][0];
                usersList[(string)user["userid"]] = user;
            });

            bot.UserDeregistered += new TurntableBot.TurntableBotEventHandler(delegate(object sender, TurntableBotEventArgs e)
            {
                JObject json = e.Json;

                JObject user = (JObject)json["user"][0];
                usersList.Remove((string)user["userid"]);
            });

            Console.ReadLine();
        }