# Click-through

When captive portal is enabled and authentication type is set to "Click-through", the user is redirected to a splash page and clicks on a link to be granted access to the Internet.&#x20;

## Overview

### Communication Flow

Following figure shows the communication flows and steps for a Click-through captive portal with external splash page server.

![](/files/-LrEs5dGSVGdf0IZugHM)

1. A new wireless client tries to connect to a Captive Portal enabled SSID served by an Access Point.
2. The AP intercepts the request and redirect the user to the external splash page which is served by a external web server configured in `SSID's splash page` setting. In addition, an **`actionurl`** parameter is passed to the splash page such that browser can be redirected back to the cloud after submission in splash page.
3. Splash page content with **`actionurl`** parameter are delivered to browser.&#x20;
4. User clicks on the confirmation link or submit button in the splash page and then be redirected to **`actionurl`** to complete the authentication.

### Parameters

In previous Section Step 2, the actionurl parameter is composed of a cloud URL with extra parameters. A https request sample to the splash page could be like this:

```http
https://yourwebsite.com/splash.html?actionurl=https://falcon.service.engenius.ai/captive-portal/auth%3Fuserurl=https://www.google.com/%26loginurl=http://192.168.200.1:4990/www/login.chi%26mac=0C:D2:92:42:0C:57%26called=8A:DC:96:21:FF:E5
```

The [https://yourwebsite.com/splash.html](https://xxxxx/splash.html) here is the splash page setting customized for corresponding SSID. The details of the actionurl parameters are listed as follows:

| Parameter Name | Description                                                                                             |
| -------------- | ------------------------------------------------------------------------------------------------------- |
| vendor         | Should be "EnGenius"                                                                                    |
| ap\_ip         | IP address of associated AP                                                                             |
| ap\_mac        | MAC address of associated AP                                                                            |
| ap\_port       | AP service port                                                                                         |
| client\_ip     | IP address of the wireless client                                                                       |
| client\_mac    | MAC address of the wireless client                                                                      |
| userurl        | The URL that user tried to visit before authenticated                                                   |
| mac            | <p>Client's MAC address (will be obsolete after 2021)</p><p>please use <strong>client\_mac</strong></p> |
| called         | <p>AP's MAC address (will be obsolete after 2021)</p><p>please use <strong>ap\_mac</strong></p>         |
| nas\_id        | Network access server identifier is used to notify the source of a RADIUS access request.               |

## Enabling an External Splash Page on EnGeniusCloud

1. Select a network in [Org-tree](https://doc.engenius.ai/home-cloud-user-manual/working-with-org-trees).
2. Select SSID in the configuring tool menu.
3. Choose the SSID you want to configure.
4. switch to `Captive Portal` Tab and make sure your Captive Portal is enabled and Authentication Type is set to "`Click-through`".
5. switch to `Splash Page` Tab. Select "`External Splash Page URL"`.
6. Enter the URL of your custom splash page (eg, <https://yourwebsite.com/splash.html>).
7. Click on "`Apply`" button.

## Configure the External Splash Page Server

The external splash page must be hosted on a web server that will be accessible from the Access Points on your network. The following must be accomplished, but the particular details will depend very much on your web hosting environment.

1. Setup the Web Server.
2. Modify the splash page to set **`form action`** as the value of **`actionurl`** passed by cloud. In this way, after the user submit the form, he will be redirected to specific URL and complete the authentication.
3. Another way to implement the splash page is to have a hyperlink redirect the browser to `actionurl`. For Example:&#x20;

   `<a href="<?php print $_GET['actionurl'] ?>">For all in one url</a>`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.engenius.ai/home-cloud-white-papers/captive-portal/external-splash-page/click-through.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
