Tag: xmpp

  1. Cross-compiling go-sendxmpp.

    01 March 2021

    I used to joke that the day setting up a cross-compilation environment was easy we'd be one short step away from having true artificial general intelligence. For the most part neither has happened yet. However, I must admit that Go has come pretty close to making it easy, but it's also kind of opaque unless you go all-in on Go to the exclusion of all other languages. It's not really a language that you can just toy around with, kind of like FORTH.

    Long-time readers know that I'm all about XMPP as a command and control channel for my exocortex …

    Read more...

  2. Using Nginx to spoof HTTP Host headers.

    26 February 2020

    EDIT: s/alice.bob.com/alice.example.com/ to fix part of the backstory.

    Let's say that you have a server (like Prosody) that has one or more subsystems (like BOSH and Websockets).  You want to stick them behind a web server like Nginx so that they can be accessed via HTTP - let's say that you want a browser to be able to communicate with those subsystems for some reason.  Or more likely you have a web application that needs to communicate with them in the same way (because Javascript).  Assuming that the above features are already enabled in Prosody …

    Read more...

  3. Exocortex bots: How everything talks to each other (roughly).

    10 July 2018

    I've mentioned in the past that my exocortex incorporates a number of different kinds of bots that do a number of different things in a slightly different way than Huginn does.  Which is to say, rather than running on their own and pinging me when something interesting happens, I can communicate with them directly and they parse what I say to figure out what I want them to do.  Every bot is function-specific so this winds up being a somewhat simpler task than it might otherwise appear.  One bot runs web searches, another downloads files, videos, and audio, another wakes …

    Read more...

  4. Setting up converse.js as a web-based chat client.

    14 April 2017

    As not bleeding edge, nifty-keen-like-wow the XMPP protocol is, Jabber (the colloquial name for XMPP I'll be using them interchangably in this article) has been my go-to means of person-to-person chat (as well as communication protocol with other parts of me) for a couple of years now.  There are a bunch of different servers out there on multiple platforms, they all support pretty much the same set of features (some have the experimental features, some don't), and the protocol is federated, which is to say that every server can talk to every other server out there (unless you turn that …

    Read more...

  5. Exocortex: Halo

    29 March 2016

    In my last post on the topic of exocortices I discussed the Huginn project, how it works, what the code for the agents actually look like, and some of the stuff I use Huginn's agent networks for for in my everyday life. In short, I call it my exocortex - an extension of the information processing capabilities of my brain running in silico instead of in vivo. Now I'm going to talk about Halo, a separate suite of bots which augment Huginn to carry out tasks that Huginn by itself isn't designed to carry out very easily, and thus extend my …

    Read more...

  6. Configuring Pidgin to connect to a Tor hidden service.

    16 May 2013

    It is, in theory, possible to configure any network service to be reachable over the Tor darknet. This includes instant messaging servers, like the XMPP server EjabberD. Conversely, it must be possible to configure your instant messaging client to connect over the Tor network. I used Pidgin as my client, and here's how I did it:

    I set up a copy of the web proxy Polipo and configured it to work with Tor.

    I then created a new XMPP account in my Pidgin client which connects to the XMPP domain the server was configured for (let's say it's 'xmpp-domain', though …

    Read more...