如何使用.NET Client Mirror API在MenuItem上设置有效负载?

时间:2014-03-08 11:33:32

标签: .net google-mirror-api

尝试在MenuItem Action上将操作设置为OPEN_URI。

这是我的代码:

    TimelineItem item2 = new TimelineItem()
        {
            Creator = new Contact()
            {
                DisplayName = "Joaquin Quick Start",
                PhoneNumber = "+XXXXXXXX",
                Id = "JOAQUIN_QUICKSTART",
            },
            Text = "Buenos Dias ",
            SpeakableText = "Good morning",
            Notification = new NotificationConfig() { Level = "DEFAULT" },

            MenuItems = new List<MenuItem>() { { new MenuItem() {Action ="CUSTOM", Id="complete", Values= new List<MenuValue>() {
                new MenuValue() {DisplayName="Complete",IconUrl="http://app.sfy.com/glass/ic_bed_50.png"}
            }}},
            { new MenuItem() { Action ="OPEN_URI"}},
            { new MenuItem() { Action ="NAVIGATE"}},
            { new MenuItem() { Action ="VOICE_CALL"}},
        }
        };
        item2.BundleId = item.BundleId;
        controller.Service.Timeline.Insert(item2).Fetch();

如何为操作OPEN_URI设置有效负载?

  { new MenuItem() { Action ="OPEN_URI"}},

该属性在API中公开

https://developers.google.com/glass/v1/reference/timeline/insert

” menuItems [] .caps string一个通用的有效负载,其含义根据此MenuItem的操作而变化。 当操作为OPEN_URI时,有效负载是要查看的网站的URL。 当动作是PLAY_VIDEO时,有效载荷是视频的流URL 写 “

但是我找不到设置有效载荷的方法。

我想到的唯一想法就是使用json的直接http帖子。

问题是Quickstart .NET项目包含Mirror TimeLine APi的1.3版。

我必须删除前者,并使用以下内容添加新版本:

install-package Google.Apis.Mirror.v1 -Pre

2 个答案:

答案 0 :(得分:0)

documentation说这是一个可设置的属性,所以如果我正确理解.NET,你应该可以做类似的事情

{ new MenuItem() { Action="OPEN_URI", Payload="http://example.com/" } }

答案 1 :(得分:0)

我有同样的问题。它实际上是一个版本问题。您可能正在使用版本镜像api版本1.3.0.15233(或接近它)。这是快速入门所带来的,但不是最新的最佳版本。

我更新到了Google.Apis.Mirror.v1的1.6.0.33版,并且能够添加有效负载。我知道这不再是最新版本,但我认为它仍然可以在最新版本中使用。您可以在https://www.nuget.org/packages/Google.Apis.Mirror.v1/

上获取nuget的最新版本

注意:您需要进行一些额外的更改。例如,当您调用Service.Timeline.Insert(MyCard).Fetch();您将在版本1.6.0.33中看到“Fetch()”无效。您需要更改为“执行()”。这些更改相对简单,但在升级时会破坏一些现有代码。

我希望这会有所帮助。