getPlayLists(function (err, playlists) { if (err) { return cb(err); } if (!playlists[index]) { return cb(new Error('No playlist with number ' + index)); } var id = playlists[index].id; pm.getPlayListEntries(function (err, response) { if (err) { return cb(err); } var items = response.data.items .filter(function (item) { return item.playlistId === id; }) .map(function (item) { return item.track; }) .filter(Boolean); var playlist = playlists[index]; playlist.songs = items; // oh really? what about side effects? cb(null, playlist); }); });
orchestrator.add('getPlaylistEntries', function(callback) { pm.getPlayListEntries(function(pl) { playlistEntries = pl; callback(); }); });