I've been struggling with this for a couple of days. I would like to be able to alter the "desired" properties of a device twin from, say, a function within azure, using the device ID. I was hoping the logic apps would have a simple connection for this, but there is nothing I can find. So I've been playing with trying to ingest an event stream wit a function app. Has anyone found any way to alter twin properties without using API calls or the text editor on the twin page?
Related
For Azure IOT Hub - I am working on a project where I would like to create some scripts based around the device name of an IOT device in the field. The device name already has details related to the location and device number of the location (which is what the script will pull).
Example H4C1F5Device3, where H4C1F5 is the postal code, and device 3 refers to the 3rd device in this location.
However due to a mixup in deployment, some devices don't match this naming convention and make scripting a little broken.
So my question is there a way to create an "alias"/dummy device in IOT hub with the correct name which can point to the previously deployed device with the "incorrect" name?
So far I have only looked at solutions in the Portal (no CLI, Node.js, etc.). I have tried making changes in the "Device Twins" page, but it does not accept changes when attempting to save.
Would appreciate any help on this. The Azure documentation is quite good, but I'm having trouble finding the solution to this exact query.
There is no such feature in Azure IoT Hub. You could create the new device IDs and reprovision your device with the new credentials.
It's also good practice not to store this kind of information in the device ID. You could use tags on the device twin (or desired properties if the device needs to know), unlike the device ID they are mutable.
I am not a coder and having a web platform built with PHP that includes a series of 1-1 video chats in a scheduled networking "event". The problem that the developer is not able to solve with the video plug in that they are using (https://www.magnoliyan.com/video-chat-pro/) is that the user needs to give camera permisson before each chat. I need this permisson to happen one time only at the beginning of the event and not need there to be any further permission giving throughout the event. Of course I would like this to work on all platforms. I'm exploring agora.io as an option to solve this and replace the current plug in with agora. Does anyone know if agora would be the right fit for this or which video chat platform I should use to accomplish this? And if there is specific developer kind of language or code - please speak in as if I was a developer and I will pass on what you say to him directly. You don't need to worry about whether I will understand it.
Thanks!
Jon
Agora.io like any other WebRTC provider requests device camera permission only once. And all subsequent Videocall won't need any special permission (provided that they are on the same domain)
More specifically, Agora.io requests browser permission when stream.init method is invoked. This also turns on the camera light. stream.close turns off the camera light and deallocates the resources.
However, the subsequent stream.init function calls do not require permissions. (Camera light will just turn on)
References:
stream.init: https://docs.agora.io/en/Video/API%20Reference/web/interfaces/agorartc.stream.html#init
stream.close: https://docs.agora.io/en/Video/API%20Reference/web/interfaces/agorartc.stream.html#close
I'm currently building a dotnet core project that receives data from multiple devices and has to send them over to Cumulocity.
So the flow of the app would be something similar to:
dotnet core app receives new data
connects to cumulocity account
creates device with name according to data received
sends data
repeat for multiple devices
I've been doing this for the past week using this code.
It works fine but then i noticed that calling the client.CreateDevice(...) was not creating new ones when presented with different data, it always hit the same one.
This tells me that i'm probably doing this wrong, that this library is to be used only within devices and not this way.
So my question is, to handle/send multiple devices data to the platform which library should i be using (if any)?
Thank you.
I figured it out, when connecting to Cumulocity the ClientId value will identify the device, to create new ones i just map that property to my devices ID.
Problem solved.
Well, the topic says it all. I'm dabbling with windows 8 app development using html/css/javascript and I'm having a hard time finding information on how to dynamically manipulate the live tiles.
There is a lot of information out there on how to create multiple tile xml files and launch them after each other but if anyone had a good resource, or even better, a first-hand explanation, on how to create these tiles programatically to, say, make a countdown tile, it would be greatly appreciated.
There's no way to programmatically update the text/image on a live tile directly in real time.
The only APIs available are those in the Windows.UI.Notifications namespace, such as are shown in the Sending a tile update Quickstart.
You can use the notification queue, as shown here, to provide multiple updates that will automatically cycle, or you can use an external service, such as Windows Azure Mobile Services to send tile updates. Using push notifications from an external service will probably get you closest to the behavior you're looking for, since it will not rely on the app being active in order to update the tile. Be aware, however, that the app will need to run at least once in order to create the channel URI that's needed for the external service to update the tile.
For more info on Windows Store app development, register for Generation App.
Is there any code for GPS receiver and for GPS net server available?
I want to build complete application: a client for the MS Win Pocket PDA and a server which shows position of my trucks on map. It is easy to find via internet code for GPS receiver (PDA) but I cannot find corresponding part code for server.
If I am understanding you correctly, you want the code to be able to render trucks on a map on your server.
If that is the case, I think that the approach you need depends on the language you are using. Plotting GPS coordinates on an X-Y plane is not a straight forward thing to do, reason being that if you where to cut the surface of the globe into pieces you would not end up with perfect squares, and would thus have to use a technique called Map Projections.
There are various readily available mechanisms provided by companies such a Google provided that you implement a web application. If on the other hand you where looking for a desktop application, SwingX provides a Java API which allows you to build GPS related desktop applications through the use of OpenStreetMaps.
So basically, you can have something as follows:
Create a concurrent server which accepts data from these PDA's and save it in the DB;
At a given period of time, pull the data from your database and refresh your desktop application or web page.
Edit: You can take a look at this tutorial to see how you can draw and plot on a map Using SwingX. If you shall be using Java, you might want to give a look at this previous SO post for more Java mapping API's.