Skip to content

Instantly share code, notes, and snippets.

@gr2m
Last active December 20, 2015 14:39
Show Gist options
  • Save gr2m/6148091 to your computer and use it in GitHub Desktop.
Save gr2m/6148091 to your computer and use it in GitHub Desktop.
a Hoodie messaging worker (dreamcode yet) that allows to send messages between users
module.exports = function(hoodie) {
hoodie.task.on('new:message', handleNewMessage);
function handleNewMessage(originDb, message) {
// move new message to the recipients
var recipient = message.to;
hoodie.account.find('user', recipient, function(error, user) {
if (error) {
return hoodie.task.error(originDb, message, error)
}
var targetDb = "user/" + user.ownerHash;
hoodie.database(targetDb).add('message', message, handleError);
hoodie.task.success(originDb, message, {sentAt: new Date}, handleError);
})
}
funciont handleError() {}
}
@gr2m
Copy link
Author

gr2m commented Aug 3, 2013

The frontend code API would look like this:

// send a message to jan
hoodie.message.send('jan', { body: "can I haz cheesecake & iced coffee?" });

// handle incoming messages
hoodie.message.on('incoming', showMessageWindow)

// find all messages
hoodie.message.findAll()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment