BATADV-VIS(8)

NAME
batadv-vis - batman-adv visualization server

SYNOPSIS
batadv-vis [options]

DESCRIPTION
batadv-vis can be used to visualize your batman-adv mesh network. It read the neighbor information and local client table and distributes this information via alfred in the network. By gathering this local information, any vis node can get the whole picture of the network.

OPTIONS

-v, --version
    Print the version

-h, --help
    Display a brief help message.

-u, --unix-path path
    path to unix socket used for alfred server communication.

-i, --interface iface
    Specify the batman-adv interface configured on the system (default: bat0)

-s, --server
    Start up in server mode. This server will read the neighbor and client information from batman-adv every 10 seconds and set it in alfred via unix socket. The alfred server must run too to get this information set.

-f, --format format
    Specify the output format for client mode (either "json", "jsondoc" or "dot")

EXAMPLES
Start an batadv-vis server which is fetching the information for bat0:
batadv-vis -i bat0 -s

To get a graphviz-compatible vis output:
batadv-vis
     digraph {
             subgraph "cluster_fe:f0:00:00:04:01" {
                     "fe:f0:00:00:04:01"
             }
             "fe:f0:00:00:04:01" -> "fe:f0:00:00:05:01" [label="1.000"]
             "fe:f0:00:00:04:01" -> "fe:f0:00:00:03:01" [label="1.004"]
             "fe:f0:00:00:04:01" -> "00:00:43:05:00:04" [label="TT"]
             "fe:f0:00:00:04:01" -> "fe:f1:00:00:04:01" [label="TT"]
             subgraph "cluster_fe:f0:00:00:02:01" {
                     "fe:f0:00:00:02:01"
             }
             "fe:f0:00:00:02:01" -> "fe:f0:00:00:03:01" [label="1.000"]
             "fe:f0:00:00:02:01" -> "fe:f0:00:00:01:01" [label="1.008"]
             "fe:f0:00:00:02:01" -> "fe:f0:00:00:08:01" [label="1.000"]
             "fe:f0:00:00:02:01" -> "fe:f1:00:00:02:01" [label="TT"]
             "fe:f0:00:00:02:01" -> "00:00:43:05:00:02" [label="TT"]
             subgraph "cluster_fe:f0:00:00:08:01" {
                     "fe:f0:00:00:08:01"
             }
     [...]
     }

To get a json vis output:
batadv-vis -f json
     { "primary" : "fe:f0:00:00:04:01" }
     { "router" : "fe:f0:00:00:04:01", "neighbor" : "fe:f0:00:00:05:01", "label" : "1.000" }
     { "router" : "fe:f0:00:00:04:01", "neighbor" : "fe:f0:00:00:03:01", "label" : "1.008" }
     { "router" : "fe:f0:00:00:04:01", "gateway" : "00:00:43:05:00:04", "label" : "TT" }
     { "router" : "fe:f0:00:00:04:01", "gateway" : "fe:f1:00:00:04:01", "label" : "TT" }
     { "primary" : "fe:f0:00:00:02:01" }
     { "router" : "fe:f0:00:00:02:01", "neighbor" : "fe:f0:00:00:03:01", "label" : "1.000" }
     { "router" : "fe:f0:00:00:02:01", "neighbor" : "fe:f0:00:00:01:01", "label" : "1.016" }
     { "router" : "fe:f0:00:00:02:01", "neighbor" : "fe:f0:00:00:08:01", "label" : "1.000" }
     { "router" : "fe:f0:00:00:02:01", "gateway" : "fe:f1:00:00:02:01", "label" : "TT" }
     { "router" : "fe:f0:00:00:02:01", "gateway" : "00:00:43:05:00:02", "label" : "TT" }
     { "primary" : "fe:f0:00:00:08:01" }
     [...]

To get output where the complete document is json:
batadv-vis -f jsondoc
     {
       "source_version" : "2013.3.0-14-gcd34783",
       "algorithm" : 4,
       "vis" : [
         { "primary" : "fe:f0:00:00:04:01",
           "neighbors" : [
              { "router" : "fe:f0:00:00:04:01",
                "neighbor" : "fe:f0:00:00:05:01",
                "metric" : "1.000" },
              { "router" : "fe:f0:00:00:04:01",
                "neighbor" : "fe:f0:00:00:03:01",
                "metric" : "1.008" }
           ],
           "clients" : [
              "00:00:43:05:00:04",
              "fe:f1:00:00:04:01"
           ]
         },
         { "primary" : "fe:f0:00:00:02:01",
           "neighbors" : [
              { "router" : "fe:f0:00:00:02:01",
                "neighbor" : "fe:f0:00:00:03:01",
       	 "metric" : "1.000" },
              { "router" : "fe:f0:00:00:02:01",
                "neighbor" : "fe:f0:00:00:01:01",
                "metric" : "1.016" },
              { "router" : "fe:f0:00:00:02:01",
                "neighbor" : "fe:f0:00:00:08:01",
                "metric" : "1.000" }
           ],
           "clients" : [
             "fe:f1:00:00:02:01",
             "00:00:43:05:00:02"
           ]
         },
         { "primary" : "fe:f0:00:00:08:01",
     [...]

SEE ALSO
alfred(8), batctl(8)

AUTHOR
batadv-vis was written by Simon Wunderlich <sw@simonwunderlich.de>.

This manual page was written by Simon Wunderlich <sw@simonwunderlich.de> and Sven Eckelmann <sven@open-mesh.com>.