Go Deeper With Even More Losant Assets
How Manufacturing Equipment OEMs Discover the Role of IoT in Product Innovation
- IoT enables the manufacturer/customer to deliver new, valuable benefits to its customer.
- Optimize processes through continuous monitoring and data collection.
- Implement remote monitoring and condition-based maintenance as potential IoT ideas.
Nested Experience Groups
Dylan Schuster: I do. Can everybody hear me?
Brandon: Yeah, I can hear you.
Dylan: Okay, great. So, there really isn't a limit on how far down the tree you can go. What you're going to be limited by is how many Experience groups are included in your sandbox or in your Losant Organization. If you have, for example, 100 groups available to you, you could go one group that has one child, that has one child, and just one child, etc., all the way down the line, all the way down to 100 levels deep if you’d want to. So, short answer, no limit on how deep you can go.
Brandon: All right, awesome. And here's a great question for Erin. So, Erin actually was the primary developer on Losant CLI which does a good job of making it easy to kind of synchronize and move around these resources. So, I think this might be an extension to the CLI but Erin you can speak to this. Will I be able to import the application I just showed into my own Losant account one day? You want to talk about that a little bit?
Erin Thompson: Yeah, sure. So, the Losant CLI makes it really easy for you to be able to download and upload things like Experiences, all your components pages files as well for CSS or different images you would like to reference within your Experience. And so, for this particular application, you could download it and utilize the CLI to then upload it into your application. There are some extra goodies in the repo that Brandon typed up for you guys, such as device setup and device recipes to set up those kinds of things, and those cannot be imported with the CLI. But I think the juicy part of that repo is the Experience itself and that can easily be done with the CLI.
Brandon: Cool, thanks, Erin. It’s definitely our intention as one of our future capabilities to extend either to CLI or somewhere else the ability to bundle up something large like this Kanarra application that includes a lot of different non-Experience resources as well as Experience resources and make that easy, almost like an application template, to import into your own Losant account. So, that's a big initiative for us for the second half of this year and going into the next year. But CLI, as it stands right now, you can use it to take everything in the Experience and files folder and dump those into your application. We've got a good question here about the random look [Phonetic 00:43:00] character. So, I was using, in my example here, the device ID in the URL parameters and also, basically, some randomly generated serial number. So, there are some areas within this application that looked a bit like random numbers and how...can you redefine those, etc. So, the answer to that… I'll take that one. Actually no, Dylan you want to take that one? I think the answer would involve using some tags essentially to implement kind of an external ID system rather than piggybacking on our direct device ID. Can you go into a little more detail?
Dylan: Yeah, tags will be one option of doing it. What I was originally thinking when I saw the question come through was that it could be on you, the Losant user, to set up your application in a way that you would use unique URL-friendly names for your resources. And you could use the workflow engine to look up those devices or groups or wherever else you want to replace an ID using that name. That puts a lot of onus on you to make sure that you're only using URL from the characters and you’re also uniquely naming your resources, as we do not enforce uniqueness on the Losant side for most resources including devices and Experience groups. So, the tags option will definitely work. You could use a short ID in that case, so whatever it is you're comfortable with. I believe there actually is a generate ID node in the workflow engine that can generate short IDs or what we call nano IDs, still not especially pretty but much shorter than the ones that you're seeing in the URL right now. That’d be another option, too.
Brandon: Yeah, perfect. Yeah, we see that implemented a lot especially when it comes to third-party or external device management services where there's an external device identifier and you want to keep using that external identifier. In almost every place where you can reference a device by one of a Losant ID, you can also reference it by a tag. So, all the workflow places where you're looking up a device ID, you would just switch that to look it up by tag. So, most places you can propagate through really any friendly name or external ID that you'd like. A really good question about user roles, and I'll actually take this one because I didn't show it. But if you do check out the repository, you may see some references to it. When we launched Experience groups, we thought of them as a user role, almost a permissions capability. So, I'll make a group and I'll call the group admin, any user assigned to the admin group gets some kind of capability. What we found very quickly and why we kind of moved groups into being a tenancy model was most users just wanted to use them to divide and organize and carve up their devices into tenants or customers or geographic regions. They weren't thinking of them really in terms of roles. However, that opened up a question about… This one is specifically is how should I do user roles? What I implemented in the Kanarra reference example was, I used user tags, and I actually put a role tag on a user, the key is called role, and the value is whatever you would like to implement from your role system. And in this case, there's actually a device provisioning registration flow as part of Kanarra. We don't have time to demo it today. Maybe on a subsequent deeper dive, we'll get into that one. But the register button, it'll show up in the top right only if your user of that role tag exists on your user and it's set to admin. And then, there’s some permission checks to make sure you just directly went to the registration page. There you have access to it. So, my recommendation right now is to use the user tags to assign roles to users that then you can check in the workflows and on Experience views. If it gets very complicated, you can also switch to data tables. I know some of our internal solutions team makes heavy use and very successful use of data tables to hold a user role model that then the user tag can kind of associate a row in this roles data table for more deeper understanding. I will do one last question here and we’ll give you guys some time back and this is a good one for Dylan, simple question. What's the future of Experiences? I know, Dylan, you got a lot of thoughts about this and I know we've been tossing around a lot of ideas. So, you want to go through some of our high-level of these concepts?
Dylan: Yeah. In short, I would say the future of Experiences is much, much easier for the Losant user to build out the Experience. When we first launched this feature, God, over a year and a half ago at this point, we primarily thought our users were going to be using application Experiences to write endpoints and hosting and building their own custom UIs. What we ended up finding out was that most of our users instead wanted to build the actual interface itself inside of the Losant system, also. So, we added in the Experience pages. I'm sure if you're on this Webinar, you're probably familiar with how Experience pages work and know that it is quite a painful experience right now to get something up and running. We want to streamline a lot of that process, the CLI is a great step in that direction. But we also want to make it a lot easier within the Losant web interface also to not only configure your endpoints to decide which pages are going to be returned and skipping out a lot of those middle steps, but also to bring some sort of drag and drop interface and sort of what's called a WYSIWYG editor, what you see is what you get, WYSIWYG editor, into the platform so that you can build out your entire experience with virtually no code at all. Probably expose a lot of common layout components and a lot of common Losant components like, for example, that group check box that Brandon displayed earlier that message group check box. Things like that that are common to be used across a lot of our users making that into a single component that could just be dropped in, and boom, you're done, that kind of thing. So, we're really looking to move in that direction now with the whole experience building process.
Brandon: All right, awesome. So, in the last couple minutes here, I've got just a couple of wrap-up slides. If you joined us today and we didn't cover something you’re really interested in covering or there’s a different topic within Losant that you're very interested in learning more about, please let us know. You can reach us on the forums. You can certainly contact us, however you want to do it, let us know what an idea might be for a Deeper Dive Webinar. And that's it. Thanks everyone for joining us. We'll be sending out a recording. There is, on the Losant website, a Deeper Dive landing page that always has access to all of our previous deeper dives so the recording will be put there. So, if you missed a little bit of this or want to invite others in your organization to see some of this capability if it's meaningful for them, please send them the recording so they can check it out as well. Well, until next time, thanks everybody, and have a good afternoon.