Installation guide

It is easier to build botman if you're using pacman or rpm as package managers. see pkgbuild/ & rpmbuild/ directories.

Dependencies

EFL

You will need EFL to build botman.
Since 1.8, EFL merged and you are now forced to build the whole project (including GUI libs) to be able to use them (even if you dont need the GUI stuff).
This is the reason i forked branch 1.7 to be able to only build a portion of them.

Building latest EFL

You might have them packages for your distribution, otherwise go to https://www.enlightenment.org/

Building branch 1.7

You need to build libs in this order : If you are going to build for windows, i recommend you to use Win-builds.

Maelstrom

This EFL library (which isnt part of EFL tree) implements 5 network protocols : We will be using it for HTTP & XMPP (maybe we could later use the emails protocols if we need read/send emails).

The HTTP library is mostly used for : You can get the source code of this library here.

Esskyuehl

This EFL library (which isnt part of EFL tree) allows to do async SQL queries.
You can get the source code of this library here.

libssh

This library should be included for every distro out there.
You can download its code here : libssh.org

Building botman

Building Alfred

Alfred is used to to talk to botmans, so you should not install it into a server you wish to monitor.
./autogen.sh --disable-botman
make
make install


Building Botman

./autogen.sh --disable-alfred
make
make install


Configuring Botman/Alfred

The main difference between both configuration file is that in the case of Alfred, .login should be equal to .alfred.
{
   "xmpp":  {
      "server":   "botnet.master.com",
      "login": "alfred",
      "passwd":   "eg7iegeeyi4quah7wei4",
      "resource": "alfred",
      "alfred": "alfred"
   },
   "modules":  [
      "access",
      "asp64",
      "help",
      "module",
      "register",
      "save",
      "seen",
      "version",
      "rewrite",
      "spam",
      "asp64_repo",
      "asp64_key",
      "ssh_tunnel",
      "sysinfo",
      "gdb",
      "alert",
      "httpd",
      "notification",
      "info",
      "log"
   ],
   "friends":  [
      "botman.*",
      "support.*",
      "guillaume.friloux*"
   ]
}
{
  "xmpp": {
    "server": "botnet.master.com",
    "login": "botman-test",
    "passwd": "wi9oowohwaith4Mieshu",
    "resource": "botman",
    "alfred": "alfred"
  },
  "modules": [
    "access",
    "help",
    "module",
    "install",
    "save",
    "version",
    "sysinfo",
    "ssh_tunnel",
    "gdb",
    "alert",
    "info"
  ],
  "friends": [
    "sav.*",
    "guillaume.friloux*"
  ]
}


Configuring modules

You should see which modules you wish to use, and take configuration examples from their own pages.