Git Product home page Git Product logo

xmpp-client's Introduction

xmpp-client setup

go get github.com/agl/xmpp-client

(If you don't have Go already installed then see below.)

xmpp-client use

xmpp-client is a simple XMPP client written in pure Go. It's a terminal program and so probably doesn't work on Windows.

xmpp-client expects a config file in ~/.xmpp-client. You can set the location of the config file with --config-file on the command line. If it fails to parse a config file, it'll enter enrollment: where it'll ask a series of questions to configure itself and will then write a config file from the answers.

The config file is just a JSON file and can be edited by hand. (Although xmpp-client will rewrite it, blowing away any comments or custom formatting.)

xmpp-client will prompt for a password each time it's run. If you want to save the password you have to edit the config file and insert a string element called Password. (This ensures that you understand that the password is stored in plaintext.)

Once the connection has been established, the commands are quite simple. Type /help for a listing.

Messages are sent by entering the JID of a contact and hitting tab to complete the address, followed by a colon. The message can then be entered after the colon, IRC style. Like this:

> [email protected]: Hi there!

On subsequent lines you don't have to enter their address again, unless you want to direct messages to someone else:

> [email protected]: Hi there!
> I was thinking
> about that thing
> [email protected]: I'll be right with you!
> [email protected]: back again

Messages from others are written in a similar fashion: the address is omitted for subsequent lines and replaced with a colon. The colon is red for unencrypted and green for encrypted.

If a contact name isn't recognised before a colon then it's ignored. Don't assume that you're sending a message to who you think you are unless you tab completed the address.

The client functions, but is very rudimentary.

Installation instructions

Build and run instructions for Ubuntu 13.10 (codename Saucy Salamander, go version 1.1.2). Note the version of Go shipped with this distro is very old any may be broken now.

sudo apt-get install git golang mercurial
export GOPATH=$HOME/go
go get github.com/agl/xmpp-client
$GOPATH/bin/xmpp-client

## If you want to set up an alias
echo "alias xmpp-client='$GOPATH/bin/xmpp-client' " >> ~/.bashrc
. ~/.bashrc
xmpp-client

Build and run instructions for Tails (tested on version 1.2, go version 1.2)

## If you don't have already
sudo apt-get update

## Debian old-stable, on which Tails is currently based, doesn't have Go packages
sudo apt-get install -t unstable golang

## Git is already included in tails so we only need to get Mercurial
sudo apt-get install mercurial

## Assuming you have created a persistant volume
export GOPATH=/home/amnesia/Persistent/go/

go get github.com/agl/xmpp-client
$GOPATH/bin/xmpp-client

xmpp-client's People

Contributors

adrpino avatar agl avatar arlolra avatar elimisteve avatar ioerror avatar isislovecruft avatar jsha avatar kenkes avatar leif avatar mischief avatar nogoegst avatar rmoore avatar ruoho avatar sternenseemann avatar tcz001 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.