forked from leenooks/qico
-
Notifications
You must be signed in to change notification settings - Fork 1
qico, an ftn compatible mailer
License
uncleeugene/qico
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Qico is an ftn compatible mailer that can run on older style modem ground lines as well as over IP using more modern (to be more precise - less fossil) binkp and ifcico protocols. This is version 0.59.1 forked from leenooks/qico with some number of small bugfixes. Features ~~~~~~~~ * EMSI Protocols: ZModem, ZedZap, Hydra (Std, 4k, 8k, 16k), Janus; Binkp. * Support 4D Binkley-Style, Amiga-style outbound, FileBoxes, LongNameBoxes. * "Muzzle" - a program that allows you to control the operation of mailer (ncurses based). * Daemon mode for outgoing calls and muzzle. * Asynchronous queue manager and sessions (both incoming and outgoing). * Built-in fast nodelist compiler. * Built-in utility for managing outbound. * Substitutions (substs) including ip addresses and hidden-lines setup. * Dynamic configuration - the ability to change most of the configuration parameters on the fly depending on numerous conditions. * Ability to limit the time for the session. * Supports WaZOO-and SRIF-compatible freq processors. * Supports all kinds of local file and path names transformations * Ability to limit the minimum speed of a connection. * Ability to pass / retent incoming files. * Live Chat (Hydra, Z * and Binkp). * Perl-hooks. Building & Installation ~~~~~~~~~~~~~~~~~~~~~~~ $ autoupdate $ ./autogen.sh $ ./configure --help $ ./configure [options desired] $ make $ sudo make install Edit qico.conf, qico.passwd, qico.substs to fit your needs. Default configuration files location is /usr/local/etc, you may feed your own config file using -I option. Using ~~~~~ * For outgoing sessions it is enough to run qico -d, you may set your own systemd service like so: File: /etc/systemd/system/qico.service: [Unit] Description=Qico Mailer [Service] User=<username> Group=<group name> ExecStart=/usr/local/sbin/qico -I <path to qico.conf>/qico.conf -d ExecReload=/bin/kill -HUP $MAINPID [Install] WantedBy=multi-user.target ... and generate polls on cron using qctl tool. * For incoming modem calls(if mgetty) you'll need to set up mgetty like so: File: login.config: / FIDO / $USER $USER $BINDIR/qico -I <path to qico.conf>/qico.conf -a @ where $ USER and $ BINDIR are values of those variables of CONFIG. mgetty has to be built with -DFIDO option (take a look into mgetty documentation). * Qico doesn't handle incoming IP sessions on itself, but you can register it in inetd or xinetd to accept incoming tcp/ip ifcico and (or) binkp connections. Following is the example of xinetd setup: File: /etc/services: ... binkp 24554/tcp ifcico 60179/tcp ... File: /etc/xinetd.d/binkp service binkp { flags = REUSE socket_type = stream wait = no user = <username> server = /usr/local/sbin/qico server_args = -I <path to qico.conf>/qico.conf -a binkp log_on_failure += USERID disable = no } service ifcico { flags = REUSE socket_type = stream wait = no user = <username> server = /usr/local/sbin/qico server_args = -I <path to qico.conf>/qico.conf -a auto log_on_failure += USERID disable = no } Don't forget to start xinetd service. * Qcc. Qcc stangs for Qico Control Center. It's the tool you can use to control your running qico daemon, reread configs, create polls, manage the queue and so on. All hotkeys are case sensitive, brief summary can be accessed by pressing F1. For flag switches uppercase hotkey will set the flag and the lowercase will clear the corresponding flag. Address field will accept shortened addresses. Input line editor remembers the last 50 lines. Scroll over the history using arrow keys. Notes ~~~~~ # Qico only Supports 4D BSO. #. REQ is the reason for the call. REQ +. FLO for ifcico. # qctl -f or f in qcc information will only mention nodelist, ignoring substs! # If you have absolutely no sheets and they are not needed, you still have register at least one (though non-existent) and create an empty sheet index by running 'qico-n'. # If you want to reread configuration files, don't go "killall-HUP qico", because it will interrupt all running sessions. Do qctl -R instead. This also applies to "killall qico" / "qctl -q". # All the information used to check session conditions first obtained from nodelist and substs, and then from session EMSI. # You can use ifextrp-pk (bundled) as freq processor. It is also possible to use any SRIF-compatible freq processor that is typically more functional. # "History" file is crated for quick and easy statistics generation (just awk should be enough). Simple stat generator is bundled with qico. History file format (one line - one session): <line>, <time>, <length>, <address>, [P] [L] {I | O} {1 | 0}, <sent_bytes>, <recd_bytes> where <line> - terminal or tcpip for tcp / ip-sessions <time> and <length> - in seconds (unix time) P - protected, L - listed, I / O - inbound / outbound, 1/0 - successful / failed Download ~~~~~~~~ git clone https://github.com/uncleeugene/qico.git Authors ~~~~~~~ Pavel Kurnosoff, 2:5030/736.25, [email protected], icq 45906870 (up to 0.45pl3.1) Lev Serebryakov, 2:5030/661, [email protected], icq 3670018 (up to 0.49.9) Cyril Margorin, 2:5020/2999.18, [email protected] (official branch) Stepan Pologov, 2:467/126.125, [email protected] (current) Mitry Matyushkov, 2:450/1024, r45c at mail dot ru (XE Maintainer) Robert James Clay, 1:120/544, [email protected] (after 0.57.1) ru.qico members made some contribution to this particular fork.
About
qico, an ftn compatible mailer
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C 95.2%
- M4 1.3%
- Yacc 0.7%
- CMake 0.6%
- Lex 0.5%
- Awk 0.5%
- Other 1.2%