AMQP Message Null when using Azure IoTHub Routing - azure-servicebus-queues

I have a custom Endpoint + Route setup based on TwinChangeEvent in Azure IoT Hub. I'm routing the events to a Service Bus Queue (tried topic also). I'm using Java Service Bus SDK (azure-servicebus-1.1.0.jar) to pull messages off of the queue.
However, I keep getting a NullPointerException in
com.microsoft.azure.servicebusMessageConverter on line 124
"brokeredMessage.setMessageId(amqpMessage.getMessageId().toString());"
The messageId property seems to be getting lost during the routing.
Any way to get around this?
I don't see anywhere in the Azure IoT Device SDK where I would need to set this once I've processed the original message from IoT Hub indicating the property changed.
Thanks

Related

Check Connection with Azure service bus using Java SDK

I am using Azure service bus with Java SDK. Currently not find any way where I can verify that connection is established or not. Is there any method or way where I can check connection is established with azure service bus?
I tried and failed to find specific way to do that.
One of the way to check whether connection is established or not is sending and receiving message from service bus. Once you have configured connection, try to send or receive message from service bus. You can check whether message is received or not using Azure portal also.
Refer this link enter link description herefor more information

MassTransit Azure Service Bus security

I'm using MassTransit with Azure Service Bus as a transport. Some endpoints will live outside of our network, so I'd like to restrict the connection strings to those endpoint queues/topics while allowing the endpoints that are on our network to send to all of the other endpoints.
Is this possible? If I try to set a connectionstring like that, errors indicating the lack of permissions to a topic that I don't think I need it to access.
MassTransit requires Manage since it creates any topics/queues at startup.
If you are only sending messages to a specific queue, I have heard of some having success by ensuring the queue already exists and has the appropriate access for the credentials, but I don't know the details. In the one case I know of, they were using queue:name with GetSendEndpoint on IBus, and then calling Send.

Is there a way Mock IBM MQ for Logicapp for testing

We have requirement, as per design, third party systems will push XML\CSV messages to IBM MQ queues, and we using Azure logic app need to consume those messages and send to Event hub.
My question is
As we dont have MQ available yet, and I am not able to give details in Azure and using Azure queues. Is there anyway we can mock like we are using MQ.
Logic app once receive messages XML can it store to Data lake instead of pushing through Eventhub(as Event hub storing message in AVRO format)
Any suggestions please.
Thanks
As suggested by Roger, you can install the developer version of IBM MQ to mock for Logic App testing.
Once the IBM MQ Queue is available, you can Send message from an on premise IBM MQ to Azure Service Bus queue and also able to Transform and Validate XML for workflows in Logic Apps.
You can refer to Connect to an IBM MQ server from a workflow in Azure Logic Apps, Transform XML for workflows in Azure Logic Apps and Validate XML for workflows in Azure Logic Apps

How to receive data from LoRa App server?

I collect data from the LoRa node, and then gateway forward to lora server, at last, the data to the lora app server. but i cannot find the following interface.
(https://docs.loraserver.io/lora-app-server/integrate/data/)
enter image description here
You need to implement a MQTT client (or user a command-line one, like mosquitto_sub, as suggested in https://docs.loraserver.io/lora-app-server/integrate/data/) and then subscribe to the receiving topic for the specified node. The image you posted is not an interface but an example message a node will send through the topic. For the case given, appID is "123" and devEUI is "0202020202020202", so you need to subscribe to the following topic to get messages from the node:
application/123/node/0202020202020202/rx
As said, you may consume the messages through a MQTT client (there are plenty of clients for different languages), or from the command line.
Just updating from current versions.
Global integrations
Global integrations are configured through the lora-app-server.toml configuration file and are globally enabled. This means that for every application configured, the application will be published using this / these integration(s).
The following integrations are available:
MQTT
AWS Simple Notification Service
Azure Service Bus
Google Cloud Platform Pub/Sub
Application integrations
Additional to the globally enabled integrations, it is also possible to set up integrations per application.
The following integrations are available:
HTTP
InfluxDB
From: loraserver.io

IBM Worklight 6.0.0.1 - Error during hourly process for push notifications

We're getting an error in WebSphere's SystemOut log approximately every hour on our Worklight Server.
It seems to be trying to validate push notification configuration. We currently have working notifications, using Apple push notifications only. Errors are:
com.notnoop.apns.internal.ApnsFeedbackConnection getInactiveDevices
Failed to retreive invalid devices ava.lang.RuntimeException:
javax.net.ssl.SSLHandshakeException
Our notifications are working, but, what is this hourly process? I don't see anything in the docs regarding a batch process that's run by Worklight Server.
Our setup: Worklight Server 6.0.0.20130909-1459, WAS 8.0.0.6, JDK 1.6.
Worklight uses notnoop open source library to push notification to APNS. This is a known harmless bug in notnoop.
https://github.com/notnoop/java-apns/issues/29
I believe this check is part of the way APNS's feedback service works.
From: Provider Communication with Apple Push Notification Service
Section: General Provider Requirements
Connect regularly with the feedback service and fetch the current list
of those devices that have repeatedly reported failed-delivery
attempts. Then stop sending notifications to the devices associated
with those applications. See “The Feedback Service” for more
information.
As for what it means, it looks to me like your exception quote is cut. Is that all of it?

Resources