谷歌眼镜Mirror API开发指南之Contacts

原文地址:http://bbs.seacat.cn/thread-885-1-2.html



联系

 

联系可以是人或Glassware,用户可以分享timelineitem。默认情况下,Glassware不能访问时间表并没有创建的项目。允许用户通过Glassware分享timelineitem,即使timelineitem并没有创建。


下面有两种方法,你的Glassware可以使用contant:

允许用户与其他用户分享你的timeline items添加分享内置菜单项到时间轴卡片。当用户点击分享菜单项、谷歌眼镜显示的列表可能分享给联系人。有关更多信息,请参见开发人员指南 menuitems如何添加内置菜单项。
允许用户通过你的Glassware共享timeline item:创建一个代表你的Glassware。当用户想要分享一个时间轴卡片,你的联系人可以作为一个选项。你也可以声明一个可接受的MIME类型列表( acceptable MIME types,这样你的联系人只出现您感兴趣的卡片。当用户共享一个时间轴卡片你会得到通知,你可以订阅timeline通知。


创建一个contact


允许用户通过你的Glassware来分享timelineitems,插入一个contact通过post一段json JSON representation of a contact)给插入的REST端点(insert REST endpoint.
所有的联系人都必须指定一个id。用来在Glassware接收通知时识别。你还必须指定一个displayName和至少一个imageUrl,好在谷歌眼镜上显示联系人的信息给用户。

注意:为达到最佳效果,imageUrl使用PNG的图像,背景色要透明,分辨率是640x360.

 

Raw HTTP

 

POST /mirror/v1/contacts HTTP/1.1
Authorization: Bearer {auth token}
Content-Type: application/json
Content-Length: {length}
 
{
  "id": "harold"
  "displayName": "Harold Penguin",
  "iconUrl": "https://developers.google.com/glass/images/harold.jpg"
  "priority": 7
}


可以从共享timeline items shared timelineitems)来获取更多的关于如何处理通知的资料。

 

分享是如何工作的

 

一旦你创建一个共享contact,分享时间轴卡片一般遵守这个流程

 

1.用户滑动时间轴项,选择共享菜单项,选择你的联系人
2MirrorAPI创建一个共享时间轴卡片的副本,给你联系人访问,并将副本插入用户的timeline。你的Glassware不能访问原始的时间轴卡片
3.如果你订阅了分享通知(subscribed to share notifications),你会收到一个包含时间轴卡片的识别信息,你可以通过 Timeline.get方法来检索timelineitem
4.你通过Timeline.update方法来更新共享时间轴卡片和现有的时间轴卡片。


注意:你应该为你的Glassware添加识别品牌来区分从最初的timeline item复制过来的timeline item。用更新复制的timeline item的方式来代替插入一个新的timeline item
下面的屏幕截图展示了在谷歌眼镜上如何分享联系人





                                          

加标题分享照片


用户有可能会通过Glassware分享照片并插入一篇演讲的标题。一般通过下面这几步:

 

1.  用户轻触一项包含照片的timeline item,选择共享菜单项。接着选择联系人

2.  用户在短时间内轻触这张照片来给它添加一个标题

3.  用户说出标题

4.  Timeline item和你的Glassware开始共享工作,就像之前描述的那样。此外,timeline item的文本(text)属性会把用户说的话转录成标题。

 

声明语音菜单命令

 

你可以让用户在菜单插入语音命令“ok glass”通过你的Contact来共享timeline item。触发后,语音命令会通过你的contact来共享timeline item还包括转录用户的演讲,你可以为你的contact声明下面的语音命令:

·      ~  "take a note"

·      ~  "post an update"

注意:请求支持其他的语音指令,建议填写一个语音命令表单( Suggest a GlassVoice Command form

使用语音命令,指定接收指令(acceptCommands 属性与适当的类型

 

{
  ...
 
  "displayName": "Cat Stream",
  "id": "CAT_STREAM",
  "acceptCommands": [
    {"type": "POST_AN_UPDATE"}
  ]
}



上面的例子更新你的用户的语音菜单包括“post an update”命令

                              

如果不止一个Glassware注册一个相同的语音命令,谷歌眼镜会通过二级菜单来显示每个contactdisplayName。用户可以说话来连接他们的选择,如果你的contact 显示在屏幕上名字包含不能发音的字符或者不是语音,说出谐音来使用你的分享交流。
例如:一个用户可能会在chipotle生日到来是时候说,ok glasspost an update to  cat stream chipotle’s birthday is tomorrow.

5.png (17.69 KB, 下载次数: 0)

下载附件  保存到相册

2013-12-31 23:45 上传


如果你的Glassware订阅了timeline通知,Mirror API会推送一个通知


{
  "collection": "timeline",
  "operation": "UPDATE",
  "userToken": "<USER_TOKEN>",
  "verifyToken": "<VERIFY_TOKEN>",
  "itemId": "<ITEM_ID>",
  "userActions": [
    {"type": "LAUNCH"}
  ]
}



然后,您可以使用itemId获取timeline的值


{
  "id": "<ITEM_ID>",
  "text": "Chipotle's birthday is tomorrow",
  "recipients": [
    {"id": "CAT_STREAM"}
  ]
}



与媒体分享,你应该修改共享时间轴卡片和通过 Timeline.update.方法来更新现有的时间轴卡片。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值