New version 12
Posted: 13 Sep 2024, 17:03
The Dawn of a New Era for HSNM Hotspot Manager
Introduction
In the released versions of the last few years, we have invested heavily in enriching the system with new features, services, integrations, etc. However, we have neglected the Welcome Portal and its associated Apps. In particular have developed over time in a way that made any possible changes difficult, if not impossible.
Therefore, it was necessary to completely rewrite the Welcome Portal and its Apps with the following objectives:
• Separating logic from graphic to distinguish development tasks (graphics and programming);
• Developing the logic to be easily extendable and modifiable, with the ability to overwrite various functions;
• Centralise all Welcome Portal and App logic on a session management macro class and a JS support library (wpl) with all basic functionality for both the Welcome Portal and the Apps;
• Modernising the graphic of the Welcome Portal and Apps;
• Standardising the App graphics;
• Changing the user purchase/registration logic by first displaying products with their prices, then proceeding to registration/payment, following the logic of e-commerce;
• Providing support functions for users (FAQ, landline phone numbers, WhatsApp and e-mail);
• Implementing an event-driven system, also conditioned by products, to display advertisements at the various stages of login, registration, etc.;
• Last but not least, maintaining maximum backward compatibility by sacrificing any customised CSS and JS (an unavoidable choice when changing the HTML structure).
Change Log
Welcome Portal
• Rewrote the entire Welcome Portal and all its Apps, simplifying the user interface. Specifically:
o The basic structure of the Welcome Portal remains the same for compatibility with the past, although all HTML/CSS is different and better structured;
o Redesigned the sidebar for language selection, Apps, etc., with a new graphic;
o The entire Welcome Portal is extendable to future templates that will allow for different graphics from the basic one;
o Rewrote the Info App with a new graphic and with hidden and expandable manager info;
o Rewrote the Login App with a new graphic and changed the registration flow. Users now select the product first before providing their data/payment;
o Rewrote the Connection Status App with a new graphic;
o Rewrote the Weather App with a new graphic;
o Rewrote the User Profile App with a new graphic, also making it easier for users to manage the Family DNS (Parental Control);
o Added the FAQ App;
o Improved the system for integrating Custom Apps.
• Improved performance of the Welcome Portal;
• Provided a data management library;
• Provided a library for managing the Welcome Portal user interface;
• Increased automation in registration. For example, if there are no paid products or vouchers for the domain, and user recognition by MAC address is active but no user is found by MAC address, with no virtual gateways and free products available, the Welcome Portal Login App automatically switches to registration by assigning the first free product defined in the domain;
• Customised Apps for the Welcome Portal can now be exported and imported;
• The content of the "Theme" field in templates has been changed to manage the themes of the new Welcome Portal;
• Now in the template it is possible to customise the colour for Apps without using custom CSS;
• The size of the app bar now automatically adapts to the content type of the buttons.
• In the templates it is now possible to define the content type of the app bar. Possible values are: Image and text; Image only; Text only;
• In the templates an option allows to show or hide the top bar with the image and the title;
• In the domain, in the 'User registration fields', an option has been added to define whether or not to require the international telephone country calling code.
• Revised the Map App. On low-resolution devices, when viewing the details of a location, the map is now always visible at the top to help orientate the users.
HelpDesk & FAQ for Welcome Portal Users
• General options and the manager can now include HelpDesk information for users, including phone number, WhatsApp number, email address, and activation hours;
• At system, reseller, manager, domain and gateway level it is now possible to add questions and answers to be displayed in the Welcome Portal FAQ App;
• Added the new FAQ App to the Welcome Portal;
• Added in the template new options to display or hide HelpDesk and FAQ within the "Login", "Info", and "Connection Status" apps;
• Added options to customise the FAQ icon in the template.
Advertising Campaigns
• Campaign side banners now retain their proportions and resize automatically according to device resolution;
• In both domains and gateways, it is now possible to activate full-screen advertising during the following events: upon opening the Welcome Portal; upon first opening the Login App; before the authentication; and upon registration of a new user. Full-screen advertising interrupts the current procedure and forces the user to view ads with images, videos, etc. for a specified number of seconds defined in the campaign;
• In products, it is now possible to define whether to display full-screen advertising campaigns and at which events (at login, registration, etc.). This allows disabling ads for users with paid products;
• Full-screen advertising campaigns no longer overwrite any Welcome Portal Intro defined in the template.
Surveys
• New In the answers to Surveys, Quizzes, or Tests, it is now possible to define "Tags" that are added to the User's Data when they are filled in. A "Tag" is a keyword, also called a label, which allows the user to be profiled according to the interests expressed;
• New In the "Target" of campaigns, it is now possible to define the "Tags" of users to whom display the campaign. In other words, campaigns can be displayed according to the answers given in surveys, quizzes, or tests;
• New Added the "Tags" field in the Export of Registered Users.
Payments
• Pending payments can now also be activated for Hotspot users. This can be used to activate a post-payment system (assigning a product of a certain value from the backend and requesting payment at the first login) or to settle outstanding debts independently of the internet service;
• Under “Currency and Payment Systems” it is now possible to define the transaction type (PayBill Online and Buy Goods Online) for payments with “Safaricom M-Pesa”;
• New In the Currency and Payment Systems of the manager, it is now possible to define the default "Payment System" so that it is pre-selected in the user's purchase process;
• A column has been added to the list of users which displays an icon for outstanding payments.
Family DNS
• Added an internal blacklist to the Family DNS of domains known to be “NXDOMAIN” to improve performance;
• Rewrote data management for FamilyDNS blacklists to enhance performance and adaptability for future expansions.
Gateway
• Added an option in Mikrotik gateway configuration to enable user log in and log out via API;
• Improved PPPoE configuration generation for Mikrotik NAS;
• Added Arista and Plasma Cloud gateway types (beta version);
• The radius login procedure for gateways on slow or problematic connections has been revised. The system now automatically attempts multiple connections;
• Now at the virtual gateway level it is possible to define: Custom Apps; Frequently Asked Questions; Custom Images; Languages; Surveys, Quizzes or Tests; Templates; Translations;
• Virtual gateways can now include specific advertising.
• An option has been added to the gateway configuration that, whether the Captive Network Assistant (CNA) appears, prompts the users to open the standard browser and navigate to the provided URL.
Miscellaneous
• In the import of system utility users and data management tools, a check was added to define whether or not overwrite duplicate users;
• All fields in "Modules and Limits" for resellers and managers can now only be edited if the user has written permissions for "Modules and Limits" without having admin permissions. This allows system users to have "Admin" permissions without the ability to write on "Modules and Limits" data. In this way, system users can manage reseller and/or manager data without changing their licence limits;
• The variable name for email and SMS notifications has been changed from %CompanyName% to %ManagerCompanyName%. The update automatically changes the variable name;
• In order to be able to add the user's company name in the email and SMS notifications, the variable %CompanyName% was added;
• Now system users, even if they do not have 'Write' permissions on their account, can change their access password.
• Changed the Card export function to include only the necessary data in the file, facilitating external reading and printing.
• Added a search function to combobox-type fields in the backend, where there could potentially be a large amount of data, such as products, countries, etc.
• Improved the dashboard recalculation times by introducing a cache system for historical data.
• The 'Security for Backend' settings defined in the System Settings are now applied to all backend-related functions, thereby enhancing security levels. Consequently, if an attacker attempts to exploit a function to access information, it is blocked before any other checks are performed.
Subsystem
• New Subsystem 5.0 with security updates available;
• Performance and security improvements.
Removed Functionality
• The "Colour for Template" field is no longer available in general options, domains, gateways, and virtual gateways. Setting the colours for Apps can now be customised using the designated fields;
• Pop-ups are no longer supported in advertising campaigns because they have been replaced by “Full Screen” campaigns;
• The "Assign free product" domain option has been removed, as users now start by choosing their desired product;
• Since the Help Desk options have been added, the user help in the sidebar has been removed;
• The update automatically disables HTML, CSS and Javascript customisations defined at template level as they are no longer compatible;
• For security reasons, it is no longer possible to externally define an IFRAME containing the user profile app. From this version, it must be used the URL http(s)://DomainName/gatewayid/GatewayID", which contains the Welcome Portal that will allow users to log in.
• The ‘Reload’ button from the Login App. The recharge procedure is now performed automatically if the product has expired or is exhausted.
Introduction
In the released versions of the last few years, we have invested heavily in enriching the system with new features, services, integrations, etc. However, we have neglected the Welcome Portal and its associated Apps. In particular have developed over time in a way that made any possible changes difficult, if not impossible.
Therefore, it was necessary to completely rewrite the Welcome Portal and its Apps with the following objectives:
• Separating logic from graphic to distinguish development tasks (graphics and programming);
• Developing the logic to be easily extendable and modifiable, with the ability to overwrite various functions;
• Centralise all Welcome Portal and App logic on a session management macro class and a JS support library (wpl) with all basic functionality for both the Welcome Portal and the Apps;
• Modernising the graphic of the Welcome Portal and Apps;
• Standardising the App graphics;
• Changing the user purchase/registration logic by first displaying products with their prices, then proceeding to registration/payment, following the logic of e-commerce;
• Providing support functions for users (FAQ, landline phone numbers, WhatsApp and e-mail);
• Implementing an event-driven system, also conditioned by products, to display advertisements at the various stages of login, registration, etc.;
• Last but not least, maintaining maximum backward compatibility by sacrificing any customised CSS and JS (an unavoidable choice when changing the HTML structure).
Change Log
Welcome Portal
• Rewrote the entire Welcome Portal and all its Apps, simplifying the user interface. Specifically:
o The basic structure of the Welcome Portal remains the same for compatibility with the past, although all HTML/CSS is different and better structured;
o Redesigned the sidebar for language selection, Apps, etc., with a new graphic;
o The entire Welcome Portal is extendable to future templates that will allow for different graphics from the basic one;
o Rewrote the Info App with a new graphic and with hidden and expandable manager info;
o Rewrote the Login App with a new graphic and changed the registration flow. Users now select the product first before providing their data/payment;
o Rewrote the Connection Status App with a new graphic;
o Rewrote the Weather App with a new graphic;
o Rewrote the User Profile App with a new graphic, also making it easier for users to manage the Family DNS (Parental Control);
o Added the FAQ App;
o Improved the system for integrating Custom Apps.
• Improved performance of the Welcome Portal;
• Provided a data management library;
• Provided a library for managing the Welcome Portal user interface;
• Increased automation in registration. For example, if there are no paid products or vouchers for the domain, and user recognition by MAC address is active but no user is found by MAC address, with no virtual gateways and free products available, the Welcome Portal Login App automatically switches to registration by assigning the first free product defined in the domain;
• Customised Apps for the Welcome Portal can now be exported and imported;
• The content of the "Theme" field in templates has been changed to manage the themes of the new Welcome Portal;
• Now in the template it is possible to customise the colour for Apps without using custom CSS;
• The size of the app bar now automatically adapts to the content type of the buttons.
• In the templates it is now possible to define the content type of the app bar. Possible values are: Image and text; Image only; Text only;
• In the templates an option allows to show or hide the top bar with the image and the title;
• In the domain, in the 'User registration fields', an option has been added to define whether or not to require the international telephone country calling code.
• Revised the Map App. On low-resolution devices, when viewing the details of a location, the map is now always visible at the top to help orientate the users.
HelpDesk & FAQ for Welcome Portal Users
• General options and the manager can now include HelpDesk information for users, including phone number, WhatsApp number, email address, and activation hours;
• At system, reseller, manager, domain and gateway level it is now possible to add questions and answers to be displayed in the Welcome Portal FAQ App;
• Added the new FAQ App to the Welcome Portal;
• Added in the template new options to display or hide HelpDesk and FAQ within the "Login", "Info", and "Connection Status" apps;
• Added options to customise the FAQ icon in the template.
Advertising Campaigns
• Campaign side banners now retain their proportions and resize automatically according to device resolution;
• In both domains and gateways, it is now possible to activate full-screen advertising during the following events: upon opening the Welcome Portal; upon first opening the Login App; before the authentication; and upon registration of a new user. Full-screen advertising interrupts the current procedure and forces the user to view ads with images, videos, etc. for a specified number of seconds defined in the campaign;
• In products, it is now possible to define whether to display full-screen advertising campaigns and at which events (at login, registration, etc.). This allows disabling ads for users with paid products;
• Full-screen advertising campaigns no longer overwrite any Welcome Portal Intro defined in the template.
Surveys
• New In the answers to Surveys, Quizzes, or Tests, it is now possible to define "Tags" that are added to the User's Data when they are filled in. A "Tag" is a keyword, also called a label, which allows the user to be profiled according to the interests expressed;
• New In the "Target" of campaigns, it is now possible to define the "Tags" of users to whom display the campaign. In other words, campaigns can be displayed according to the answers given in surveys, quizzes, or tests;
• New Added the "Tags" field in the Export of Registered Users.
Payments
• Pending payments can now also be activated for Hotspot users. This can be used to activate a post-payment system (assigning a product of a certain value from the backend and requesting payment at the first login) or to settle outstanding debts independently of the internet service;
• Under “Currency and Payment Systems” it is now possible to define the transaction type (PayBill Online and Buy Goods Online) for payments with “Safaricom M-Pesa”;
• New In the Currency and Payment Systems of the manager, it is now possible to define the default "Payment System" so that it is pre-selected in the user's purchase process;
• A column has been added to the list of users which displays an icon for outstanding payments.
Family DNS
• Added an internal blacklist to the Family DNS of domains known to be “NXDOMAIN” to improve performance;
• Rewrote data management for FamilyDNS blacklists to enhance performance and adaptability for future expansions.
Gateway
• Added an option in Mikrotik gateway configuration to enable user log in and log out via API;
• Improved PPPoE configuration generation for Mikrotik NAS;
• Added Arista and Plasma Cloud gateway types (beta version);
• The radius login procedure for gateways on slow or problematic connections has been revised. The system now automatically attempts multiple connections;
• Now at the virtual gateway level it is possible to define: Custom Apps; Frequently Asked Questions; Custom Images; Languages; Surveys, Quizzes or Tests; Templates; Translations;
• Virtual gateways can now include specific advertising.
• An option has been added to the gateway configuration that, whether the Captive Network Assistant (CNA) appears, prompts the users to open the standard browser and navigate to the provided URL.
Miscellaneous
• In the import of system utility users and data management tools, a check was added to define whether or not overwrite duplicate users;
• All fields in "Modules and Limits" for resellers and managers can now only be edited if the user has written permissions for "Modules and Limits" without having admin permissions. This allows system users to have "Admin" permissions without the ability to write on "Modules and Limits" data. In this way, system users can manage reseller and/or manager data without changing their licence limits;
• The variable name for email and SMS notifications has been changed from %CompanyName% to %ManagerCompanyName%. The update automatically changes the variable name;
• In order to be able to add the user's company name in the email and SMS notifications, the variable %CompanyName% was added;
• Now system users, even if they do not have 'Write' permissions on their account, can change their access password.
• Changed the Card export function to include only the necessary data in the file, facilitating external reading and printing.
• Added a search function to combobox-type fields in the backend, where there could potentially be a large amount of data, such as products, countries, etc.
• Improved the dashboard recalculation times by introducing a cache system for historical data.
• The 'Security for Backend' settings defined in the System Settings are now applied to all backend-related functions, thereby enhancing security levels. Consequently, if an attacker attempts to exploit a function to access information, it is blocked before any other checks are performed.
Subsystem
• New Subsystem 5.0 with security updates available;
• Performance and security improvements.
Removed Functionality
• The "Colour for Template" field is no longer available in general options, domains, gateways, and virtual gateways. Setting the colours for Apps can now be customised using the designated fields;
• Pop-ups are no longer supported in advertising campaigns because they have been replaced by “Full Screen” campaigns;
• The "Assign free product" domain option has been removed, as users now start by choosing their desired product;
• Since the Help Desk options have been added, the user help in the sidebar has been removed;
• The update automatically disables HTML, CSS and Javascript customisations defined at template level as they are no longer compatible;
• For security reasons, it is no longer possible to externally define an IFRAME containing the user profile app. From this version, it must be used the URL http(s)://DomainName/gatewayid/GatewayID", which contains the Welcome Portal that will allow users to log in.
• The ‘Reload’ button from the Login App. The recharge procedure is now performed automatically if the product has expired or is exhausted.