Go to file
Daniel Schulte c7720f6c85 Add application version and remove some leftover comments/whitespace 2018-03-18 17:14:23 +01:00
.gitignore Initial commit 2018-03-18 16:56:49 +01:00
README.md Add section about developing/testing the application to README.md 2018-03-18 17:14:00 +01:00
config.toml.example Initial commit 2018-03-18 16:56:49 +01:00
printer.py Add application version and remove some leftover comments/whitespace 2018-03-18 17:14:23 +01:00
requirements.txt Initial commit 2018-03-18 16:56:49 +01:00

README.md

About:

This application monitors your Twitter home timeline or any number (within the Twitter API limits) of hashtags of your choice and prints all incoming Tweets via an ESC/POS compatible thermal printer.

Installation:

System requirements

This application has been developed and tested on Linux, targeting python3.6 or newer. It might work on macOS (likely) and Windows (very unlikely).

Create a virtualenv with the required dependencies

python3 -m venv venv
venv/bin/pip install -r requirements.txt

Getting Twitter API access

  • If you already have access enter your consumer key/secret and access token/secret in the next step.
  • If you don't have such credentials you must create a Twitter App and get the required information after you've created it.

Create and fill in config.toml

cp config.toml.example config.toml
$EDITOR config.toml
# Put the required information into config.toml

Printing Tweets

Check your thermal printer

  • Ensure it supports ESC/POS.
  • See if your operating system detects your printer (look at the output of dmesg).
  • Check if the user that will be running this application can access the printer (check ls -l /dev/usb/lp*, id $USER).
  • A line width of 48 characters and Latin-1 as printer codepage 6 are assumed.
  • This application was tested with a Excelvan/Hoin HOP-E801 printer. No other models/printers have been tested yet.

Printing your home timeline

venv/bin/python3 printer.py --printer /path/to/printer

If you don't want to see retweets make sure to include the -n or--no-retweets option in the commandline above

Printing a specific (or multiple) hashtags

venv/bin/python3 printer.py --printer /path/to/print "#hashtag1" "#hashtag2"

If you want to see retweets in this mode make sure to include the -r or --retweets option in the commandline above

Developing/Testing

You can test this application without a thermal printer connected by simply omitting the -p/--printer argument when starting it. In that case you'll just get the output in your terminal.