コード例 #1
0
        public override void Adapter_AllJoynMethod(object sender, AllJoynMethodData e)
        {
            switch (e.Method.Name.ToLower())
            {
                case "joke":
                    var p = e.AdapterDevice.Properties.Where(x => x.Name == "Speech")?.First()
                       ?.Attributes?.Where(y => y.Value.Name == "Message")?.First();

                    if (p != null) { Speak(p.Value.Data as string); }
                    break;

                default:
                    break;
            }

            base.Adapter_AllJoynMethod(sender, e);
        }
        public virtual void Adapter_AllJoynMethod(object sender, AllJoynMethodData e)
        {
            switch (e.Method.Name.ToLower())
            {

                case "banner":
                    preMessage = e.AdapterDevice.Properties.Where(x => x.Name == "Banner").First()
                        .Attributes.Where(y => y.Value.Name == "Pre").First().Value.Data as string;

                    postMessage = e.AdapterDevice.Properties.Where(x => x.Name == "Banner").First()
                        .Attributes.Where(y => y.Value.Name == "Post").First().Value.Data as string;

                    var cal = e.AdapterDevice.Properties.Where(x => x.Name == "Banner").First()
                        .Attributes.Where(y => y.Value.Name == "Calibration").First().Value.Data;

                    calibration = (int)cal;

                    break;

                default:
                    break;
            }
        }
        public async override void Adapter_AllJoynMethod(object sender, AllJoynMethodData e)
        {
            switch (e.Method.Name.ToLower())
            {
                case "stop":
                    await FullStop();
                    break;
                case "left":
                    await TurnLeft(false);
                    break;
                case "right":
                    await TurnRight(false);
                    break;
                case "forward":
                    await Forward();
                    break;
                case "manual":
                    autonomous = false;
                    break;
                case "autonomous":
                    autonomous = true;
                    break;
                case "speak":
                    preMessage = e.AdapterDevice.Properties.Where(x => x.Name == "Speech").First()
                        .Attributes.Where(y => y.Value.Name == "Message").First().Value.Data as string;
                    Speak(preMessage);
                    break;

                default:
                    break;
            }

            base.Adapter_AllJoynMethod(sender, e);
        }