Example #1
0
        // ----------------------------------------------------------------------------------------
        // pattern handling
        //

        /// <summary>
        // Play a color pattern.
        // Can restart if already playing, or just leave be an already playing pattern
        //
        /// </summary>
        /// <param name="pname">pattern name / color code to play</param>
        /// <returns> true if pattern was played, false if not</returns>
        public Boolean playPattern(string pname)
        {
            Log("playPattern:" + pname);
            if (pname == null)
            {
                return(false);
            }
            // if rgb hex code, just do it
            if (pname.StartsWith("#"))
            {
                Color c = ColorTranslator.FromHtml(pname);
                fadeToRGB(0.1, c);
                return(true);
            }
            // otherwise treat it as a color pattern name
            Blink1Pattern patt = null;

            if (patterns.TryGetValue(pname, out patt))
            {
                patt.blink1Server = this; // just in case
                patt.play();
                return(true);
            }
            return(false);
        }
Example #2
0
        //    /blink1/pattern/play -- Play/test a specific color pattern
        static string Ublink1PatternPlay(HttpRequest request, Blink1Server blink1Server)
        {
            string pname     = request.Query.Get("pname");
            string statusstr = "no pattern by that name";

            if (pname != null)
            {
                Blink1Pattern patt = null;
                if (blink1Server.patterns.TryGetValue(pname, out patt))
                {
                    patt.blink1Server = blink1Server; // justin case
                    patt.play();
                    statusstr = "pattern '" + pname + "' playing";
                }
            }
            Dictionary <string, object> result = new Dictionary <string, object>();

            result.Add("status", statusstr);
            return(JsonConvert.SerializeObject(result, Formatting.Indented, jsonSerializerSettings));
        }