itunes-bridge
Version:
A macOS and Windows NodeJS package to control and get informations from iTunes and macOS Music app through AppleScript
1,290 lines (347 loc) • 15.8 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Global - Documentation</title>
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav>
<li class="nav-link nav-home-link"><a href="index.html">Home</a></li><li class="nav-heading">Events</li><li class="nav-heading"><span class="nav-item-type type-event">E</span><span class="nav-item-name"><a href="iTunes-bridge.html#event:paused">paused</a></span></li><li class="nav-heading"><span class="nav-item-type type-event">E</span><span class="nav-item-name"><a href="iTunes-bridge.html#event:playing">playing</a></span></li><li class="nav-heading"><span class="nav-item-type type-event">E</span><span class="nav-item-name"><a href="iTunes-bridge.html#event:stopped">stopped</a></span></li><li class="nav-heading"><a href="global.html">Globals</a></li><li class="nav-item"><span class="nav-item-type type-member">M</span><span class="nav-item-name"><a href="global.html"></a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#getCurrentTrack">getCurrentTrack</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#getPlayerState">getPlayerState</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#getPlaylistCount">getPlaylistCount</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#getTrack">getTrack</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#getTrackCount">getTrackCount</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#isRunning">isRunning</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#pause">pause</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#play">play</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#soundVolume">soundVolume</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="global.html#stop">stop</a></span></li>
</nav>
<div id="main">
<h1 class="page-title">Global</h1>
<section>
<header>
<h2>
</h2>
</header>
<article>
<div class="container-overview">
<dl class="details">
</dl>
</div>
<h3 class="subsection-title">Methods</h3>
<div class="section-method">
<h4 class="name" id="getCurrentTrack"><span class="type-signature"></span>getCurrentTrack<span class="signature">()</span><span class="type-signature"> → {object}</span></h4>
<div class="description">
<p>Get informations about the current playing track</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line43">line 43</a>
</li></ul></dd>
</dl>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>object</code></span>
</dd>
</dl>
</div>
<div class="section-examples">
<h5>Example</h5>
<pre class="prettyprint"><code>{"name":"Business",
"artist":"Eminem",
"album":"The Eminem Show (Explicit Version)",
"mediaKind":"song",
"duration":251,
"elapsedTime":2,
"remainingTime":249,
"genre":"Rap/Hip Hop",
"releaseYear":2002,
"id":2630,
"playerState":"playing"}</code></pre>
</div>
</div>
<div class="section-method">
<h4 class="name" id="getPlayerState"><span class="type-signature"></span>getPlayerState<span class="signature">()</span><span class="type-signature"> → {string}</span></h4>
<div class="description">
<p>Get the player state</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line59">line 59</a>
</li></ul></dd>
</dl>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>string</code></span>
</dd>
</dl>
<div class="param-desc">
<ul>
<li>Possible values: playing, stopped or paused</li>
</ul>
</div>
</div>
<div class="section-examples">
<h5>Example</h5>
<pre class="prettyprint"><code>"playing"</code></pre>
</div>
</div>
<div class="section-method">
<h4 class="name" id="getPlaylistCount"><span class="type-signature"></span>getPlaylistCount<span class="signature">()</span><span class="type-signature"> → {int}</span></h4>
<div class="description">
<p>Gets the playlist count from the library</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line158">line 158</a>
</li></ul></dd>
</dl>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>int</code></span>
</dd>
</dl>
</div>
</div>
<div class="section-method">
<h4 class="name" id="getTrack"><span class="type-signature"></span>getTrack<span class="signature">(id)</span><span class="type-signature"> → {object}</span></h4>
<div class="description">
<p>Gets informations about a track from the library</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line146">line 146</a>
</li></ul></dd>
</dl>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>id</code></td>
<td class="type">
<span class="param-type"><code>int</code></span>
</td>
<td class="description last">
<p>The id of the track</p>
</td>
</tr>
</tbody>
</table>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>object</code></span>
</dd>
</dl>
</div>
<div class="section-examples">
<h5>Example</h5>
<pre class="prettyprint"><code>{ 'Track ID': 1428,
Size: 9019045,
'Total Time': 217103,
'Disc Number': 1,
'Disc Count': 1,
'Track Number': 14,
'Track Count': 16,
Year: 2011,
BPM: 99,
'Date Modified': 2018-03-18T22:37:46.000Z,
'Date Added': 2018-03-24T14:03:15.000Z,
'Bit Rate': 320,
'Sample Rate': 44100,
'Play Count': 3,
'Play Date': 3604816264,
'Play Date UTC': 2018-03-25T07:51:04.000Z,
'Artwork Count': 1,
'Persistent ID': '535F1580FAEB42E4',
'Track Type': 'File',
'File Folder Count': 5,
'Library Folder Count': 1,
Name: 'Ils sont cools',
Artist: 'Orelsan, Gringe',
'Album Artist': 'Orelsan',
Album: 'Le chant des sirènes',
Genre: 'Rap/Hip Hop',
Kind: 'Fichier audio MPEG',
'Sort Album': 'chant des sirènes',
Location: 'file:///Users/steve/Music/iTunes/iTunes%20Media/Music/Orelsan/Le%20chant%20des%20sire%CC%80nes/14%20Ils%20sont%20cools.mp3' }</code></pre>
</div>
</div>
<div class="section-method">
<h4 class="name" id="getTrackCount"><span class="type-signature"></span>getTrackCount<span class="signature">()</span><span class="type-signature"> → {int}</span></h4>
<div class="description">
<p>Gets the track count from the library</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line171">line 171</a>
</li></ul></dd>
</dl>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>int</code></span>
</dd>
</dl>
</div>
</div>
<div class="section-method">
<h4 class="name" id="isRunning"><span class="type-signature"></span>isRunning<span class="signature">()</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
<p>Function to know if iTunes is running</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line254">line 254</a>
</li></ul></dd>
</dl>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>boolean</code></span>
</dd>
</dl>
<div class="param-desc">
<ul>
<li>true or false</li>
</ul>
</div>
</div>
</div>
<div class="section-method">
<h4 class="name" id="pause"><span class="type-signature"></span>pause<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
<p>Tells iTunes to pause</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line103">line 103</a>
</li></ul></dd>
</dl>
</div>
<div class="section-method">
<h4 class="name" id="play"><span class="type-signature"></span>play<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
<p>Tells iTunes to play</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line97">line 97</a>
</li></ul></dd>
</dl>
</div>
<div class="section-method">
<h4 class="name" id="soundVolume"><span class="type-signature"></span>soundVolume<span class="signature">(volume)</span><span class="type-signature"> → {int}</span></h4>
<div class="description">
<p>Gets the iTunes sound volume or sets it if there's a parameter (Windows only)</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line75">line 75</a>
</li></ul></dd>
</dl>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>volume</code></td>
<td class="type">
<span class="param-type"><code>int</code></span>
</td>
<td class="description last">
<p>Windows only</p>
</td>
</tr>
</tbody>
</table>
<div class="section-returns">
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type:
</dt>
<dd>
<span class="param-type"><code>int</code></span>
</dd>
</dl>
</div>
</div>
<div class="section-method">
<h4 class="name" id="stop"><span class="type-signature"></span>stop<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
<p>Tells iTunes to stop</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="itunes-bridge.js.html">itunes-bridge.js</a>, <a href="itunes-bridge.js.html#line109">line 109</a>
</li></ul></dd>
</dl>
</div>
</article>
</section>
</div>
<br class="clear">
<footer>
Generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sat Jul 27 2019 01:48:17 GMT+0200 (GMT+02:00) using the Minami theme.
</footer>
<script>prettyPrint();</script>
<script src="scripts/linenumber.js"></script>
</body>
</html>