Telepathy Top 10 Lists
Telepathy is a cool framework for real time communications on GNU/Linux (and possibly other platforms). It is massively flexible and a bit confusing at first. I was introduced to it when hacking on Sugar's collaboration framework (just one of Telepathy's use causes). Although I found it very confusing, you will start to love it after a while.
Top 10 Telepathy Words
- Channel → something used to send data to other people
- Connection → something used to make channels
- Account → something used to make connections (probably)
- Tubes → a deprecated and recently removed channel type that was used to tunnel tcp (streams) or dbus over telepathy
- Tube → a reference to either DBusTube or StreamTube channels, which are not deprecated
- Text Chan → l33t slang for a text channel, that you use to send text messages to other people in the channel
- File Transfer Channel → a channel you can offer to maybe send a large data blob to the other person, if they accept it
- Gabble → a backend that lets you use telepathy over an XMPP (Jabber) server
- Salut → the coolest backend, lets you use telepathy with people on your LAN, and deals with automatically discovering people
- Avahai → an implementation of mDNS (also branded as Bonjour), which is used by Salut to find people on the network
Top 10 Horrible Telepathy Uses
- Tunneling HTTP over Tubes to send a file (~300 lines), rather than the built in file transfer tubes
- Copying and pasting Tubes implementations for about 7 years after their deprecation, then wondering why it all got broken
- Using DBus over Tubes to pass json between people, rather than a simple text channel
- Using telepathy python (many many years after its abandonment)
- Specifically, copying 160 lines of telepathy-python tubes initiation for every activity, and then changing it slightly to make porting hard
- Making the assumption that there will only be every 1 client running at the same time, and calculating the service name with that idea (unfixed)
Ok, that is only 6. Maybe it isn't that bad.
Top 5 Telepathy Use Cases
- Sending files to people on the local network (telepathy salut and file transfer channels)
- Chatting with people via jabber (telepathy gabble and text chans)
- Collaboration for your Sugar activity ( CollabWrapper (patent pending technology))
- Collaboration for your traditional application
- Video calling
Top 2 Telepathy Developer Resources
For a great introduction to telepathy, there is the Telepathy Developers Manual. This is an amazing resource that explains all of telepathy in a way that non-telepathy people understand. There is also always the Telepathy DBus Spec, which is very useful for telepathy-python as it is basically a collection of DBus objects.
Wow, that was a bad rant-ticle. Basically it was me ranting about weird telepathy usage in Sugar activites. Oh well, it is hopefully more fulfilling that the BuzzFeed list-icals that this post takes inspiration from
Comments, thoughts? Mail them to firstname.lastname@example.org. I would love to hear them!