> For the complete documentation index, see [llms.txt](https://docs.bluefletch.com/bluefletch-enterprise/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bluefletch.com/bluefletch-enterprise/product-guides/support-application/sa-6/features/network-diagnostics.md).

# Network Diagnostics

A Support Application 6 feature that provides on-device network testing tools for throughput, reachability, and signal strength.

## Overview

Use Network Diagnostics to test and troubleshoot network connectivity on the device. The feature covers three related but distinct tools: Speed Test, Network Test, and Wi-Fi Signal Test. Speed Test measures download and upload throughput. Network Test tests reachability and latency against configured endpoints. Wi-Fi Signal Test displays live Wi-Fi signal strength for on-site coverage troubleshooting.

Speed Test is visible on the Dashboard by default. Scheduled Network Test runs are disabled by default, with a default interval of 4 hours when enabled.

## User Guide

To configure Network Diagnostics, complete the following steps:

1. Set speedTestUrl and speedTestPing to configure the Speed Test throughput and ping targets.
2. Set allowSpeedTestUI to true or false to show or hide the Speed Test button on the Dashboard.
3. Configure the Network Test endpoints via networkTest.bfUrlsand networkTest.orgUrls.
4. To enable scheduled Network Test runs, setperiodicNetworkTest.enable to true and configure the interval and endpoint sources.
5. Set disablePingFromDevice to true if remote-triggered testing is preferred over device-initiated ping.

## Configuration

### Configuring the Speed Test

Set speedTestUrl for download/upload throughput testing andspeedTestPing for ping during Speed Test:

```json
"bfSupportAgent": {
"speedTestUrl": "https://speed.example.com",
"speedTestPing": "https://ping.example.com"
}
```

### Hiding the Speed Test Button

To hide the Speed Test button on the Dashboard, setallowSpeedTestUI to false:

```json
"bfSupportAgent": {
"allowSpeedTestUI": false
}
```

### Configuring Network Test Endpoints

Set networkTest.bfUrls for BlueFletch-provided endpoints andnetworkTest.orgUrls for org-provided endpoints:

```json
"bfSupportAgent": {
"networkTest": {
  "bfUrls": ["https://bf-endpoint1.example.com", "https://bf-endpoint2.example.com"],
  "orgUrls": ["https://org-endpoint1.example.com"]
}
}
```

### Enabling Scheduled Network Test Runs

To enable scheduled (non-interactive) Network Test runs, setperiodicNetworkTest.enable to true and configure the interval and endpoint sources:

```json
"bfSupportAgent": {
"periodicNetworkTest": {
  "enable": true,
  "interval": 4,
  "bfEndpoints": true,
  "orgEndpoints": true
}
}
```

If neither bfEndpoints nor orgEndpoints is set, BlueFletch endpoints are used by default.

### Disabling Device-Initiated Ping

To disable device-initiated ping where remote-triggered testing is preferred, set disablePingFromDevice to true:

```json
"bfSupportAgent": {
"disablePingFromDevice": true
}
```

This table provides the settings for the Network Diagnostics feature.

| Configuration                    | Type           | Default | Description                                                                                                                                                             |
| -------------------------------- | -------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| speedTestUrl                     | String         | -       | URL used for download/upload throughput testing                                                                                                                         |
| speedTestPing                    | String         | -       | URL used for ping during Speed Test                                                                                                                                     |
| allowSpeedTestUI                 | Boolean        | true    | Show/hide the Speed Test button on the Dashboard                                                                                                                        |
| periodicNetworkTest.enable       | Boolean        | -       | Enables scheduled (non-interactive) Network Test runs via `PeriodicNetworkTestWorker`                                                                                   |
| periodicNetworkTest.interval     | Integer(hours) | 4       | Interval between scheduled runs, clamped to 2–24 hours                                                                                                                  |
| periodicNetworkTest.bfEndpoints  | Boolean        | -       | Include BlueFletch-provided endpoints in the test set                                                                                                                   |
| periodicNetworkTest.orgEndpoints | Boolean        | -       | Include org-configured endpoints (`networkTest.orgUrls`) in the test set. If neither `bfEndpoints` nor `orgEndpoints` is set, BlueFletch endpoints are used by default. |
| networkTest.bfUrls               | String Array   | -       | BlueFletch-provided endpoint URLs                                                                                                                                       |
| networkTest.orgUrls              | String Array   | -       | Org-provided endpoint URLs                                                                                                                                              |
| disablePingFromDevice            | Boolean        | false   | Disables device-initiated ping where remote-triggered testing is preferred                                                                                              |

### Error Handling

| Scenario                                | Expected behavior                                                      | Recovery                            |
| --------------------------------------- | ---------------------------------------------------------------------- | ----------------------------------- |
| No network connectivity                 | Test fails immediately with a clear failure result rather than hanging | Retry once connectivity is restored |
| `speedTestUrl`/endpoints not configured | Test cannot run / returns no data                                      | Provide URLs in configuration       |

## Putting It All Together

For the example described above, the full configuration for the Network Diagnostics feature is as follows:

```json
"bfSupportAgent": {
"speedTestUrl": "https://speed.example.com",
"speedTestPing": "https://ping.example.com",
"allowSpeedTestUI": true,
"disablePingFromDevice": false,
"networkTest": {
  "bfUrls": ["https://bf-endpoint1.example.com", "https://bf-endpoint2.example.com"],
  "orgUrls": ["https://org-endpoint1.example.com"]
},
"periodicNetworkTest": {
  "enable": true,
  "interval": 4,
  "bfEndpoints": true,
  "orgEndpoints": true
}
}

```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.bluefletch.com/bluefletch-enterprise/product-guides/support-application/sa-6/features/network-diagnostics.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
