npm

Need private packages and team management tools?Check out npm Orgs. »

imessage

0.1.6 • Public • Published

node-imessage

Build Status

Binds iMessage to NodeJS (read-only)

ATTENTION: only available to brave coders, heavy development going on.

Discuss on HN or star the project to be updated.

Install

npm install imessage --save

To use the command line tool

npm install -g imessage

Usage

Command line

Usage: imessagejs <command>

command     
  search         Search messages with particular text
  recipients     Search messages with particular recipient

Search

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

Recipients

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

NodeJS Library

Recipients

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)

Messages

// 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)

Attachments

// Get all attachments
im.getAttachments(cb)
 
// Get attachements from recipient Id
im.getAttachmentsFromId(1, cb)

Use raw SQL queries

var iMessage = require('imessage');
 
var im = new iMessage();
im.getDb(function(err, db) {
  db.get("SELECT * FROM `messages`");
})

Ideally

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);
  })

Examples

Keywords

none

install

npm i imessage

Downloadsweekly downloads

10

version

0.1.6

license

ISC

last publish

collaborators

  • avatar
Report a vulnerability