https://github.com/chzchzchz/sitbot
Premium IRC bot
https://github.com/chzchzchz/sitbot
ascii-art golang irc irc-bot-framework ircbot mirc-script msl
Last synced: 4 months ago
JSON representation
Premium IRC bot
- Host: GitHub
- URL: https://github.com/chzchzchz/sitbot
- Owner: chzchzchz
- License: agpl-3.0
- Created: 2018-12-28T04:25:09.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-12-27T04:56:04.000Z (11 months ago)
- Last Synced: 2025-04-01T08:44:16.222Z (8 months ago)
- Topics: ascii-art, golang, irc, irc-bot-framework, ircbot, mirc-script, msl
- Language: Go
- Homepage:
- Size: 149 KB
- Stars: 8
- Watchers: 2
- Forks: 5
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# sitbot
```
__________.
/_/-----/_/| __
( ( ' ' ( (| /'--'\
(_( ' ' (_(|/. .\
/ /=====/ /| '||'
/_//____/_/ | ||
(o|:.....|o) | ||
|_|:_____|_|/' _||_
' ' /____\
```
good bot
## Running
Launch `sitbot` to listen on `localhost:12345`:
```sh
go get github.com/chzchzchz/sitbot/cmd/sitbot
go get github.com/chzchzchz/sitbot/cmd/sitbox
sitbot localhost:12345 &
```
## Bots
### Profiles
A bot profile has connection information and regular expression pattern matching rules to control script activation. One sitbot process can manage multiple profiles connectiong to multiple servers. Post a JSON-encoded profile to the sitbot server to launch a new bot; see [profile.json](profile.json) for an example.
### Management
Connect to an IRC network by posting a bot profile to sitbot:
```sh
curl localhost:12345 -XPOST -d@profile.json
```
Reposting a bot profile will update the bot's pattern matching rules.
Configure a control panel page:
```sh
curl localhost:12345/tmpl -XPOST -d@bot.tmpl
```
Any connected bots will be viewable via the generated HTML at `http://localhost:12345/`.
Disconnect a bot by deleting its profile identifier:
```sh
curl localhost:12345/bot/mainbot -XDELETE
```
## Bouncer
sitbot can listen on ports and relay IRC messages between the bot and another IRC client. By connecting through the bouncer, a client sees the bot's IRC session and can issue IRC commands through bot user.
Create a bouncer:
```sh
curl localhost:12345/bouncer/mainbot -XPOST -d localhost:7777
irssi -c localhost -p 7777
```
## Tired of not getting Helped?
The `irc.ltd` chat network generously hosts the official sitbot project support channel on [chat.irc.ltd:6697/#sitbot](irc://chat.irc.ltd:6697/#sitbot).