假设我有一个门的定义:
class Door
{
public void Lock()
{
// lock the door
}
}
这对我来说似乎是有意义的,至少在一段时间内是这样。但现在,我不那么确定了。如果我有一个Person对象想要锁门,他会调用aDoor.Lock()。但在现实生活中,我们并不是通过告诉门自动上锁来锁门的。
似乎更准确的情况模型是能够直接修改aDoor的状态的人,前提是他有足够的能力锁门。例如,aCat应该不能设置aDoor.IsLocked = true。如果属性支持参数,我可以看到如何使用属性实现这一点:
class Per
我正试图在谷歌智能家居应用上采取行动。我已经实现了我的oAuth2.0服务器,它似乎工作得很好。它生成一个授权令牌,并使用Google提供的state参数将其发送给Google。但是,当我尝试在我的google应用程序中进行帐户链接时,它会出现默认的couldn't update the setting错误。当我检查我的Firebase控制台时,它说我的smartHome功能--我在Google上的操作中提供的智能家居实现--从未被调用过,尽管其他功能成功地完成了。
造成这种情况的原因/解决办法是什么?
我正在试验谷歌智能家居。我的最终目标是在我的对话框实现服务中接收家庭控制事件(如Turn the lights in the living room on )。
我想知道是否有可能在没有实际设备的情况下开发和测试谷歌智能家居。也就是说,如果我能够通过浏览器配置Google HomeGraph配置并通过控制台(console.actions.google.com)验证Google操作,那就太棒了。
这是可行的吗?
在Sitecore中,对于所有没有管理员权限的用户(在创建用户时未单击Is管理员复选框),当他们试图编辑一个项目时,他们必须选择"Lock and Edit“选项,该选项将创建一个新版本,而不是编辑现有版本。有没有办法让非管理员用户编辑一个项目而不创建一个新的版本?我希望这是否可以通过用户角色来完成。
我有一个智能家居对话流webhook在谷歌动作测试控制台上工作,但当我与谷歌家庭设备交谈时,没有迹象表明我的意图正在被识别。例如,我输入“家居温度?”在控制台中,我可以看到它调用我的webhook,执行我的脚本,并响应“the temperature is 72摄氏度”。
但当我对我的谷歌家庭设备说:“嘿,谷歌,家里的温度”时,它会说我的nest设备没有注册,或者类似的东西。也就是说,如果我没有在google actions中注册智能家居操作意图,它就会这么说。
我无法在文档或网络搜索中找到任何内容,这些内容说明了我应该如何让我的google助手设备识别我的自定义意图短语。
有没有人知道这个能