We are excited to announce the release of a new WU optimized plugin on Bubble marketplace!
Now you can see whether the user is online, and track how many users are in your app right now. WITHOUT ANY WU CONSUMPTION!
Key Features:
Real-Time Data: Track user activity within your application in real-time.
User Presence: Log specific pages where users are located.
Unique User Count: Record the number of unique users currently active in your application.
Creating features such as live chat has always been a problem, because when it comes to tracking if the user is online right now, usually developers had to set repeating actions which create load on the server and consume many workload units.
With this solution, itās no longer a problem. You can see:
how many users are online
who are they
what pages theyāre on
And all this by installing a single plugin element.
For now the plugin is able to reflect the current state of users activity in your application: the users online, which pages they are on and the unique number of users online. Right now weāre working on implementing a system to collect more information about users (their devices, countries etc.), that is going to be in the next update. Also our plan is to store such information to be able to get a statistic for the previous day or any other range of time.
Right now thereās no functionality to check userās last activity in this plugin, but we love the idea. Weāll consider adding it as well!
As for technical implementation, the plugin utilizes a websocket connection which allows it to collect and display the information in a real time without a need to update a page, which helps to avoid WU consumption. Also the plugin has the API actions to get the information on demand.
Feel free to reach out if you have any other questions!
Just to be clear, does this use 0 WUs or the amount showed on the demo page?
I would like to know if its possible to have an event, whenever a user logs in. The feature Iām trying to build is display an Alert message to admins in my Admin dashboard whenever a user logs into the app.
Something like āJane Doe just logged into x page/x dashboardā
The tracking of user sessions itself does not consume any WUs. The amount displayed on the demo page is the number of WUs consumed by regular app operation.
As for the event for when a user logs in, I think we can add this functionality, but just wanted to check on what exactly you need here. Do you want to:
Fire this event every time when user logs into the application? (in this case if they had an active session and just opened the app, we wonāt track this event)
Or fire it every time when user opens the application after being inactive? (e.g. Jane opened dashboard page, we check that she was not active on any other pages at the moment, so we fire the event).
Or do you want to fire an event each time someone opens any page in the application?
Please let us know what works best for your use case
Upon further thinking, I guess this can be achieved simply by adding an extra action to the Login workflow by creating a new Login or Session datatype for my use case. This way, I can check a list of all login sessions for my users.
What Iām then trying to track is how long a session lasts, accurately, and save a list of āActivityā datatypes under the current session. The problem I come across is sometimes users get logged out of the app after some inactivity or they simply close the tab/window without triggering the logout workflow, so Iām unable to update the current userās latest login session to mark the ending of that session.
Also, I want to accurately track when a user was last active inside my app/pages. For example, Last active: date and time.
I opened your demo page from my laptop and mobile, and it accurately and near instantly showed the 2 unique sessions. However, I put my phone down and only used the laptop, but the unique user count was still reflecting as 2. While technically correct, practically the mobile session was inactive. What I think would help is having an isActive option to track if a given sessionās app is actually opened and when its last action was?
Adding the device login and IP location would make this a super useful app and Iād subscribe right away.
Any idea if the above is possible and if so, when we could expect to see any update?
Thank you for waiting. Based on your suggestions, we have implemented the following improvements:
Handling Inactive Sessions: To address the issue of users being inactive, weāve introduced an isActive option. This tracks whether a user is actually active in the app and marks sessions as inactive after 10 seconds of inactivity.
Device Login and IP Location: We have added the feature to log the device and IP location for each session to provide additional context about the userās login environment
Please check the updated system (Demo Page) and let us know if these changes meet your requirements. Your feedback is crucial for us, and we want to ensure that the solution works perfectly for your needs. If thereās anything more youād like to see, feel free to reach out.
Is it possible to group users on a page by a dynamic database value? I have a page called āclassroomā but different students from different classes will be on the same page. How do I know how many ā class x ā and ā class y ā students are online on the classroom page?
I found the real browser name is not mentioned, instead the whole user agent string is returned. When I check with https://www.whatsmybrowser.org/ it shows the actual browser name and not the full user agent string.
It will be very good to have the accurate browser details returned so we can determine when bugs are occurring on different browsers.
[Plugin Update] User Online Detector 0 WU ā New Features and Optimizations
Hello everyone,
Weāre excited to announce the release of a new version of our User Online Detector 0 WU plugin! This update brings several improvements and new features aimed at enhancing performance and flexibility. Hereās whatās new:
Key Updates:
Optimized User Retrieval (No API Calls)
While the plugin itself did not consume WU, the previous version used an API call via Bubbleās API connector to retrieve the list of users, which led to some WU consumption. With this update, thereās no longer a need for such API requests. The retrieval of users is now handled entirely within the plugin, reducing WU consumption significantly.
New Filtering Options for User Lists
You can now filter the list of online users by userās fields. This provides greater flexibility in controlling which users are displayed, allowing you to customize the experience based on various criteria.
New Event for User Session End
Weāve added an event that triggers when a userās session ends. You can use this event to perform actions like sending notifications or updating your database when a user goes offline.
Detailed User Information
The new version offers an option to retrieve additional information about users directly from Bubbleās database. You can enable this feature in the settings and check out a demo of this implementation here: Demo.
Detailed Device Information
The plugin now allows user device information to be displayed separately, including details about the platform, operating system, and more, rather than being stored in a single string. This makes it easier to analyze and utilize user data effectively.
Improved Documentation
Weāve updated the documentation to include detailed explanations of the new features. You can view the latest version here: Plugin Documentation.
However, Iāve got an issue where the active page for a user isnāt being updated when they move to a different page. I have my app set up as a single page app so the page isnāt being refreshed as such but the URL path is changing which determines what content is visible on screen. Is it possible to update an active URL for a user in this scenario so the users active URL is always accurate?