当前位置: 首页 > 知识库问答 >
问题:

如何使用门户中的Azure函数将消息发送到Azure IOT中心并在客户端应用程序上显示

赵佐
2023-03-14

我在Azure资源上工作,如Azure服务总线、Azure功能、物联网中心。这里我尝试使用Azure功能将队列消息从Azure服务总线发送到IOT Hub,然后在我的本地设备(云到设备)中显示这些消息。我能够使用服务总线队列触发器在Azure函数中读取我的消息,并尝试将它们作为函数的输出发送到IOT Hub。有一次,当我运行Azure功能“它可以将消息作为输出发送到IOT Hub”,但它无法将它们发送到客户端设备。你能建议我“如何解决这种情况”吗

共有2个答案

东方文林
2023-03-14

不幸的是,目前没有来自函数的IoT Hub的输出绑定(不过,您可以编写一个新的自定义绑定;)

要从功能到设备进行对话,您需要物联网中心的Azure设备服务SDK。然后,您可以使用云到设备消息(异步)或直接方法(同步)。您可以在我的GitHub repo中找到后者的示例:https://github.com/sebader/iotedge-end2end/blob/master/CloudFunctions/DirectMethodCaller.cs

重要的部分是:

ServiceClient _iothubServiceClient = ServiceClient.CreateFromConnectionString(config["iothubowner_cs"]);
var methodRequest = new CloudToDeviceMethod("YourDirectMethodName", TimeSpan.FromSeconds(10), TimeSpan.FromSeconds(10));
var result = await _iothubServiceClient.InvokeDeviceMethodAsync(device, module, methodRequest).ConfigureAwait(false);

C2D消息的实现看起来几乎相同。

叶卓君
2023-03-14

据我所知,目前无法选择云到设备消息(C2D)作为Azure功能输出。也不能使用事件中心输出,因为它不支持此处所述的C2D消息。

我可以想出两种方法来实现Azure功能中的C2D消息传递:

  1. 使用Azure IoT SDK,如本回答中所述,并在2017年的channel9视频中显示(可能已过时)
 类似资料:
  • 问题内容: 我是Go的新手,并且发现自己作为第一个项目使用套接字。这是一个多余的问题,但是我无法理解如何将Websocket更新发送到Go中的特定客户端(使用Gorilla)。 我要解决的主要问题是-使用websocket和搜索引擎(如ES / Lucene)建立预输入。我在搜索引擎上维护了一堆索引,并在其周围进行了Go包装。当我开始在Go中使用websockets时,几乎发现了所有展示广播机制的

  • 我正在通过在WebSocketClientFlow上遵循doc来尝试客户端websocket。

  • 问题内容: 我正在使用socket.io和node.js,直到现在看起来还不错,但我不知道如何从服务器向特定客户端发送消息,如下所示: 但是无论是还是方法似乎都无法满足我的需求。 我发现一种可能的解决方案是,该方法将不发送消息的SessionId数组作为第二个参数,因此我可以将此时连接了所有SessionId的数组传递给服务器,除了那个我希望发送邮件,但是我觉得必须有一个更好的解决方案。 有任何想

  • 问题内容: 我从socket.io + node.js开始,我知道如何在本地发送消息和广播功能:-所有连接的客户端都收到相同的消息。 现在,我想知道如何向特定的客户端发送私人消息,我的意思是一个套接字,用于2个人之间的私人聊天(客户端到客户端流)。谢谢。 问题答案: 当用户连接时,它应使用唯一的用户名(例如电子邮件)向服务器发送消息。 一对用户名和套接字应存储在这样的对象中: 在客户端上,使用以下

  • 我需要一个推送消息服务器的方案。 现在我选择AutobahnJs+AutobahnPython方案。 AutobahnJs库使用html5的websocket连接AutobahnPython使用的服务器 在javascript中,使用订阅通道,每个客户端使用相同的订阅通道。clientD将消息发布到通道(与订阅通道相同),服务器将消息传递给订阅该通道的所有客户端。 这里有一个问题,我需要应用程序(

  • 我有两个来自不同组织(租户)的SharePoint网站: 房客1:abc.sharepoint.com 房客2:xyz.sharepoint.com 已在azure portal for Tenan 1'abc上注册并授予应用程序所需的权限。sharepoint。com”,以便租户2用户可以访问它:“xyz”。sharepoint。com' 认证工作正常 当我与租户1的abc用户进行身份验证时,对