XMPP

From Wildsong
Jump to navigationJump to search

XMPP is the Jabber protocol. It is also used for GoogleTalk

See here for official documentation or here for the Wikipedia page.

I am interested in it for use with FoxtrotGPS and IncidentView.

I want to pass specific bits of data along from a server to a laptop in the field.

Use cases:

  • E911 Dispatch In IncidentView I want to be able to pass along the information from a 911 dispatch center to a rig.
  • AVL for IncidentView I want to be able track locations on a Web map and convey the location database back to command vehicles.
  • AVL for FoxtrotGPS I want to be able to show the locations of "friends". Aka

"presence information" http://en.wikipedia.org/wiki/Presence_information

Servers

First I need a server. A very popular server is GoogleTalk. But I am not in a Googly mood right now so first order of the day is to get a private server running.

Requirements

  1. Free
  2. Open source
  3. Runs on Linux

Openfire

Openfire - my notes from last attempt pubsub not working 3.8.1 says they have fixed pubsub so I am trying again

Installed from DEB package. Guessed default user/pass = admin/admin wish they told me that somewhere!!! I think it kept the HSQL database around somewhere from an earlier installation. Would like to try a mysql installation.

brian/wildsong bwilson/alseageo iv/iv saint/thebells

The web interface seems reasonable. Supports groups.

Shows active sessions.

Has chat rooms. I think this could be a way to send dispatches to a group of users. I can also use the 'broadcast' plugin.

Plugins

You can install plugins directly from the web interface.

I installed the Asterisk plugin.

I installed the Broadcast plugin. "The broadcast plugin broadcasts messages to all users in the system or to specific groups. It's primarily useful for sending announcements or notifications."

To send a broadcast message, send a message to all@[serviceName].[serverName] or [group]@[serviceName].[serverName]. For example, if your server is called foo and the default service name is being used, a message to [email protected] would be broadcast to all users connected to the server. For the group staff, a message to [email protected] would be sent to all users in the group staff that are currently online or offline.

Prosody

Prosody - my notes say use this one, but trying out Openfire because of the plugins.

Clients

Working with .Net

See Jabber.net

Building pidgin

..because I am interested in libpurple for Windows (and pidgin runs on Windows)

Downloaded and unpacked source from pidgin site.

It is easy on Ubuntu 12.04, once you install the build dependencies.

apt-get build-dep pidgin
cd pidgin
./configure 
make
sudo make install

Location

There are two docs to look at: xep-0080 to report where client is located and xep-0255 to ask about the location of an entity.