资源说明:Can stream an ~20 minutes ASCII movie via Telnet emulation as stand alone server or via xinetd daemon. Using famous ASCII art animation from www.asciimation.co.nz (Star ASCIIMATION Wars)
ASCII art movie Telnet player ============================= Can stream an ~20 minutes ASCII movie via Telnet emulation as stand alone server or via xinetd daemon. Screenshot:Wanna see it in action? Just watch http://asciinema.org/a/3132 Tested with Python 2.6+, Python 3.5+ Original art work : Simon Jansen [http://www.asciimation.co.nz/](http://www.asciimation.co.nz/) Telnetification & Player coding : Martin W. Kirst Python3 Update: Ryan Jarvis Dockerfile contributed by: Manuel Eusebio de Paz Carmona Build Status [](https://travis-ci.org/nitram509/ascii-telnet-server) Command line parameters ----------------------- See program output: $ python ascii_telnet_server.py --help Usage: ascii_telnet_server.py [options] Options: -h, --help show this help message and exit --standalone Run as stand alone multi threaded TCP server (default) --stdout Run with STDIN and STDOUT, for example in XINETD instead of stand alone TCP server. Use with python option '-u' for unbuffered STDIN STDOUT communication -f FILE, --file=FILE Text file containing the ASCII movie -i INTERFACE, --interface=INTERFACE Bind to this interface (default '0.0.0.0', all interfaces) -p PORT, --port=PORT Bind to this port (default 23, Telnet) -v, --verbose Verbose (default for TCP server) -q, --quiet Quiet! (default for STDIN STDOUT server) Run as stand alone server ------------------------- Simple call this Python script by using the sample movie file: $> python ascii_telnet_server.py --standalone -f ../sample_movies/sw1.txt Running TCP server on 0.0.0.0:23 Playing movie sw1.txt Run as docker container ----------------------- Simply build & run the container and use the movie file as environment parameter the sample movie file: # Build image: $> docker build -t ascii-art-movie-telnet-player . # MODE STDOUT: Run as local player # with the default movie $> docker run -it --rm -e mode=stdout ascii-art-movie-telnet-player # with a custom movie file.txt (absolute path to file it's required): $> docker run -it --rm -v $(pwd)/your_movie.txt:/app/input_file.txt -e input_file=input_file.txt ascii-art-movie-telnet-player # MODE STANDALONE: Run as local telnet server # To test, open a telnet client in other terminal/session i.e. $> telnet localhost 23 # with the default movie $> docker run -it --rm -p 23:23 -e mode=standalone ascii-art-movie-telnet-player # Run with custon input_file.txt movie $> docker run -it --rm -v $(pwd)/your_movie.txt:/app/input_file.txt -p 23:23 -e mode=standalone -e input_file=input_file.txt ascii-art-movie-telnet-player Run as xinetd program --------------------- place this configuration into `/etc/xinetd.d/telnet`: # default: on # description: An telnet service playing an ASCII movie, Star Wars Episode 4 service telnet { disable = no socket_type = stream protocol = tcp port = 23 user = root wait = no instances = 10 log_type = FILE /var/log/asciiplayer log_on_success += PID HOST DURATION log_on_failure = HOST server = /usr/bin/python server_args = -u -OO /opt/asciiplayer/ascii_telnet_server.py -f /opt/asciiplayer/sw1.txt --stdout } ## Stargazers over time [](https://starchart.cc/nitram509/ascii-telnet-server)
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。
English

Wanna see it in action? Just watch http://asciinema.org/a/3132
Tested with Python 2.6+, Python 3.5+
Original art work : Simon Jansen [http://www.asciimation.co.nz/](http://www.asciimation.co.nz/)
Telnetification & Player coding : Martin W. Kirst
Python3 Update: Ryan Jarvis
Dockerfile contributed by: Manuel Eusebio de Paz Carmona
Build Status [](https://travis-ci.org/nitram509/ascii-telnet-server)
Command line parameters
-----------------------
See program output:
$ python ascii_telnet_server.py --help
Usage: ascii_telnet_server.py [options]
Options:
-h, --help show this help message and exit
--standalone Run as stand alone multi threaded TCP server (default)
--stdout Run with STDIN and STDOUT, for example in XINETD
instead of stand alone TCP server. Use with python
option '-u' for unbuffered STDIN STDOUT communication
-f FILE, --file=FILE Text file containing the ASCII movie
-i INTERFACE, --interface=INTERFACE
Bind to this interface (default '0.0.0.0', all
interfaces)
-p PORT, --port=PORT Bind to this port (default 23, Telnet)
-v, --verbose Verbose (default for TCP server)
-q, --quiet Quiet! (default for STDIN STDOUT server)
Run as stand alone server
-------------------------
Simple call this Python script by using the sample movie file:
$> python ascii_telnet_server.py --standalone -f ../sample_movies/sw1.txt
Running TCP server on 0.0.0.0:23
Playing movie sw1.txt
Run as docker container
-----------------------
Simply build & run the container and use the movie file as environment parameter the sample movie file:
# Build image:
$> docker build -t ascii-art-movie-telnet-player .
# MODE STDOUT: Run as local player
# with the default movie
$> docker run -it --rm -e mode=stdout ascii-art-movie-telnet-player
# with a custom movie file.txt (absolute path to file it's required):
$> docker run -it --rm -v $(pwd)/your_movie.txt:/app/input_file.txt -e input_file=input_file.txt ascii-art-movie-telnet-player
# MODE STANDALONE: Run as local telnet server
# To test, open a telnet client in other terminal/session i.e. $> telnet localhost 23
# with the default movie
$> docker run -it --rm -p 23:23 -e mode=standalone ascii-art-movie-telnet-player
# Run with custon input_file.txt movie
$> docker run -it --rm -v $(pwd)/your_movie.txt:/app/input_file.txt -p 23:23 -e mode=standalone -e input_file=input_file.txt ascii-art-movie-telnet-player
Run as xinetd program
---------------------
place this configuration into `/etc/xinetd.d/telnet`:
# default: on
# description: An telnet service playing an ASCII movie, Star Wars Episode 4
service telnet
{
disable = no
socket_type = stream
protocol = tcp
port = 23
user = root
wait = no
instances = 10
log_type = FILE /var/log/asciiplayer
log_on_success += PID HOST DURATION
log_on_failure = HOST
server = /usr/bin/python
server_args = -u -OO /opt/asciiplayer/ascii_telnet_server.py -f /opt/asciiplayer/sw1.txt --stdout
}
## Stargazers over time
[](https://starchart.cc/nitram509/ascii-telnet-server)