设备数据通过Azure Functions 推送到 Power BI 数据大屏进行展示(1.准备工作)
本案例适用于开发者入门理解Azure Functions/ IoT Hub / Service Bus / Power BI等几款产品。
主要实战的内容为:
将设备遥测数据上传到物联网中心,
将遥测数据路由到消息中间件的Topic中,
使用Azure Function解析消息中间件Topic中的消息并推送到大屏 。
本文主要是本案例的准备工作,即(第1条和第2条的内容):
1.创建IoT Hub:
https://v.qq.com/x/page/h3031pnaxi8.html
2.创建Service Bus:
https://v.qq.com/x/page/b3031hdv9yk.html
3. 创建IoT Hub 消息路由,将遥测消息路由到Service Bus Topic
https://v.qq.com/x/page/i3031hkec4q.html
本示例中的Python Device 代码来自于微软官网,请参照:
https://docs.azure.cn/zh-cn/iot-hub/quickstart-send-telemetry-python
- import random
- import time
- import sys
- # Using the Python Device SDK for IoT Hub:
- # https://github.com/Azure/azure-iot-sdk-python
- # The sample connects to a device-specific MQTT endpoint on your IoT Hub.
- import iothub_client
- # pylint: disable=E0611
- from iothub_client import IoTHubClient, IoTHubClientError, IoTHubTransportProvider, IoTHubClientResult
- from iothub_client import IoTHubMessage, IoTHubMessageDispositionResult, IoTHubError, DeviceMethodReturnValue
- # The device connection string to authenticate the device with your IoT hub.
- # Using the Azure CLI:
- # az iot hub device-identity show-connection-string --hub-name {YourIoTHubName} --device-id MyNodeDevice --output table
- CONNECTION_STRING = "your device conn string"
- # Using the MQTT protocol.
- PROTOCOL = IoTHubTransportProvider.MQTT
- MESSAGE_TIMEOUT =
- # Define the JSON message to send to IoT Hub.
- TEMPERATURE = 20.0
- HUMIDITY =
- MSG_TXT = "{\"temperature\": %.2f,\"humidity\": %.2f}"
- def send_confirmation_callback(message, result, user_context):
- print ( "IoT Hub responded to message with status: %s" % (result) )
- def iothub_client_init():
- # Create an IoT Hub client
- client = IoTHubClient(CONNECTION_STRING, PROTOCOL)
- return client
- def iothub_client_telemetry_sample_run():
- try:
- client = iothub_client_init()
- print ( "IoT Hub device sending periodic messages, press Ctrl-C to exit" )
- while True:
- # Build the message with simulated telemetry values.
- temperature = TEMPERATURE + (random.random() * )
- humidity = HUMIDITY + (random.random() * )
- msg_txt_formatted = MSG_TXT % (temperature, humidity)
- message = IoTHubMessage(msg_txt_formatted)
- # Add a custom application property to the message.
- # An IoT hub can filter on these properties without access to the message body.
- prop_map = message.properties()
- if temperature > :
- prop_map.add("temperatureAlert", "true")
- else:
- prop_map.add("temperatureAlert", "false")
- # Send the message.
- print( "Sending message: %s" % message.get_string() )
- client.send_event_async(message, send_confirmation_callback, None)
- time.sleep()
- except IoTHubError as iothub_error:
- print ( "Unexpected error %s from IoTHub" % iothub_error )
- return
- except KeyboardInterrupt:
- print ( "IoTHubClient sample stopped" )
- if __name__ == '__main__':
- print ( "IoT Hub Quickstart #1 - Simulated device" )
- print ( "Press Ctrl-C to exit" )
- iothub_client_telemetry_sample_run()
设备数据通过Azure Functions 推送到 Power BI 数据大屏进行展示(1.准备工作)的更多相关文章
- 设备数据通过Azure Functions 推送到 Power BI 数据大屏进行展示(2.Azure Functions实战)
本案例适用于开发者入门理解Azure Functions/ IoT Hub / Service Bus / Power BI等几款产品. 主要实战的内容为: 将设备遥测数据上传到物联网中心, 将遥测数 ...
- 【NFS项目实战二】NFS共享数据的时时同步推送备份
[NFS项目实战二]NFS共享数据的时时同步推送备份 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品, ...
- java推送数据到app--极光推送
之前项目有用到需要把数据推送到app端 采用的是极光推送 特此把工具类和pom.xml需要的jar整理如下 pom.xml需要jar如下 <!-- 极光推送 --> <depende ...
- Power BI数据网关
前言 你的组织中的用户可以访问本地数据(他们已经具有该数据的访问授权),但在这些用户可以连接到你的本地数据源之前,需要安装和配置本地数据网关. 该网关便于云中的用户与你的本地数据源相互进行快速安全 ...
- 第二篇:Power BI数据可视化之基于Web数据的报表制作(经典级示例)
前言 报表制作流程的第一步显然是从各个数据源导入数据,Power BI能从很多种数据源导入数据:如Excel,CSV,XML,以及各类数据库(SQL Server,Oracle,My SQL等),两大 ...
- 第一篇:Power BI数据可视化概述
前言 "可视化之工具,可爱者甚蕃.统计学家独爱R,自Python来,世人盛爱matplotlib.余独爱Power BI之出微软而不染(免费),濯Office而不妖(够精简).......& ...
- 海量大数据大屏分析展示一步到位:DataWorks数据服务对接DataV最佳实践
1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com) 是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟 ...
- 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践
1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com) 是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟“ ...
- rtmp 推送h264 + aac 的数据
相关源码下载: http://download.csdn.net/detail/keepingstudying/8340431 需要libfaac,librtmp 的支持, 1.帧的划分 1.1 H. ...
随机推荐
- 一图读懂Spring Core,Spring MVC, Spring Boot,Spring Cloud 的关系与区别
Spring框架自诞生到现在,历经多次革新,形成了多种不同的产品,分别应用于不同的项目中,为了帮助自己理解这些产品之间的关系,特此整理此图,以便自己记忆和复习.
- 螺旋矩阵II
Given a positive integer n, generate a square matrix filled with elements from 1 to n2 in spiral ord ...
- centos 7 MysSQL 5.7.23 源码安装
MySQL 5.7.23 源码安装 CentOS 7 将默认数据库MySQL替换成了Mariadb. 这里会从系统的环境准备开始一步一步安装. 环境准备 系统版本 内核版本 IP地址 Centos 7 ...
- Java基础部分(11~20)
11."=="和 equals 方法究竟有什么区别? (单独把一个东西说清楚,然后再说清楚另一个,这样,它们的区别自然就出来了,混在一起说,则很难说清楚) ==操作符专门用来比较两 ...
- hybrid app初体验,和react-native一起飞
第一次启动了react-native的示例,今天主要把其中遇到的坑与解决的办法分享给大家.如有疏漏.错误还望指正. 首先还是要从hybrid app这个概念说起(如果对于这个过程不感兴趣的同学,可以直 ...
- [ch04-04] 多样本单特征值计算
系列博客,原文在笔者所维护的github上:https://aka.ms/beginnerAI, 点击star加星不要吝啬,星越多笔者越努力. 4.4 多样本单特征值计算 在前面的代码中,我们一直使用 ...
- 在文件夹下所有文件中查找字符串(linux/windows)
在linux下可以用 grep "String" filename.txt#字符串 文件名grep -r "String" /home/#递归查找目录下所有文件 ...
- HIT2019视听觉信号处理视觉实验一
写在前面 HIT大三上学期视听觉信号处理课程中视觉部分的实验一,经过和学长们实验的对比发现每一级实验要求都不一样,因此这里标明了是2019年秋季学期的视觉实验一. 由于时间紧张,代码没有进行任何优化, ...
- where 和having 的区别
where : 约束声明,在查询结果返回之前对数据库中的查询条件进行约束 其后不能写聚合函数 having 过滤声明,在查询结果返回之后进行过滤,
- 关于CSS选择器连续性的问题
在html中有以下结构: --- ----- <div class="row100"> <div class="col"> <di ...