Looks doable (for a good Perl person) h t t p s ://library.ibroadcast.com/
For example - this is fetching a list of the library - in this case the
pre-populated sample tracks.
POST
Code:
--------------------
{
"_userid": "123456",
"_token": "abcdefgh-1234-5678-abcd-123456789012",
"mode": "library",
"client": "website",
"device_name": "something...LMS",
"version": "0.1",
"supported_types": false,
"url": "//library.ibroadcast.com"
}
Response:
{
"result": true,
"status": {
"lastmodified": "2021-01-27 08:29:53",
"timestamp": "2021-01-27 08:29:53",
"app_available": false,
"app_version": "6.5",
"expires": "2021-02-10 08:29:53.000000"
},
"lastfm": {
"linked": false,
"message": "Not connected",
"sessionkey": "",
"user": ""
},
"settings": {
"streaming_server": "https://streaming.ibroadcast.com",
"artwork_server": "https://artwork.ibroadcast.com",
"librarybytespersong": 150,
"librarysongspersecond": 4000,
"fast_polling": 30,
"slow_polling": 300
},
"library": {
"playlists": {
"322146": [
"Starter Songs",
[
205543927,
205543924,
205543928,
205543926
],
1234,
false,
null,
null,
null,
null,
0
],
"map": {
"uid": 2,
"name": 0,
"public_id": 4,
"artwork_id": 7,
"system_created": 3,
"type": 5,
"tracks": 1,
"description": 6,
"sort": 8
}
},
"expires": 1643272194,
"tags": {},
"trash": {
"0": [
"Trash"
],
"map": {
"tracks": 1,
"name": 0
}
},
"artists": {
"22095885": [
"Kevin MacLeod",
[
205543927,
205543928
],
false,
0
],
"map": {
"rating": 3,
"trashed": 2,
"name": 0,
"tracks": 1
},
"22095884": [
"Joe Farren",
[
205543926
],
false,
0
],
"22095883": [
"Zoe.LeelA",
[
205543924
],
false,
0
]
},
"tracks": {
"205543928": [
1,
0,
"Niles Blues",
"Blues",
154,
75355433,
2325883,
22095885,
0,
"2021-01-27",
false,
2734681,
"",
"",
0,
0,
"/128/057/397/28917137",
"audio/mpeg3",
"-6",
"08:29:42"
],
"205543924": [
1,
2013,
"Pop Up",
"Pop",
105,
75355430,
160155,
22095883,
0,
"2021-01-27",
false,
2573544,
"",
"",
0,
0,
"/128/74c/fdd/10026629",
"audio/mpeg3",
"-7.9",
"08:29:42"
],
"map": {
"replay_gain": 18,
"length": 4,
"size": 11,
"artwork_id": 6,
"genre": 3,
"uploaded_on": 9,
"artist_id": 7,
"type": 17,
"enid": 8,
"trashed": 10,
"year": 1,
"track": 0,
"uploaded_time": 19,
"album_id": 5,
"title": 2,
"uid": 13,
"file": 16,
"rating": 14,
"path": 12,
"plays": 15
},
"205543927": [
1,
2007,
"Beach Bum",
"Rock",
53,
75355432,
123143,
22095885,
0,
"2021-01-27",
false,
885785,
"",
"",
0,
0,
"/128/93c/f41/10350915",
"audio/mpeg3",
"4.7",
"08:29:42"
],
"205543926": [
7,
2013,
"American Dream",
"Country",
240,
75355431,
148445,
22095884,
0,
"2021-01-27",
false,
5717605,
"",
"",
0,
0,
"/128/951/58f/10026631",
"audio/mpeg3",
"-4.7",
"08:29:42"
]
},
"albums": {
"75355433": [
"Funk & Blues",
[
205543928
],
22095885,
false,
0,
0,
0
],
"75355432": [
"Rock Classic",
[
205543927
],
22095885,
false,
0,
0,
2007
],
"75355431": [
"Open Skies",
[
205543926
],
22095884,
false,
0,
0,
2013
],
"75355430": [
"Digital Guilt",
[
205543924
],
22095883,
false,
0,
0,
2013
],
"map": {
"disc": 5,
"trashed": 3,
"rating": 4,
"artist_id": 2,
"tracks": 1,
"year": 6,
"name": 0
}
}
}
}
--------------------
I see that their web UI uses Web Sockets (presumably to get the play
queue size and maybe progress) which LMS does not provide today - but I
suspect that it is not essential and an equivalent could be done through
periodic polling when active.
Paul Webster
http://dabdig.blogspot.com
author of \"now playing\" plugins covering radio france (fip etc), kcrw,
supla finland, abc australia, cbc/radio-canada and rte ireland
------------------------------------------------------------------------
Paul Webster's Profile: http://forums.slimdevices.com/member.php?userid=105
View this thread: http://forums.slimdevices.com/showthread.php?t=104601
_______________________________________________
discuss mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/discuss
