Last active
January 14, 2016 00:37
-
-
Save banterability/9059648 to your computer and use it in GitHub Desktop.
Get iPhone battery life over time from Reporter App's (http://www.reporter-app.com/) logs in Dropbox
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
async = require 'async' | |
fs = require 'fs' | |
{filter, flatten} = require 'underscore' | |
OBJ_C_EPOCH = 978307200 | |
DROPBOX_DIR = #"<path to your dropbox folder >/Dropbox/Apps/Reporter-App/" | |
fs.readdir DROPBOX_DIR, (err, files) -> | |
throw new err if err? | |
dataFiles = filter files, (filename) -> /.json/.test filename | |
dataFilesFullPath = dataFiles.map (filename) -> | |
"#{DROPBOX_DIR}#{filename}" | |
async.map dataFilesFullPath, readFile, (err, results) -> | |
throw new err if err? | |
console.log flatten results | |
readFile = (filename, cb) -> | |
fs.readFile filename, encoding: 'utf-8', (err, data) -> | |
throw new err if err? | |
js = JSON.parse data | |
results = js.snapshots.map (snapshot) -> | |
ts: convertObjCTimestampToDate snapshot.date | |
battery: snapshot.battery | |
cb null, results | |
# Reporter's timestamps are based on Objective-C's epoch, | |
# seconds since midnight UTC on Jan 1, 2001 | |
convertObjCTimestampToDate = (ts) -> | |
timestamp = OBJ_C_EPOCH + ts | |
new Date timestamp * 1000 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ { ts: Thu Feb 06 2014 10:05:07 GMT-0600 (CST), battery: 0.6 }, | |
{ ts: Thu Feb 06 2014 12:11:13 GMT-0600 (CST), battery: 0.4 }, | |
{ ts: Thu Feb 06 2014 13:59:42 GMT-0600 (CST), battery: 0.85 }, | |
{ ts: Thu Feb 06 2014 17:45:22 GMT-0600 (CST), battery: 1 }, | |
{ ts: Thu Feb 06 2014 20:38:37 GMT-0600 (CST), battery: 0.85 }, | |
{ ts: Thu Feb 06 2014 22:50:10 GMT-0600 (CST), battery: 0.7 }, | |
{ ts: Fri Feb 07 2014 06:36:07 GMT-0600 (CST), battery: 1 }, | |
{ ts: Fri Feb 07 2014 10:02:06 GMT-0600 (CST), battery: 0.65 }, | |
{ ts: Fri Feb 07 2014 11:45:23 GMT-0600 (CST), battery: 0.6 }, | |
{ ts: Fri Feb 07 2014 13:05:28 GMT-0600 (CST), battery: 0.5 }, | |
{ ts: Fri Feb 07 2014 15:37:06 GMT-0600 (CST), battery: 0.25 }, | |
{ ts: Fri Feb 07 2014 18:11:59 GMT-0600 (CST), battery: 0.55 }, | |
{ ts: Fri Feb 07 2014 23:10:36 GMT-0600 (CST), battery: 0.3 }, | |
{ ts: Sat Feb 08 2014 00:36:39 GMT-0600 (CST), battery: 0.25 }, | |
{ ts: Sat Feb 08 2014 10:03:19 GMT-0600 (CST), battery: 1 }, | |
{ ts: Sat Feb 08 2014 13:09:10 GMT-0600 (CST), battery: 0.75 }, | |
{ ts: Sat Feb 08 2014 16:36:27 GMT-0600 (CST), battery: 0.55 }, | |
{ ts: Sat Feb 08 2014 18:59:06 GMT-0600 (CST), battery: 0.4 }, | |
{ ts: Sat Feb 08 2014 22:25:43 GMT-0600 (CST), battery: 0.3 }, | |
{ ts: Sun Feb 09 2014 00:19:49 GMT-0600 (CST), battery: 0.1 }, | |
{ ts: Sun Feb 09 2014 00:26:26 GMT-0600 (CST), battery: 0.1 }, | |
{ ts: Sun Feb 09 2014 07:53:18 GMT-0600 (CST), battery: 1 }, | |
{ ts: Sun Feb 09 2014 10:57:23 GMT-0600 (CST), battery: 0.85 }, | |
{ ts: Sun Feb 09 2014 14:00:53 GMT-0600 (CST), battery: 0.65 }, | |
{ ts: Sun Feb 09 2014 16:33:13 GMT-0600 (CST), battery: 0.5 }, | |
{ ts: Sun Feb 09 2014 21:19:03 GMT-0600 (CST), battery: 0.2 }, | |
{ ts: Sun Feb 09 2014 23:46:42 GMT-0600 (CST), battery: 0.1 }, | |
{ ts: Mon Feb 10 2014 06:50:46 GMT-0600 (CST), battery: 1 }, | |
{ ts: Mon Feb 10 2014 09:53:53 GMT-0600 (CST), battery: 0.75 }, | |
{ ts: Mon Feb 10 2014 12:18:47 GMT-0600 (CST), battery: 0.65 }, | |
{ ts: Mon Feb 10 2014 16:25:02 GMT-0600 (CST), battery: 0.55 }, | |
{ ts: Mon Feb 10 2014 19:43:38 GMT-0600 (CST), battery: 0.25 }, | |
{ ts: Mon Feb 10 2014 22:08:19 GMT-0600 (CST), battery: 0.15 }, | |
{ ts: Tue Feb 11 2014 00:28:40 GMT-0600 (CST), battery: 0 }, | |
{ ts: Tue Feb 11 2014 07:27:02 GMT-0600 (CST), battery: 1 }, | |
{ ts: Tue Feb 11 2014 10:47:14 GMT-0600 (CST), battery: 0.85 }, | |
{ ts: Tue Feb 11 2014 14:17:40 GMT-0600 (CST), battery: 1 }, | |
{ ts: Tue Feb 11 2014 17:27:22 GMT-0600 (CST), battery: 0.95 }, | |
{ ts: Tue Feb 11 2014 19:45:46 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Tue Feb 11 2014 22:23:47 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Wed Feb 12 2014 10:56:10 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Wed Feb 12 2014 12:58:03 GMT-0600 (CST), battery: 0.95 }, | |
{ ts: Wed Feb 12 2014 17:05:45 GMT-0600 (CST), battery: 0.95 }, | |
{ ts: Wed Feb 12 2014 19:26:05 GMT-0600 (CST), battery: 0.85 }, | |
{ ts: Wed Feb 12 2014 22:48:29 GMT-0600 (CST), battery: 0.75 }, | |
{ ts: Thu Feb 13 2014 00:34:00 GMT-0600 (CST), battery: 0.75 }, | |
{ ts: Thu Feb 13 2014 02:12:53 GMT-0600 (CST), battery: 0.7 }, | |
{ ts: Thu Feb 13 2014 08:04:41 GMT-0600 (CST), battery: 1 }, | |
{ ts: Thu Feb 13 2014 10:54:28 GMT-0600 (CST), battery: 0.65 }, | |
{ ts: Thu Feb 13 2014 12:24:16 GMT-0600 (CST), battery: 0.55 }, | |
{ ts: Thu Feb 13 2014 15:53:11 GMT-0600 (CST), battery: 0.3 }, | |
{ ts: Thu Feb 13 2014 18:30:40 GMT-0600 (CST), battery: 0.5 }, | |
{ ts: Thu Feb 13 2014 20:40:59 GMT-0600 (CST), battery: 0.35 }, | |
{ ts: Fri Feb 14 2014 08:11:59 GMT-0600 (CST), battery: 0.9 }, | |
{ ts: Fri Feb 14 2014 10:50:11 GMT-0600 (CST), battery: 1 }, | |
{ ts: Fri Feb 14 2014 13:15:48 GMT-0600 (CST), battery: 0.9 }, | |
{ ts: Fri Feb 14 2014 15:12:56 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Fri Feb 14 2014 18:28:12 GMT-0600 (CST), battery: 0.45 }, | |
{ ts: Fri Feb 14 2014 19:28:21 GMT-0600 (CST), battery: 0.35 }, | |
{ ts: Fri Feb 14 2014 22:14:35 GMT-0600 (CST), battery: 0.2 }, | |
{ ts: Fri Feb 14 2014 22:34:29 GMT-0600 (CST), battery: 0.15 }, | |
{ ts: Sat Feb 15 2014 08:33:36 GMT-0600 (CST), battery: 1 }, | |
{ ts: Sat Feb 15 2014 10:24:54 GMT-0600 (CST), battery: 0.95 }, | |
{ ts: Sat Feb 15 2014 13:24:59 GMT-0600 (CST), battery: 0.85 }, | |
{ ts: Sat Feb 15 2014 16:04:10 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Sat Feb 15 2014 19:20:59 GMT-0600 (CST), battery: 0.55 }, | |
{ ts: Sat Feb 15 2014 20:49:04 GMT-0600 (CST), battery: 0.55 }, | |
{ ts: Sat Feb 15 2014 23:38:09 GMT-0600 (CST), battery: 0.45 }, | |
{ ts: Sun Feb 16 2014 00:51:32 GMT-0600 (CST), battery: 0.3 }, | |
{ ts: Sun Feb 16 2014 07:44:48 GMT-0600 (CST), battery: 0.95 }, | |
{ ts: Sun Feb 16 2014 10:15:39 GMT-0600 (CST), battery: 0.9 }, | |
{ ts: Sun Feb 16 2014 12:57:53 GMT-0600 (CST), battery: 0.6 }, | |
{ ts: Sun Feb 16 2014 14:26:41 GMT-0600 (CST), battery: 0.45 }, | |
{ ts: Sun Feb 16 2014 20:46:08 GMT-0600 (CST), battery: 0.2 }, | |
{ ts: Sun Feb 16 2014 21:34:07 GMT-0600 (CST), battery: 0.2 }, | |
{ ts: Sun Feb 16 2014 22:18:21 GMT-0600 (CST), battery: 0.15 }, | |
{ ts: Mon Feb 17 2014 06:51:14 GMT-0600 (CST), battery: 1 }, | |
{ ts: Mon Feb 17 2014 09:22:29 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Mon Feb 17 2014 09:49:42 GMT-0600 (CST), battery: 0.8 }, | |
{ ts: Mon Feb 17 2014 11:39:24 GMT-0600 (CST), battery: 1 }, | |
{ ts: Mon Feb 17 2014 14:31:32 GMT-0600 (CST), battery: 0.95 } ] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment