wirebot is a command line client for the Wired 2.0 + 2.5 protocol.
This is the former CLI client "wire" (https://github.com/nark/wire) which has now been extended with bot functions by me. It is controlled via bash. See the file "wirebot.sh" (which must be located in the ~/.wirebot folder) for details.
Ubuntu/Debian10 and higher only
sudo apt-get install -y curl build-essential autoconf screen inotify-tools git libxml2-dev libssl-dev zlib1g-dev libreadline-dev libcurl4-gnutls-dev
Fedora
sudo yum -y install curl screen git libtool openssl-devel sqlite-devel libxml2-devel zlib-devel readline-devel libcurl-devel autoconf gcc make inotify-tools
CentOS
sudo yum install epel-release
sudo yum -y install curl screen git libtool openssl-devel sqlite-devel libxml2-devel zlib-devel readline-devel libcurl-devel autoconf gcc make inotify-tools
openSUSE
sudo zypper install curl screen libtool libopenssl-devel sqlite3-devel libxml2-devel zlib-devel readline-devel libcurl-devel autoconf gcc make inotify-tools
Installing wirebot from sources will be done using the Autotools standard (configure, make, make install).
git clone https://github.com/ProfDrLuigi/wirebot
Then move to the wirebot
directory:
cd wirebot/
Initialize and update submodules repositories:
git submodule update --init --recursive --remote
libwired/bootstrap
Then check that the libwired
directory was not empty and configure
file exists.
During the configuration, scripts will check that your environment fills the requirements described at the top of this document. You will be warned if any of the required component is missing on your operating system.
To start configuration for Intel/AMD, use the following command:
./configure
To start configuration for arm64, use the following command:
./configure --build=aarch64 --host=aarch64
wirebot is designed to be installed into /usr/local/bin
by default. To change this, run:
./configure --prefix=/path
If you installed OpenSSL in a non-standard path, use the following command example as reference:
env CPPFLAGS=-I/usr/local/opt/openssl/include LDFLAGS=-L/usr/local/opt/openssl/lib ./configure
Use ./configure --help
in order to display more options.
This will require write permissions to /usr/local/bin
, or whatever directory you set as the prefix above. Depending of your OS setup, you may require to use sudo
.
make
sudo make install
mkdir ~/.wirebot
cp wirebot.sh rss.sh tarnkappe.py config update_* ~/.wirebot
chmod +x ~/.wirebot/wirebot.sh
Don't forget to put your credentials into ~/.wirebot/config before you start the bot the first time.
In case of default path it looks like this:
chmod +x wirebotctl
cp wirebotctl /usr/local/bin/.
To start the installed wirebot, run:
/usr/local/bin/wirebot/./wirebotctl start
You can inject any Text from any script to the session this way:
screen -S wirebot -p "wirebot" -X stuff "Hello world!"^M
To enter the running screen session simply type:
/usr/local/bin/./wirebotctl screen
To leave the session (not closing!) type:
ctrl + a and than d
Default path for the configuration file is:
~/.wirebot/config
Example configuration:
charset UTF-8
open -l USER -p PASSWORT -P PORT URL
nick YOUR_NAME
status YOUR_STATUS
icon /home/YOUR_USER/.wirebot/PICTURE.png
If you want to know the available commands of the wirebot type
#help
in the Chat Main window.
To change the Path of the folder which should be watched change the corresponding options in
~/.wirebot/wirebot.sh
If you don't need this feature you can disable it by typing
/usr/local/bin/wirebot/./wirebotctl nowatch
Usage: wirebotctl [COMMAND]
COMMAND:
start Start wirebot
stop Stop wirebot
restart Restart wirebot
screen Join screen session (To exit session press ctrl+a and than d)
watch/nowatch Switch filewatching on/off
status Show the status
config Show the configuration
join_on Activate greeting if user joined server
join_off Deactivate greeting if user joined server
leave_on Activate greeting if user leaved server
leave_off Deactivate greeting if user leaved server
wordfilter_on Activate wordfilter
wordfilter_off Deactivate wordfilfter
common_reply_on Activate talkativeness
common_reply_off Deactivate talkativeness
rssfeed_on Activate RSS Newsfeed
rssfeed_off Deactivate RSS Newsfeed
By Prof. Dr. Luigi
Original by Rafaël Warnault dev@read-write.fr
sudo apt install python3 python3-pip
/bin/bash ~/.wirebot/update_bard.sh
/bin/bash ~/.wirebot/update_chatgpt.sh
/bin/bash ~/.wirebot/update_edgegpt.sh
You can re-use this scripts for update checking and installing.
Follow this instructions to configure generally:
https://github.com/acheong08/EdgeGPT
Cookie file must be named "edgegpt.cookies" and be placed in directory
~/.wirebot/
To use these Feature a (free) openAI Account is necessary.
Create an API Token or you can put the account credeintials in the config file of "ChatGPT". It´s on you.
https://platform.openai.com/account/api-keys
Further informations to config ChatGPT are here:
https://github.com/acheong08/ChatGPT
Follow this instructions to configure generally:
https://github.com/acheong08/Bard
To use it in chat simply start every chat line with # e.g.
#How are you today?
and wait for the reply. You can speak in every language with him.
If you want to extent the wirebot with functions you can edit wirebot.sh in your .wirebot Directory.
To see all possible options of the bot type
#help
in main chat window.
If you don't need this feature you can disable it by typing
/usr/local/bin/wirebot/./wirebotctl rss_off
This implementation of the Wired 2.0/2.5 protocol is not compliant with the version of the protocol distributed by Zanka Software, for several deep technical reasons.