:mailbox_with_mail: Query iMessage from terminal and NodeJS
Binds iMessage to NodeJS (read-only)
Discuss on HN or star the project to be updated.
npm install imessage --save
To use the command line tool
npm install -g imessage
Usage: imessagejscommand
search Search messages with particular text recipients Search messages with particular recipient
Usage: imessagejs search "text to search" [options]Options: --count Just return the count --recipient ID of the recipient --json Print in json format --path iMessage path to the chat.db
Usage: imessagejs recipients ["recipient name to filter"] [options]Options: --count Just return the count --json Print in json format --path iMessage path to the chat.db
var iMessage = require('imessage'); var im = new iMessage();// Get all recipients im.getRecipients(cb)
// Get recipients with "nicola" im.getRecipients("nicola", cb)
// Get recipient Id im.getRecipientById(1, cb) // Get recipient and all of his messages im.getRecipientById(1, true, cb)
// Get all messages im.getMessages(cb)// Get messages with text im.getMessages("hello you", cb);
// Get messages from recipient Id im.getMessagesFromId(1, cb) // Get messages from recipient with specific text im.getMessagesFromId(1, "with text", cb)
// Get all attachments im.getAttachments(cb)// Get attachements from recipient Id im.getAttachmentsFromId(1, cb)
var iMessage = require('imessage');var im = new iMessage(); im.getDb(function(err, db) { db.get("SELECT * FROM
messages
"); })
var iMessage = require('imessage');var im = new iMessage(); im .getAll() .keyword(["love", "happy"], ["sad", "hate"]) .from(["+1231231231", "+89898989898"]) .limit(10) .exec(function(err, rows) { console.log(rows); })