Enhancement Request - Device Notes

I currently have a “product” within the particle cloud with customers. I used to create a shadow customer for each customer I had and then that shadow customer within the Particle cloud also claims the device. Per a few other threads, I now understand a cleaner way especially for cellular products is to just claim all the devices under an “admin” account and manage who claimed each device in my own backend. The main reason I moved to this is now I can allow someone to claim a device even if that device is not powered up/connected. This also seems a little more straightforward to then trying to manage shadow customers and who claimed each device in both Particle cloud as well as my own backend. However, I realized, it’s a little harder to quickly find who owns/claimed each device. Therefore, I figured I’d use the Cloud API to update the Device notes anytime someone claim/unclaim the device from my web app. This works well however, with a few enhancements to the Particle cloud it would even better meet the needs. Wasn’t sure where to make an “enhancement” request like this but figured I’d start here. Here are some ideas to improve on the device notes:

  1. Recognize the notes are in JSON format and by default “beatify” the JSON. I.e. if this is my note:
    {“status”: “claimed”, “user”: {“user_id”: 0, “email”: “user@gmail.com”, “username”: “user1”, “firstName”: “John”, “lastName”: “Doe”}}. Using JSON just is a nice way to store multiple pieces of content. When it recognizes it as JSON display it as beatify like this instead of just a string:
    image

  2. Allow me to add/remove columns from the main product view. I’d like to add the “notes” column for example.

  3. Even better if I could filter by a wildcard value of the notes field. In my example, I’m using JSON so I’d like to search by “User1” or maybe REGEX search would be even better.
    image

  4. By default have the text wrap instead of a scroll bar left/right. By using JSON and setting the notes via the API, the text just continues and adds a scroll bar instead of wrapping to the next line.
    image

Obviously, I can do this first to my database to see what device someone owns, and then jump over to particle and filter by that list, I can see it being clumsy though with more devices. So lower priority stuff here but figured I’d mention it.

Anyone else have things to add or is there an easy way to accomplish what I’m trying to accomplish? Is there a better way for Particle users to make suggestions for enhancements than a post here?

Since I’m at it… in addition to being able to select what columns are visible/hidden, would also be nice to re-size and maybe re-order the columns within the Console - Devices tab. For example, if all devices are claimed by the “admin” account, that column is just wasted space. I’d prefer to hide it and instead show the notes column.

For now I’m just using the “name” filed to serve a portion of this need since I can filter by that column and that column is visible. However, it doesn’t accept JSOn format due to special characters. It’s better than nothing and meets the immediate need. Just not ideal.

For those with many devices in a product and all devices claimed to a single “admin” type account, what is your strategy for quickly finding the device in the console if/when you need to use the console to investigate it, flash new firmware to it, etc. Just filtering by Device_ID, using Device Name, using notes? Just curious to see if there is an easier way.

Hey, wondering here:
Would it be possible in your case to use an external database?

Perhaps you have a cloud infra in firebase or Azure or AWS, and the mapping of the devices already there, so the right query will provide the needed info.

@gusgonnet - Yeah I currently use an external SQL database for managing users, devices, who owns each device, device features, and other data. most of the backend is Python functions that claim/unclaim, manage users, etc. This includes updating the SQL database, making API to particle cloud, etc.

What I want to do is make a call from the function to update notes so I can better understand the context of each device all from within the Particle Console. This would include who owns the device, what features does the device have, what hardware version, is it claimed/unclaimed. Seems like the notes field would be perfect for this but the interface within the Particle Console isn’t idle. That’s what sparked this enhancement idea.

So I have all the data in SQL but then I find myself bouncing back and forth between SQL and the Console. Would be nice to just have the context of the data right within the Particle Product Console. I guess I’m lazy and trying to put all the data in one place. :slight_smile:

1 Like