如何解决我正在使用 Google Home 测试我的智能家居网络钩子
Google Home 应用告诉我该帐户已成功关联。我已经在亚马逊云上部署了履行服务。我已经实现了action.devices.sync的意图,然后我可以通过这个返回
公共类 GoogleActionApp 扩展了 SmartHomeApp {
private static final Logger LOGGER = LoggerFactory.getLogger(GoogleActionApp.class);
@Override
public void ondisconnect(@NotNull disconnectRequest disconnectRequest,@Nullable Map,? > map) {
}
@NotNull
@Override
public ExecuteResponse onExecute(@NotNull ExecuteRequest executeRequest,? > map) {
返回空值;
}
@NotNull
@Override
public QueryResponse onQuery(@NotNull QueryRequest queryRequest,? > map) {
返回空值;
}
@NotNull
@Override
public SyncResponse onSync(@NotNull SyncRequest syncRequest,? > map) {
SyncResponse.Payload payload = new SyncResponse.Payload();
payload.setAgentUserId("3476753456432");
payload.setDevices(
新的 SyncResponse.Payload.Device[] {
/* 新的 SyncResponse.Payload.Device.Builder()
.setId("123")
.setType("action.devices.types.OUTLET")
.addTrait("action.devices.traits.OnOff")
.setName(
Collections.singletonList("My Outlet 1234"),
“夜灯”,
Collections.singletonList("Wall plug"))
.setwillReportState(true)
SetDeviceInfo ("towns - out - inc","hs1234","3.2","11.4")
// .setCustomData(
新的 JSONObject()
.put("foovalue",74)
.put("barValue",true)
.put("bazValue","foo"))//
.build(),*/
新的 SyncResponse.Payload.Device.Builder()
.setId("456")
.setType("action.devices.types.LIGHT")
.addTrait("action.devices.traits.OnOff")
.addTrait("action.devices.traits.Brightness")
.addTrait("action.devices.traits.ColorTemperature")
//.addTrait("action.devices.traits.ColorSpectrum")
.setName(
Collections.singletonList("Lights Out Inc. 灯泡 A19 color hyperglow"),
“灯”,
Collections.singletonList("阅读灯"))
.setwillReportState(false)
SetDeviceInfo ("towns Out Inc.","hg11","1.2","5.4")
/* .setCustomData(
新的 JSONObject()
.put("foovalue",12)
.put("barValue",false)
.put("bazValue","bar"))*/
.build(),
});
return new SyncResponse(syncRequest.getRequestId(),payload);
}
if ("action.devices.SYNC".equals(intent)){
试试{
String jsonResponse= actionsApp.handleRequest(body,headers).get();
System.out.println(jsonResponse);
outputStream.write(jsonResponse.getBytes(Charset.forName("UTF-8")));
} catch (InterruptedException e) {
e.printstacktrace();
} catch (ExecutionException e) {
e.printstacktrace();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。