标签: nest-api

Nest温控器温度未更新

我试图以编程方式(Android)改变我的Nest的温度,没有任何运气.请求工作可能在30-50次尝试中有1次.

我试过通过Firebase Nest SDK完成它,并且根本不会调用NestAPI.CompletionListener.看到它不起作用,我尝试使用REST api,它工作了两次,然后再尝试30次尝试.我也从命令行使用curl尝试了它,结果相同,直到我因为速率限制而最终被"阻止".在被阻止之前,请求返回完整的恒温器对象,就像执行GET请求而不是PUT一样.

当温度实际上更新时,响应仅包含新的target_temperature_high_ctarget_temperature_high_c值.

还有其他人见过类似的行为吗?

编辑:在下面添加了一些代码

这是使用Nest Android API(基于Firebase)的代码:

NestAPI.CompletionListener completionListener = new NestAPI.CompletionListener() {
    public void onComplete() {
        Debug.d("NEST", "request complete");
    }
    public void onError(int errorCode) {
        Debug.e("NEST", "error: "+errorCode);
    }
};
NestAPI.getInstance().setTargetTemperatureHighC(myNest.getDeviceID(), 25, completionListener);
Run Code Online (Sandbox Code Playgroud)

这只有在我每小时拨打一次电话时才有效.如果我甚至尝试两次,第二次尝试不起作用.

接下来,我尝试使用REST界面.这似乎工作更频繁(工作5-6次,之后它开始表现得像我在做GET请求而不是PUT.

JSONObject dataToSend = new JSONObject();
dataToSend.put("target_temperature_low_c", 23);
dataToSend.put("target_temperature_high_c", 26);

HttpPut httpost = new HttpPut("https://developer-api.nest.com/devices/thermostats/"+myNest.getDeviceID()+"?auth="+myAuthToken);
httpost.setHeader("Content-type", "application/json");

httpost.setEntity(new StringEntity(dataToSend.toString()));
HttpResponse response = defaultHttpClient.execute(httpost);
HttpEntity entity = response.getEntity();

String response = convertStreamToString(entity.getContent());
Run Code Online (Sandbox Code Playgroud)

编辑2:刚刚使用Nest Home Simulator进行了测试,它的工作原理非常好.但真正的硬件存在问题

android nest-api

11
推荐指数
1
解决办法
467
查看次数

在VLC播放器中嵌套相机视频流

我的朋友有一个公共共享巢照相机地址.我想使用VLC播放器来观看视频流,而不是使用网络浏览器来观看视频.通过这种方式,我可以使用VLC的许多其他功能对视频进行视频分析.怎么做?

nest-api

8
推荐指数
2
解决办法
3881
查看次数

Nest API iOS错误

我正在使用Nest Developer https://developer.nest.com/ API来创建iOS应用程序.有谁知道如何将Firebase框架链接到我的应用程序?我一直在收到链接错误:

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_FTransactionResult", referenced from:
      objc-class-ref in NestThermostatManager.o
  "_OBJC_CLASS_$_Firebase", referenced from:
  objc-class-ref in NestThermostatManager.o
  objc-class-ref in NestStructureManager.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

nest-api

7
推荐指数
1
解决办法
658
查看次数

Nest API是否提供了获取历史能源使用的方法?

自从我得到我的巢以来,我想要的是能够在很长一段时间内总结我的能量使用以寻找模式并主要安抚我的好奇心.当然有每月使用情况报告,网络和设备只能回溯10天.

API是否公开了这些数据,还是我需要以某种方式自己计算?我没有在API引用上看到类似'is_running'的内容.或者未来"Nest Data API"有可能会问世吗?

nest-api

7
推荐指数
1
解决办法
6373
查看次数

获取和更改Nest恒温器上的基本数据

我一直无法获取和更改Nest恒温器提供的一些基本数据.

使用命令行,如何获取或更改恒温器上的各个设置或值?

nest-api

7
推荐指数
1
解决办法
2603
查看次数

Nest API:恒温器何时"加热"或"冷却"?

Nest Thermostat设备将在屏幕上显示"冷却"或"加热".如何通过Nest API获取此状态?

hvac_mode属性似乎只是简单地显示用户的恒温器能够控制什么,并且在发生冷却或加热时不会改变.

现在,我使用的是一个简单但不完美的逻辑:

if (can_cool && target_temperature < ambient_temperature) --> isCooling
if (can_heat && target_temperature > ambient_temperature) --> isHeating
else --> isDoingNothing
Run Code Online (Sandbox Code Playgroud)

通过不完美,我的意思是我遇到了这种逻辑不正确的情况.例如,在一个给定的情况下的ambient_temperatureIS 20 Celsiustarget_temperature21 Celsiuscan_heat设置为true我的UI会说温控器加热,而实际上并非如此.

这可能是因为目标和环境温度太近,但我不知道阈值是多少.

是否有其他或更好的方法来确定加热和冷却状态?

nest-api

7
推荐指数
1
解决办法
1135
查看次数

我的Nest能否测试本地设备的存在,以确定我是否在家?

我有一个Nest学习恒温器.我认为当我不使用运动传感器时,它会尝试"自动检测".无论如何,它不是很准确,更重要的是,它的算法并不透明.

相反,我认为有一个更好的方法来判断我是否在家里......

Nest在与我的手机相同的子网上绘制IP地址.

我想:

  • 告诉我手机的IP地址(以及我妻子的手机)
  • 请定期(可能每10或15分钟)ping一次这些IP地址以进行状态测试
  • 让Nest根据这些客观测试更新它自己的主/离账会计机制

这可以通过Nest API实现吗?

这是否违反了任何Nest API 禁令

像这样的客户已经存在吗?

ubuntu nest-api

7
推荐指数
1
解决办法
619
查看次数

Nest Camera的API文档在哪里?

我已经浏览了Nest开发者网站,我找不到任何与相机有关的内容.我可以找到关于恒温器和烟/ CO警报的大量信息,但相机没什么.

特别是,我正在寻找如何获取视频URL,如何获取/设置视频分辨率和帧速率,以及如何获取/设置缩放级别(如果适用).谢谢.

camera nest-api

7
推荐指数
1
解决办法
4549
查看次数

Nest API是否提供湿度信息?

在查看恒温器指南时,我没有看到任何湿度读数.这些数据是否可通过API获得?它会在以后的版本中发布吗?

nest-api

6
推荐指数
2
解决办法
1086
查看次数

多个Firebases实例

当我尝试制作多个new Firebase(url);实例时,我遇到了问题.

例如:

var token1 = "c.AdASdsAsds...";
var token2 = "c.dkasdEddss...";

var v1 = new Firebase('https://developer-api.nest.com');
v1.auth(token1,function(err){ 
    console.log("Connected 1 "+err);
},function(err){ console.log("Cancel 1: "+err); });

var v2 = new Firebase('https://developer-api.nest.com');
v2.auth(token2,function(err){ 
    console.log("Connected 2 "+err);
},function(err){ console.log("Cancel 2 "+err); });
Run Code Online (Sandbox Code Playgroud)

控制台日志:Connected 2 null就是这样......没有了.

因此,这意味着它永远不会调用回调函数从v1.auth();它忽略了它,它看起来像它变成被覆盖v2.auth();,即使它们是不同的火力点的情况下,它会干扰其他的一切,例如,v1.child("path").on("value",function(snapshot){});并且v2.child("path").on("value",function(snapshot){});发生这种情况时将无法正常工作.

authentication node.js firebase nest-api

6
推荐指数
1
解决办法
3285
查看次数

标签 统计

nest-api ×10

android ×1

authentication ×1

camera ×1

firebase ×1

node.js ×1

ubuntu ×1