Skip to main content

TitanHQ Product Docs

Custom JSON Configuration Examples

Custom JSON configuration can be added after OTG installation to handle adjustments other than filters to a device. Filters can now be managed from the UI in WebTitan using device exceptions. If a device exception is applied to a device, any filters entered using JSON will be ignored.

See Device Exceptions.

The examples below describe common OTG situations for users and the JSON configuration you can use for that situation.

Warning

Incorrect JSON configuration can cause OTG devices to stop working, so please edit with caution and test carefully.

There is a helpful JSON formatter and validator available at https://jsonformatter.curiousconcept.com/ external_link.png

See Editing the Custom JSON Configuration for a Single Device for details on how to view and edit the configuration for a single device.

See Editing the Global Custom JSON Configuration for details on pushing configuration changes out to all devices.

Note

JSON rules accept CIDR notation. For example:

"rule": "203.0.113.0/24"

Example 1: To hide the OTG OTG-W2-tray-icon.jpg icon from the system tray on a user machine after OTG installation.

Note

The show/hide system tray feature is available with WebTitan OTG 2 for Windows version 2.0.3 or later.

In the configuration example below, "tray_type" can have the following values:

  • "hidden": hides the tray icon.

  • "default": reads the registry value of "hide" or "unhide".

 {
   "cfg":{
      "persistent":{
         "key":""
      },
      "runtime":{
         "locations":[
           
         ],
         "user":"",
         "otg":{
 "tray_type":"hidden"
         }
      }
   },
   "filters":[]}

Example 2: If the public IP of a device is 203.0.113.0, use the default machine DNS resolver.

Tip

This filter can be managed from the UI using device exceptions. If a device exception is applied to a device, any filters entered using JSON will be ignored. See Device Exceptions.

{
   "filters":[
      {
         "rule":"203.0.113.0",
         "resolvers":[
            
         ]
      }
   ]
}

Example 3: If the public IP of a device is 203.0.113.0, use 198.51.100.0 as the DNS resolver.

Tip

This filter can be managed from the UI using device exceptions. If a device exception is applied to a device, any filters entered using JSON will be ignored. See Device Exceptions.

{
   "filters":[
      {
         "rule":"203.0.113.0",
         "resolvers":[
            "198.51.100.0"
         ]
      }
   ]
}

Example 4: If the public IP of a device is either 198.51.100.0 or 56.56.56.57 then use 203.0.113.0 as the DNS resolver.

Tip

This filter can be managed from the UI using device exceptions. If a device exception is applied to a device, any filters entered using JSON will be ignored. See Device Exceptions.

{
   "filters":[
      {
         "rule":"198.51.100.0",
         "resolvers":[
            "203.0.113.0"
         ]
      },
      {
         "rule":"56.56.56.57",
         "resolvers":[
            "203.0.113.0"
         ]
      }
   ]
}

Example 5: If a device is accessing the domain “example.com”, use 203.0.113.0 as the DNS resolver.

Tip

This filter can be managed from the UI using device exceptions. If a device exception is applied to a device, any filters entered using JSON will be ignored. See Device Exceptions.

{
   "filters":[
      {
         "resolvers":[
            "203.0.113.0"
         ],
         "domain":"example.com"
      }
   ]
}

Example 6: When a device is accessing the domain “example.com”, and the public IP of the device is 203.0.113.0, use 198.51.100.0 as the DNS resolver.

Tip

This filter can be managed from the UI using device exceptions. If a device exception is applied to a device, any filters entered using JSON will be ignored. See Device Exceptions.

{
   "filters":[
      {
         "resolvers":[
            "198.51.100.0"
         ],
         "domain":"example.com",
         "rule":"203.0.113.0"
      }
   ]
}

The IP addresses used in these examples are those reserved for documentation purposes per RFC 5737 external_link.png.