Incoming
Both ttyBash and this page are a heavy work in progress. There are a few bugfixes and improvements that need to be made before ttyBash can be utilized by the general population. Until that time it is unfit for human consumption. This page will include access to ttyBash once these fixes and planned improvements are complete.
Introduction
ttyBash is, simply put, software designed to interface the modern internet with an old teleprinter. It began as a simple way to get my Model 19 to send and receive email, and it has since evolved into a much bigger project that I use on a daily basis with my machines. It is constantly growing in scope. It was originally only meant for my use, and while it may not necessarily be the most robust collection of scripts out there, it has become useful enough that I share it with the world here.
It's written in bash?!
It is written in bash, hence the name. Yes, you read that right-- bash.
"But bash isn't a proper programming language!" you whine, pushing your glasses up your nose in a snobbish way.
"No, it isn't, but I wrote this in bash just the same," I respond, pushing your glasses farther up your nose.
Let me get this out of the way: if you're here to be a prude about how I shouldn't use bash, go away. I know. I KNOW. Believe me, I am well aware. Please, knock it off with the IT snobbery. Nobody cares how smart you are, and you are probably not nearly as smart as you pretend to be if you have to constantly reassert your dominance like this.
Bash was chosen on purpose because I work with it every day, and more importantly I wanted to see what kind of acrobatics (or atrocities) I could do with it when dealing with one of the earliest predecessors to the interface that provided life to bash and all other shells (that is, the teletype, ancestor to the glass terminal, ancestor to the literal terminal emulators we have built in to virtually every operating system today). It was not chosen because it is the obvious choice. Python would have made much more sense. If I knew a compiled language very well, it would probably be even better to have a real, compiled binary to give to folks instead of cobbling together scripts like this. Perhaps one day I will build something like that. Today, however, is not that day.
No, it's not pure bash-- that would be impossible. I'm utilizing bash and the many little programs tightly associated with it and a few more unusual ones, and it actually works fairly well for the most part.
Use it if you dare or ignore it if you wish.
Capabilities
Capability | Availability | Notes |
---|---|---|
Send/receive email | Full | Only IMAP and SMTP are supported currently |
Send/receive SMS | Full | Currently only Twilio and Bandwidth (deprecated) are supported |
RSS feeds | Partial | |
Weather | Partial | Requires use of DarkSky API |
Predefined RTTY art | Full | |
Images live-converted to ASCII/ITA2/RTTY art | Planned | Including images sent via SMS or images taken and placed into predefined directory on filesystem (such as for a live photo booth) |
Live RTTY/ITTY broadcast | Partial | Requires use of fldigi |
Preprogrammed RTTY/ITTY broadcast | Full | Requires use of fldigi - will probably add support for physical TUs |
ITTY/RTTY Receiver (poor man's TU) | Full | Requires use of fldigi |
Text file editor | Planned | |
SSH/telnet | Planned | |
OTP Tape Encryption Emulation | Planned | |
Enigma Machine Encryption Emulation | Planned | |
TCP text stream send/receive | Partial | |
Text adventure game | Planned | You cannot get ye flask |
Autofix some FIGS for fractions machines | Planned | |
Motor control | Full | |
Current loop control | Full | |
Human-friendly installation script | Planned | |
Integration with MorseKOB | Partial | |
Compatibility with i-Telex protocol | Planned | |
Compatibility with Volpe Board | Full | |
Compatibility with Nagle Board | Partial |