• Stars
    star
    255
  • Rank 158,817 (Top 4 %)
  • Language
    Python
  • License
    BSD 2-Clause "Sim...
  • Created over 12 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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/
Telnetification & Player coding : Martin W. Kirst
Python3 Update: Ryan Jarvis Dockerfile contributed by: Manuel Eusebio de Paz Carmona

Build Status Build Status

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

Stargazers over time

More Repositories

1

lib-bpmn-engine

A BPMN engine, meant to be embedded in Go applications with minimal hurdles, and a pleasant developer experience using it. This approach can increase transparency for non-developers.
Go
185
star
2

jmacaroons

Pure Java implementation of Macaroons: Cookies with Contextual Caveats for Decentralized Authorization in the Cloud. Android ready. Online playground available. Project is STALE
Java
114
star
3

macaroons.js

Javascript implementation of Macaroons: Cookies with Contextual Caveats for Decentralized Authorization in the Cloud.
HTML
78
star
4

ntgrrc

ntgrrc (Netgear Remote Control) a command line (CLI) tool to manage Netgear GS3xx switch series.
HTML
28
star
5

nitram-micro-font

micro bitmap font, just 5x5 pixels, including special characters suitable for ASCII art :)
Python
12
star
6

one-button-to-zoom-meeting

Cheap solution to automatically start Zoom meetings by hitting a fancy arcade button
JavaScript
11
star
7

concourse-java-maven-test-prj

A test project for playing with concourse - Java, Maven, evtl. Spring Boot
Java
6
star
8

lib-bpmn-engine-js

A BPMN engine. A WASM variant of lib-bpmn-engine. Playground and Showcase interactive BPMN modelling and execution.
Go
4
star
9

mkat

Medien Katalog
Java
3
star
10

decentral-authentication-playground

Java
2
star
11

temperature-based-fan-control-for-time-capsule

Temperature Based Fan Control For e.g. Apple's Time Capsule
Arduino
2
star
12

reveal.js-realsense-plugin

A plugin for reveal.js (by Hakim El Hattab) that lets you control slides via Intel RealSense input devices. STATUS: inactive
JavaScript
2
star
13

trelloviz

Some fancy visualizations for Trello.com boards. Most likely only useful, if you're doing Kanban ;-) PROJECT on HOLD
JavaScript
2
star
14

scsreader

SCS Reader is an OSGI compatible Java library which is able to read, parse and transform SCS (SNA Character String) data streams. The implementation also offers some converters to transform such streams into Text, PDF, RTF or other formats.
Java
2
star
15

docker-debian-oraclejdk8-maven-cmake-gcc-gnueabihf

Docker image with Debian, Oracle JDK, Maven, GCC, G++, GIT and ARM binutils
2
star
16

intellij-idea-plugin-serializer-toolbox

IntelliJ IDEA Plugin: Serializer Toolbox
Java
1
star
17

elevation-at-full-tilt

Elevation - At Full Tilt - An experiment with NASA's SRTM data in GO.
Go
1
star
18

simple-race-lap-timer

A simple solution to measure your laps during drone races - for your own record or to compete with friends
C
1
star
19

clang-compiler-error

Proof of Concept to demonstrate clang compiler error
C++
1
star
20

visual-experiments

Visual Experiments
CSS
1
star
21

android-web-telephony-integration

Android Web Telephony Integration (WTI) - A proof of concept (PoC) of how to integrate mobile phones into a web application.
Java
1
star
22

blil

BLIL - Blinking Light: A command line tool, which can control a blinkstick and/or compatible devices, written in GO, works on Windows and Mac OS X
Go
1
star
23

java-spark

Spark-Graphs for Java. Clone of https://github.com/holman/spark.
Java
1
star
24

xtreamer-drive-manager

Xtreamer Drive Manager - PROJECT on HOLD
Java
1
star
25

cccamp2023-led-spotlight

Fancy spotlight ESP8266 D1 code
C++
1
star
26

tweet-gateway-server

Tweet Gateway Server - a simple HTTP interface, without any authentication, and forwards/tweets every message to your Twitter account. - PROJECT is STALE
Java
1
star