Is there a way to force an experience user (like a pop up window) to perform certain setup functions before they begin viewing their data? My example would be the user must create an instance of a “Machine” and assign sensors to that “Machine” when they first log in to the end user experience, once complete the alert goes away and they are ready to look at the data and view the device information.
Hello!
There are many ways you can accomplish this. You could implement an assortment of nodes into a login workflow that would create conditions for a pop up or modal. You could use a Conditional node that would route the user to see pop-up or webpage on first login, or before conditions are met; the Latch node may come in handy with a reset for after the user meets your requirements. You could also implement this with only client side javascript, something like a modal or popup with a conditional statement.
Let me know if this did not answer your question!
Thanks,
Julia
Hello again,
Apologies, just wanted to add to this answer as I missed a part of your question! In order to check and see if a user has completed your sensor assignment, I would recommend adding an experience user tag that can be set to true when a user has completed your set up. The workflow will then be able to access this tag value and route the user to the correct page.
Thanks!
Julia
Julia,
This was a helpful addition. Thank you!
-Leo
I am struggling a bit to understand the technical differences between storing something in a data table vs storage of information in a user experience tag.
Let say I have a user Bob.
Bob has logged in and completed his first task that we want to track.
He filled out his phone number.
What would be the advantage/disadvantage of putting boolean value of TRUE into the hasCompletedFirstTask column of a users
The biggest advantage to using user tags is that they are automatically added to the payload whenever an authenticated user requests an Experience Endpoint. When using a Data Table, you’ll have to use a Table: Get Rows Node to perform the separate lookup.
The tags will be added to the payload at experience.user.userTags
.
That data is also automatically available on the page context, which means you can access it without needing a workflow at all. This is sometimes useful if you’re just displaying user information.
Brandon,
Such a fast response from my accidental submission that I haven’t had time to finish reformulating my question so that it is coherent. Haha 10/10 support.
Are there any downsides to using the user tags?
Can user tags be edited in the workflows the same way data tables can?
The Update User Node does allow you to edit any tags on a user.
The downside to user tags is that you can’t query this data as easily as you can a Data Table. For example, if you wanted to get a list of all users based on the value of these tags, a Data Table could be an easier approach.
Brandon,
Thanks! This has helped me have a better understanding.
Ex.1:
I want to look up all the users associated with a specific “company” then I am best off storing this piece of information using a data table which I can query.
Ex. 2
I don’t see the need to ever look up all users that have completed their first task so a user tag makes sense. I may want to take a user which hasn’t completed his first task to a different page than users who have completed their first task. In this case, a user tag would be useful for making those decisions upon login.