A Node module to interact with iCloud to do the following:
npm install find-my-iphone
This module can alert the find my phone webservice, this also works with family sharing, so you can track family members on the fly. It works by pretending to be a browser and actually logging into the iCloud service.
Here's a basic example using all the methods
var icloud = require("find-my-iphone").findmyphone;
icloud.apple_id = "steve@jobs.com";
icloud.password = "oneMoreThing";
icloud.getDevices(function(error, devices) {
var device;
if (error) {
throw error;
}
//pick a device with location and findMyPhone enabled
devices.forEach(function(d) {
if (device == undefined && d.location && d.lostModeCapable) {
device = d;
}
});
if (device) {
//gets the distance of the device from my location
var myLatitude = 38.8977;
var myLongitude = -77.0366;
icloud.getDistanceOfDevice(device, myLatitude, myLongitude, function(err, result) {
console.log("Distance: " + result.distance.text);
console.log("Driving time: " + result.duration.text);
});
icloud.alertDevice(device.id, function(err) {
console.log("Beep Beep!");
});
icloud.getLocationOfDevice(device, function(err, location) {
console.log(location);
});
}
});
var find = require('find-my-iphone');
// Alert the first (or only) device on the account
find('user@icloud.com', 'password');
// Alert a specific device
find('user@icloud.com', 'password', 'iPhone 6');
// Callback when successful
find('user@icloud.com', 'password', 'iPhone 6',function() {
console.log("Done!");
});
find(email,password[,label[,callback]])
apple_id=someone@gmail.com apple_password=somePassword mocha test