muttrddeprecated

muttr service dameon

Usage no npm install needed!

<script type="module">
  import muttrd from 'https://cdn.skypack.dev/muttrd';
</script>

README

MuttrD

The muttrd program provides a simple interface to the muttr network and eases the development of applications that wish to leverage it.

Setup

Install globally with NPM:

npm install -g muttrd

Alternatively clone this repository and link globally:

git clone https://github.com/muttr/muttrd && cd muttrd && npm link

Configuration

Once installed, you should have access to the muttrd program. The first time you run muttrd, it will walk you through some configuration, generate a PGP identity, and connect to a pod.

If you need to change this later, muttrd stores data at $HOME/.muttrd and you can simply edit the config.json file located in that directory.

IPC Interface

MuttrD creates a UNIX socket at /tmp/muttrd-svc.sock and listens for messages from applications. This interface understands newline-terminated JSON objects.

{
  "type": "<method_name>",
  "body": { "params": "go here" }
}

If you are using Node.js, you can install ipsee to avoid writing this logic on your own. With ipsee:

var ipc = require('ipsee')('muttrd').subscribe('svc');

ipc.on('message', function(msg) {
  console.log('Received message from the muttr network:', msg);
});

ipc.send('playback', function(messages) {
  console.log('Missed messages while offline:', messages);
});

License

Copyright (C) 2015 Gordon Hall

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.