使用NodeRED获取当前位置

时间:2016-07-16 11:40:20

标签: node-red

您如何找到物联网的直接位置。请尽快!

我们已经厌倦了许多房产,但他们都没有为我们提供当前位置。我们尝试使用msg.payload.d.az但它仅在设备抖动时才有效。

1 个答案:

答案 0 :(得分:0)

Node-RED不知道你的东西在哪里,但如果你的“IoT”知道它在哪里,并且已经将这些数据写入你的流中的msg对象,你可以尝试以下方法:

如果您不确定msg的哪些属性包含您想要的信息,请尝试打开您的应用程序的拖尾日志(调试控制台缓冲区不是很大,所以如果您的对象大小合适,它可能会得到在GUI中切断,然后使用node.warn(msg)注入您的流,该节点抛出流量中有意义的点。如果您没有看到要查找的内容,请将node.warn(msg)移动到流中的其他位置,然后查看它是否存在。标准调试程序如下。您没有指定任何有关您的环境的信息,但如果您使用的是Bluemix(最好的猜测?许多人似乎从他们的SDK中执行Node-RED)并安装了CF CLI,您可以执行以下命令行命令来访问记录:

~/RubymineProjects/blog
% rails server
=> Booting Puma
=> Rails 5.0.0 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.5.0 (ruby 2.3.0-p0), codename: Amateur Raccoon Rocketry
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop
Started GET "/" for ::1 at 2016-07-19 20:38:04 -0700
Processing by Rails::WelcomeController#index as HTML
  Parameters: {"internal"=>true}
  Rendering /Users/joseph/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/templates/rails/welcome/index.html.erb
  Rendered /Users/joseph/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/templates/rails/welcome/index.html.erb (5.3ms)
Completed 200 OK in 23ms (Views: 11.6ms | ActiveRecord: 0.0ms)

查找包含App的日志消息,而不是RTR,它们将包含node.warn(msg)和其他节点输出。 Bluemix还有devops gui中的日志,但有时很难处理它们。

如果您不在Bluemix上,请参阅特定环境文档以了解如何访问日志。

您将获得消息对象中包含的所有内容,如果您寻找的属性是msg,则可以将日志输出放入预处理器中并找到它。

如果在检查完msg的全部内容后找不到你的属性,那么你需要追溯你的流/输入源到ID,你认为它被添加到msg并修复问题。