innaircbot/README.md

49 lines
1.9 KiB
Markdown
Raw Normal View History

2018-12-16 17:27:44 +03:00
# InnaIrcBot
2019-01-22 05:31:43 +03:00
Another one IRC bot in deep-deep beta.
2018-12-16 17:27:44 +03:00
2020-10-20 03:37:20 +03:00
## License
Source code spreads under the GNU General Public License v3 or higher. Please see LICENSE file.
2018-12-16 17:27:44 +03:00
2020-10-20 18:19:20 +03:00
#### Used libraries:
2020-10-20 03:37:20 +03:00
* Apache commons CLI: https://commons.apache.org/proper/commons-cli/
* GSON: https://github.com/google/gson
* sqliteJDBC: https://bitbucket.org/xerial/sqlite-jdbc
* mongodb-driver-sync: https://mongodb.github.io/mongo-java-driver/3.9/
* JUnit 5: https://junit.org/junit5/
2018-12-16 17:27:44 +03:00
2020-10-20 03:37:20 +03:00
## Usage
```
-c, --configuration <name.config> [<name1.config> ...] Read Config
-g, --generate [name.config] Generate Config
-v, --version Get application version
```
2018-12-16 17:32:51 +03:00
#### Configuration settings
2018-12-16 17:27:44 +03:00
"userNickAuthStyle": "rusnet" or "freenode"
* rusnet - send '/nickserv IDENTIFY mySecretPass'
* freenode - send '/msg nickserv IDENTIFY mySecretPass'
2019-04-22 01:52:57 +03:00
"logDriver" could be "Files", "SQLite", "MongoDB" or "Zero"
2018-12-16 17:27:44 +03:00
* Files - log everything to files using /yourPathSet/serverName/#chanelName_YYYY-MM-DD.txt format.
* SQLite - use /yourPathSet/server.db (or /yourPathSet/yourFileName.db) sqlite file.
2019-01-27 06:19:31 +03:00
* MongoDB - write files to MongoDB. See ConfigurationExamples folder.
2018-12-16 17:27:44 +03:00
2020-10-20 03:37:20 +03:00
### TODO:
2018-12-16 17:27:44 +03:00
- [ ] Documentation
- [ ] Code refactoring
- [ ] QA: good regression testing
2019-01-01 23:20:10 +03:00
- [x] CI/CD Jenkins
2019-01-27 06:19:31 +03:00
- [x] Suppress messages from server or handle them separately from selected worker
2018-12-16 17:27:44 +03:00
- [ ] Logs backend workers as threads (SQLite and co. are too slow)
2019-01-18 05:34:08 +03:00
- [x] Logs backend worker for mongodb
2018-12-16 17:27:44 +03:00
- [ ] Logs backend worker for redis/redis node
- [ ] Re-implement connection routine
- [ ] Availability to run scripts @ 'ChanelCommander'
- [ ] Docker(+compose) package
- [ ] Flood tracker
- [ ] Deep configuration files validation
2018-12-19 04:48:03 +03:00
- [x] Maven ~~or Gradle~~ build
2018-12-16 17:27:44 +03:00
- [ ] ncurses-like or/and GUI configuration files (server/chanel setting) editor
2019-01-29 01:33:10 +03:00
- [x] CTCP support for using @ 'ChanelCommander'
2019-01-22 05:31:43 +03:00
- [ ] Access roles support (i.e. delegating some rights to another users)
2019-01-27 06:19:31 +03:00
- [ ] Logs for application (partly implemented)