| .github | ||
| cmd | ||
| contrib | ||
| data | ||
| database | ||
| docs | ||
| lib | ||
| output | ||
| respond | ||
| rrd | ||
| runtime | ||
| webserver | ||
| .editorconfig | ||
| .gitignore | ||
| .gitmodules | ||
| .test-coverage | ||
| .travis.yml | ||
| book.json | ||
| circle.yml | ||
| config_example.toml | ||
| INSTALL.md | ||
| LICENSE | ||
| main.go | ||
| README.md | ||
| SUMMARY.md | ||
Yanic
__   __          _
\ \ / /_ _ _ __ (_) ___
 \ V / _` | '_ \| |/ __|
  | | (_| | | | | | (__
  |_|\__,_|_| |_|_|\___|
Yet another node info collector
yanic is a respondd client that fetches, stores and publishes information about a Freifunk network. The goals:
- Generating JSON for Meshviewer
 - Storing statistics in InfluxDB or Graphite to be analyzed by Grafana
 - Provide a little webserver for a standalone installation with a meshviewer
 
How it works
In the first step Yanic sends a multicast message to the group ff02:0:0:0:0:0:2:1001 and port 1001.
Recently seen nodes that does not reply are requested via a unicast message.
Documentation
Take a look at the git or Gitbook
Configuration
Read comments in config_example.toml for more information.
Running
Yanic provides several commands:
Usage
Run Yanic without any arguments to get the usage information:
Usage:
  yanic [command]
Available Commands:
  help        Help about any command
  import      Imports global statistics from the given RRD files, requires InfluxDB
  query       Sends a query on the interface to the destination and waits for a response
  serve       Runs the yanic server
Flags:
  -h, --help         help for yanic
      --timestamps   Enables timestamps for log output
Use "yanic [command] --help" for more information about a command.
Serve
Usage:
  yanic serve [flags]
Examples:
  yanic serve --config /etc/yanic.toml
Flags:
  -c, --config string   Path to configuration file (default "config.toml")
  -h, --help            help for serve
Import
Usage:
  yanic import <file.rrd> [flags]
Examples:
  yanic import --config /etc/yanic.toml olddata.rrd
Flags:
  -c, --config string   Path to configuration file (default "config.toml")
  -h, --help            help for import
Query
Usage:
  yanic query <interface> <destination> [flags]
Examples:
  yanic query wlan0 "fe80::eade:27ff:dead:beef"
Flags:
  -h, --help       help for query
      --wait int   Seconds to wait for a response (default 1)
Live
- meshviewer Freifunk Bremen with a patch to show state-version of 
nodes.json - grafana Freifunk Bremen show data of InfluxDB
 
Related projects
Collecting data from respondd:
- HopGlass Server written in Node.js
 
Respondd for servers:
- ffnord-alfred-announce from FreiFunkNord
 - respondd from Sunz3r
 
License
This software is licensed under the terms of the AGPL v3 License.