auntie 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +3 -0
  3. data/Gemfile.lock +49 -0
  4. data/LICENSE +20 -0
  5. data/README.md +39 -0
  6. data/Rakefile +24 -0
  7. data/bin/news +4 -0
  8. data/bin/radio +51 -0
  9. data/bin/sport +4 -0
  10. data/bin/tv +45 -0
  11. data/bin/weather +23 -0
  12. data/features/location.feature +8 -0
  13. data/features/news.feature +8 -0
  14. data/features/radio.feature +8 -0
  15. data/features/sport.feature +8 -0
  16. data/features/step_definitions/location_steps.rb +7 -0
  17. data/features/step_definitions/radio_steps.rb +1 -0
  18. data/features/step_definitions/tv_steps.rb +1 -0
  19. data/features/step_definitions/weather_steps.rb +6 -0
  20. data/features/support/env.rb +15 -0
  21. data/features/tv.feature +8 -0
  22. data/features/weather.feature +8 -0
  23. data/lib/auntie.rb +16 -0
  24. data/lib/bbc/location.rb +44 -0
  25. data/lib/bbc/news.rb +28 -0
  26. data/lib/bbc/now_next.rb +93 -0
  27. data/lib/bbc/schedule.rb +53 -0
  28. data/lib/bbc/shell/characters.rb +68 -0
  29. data/lib/bbc/shell/colors.rb +39 -0
  30. data/lib/bbc/shell/describe_time.rb +20 -0
  31. data/lib/bbc/sport.rb +33 -0
  32. data/lib/bbc/version.rb +7 -0
  33. data/lib/bbc/weather.rb +98 -0
  34. data/scratch +9 -0
  35. data/spec/bbc/location_spec.rb +45 -0
  36. data/spec/bbc/news_spec.rb +43 -0
  37. data/spec/bbc/now_next_spec.rb +53 -0
  38. data/spec/bbc/schedule_spec.rb +56 -0
  39. data/spec/bbc/sport_spec.rb +35 -0
  40. data/spec/bbc/version_spec.rb +18 -0
  41. data/spec/bbc/weather_spec.rb +41 -0
  42. data/spec/fixtures/3dayforecast.json +149 -0
  43. data/spec/fixtures/3hourlyforecast.json +265 -0
  44. data/spec/fixtures/location.json +12 -0
  45. data/spec/fixtures/news.json +31 -0
  46. data/spec/fixtures/now_next_radio.json +7767 -0
  47. data/spec/fixtures/now_next_tv.json +3471 -0
  48. data/spec/fixtures/schedule_radio_today.json +939 -0
  49. data/spec/fixtures/schedule_radio_tomorrow.json +941 -0
  50. data/spec/fixtures/schedule_radio_yesterday.json +1118 -0
  51. data/spec/fixtures/schedule_tv.json +1695 -0
  52. data/spec/fixtures/sport.json +38 -0
  53. data/spec/spec_helper.rb +13 -0
  54. metadata +170 -0
@@ -0,0 +1,1118 @@
1
+ {
2
+ "schedule": {
3
+ "day": {
4
+ "broadcasts": [
5
+ {
6
+ "duration": 3600,
7
+ "end": "2014-02-02T01:00:00Z",
8
+ "is_blanked": false,
9
+ "is_repeat": false,
10
+ "pid": "p01qgrvf",
11
+ "programme": {
12
+ "actual_start": "2014-02-02T01:43:56Z",
13
+ "available_until": "2014-02-09T01:02:00Z",
14
+ "display_titles": {
15
+ "subtitle": "Ice Music Festival",
16
+ "title": "Stuart Maconie's Freakier Zone"
17
+ },
18
+ "duration": 3600,
19
+ "first_broadcast_date": "2014-02-02T00:00:00Z",
20
+ "image": {
21
+ "pid": "p01r0gf9"
22
+ },
23
+ "is_available_mediaset_pc_sd": true,
24
+ "is_legacy_media": false,
25
+ "media": {
26
+ "availability": "5 days left to listen",
27
+ "expires": "2014-02-09T01:02:00Z",
28
+ "format": "audio"
29
+ },
30
+ "media_type": "audio",
31
+ "ownership": {
32
+ "service": {
33
+ "id": "bbc_6music",
34
+ "key": "6music",
35
+ "title": "BBC Radio 6 Music",
36
+ "type": "radio"
37
+ }
38
+ },
39
+ "pid": "b03t8hsg",
40
+ "position": null,
41
+ "programme": {
42
+ "expected_child_count": null,
43
+ "first_broadcast_date": "2010-04-10T00:00:00+01:00",
44
+ "ownership": {
45
+ "service": {
46
+ "id": "bbc_6music",
47
+ "key": "6music",
48
+ "title": "BBC Radio 6 Music",
49
+ "type": "radio"
50
+ }
51
+ },
52
+ "pid": "b00rwkjd",
53
+ "position": null,
54
+ "title": "Stuart Maconie's Freakier Zone",
55
+ "type": "brand"
56
+ },
57
+ "short_synopsis": "Fiona Talkington reports from the Ice Music Festival in Geilo, Norway.",
58
+ "title": "Ice Music Festival",
59
+ "type": "episode"
60
+ },
61
+ "start": "2014-02-02T00:00:00Z"
62
+ },
63
+ {
64
+ "duration": 3600,
65
+ "end": "2014-02-02T02:00:00Z",
66
+ "is_blanked": false,
67
+ "is_repeat": false,
68
+ "pid": "p01qgrvh",
69
+ "programme": {
70
+ "actual_start": "2014-02-02T02:54:00Z",
71
+ "available_until": "2014-02-09T02:02:00Z",
72
+ "display_titles": {
73
+ "subtitle": "Bombay Bicycle Club, Colin Greenwood, Connan Mockasin and Jeremy Deller",
74
+ "title": "The Joy of 6"
75
+ },
76
+ "duration": 3600,
77
+ "first_broadcast_date": "2014-02-02T01:00:00Z",
78
+ "image": {
79
+ "pid": "p01m1k4t"
80
+ },
81
+ "is_available_mediaset_pc_sd": true,
82
+ "is_legacy_media": false,
83
+ "media": {
84
+ "availability": "6 days left to listen",
85
+ "expires": "2014-02-09T02:02:00Z",
86
+ "format": "audio"
87
+ },
88
+ "media_type": "audio",
89
+ "ownership": {
90
+ "service": {
91
+ "id": "bbc_6music",
92
+ "key": "6music",
93
+ "title": "BBC Radio 6 Music",
94
+ "type": "radio"
95
+ }
96
+ },
97
+ "pid": "b03t8jl1",
98
+ "position": null,
99
+ "programme": {
100
+ "expected_child_count": null,
101
+ "first_broadcast_date": "2010-04-13T01:00:00+01:00",
102
+ "ownership": {
103
+ "service": {
104
+ "id": "bbc_6music",
105
+ "key": "6music",
106
+ "title": "BBC Radio 6 Music",
107
+ "type": "radio"
108
+ }
109
+ },
110
+ "pid": "b00rwkk1",
111
+ "position": null,
112
+ "title": "The Joy of 6",
113
+ "type": "brand"
114
+ },
115
+ "short_synopsis": "Bombay Bicycle Club in session, plus Colin Greenwood, Connan Mockasin and Jeremy Deller.",
116
+ "title": "Bombay Bicycle Club, Colin Greenwood, Connan Mockasin and Jeremy Deller",
117
+ "type": "episode"
118
+ },
119
+ "start": "2014-02-02T01:00:00Z"
120
+ },
121
+ {
122
+ "duration": 3600,
123
+ "end": "2014-02-02T03:00:00Z",
124
+ "is_blanked": false,
125
+ "is_repeat": false,
126
+ "pid": "p01qgrvj",
127
+ "programme": {
128
+ "actual_start": "2014-02-02T03:47:08Z",
129
+ "available_until": "2014-02-09T03:02:00Z",
130
+ "display_titles": {
131
+ "subtitle": "The New Music Playlist",
132
+ "title": "6 Music Recommends"
133
+ },
134
+ "duration": 3600,
135
+ "first_broadcast_date": "2014-02-02T02:00:00Z",
136
+ "image": {
137
+ "pid": "p01lzjzm"
138
+ },
139
+ "is_available_mediaset_pc_sd": true,
140
+ "is_legacy_media": false,
141
+ "media": {
142
+ "availability": "6 days left to listen",
143
+ "expires": "2014-02-09T03:02:00Z",
144
+ "format": "audio"
145
+ },
146
+ "media_type": "audio",
147
+ "ownership": {
148
+ "service": {
149
+ "id": "bbc_6music",
150
+ "key": "6music",
151
+ "title": "BBC Radio 6 Music",
152
+ "type": "radio"
153
+ }
154
+ },
155
+ "pid": "b03t8jl3",
156
+ "position": null,
157
+ "programme": {
158
+ "expected_child_count": null,
159
+ "first_broadcast_date": "2010-04-10T01:00:00+01:00",
160
+ "ownership": {
161
+ "service": {
162
+ "id": "bbc_6music",
163
+ "key": "6music",
164
+ "title": "BBC Radio 6 Music",
165
+ "type": "radio"
166
+ }
167
+ },
168
+ "pid": "b00rz79k",
169
+ "position": null,
170
+ "title": "6 Music Recommends",
171
+ "type": "brand"
172
+ },
173
+ "short_synopsis": "New music in one handy bitesize programme.",
174
+ "title": "The New Music Playlist",
175
+ "type": "episode"
176
+ },
177
+ "start": "2014-02-02T02:00:00Z"
178
+ },
179
+ {
180
+ "duration": 3600,
181
+ "end": "2014-02-02T04:00:00Z",
182
+ "is_blanked": false,
183
+ "is_repeat": false,
184
+ "pid": "p01qgrvk",
185
+ "programme": {
186
+ "actual_start": "2014-02-02T04:42:36Z",
187
+ "available_until": "2014-02-09T04:02:00Z",
188
+ "display_titles": {
189
+ "subtitle": "The Movies, The Colourfield and Lunachicks",
190
+ "title": "6 Music Live Hour"
191
+ },
192
+ "duration": 3600,
193
+ "first_broadcast_date": "2014-02-02T03:00:00Z",
194
+ "image": {
195
+ "pid": "p01lzk0c"
196
+ },
197
+ "is_available_mediaset_pc_sd": true,
198
+ "is_legacy_media": false,
199
+ "media": {
200
+ "availability": "6 days left to listen",
201
+ "expires": "2014-02-09T04:02:00Z",
202
+ "format": "audio"
203
+ },
204
+ "media_type": "audio",
205
+ "ownership": {
206
+ "service": {
207
+ "id": "bbc_6music",
208
+ "key": "6music",
209
+ "title": "BBC Radio 6 Music",
210
+ "type": "radio"
211
+ }
212
+ },
213
+ "pid": "b03t8jr3",
214
+ "position": null,
215
+ "programme": {
216
+ "expected_child_count": null,
217
+ "first_broadcast_date": "2010-04-03T04:00:00+01:00",
218
+ "ownership": {
219
+ "service": {
220
+ "id": "bbc_6music",
221
+ "key": "6music",
222
+ "title": "BBC Radio 6 Music",
223
+ "type": "radio"
224
+ }
225
+ },
226
+ "pid": "b00rwm3t",
227
+ "position": null,
228
+ "title": "6 Music Live Hour",
229
+ "type": "brand"
230
+ },
231
+ "short_synopsis": "The Movies live in London in 1980, plus sessions from The Colourfield and Lunachicks.",
232
+ "title": "The Movies, The Colourfield and Lunachicks",
233
+ "type": "episode"
234
+ },
235
+ "start": "2014-02-02T03:00:00Z"
236
+ },
237
+ {
238
+ "duration": 3600,
239
+ "end": "2014-02-02T05:00:00Z",
240
+ "is_blanked": false,
241
+ "is_repeat": false,
242
+ "pid": "p01qgrvl",
243
+ "programme": {
244
+ "actual_start": "2014-02-02T05:41:53Z",
245
+ "available_until": "2014-02-09T05:02:00Z",
246
+ "display_titles": {
247
+ "subtitle": "Hit Factories",
248
+ "title": "The Story of Pop"
249
+ },
250
+ "duration": 3600,
251
+ "first_broadcast_date": "2011-01-31T03:00:00Z",
252
+ "image": {
253
+ "pid": "p01l68ky"
254
+ },
255
+ "is_available_mediaset_pc_sd": true,
256
+ "is_legacy_media": false,
257
+ "media": {
258
+ "availability": "6 days left to listen",
259
+ "expires": "2014-02-09T05:02:00Z",
260
+ "format": "audio"
261
+ },
262
+ "media_type": "audio",
263
+ "ownership": {
264
+ "service": {
265
+ "id": "bbc_6music",
266
+ "key": "6music",
267
+ "title": "BBC Radio 6 Music",
268
+ "type": "radio"
269
+ }
270
+ },
271
+ "pid": "b00y38j3",
272
+ "position": 28,
273
+ "programme": {
274
+ "expected_child_count": 52,
275
+ "first_broadcast_date": "2011-01-04T03:00:00Z",
276
+ "ownership": {
277
+ "service": {
278
+ "id": "bbc_6music",
279
+ "key": "6music",
280
+ "title": "BBC Radio 6 Music",
281
+ "type": "radio"
282
+ }
283
+ },
284
+ "pid": "b00xp4rp",
285
+ "position": null,
286
+ "title": "The Story of Pop",
287
+ "type": "series"
288
+ },
289
+ "short_synopsis": "Alan Freeman explores the world of teen idols and the managers who pull the strings.",
290
+ "title": "Hit Factories",
291
+ "type": "episode"
292
+ },
293
+ "start": "2014-02-02T04:00:00Z"
294
+ },
295
+ {
296
+ "duration": 7200,
297
+ "end": "2014-02-02T07:00:00Z",
298
+ "is_blanked": false,
299
+ "is_repeat": false,
300
+ "pid": "p01qgrvm",
301
+ "programme": {
302
+ "actual_start": "2014-02-02T07:41:31Z",
303
+ "available_until": "2014-02-09T07:02:00Z",
304
+ "display_titles": {
305
+ "subtitle": "02/02/2014",
306
+ "title": "Chris Hawkins"
307
+ },
308
+ "duration": 7200,
309
+ "first_broadcast_date": "2014-02-02T05:00:00Z",
310
+ "image": {
311
+ "pid": "p01lc263"
312
+ },
313
+ "is_available_mediaset_pc_sd": true,
314
+ "is_legacy_media": false,
315
+ "media": {
316
+ "availability": "6 days left to listen",
317
+ "expires": "2014-02-09T07:02:00Z",
318
+ "format": "audio"
319
+ },
320
+ "media_type": "audio",
321
+ "ownership": {
322
+ "service": {
323
+ "id": "bbc_6music",
324
+ "key": "6music",
325
+ "title": "BBC Radio 6 Music",
326
+ "type": "radio"
327
+ }
328
+ },
329
+ "pid": "b03t8lwp",
330
+ "position": null,
331
+ "programme": {
332
+ "expected_child_count": null,
333
+ "first_broadcast_date": "2007-09-17T02:00:00+01:00",
334
+ "ownership": {
335
+ "service": {
336
+ "id": "bbc_6music",
337
+ "key": "6music",
338
+ "title": "BBC Radio 6 Music",
339
+ "type": "radio"
340
+ }
341
+ },
342
+ "pid": "b0072l8y",
343
+ "position": null,
344
+ "title": "Chris Hawkins",
345
+ "type": "brand"
346
+ },
347
+ "short_synopsis": "A great mix of music for the weekend, including a featured album by Kate Bush.",
348
+ "title": "02/02/2014",
349
+ "type": "episode"
350
+ },
351
+ "start": "2014-02-02T05:00:00Z"
352
+ },
353
+ {
354
+ "duration": 10800,
355
+ "end": "2014-02-02T10:00:00Z",
356
+ "is_blanked": false,
357
+ "is_repeat": false,
358
+ "pid": "p01qgrz0",
359
+ "programme": {
360
+ "actual_start": "2014-02-02T10:46:31Z",
361
+ "available_until": "2014-02-09T10:02:00Z",
362
+ "display_titles": {
363
+ "subtitle": "Kevin Cummins and Mike Joyce: How to Take a Decent Photo",
364
+ "title": "Mary Anne Hobbs"
365
+ },
366
+ "duration": 10800,
367
+ "first_broadcast_date": "2014-02-02T07:00:00Z",
368
+ "image": {
369
+ "pid": "p01qw2gm"
370
+ },
371
+ "is_available_mediaset_pc_sd": true,
372
+ "is_legacy_media": false,
373
+ "media": {
374
+ "availability": "6 days left to listen",
375
+ "expires": "2014-02-09T10:02:00Z",
376
+ "format": "audio"
377
+ },
378
+ "media_type": "audio",
379
+ "ownership": {
380
+ "service": {
381
+ "id": "bbc_6music",
382
+ "key": "6music",
383
+ "title": "BBC Radio 6 Music",
384
+ "type": "radio"
385
+ }
386
+ },
387
+ "pid": "b03t8mz6",
388
+ "position": null,
389
+ "programme": {
390
+ "expected_child_count": null,
391
+ "first_broadcast_date": "2013-01-05T07:00:00Z",
392
+ "ownership": {
393
+ "service": {
394
+ "id": "bbc_6music",
395
+ "key": "6music",
396
+ "title": "BBC Radio 6 Music",
397
+ "type": "radio"
398
+ }
399
+ },
400
+ "pid": "b01pp0xq",
401
+ "position": null,
402
+ "title": "Mary Anne Hobbs",
403
+ "type": "brand"
404
+ },
405
+ "short_synopsis": "Kevin Cummins and Mike Joyce join Mary Ann to discuss iconic music photography.",
406
+ "title": "Kevin Cummins and Mike Joyce: How to Take a Decent Photo",
407
+ "type": "episode"
408
+ },
409
+ "start": "2014-02-02T07:00:00Z"
410
+ },
411
+ {
412
+ "duration": 10800,
413
+ "end": "2014-02-02T13:00:00Z",
414
+ "is_blanked": false,
415
+ "is_repeat": false,
416
+ "pid": "p01qgrz1",
417
+ "programme": {
418
+ "actual_start": "2014-02-02T13:47:38Z",
419
+ "available_until": "2014-02-09T13:02:00Z",
420
+ "display_titles": {
421
+ "subtitle": "02/02/2014",
422
+ "title": "Cerys on 6"
423
+ },
424
+ "duration": 10800,
425
+ "first_broadcast_date": "2014-02-02T10:00:00Z",
426
+ "image": {
427
+ "pid": "p00splv9"
428
+ },
429
+ "is_available_mediaset_pc_sd": true,
430
+ "is_legacy_media": false,
431
+ "media": {
432
+ "availability": "6 days left to listen",
433
+ "expires": "2014-02-09T13:02:00Z",
434
+ "format": "audio"
435
+ },
436
+ "media_type": "audio",
437
+ "ownership": {
438
+ "service": {
439
+ "id": "bbc_6music",
440
+ "key": "6music",
441
+ "title": "BBC Radio 6 Music",
442
+ "type": "radio"
443
+ }
444
+ },
445
+ "pid": "b03t8mz8",
446
+ "position": null,
447
+ "programme": {
448
+ "expected_child_count": null,
449
+ "first_broadcast_date": "2009-07-06T13:00:00+01:00",
450
+ "ownership": {
451
+ "service": {
452
+ "id": "bbc_6music",
453
+ "key": "6music",
454
+ "title": "BBC Radio 6 Music",
455
+ "type": "radio"
456
+ }
457
+ },
458
+ "pid": "b00llg30",
459
+ "position": null,
460
+ "title": "Cerys on 6",
461
+ "type": "brand"
462
+ },
463
+ "short_synopsis": "Cerys Matthews brings you eclectic music from blues to beats.",
464
+ "title": "02/02/2014",
465
+ "type": "episode"
466
+ },
467
+ "start": "2014-02-02T10:00:00Z"
468
+ },
469
+ {
470
+ "duration": 3600,
471
+ "end": "2014-02-02T14:00:00Z",
472
+ "is_blanked": false,
473
+ "is_repeat": false,
474
+ "pid": "p01qgrz2",
475
+ "programme": {
476
+ "actual_start": "2014-02-02T14:42:51Z",
477
+ "available_until": "2014-02-09T14:02:00Z",
478
+ "display_titles": {
479
+ "subtitle": "With Midlake",
480
+ "title": "6 Music Playlist"
481
+ },
482
+ "duration": 3600,
483
+ "first_broadcast_date": "2014-02-02T13:00:00Z",
484
+ "image": {
485
+ "pid": "p01qrc50"
486
+ },
487
+ "is_available_mediaset_pc_sd": true,
488
+ "is_legacy_media": false,
489
+ "media": {
490
+ "availability": "6 days left to listen",
491
+ "expires": "2014-02-09T14:02:00Z",
492
+ "format": "audio"
493
+ },
494
+ "media_type": "audio",
495
+ "ownership": {
496
+ "service": {
497
+ "id": "bbc_6music",
498
+ "key": "6music",
499
+ "title": "BBC Radio 6 Music",
500
+ "type": "radio"
501
+ }
502
+ },
503
+ "pid": "b03t8nsl",
504
+ "position": null,
505
+ "programme": {
506
+ "expected_child_count": null,
507
+ "first_broadcast_date": "2012-02-12T12:00:00Z",
508
+ "ownership": {
509
+ "service": {
510
+ "id": "bbc_6music",
511
+ "key": "6music",
512
+ "title": "BBC Radio 6 Music",
513
+ "type": "radio"
514
+ }
515
+ },
516
+ "pid": "b01c85d6",
517
+ "position": null,
518
+ "title": "6 Music Playlist",
519
+ "type": "brand"
520
+ },
521
+ "short_synopsis": "Midlake frontman Eric Pulido presents the show ahead of them playing the 6 Music Festival.",
522
+ "title": "With Midlake",
523
+ "type": "episode"
524
+ },
525
+ "start": "2014-02-02T13:00:00Z"
526
+ },
527
+ {
528
+ "duration": 7200,
529
+ "end": "2014-02-02T16:00:00Z",
530
+ "is_blanked": false,
531
+ "is_repeat": false,
532
+ "pid": "p01qgrz3",
533
+ "programme": {
534
+ "actual_start": "2014-02-02T16:53:37Z",
535
+ "available_until": "2014-02-09T16:02:00Z",
536
+ "display_titles": {
537
+ "subtitle": "02/02/2014",
538
+ "title": "Guy Garvey's Finest Hour"
539
+ },
540
+ "duration": 7200,
541
+ "first_broadcast_date": "2014-02-02T14:00:00Z",
542
+ "image": {
543
+ "pid": "p01r1839"
544
+ },
545
+ "is_available_mediaset_pc_sd": true,
546
+ "is_legacy_media": false,
547
+ "media": {
548
+ "availability": "6 days left to listen",
549
+ "expires": "2014-02-09T16:02:00Z",
550
+ "format": "audio"
551
+ },
552
+ "media_type": "audio",
553
+ "ownership": {
554
+ "service": {
555
+ "id": "bbc_6music",
556
+ "key": "6music",
557
+ "title": "BBC Radio 6 Music",
558
+ "type": "radio"
559
+ }
560
+ },
561
+ "pid": "b03t8r4f",
562
+ "position": null,
563
+ "programme": {
564
+ "expected_child_count": null,
565
+ "first_broadcast_date": "2007-09-16T22:00:00+01:00",
566
+ "ownership": {
567
+ "service": {
568
+ "id": "bbc_6music",
569
+ "key": "6music",
570
+ "title": "BBC Radio 6 Music",
571
+ "type": "radio"
572
+ }
573
+ },
574
+ "pid": "b0072q60",
575
+ "position": null,
576
+ "title": "Guy Garvey's Finest Hour",
577
+ "type": "brand"
578
+ },
579
+ "short_synopsis": "Guy presents the show - not from his flat in North Manchester. Where is he?",
580
+ "title": "02/02/2014",
581
+ "type": "episode"
582
+ },
583
+ "start": "2014-02-02T14:00:00Z"
584
+ },
585
+ {
586
+ "duration": 7200,
587
+ "end": "2014-02-02T18:00:00Z",
588
+ "is_blanked": false,
589
+ "is_repeat": false,
590
+ "pid": "p01qgrz4",
591
+ "programme": {
592
+ "actual_start": "2014-02-02T18:41:00Z",
593
+ "available_until": "2014-02-09T18:02:00Z",
594
+ "display_titles": {
595
+ "subtitle": "02/02/2014",
596
+ "title": "Terry Hall"
597
+ },
598
+ "duration": 7200,
599
+ "first_broadcast_date": "2014-02-02T16:00:00Z",
600
+ "image": {
601
+ "pid": "p01qvgnp"
602
+ },
603
+ "is_available_mediaset_pc_sd": true,
604
+ "is_legacy_media": false,
605
+ "media": {
606
+ "availability": "6 days left to listen",
607
+ "expires": "2014-02-09T18:02:00Z",
608
+ "format": "audio"
609
+ },
610
+ "media_type": "audio",
611
+ "ownership": {
612
+ "service": {
613
+ "id": "bbc_6music",
614
+ "key": "6music",
615
+ "title": "BBC Radio 6 Music",
616
+ "type": "radio"
617
+ }
618
+ },
619
+ "pid": "b03tcd85",
620
+ "position": null,
621
+ "programme": {
622
+ "expected_child_count": null,
623
+ "first_broadcast_date": "2014-02-02T16:00:00Z",
624
+ "ownership": {
625
+ "service": {
626
+ "id": "bbc_6music",
627
+ "key": "6music",
628
+ "title": "BBC Radio 6 Music",
629
+ "type": "radio"
630
+ }
631
+ },
632
+ "pid": "b03tcd32",
633
+ "position": null,
634
+ "title": "Terry Hall",
635
+ "type": "brand"
636
+ },
637
+ "short_synopsis": "Specials frontman Terry Hall takes over the Sunday afternoon slot for February.",
638
+ "title": "02/02/2014",
639
+ "type": "episode"
640
+ },
641
+ "start": "2014-02-02T16:00:00Z"
642
+ },
643
+ {
644
+ "duration": 7200,
645
+ "end": "2014-02-02T20:00:00Z",
646
+ "is_blanked": false,
647
+ "is_repeat": false,
648
+ "pid": "p01qgrz5",
649
+ "programme": {
650
+ "actual_start": "2014-02-02T20:42:12Z",
651
+ "available_until": "2014-02-09T20:02:00Z",
652
+ "display_titles": {
653
+ "subtitle": "#Seeger6Music - A Tribute to Pete Seeger",
654
+ "title": "Now Playing @6Music"
655
+ },
656
+ "duration": 7200,
657
+ "first_broadcast_date": "2014-02-02T18:00:00Z",
658
+ "image": {
659
+ "pid": "p01qr3ww"
660
+ },
661
+ "is_available_mediaset_pc_sd": true,
662
+ "is_legacy_media": false,
663
+ "media": {
664
+ "availability": "6 days left to listen",
665
+ "expires": "2014-02-09T20:02:00Z",
666
+ "format": "audio"
667
+ },
668
+ "media_type": "audio",
669
+ "ownership": {
670
+ "service": {
671
+ "id": "bbc_6music",
672
+ "key": "6music",
673
+ "title": "BBC Radio 6 Music",
674
+ "type": "radio"
675
+ }
676
+ },
677
+ "pid": "b03tcf95",
678
+ "position": null,
679
+ "programme": {
680
+ "expected_child_count": null,
681
+ "first_broadcast_date": "2011-04-08T19:00:00+01:00",
682
+ "ownership": {
683
+ "service": {
684
+ "id": "bbc_6music",
685
+ "key": "6music",
686
+ "title": "BBC Radio 6 Music",
687
+ "type": "radio"
688
+ }
689
+ },
690
+ "pid": "b00zw9nx",
691
+ "position": null,
692
+ "title": "Now Playing @6Music",
693
+ "type": "brand"
694
+ },
695
+ "short_synopsis": "Nemone invites 6 Music listeners to create a tribute playlist in honour of Pete Seeger.",
696
+ "title": "#Seeger6Music - A Tribute to Pete Seeger",
697
+ "type": "episode"
698
+ },
699
+ "start": "2014-02-02T18:00:00Z"
700
+ },
701
+ {
702
+ "duration": 7200,
703
+ "end": "2014-02-02T22:00:00Z",
704
+ "is_blanked": false,
705
+ "is_repeat": false,
706
+ "pid": "p01qgrz6",
707
+ "programme": {
708
+ "actual_start": "2014-02-02T22:43:55Z",
709
+ "available_until": "2014-02-09T22:02:00Z",
710
+ "display_titles": {
711
+ "subtitle": "Kemper Norton",
712
+ "title": "Stuart Maconie's Freak Zone"
713
+ },
714
+ "duration": 7200,
715
+ "first_broadcast_date": "2014-02-02T20:00:00Z",
716
+ "image": {
717
+ "pid": "p01m1xvk"
718
+ },
719
+ "is_available_mediaset_pc_sd": true,
720
+ "is_legacy_media": false,
721
+ "media": {
722
+ "availability": "6 days left to listen",
723
+ "expires": "2014-02-09T22:02:00Z",
724
+ "format": "audio"
725
+ },
726
+ "media_type": "audio",
727
+ "ownership": {
728
+ "service": {
729
+ "id": "bbc_6music",
730
+ "key": "6music",
731
+ "title": "BBC Radio 6 Music",
732
+ "type": "radio"
733
+ }
734
+ },
735
+ "pid": "b03tcf97",
736
+ "position": null,
737
+ "programme": {
738
+ "expected_child_count": null,
739
+ "first_broadcast_date": "2007-09-16T17:00:00+01:00",
740
+ "ownership": {
741
+ "service": {
742
+ "id": "bbc_6music",
743
+ "key": "6music",
744
+ "title": "BBC Radio 6 Music",
745
+ "type": "radio"
746
+ }
747
+ },
748
+ "pid": "b0072l4x",
749
+ "position": null,
750
+ "title": "Stuart Maconie's Freak Zone",
751
+ "type": "brand"
752
+ },
753
+ "short_synopsis": "Kemper Norton talks to Stuart about creating ambient music using field recordings.",
754
+ "title": "Kemper Norton",
755
+ "type": "episode"
756
+ },
757
+ "start": "2014-02-02T20:00:00Z"
758
+ },
759
+ {
760
+ "duration": 7200,
761
+ "end": "2014-02-03T00:00:00Z",
762
+ "is_blanked": false,
763
+ "is_repeat": false,
764
+ "pid": "p01qgrz7",
765
+ "programme": {
766
+ "actual_start": "2014-02-03T00:41:10Z",
767
+ "available_until": "2014-02-10T00:02:00Z",
768
+ "display_titles": {
769
+ "subtitle": "Beaty Heart, King Tubby, Husky, Coves and Alton Ellis",
770
+ "title": "Don Letts"
771
+ },
772
+ "duration": 7200,
773
+ "first_broadcast_date": "2014-02-02T22:00:00Z",
774
+ "image": {
775
+ "pid": "p01lcd8x"
776
+ },
777
+ "is_available_mediaset_pc_sd": true,
778
+ "is_legacy_media": false,
779
+ "media": {
780
+ "availability": "6 days left to listen",
781
+ "expires": "2014-02-10T00:02:00Z",
782
+ "format": "audio"
783
+ },
784
+ "media_type": "audio",
785
+ "ownership": {
786
+ "service": {
787
+ "id": "bbc_6music",
788
+ "key": "6music",
789
+ "title": "BBC Radio 6 Music",
790
+ "type": "radio"
791
+ }
792
+ },
793
+ "pid": "b03tcf99",
794
+ "position": null,
795
+ "programme": {
796
+ "expected_child_count": null,
797
+ "first_broadcast_date": "2007-09-15T23:00:00+01:00",
798
+ "ownership": {
799
+ "service": {
800
+ "id": "bbc_6music",
801
+ "key": "6music",
802
+ "title": "BBC Radio 6 Music",
803
+ "type": "radio"
804
+ }
805
+ },
806
+ "pid": "b0072pzt",
807
+ "position": null,
808
+ "title": "Don Letts",
809
+ "type": "brand"
810
+ },
811
+ "short_synopsis": "The Don's selections include Beaty Heart, King Tubby, Husky, Coves and Alton Ellis.",
812
+ "title": "Beaty Heart, King Tubby, Husky, Coves and Alton Ellis",
813
+ "type": "episode"
814
+ },
815
+ "start": "2014-02-02T22:00:00Z"
816
+ },
817
+ {
818
+ "duration": 7200,
819
+ "end": "2014-02-03T02:00:00Z",
820
+ "is_blanked": false,
821
+ "is_repeat": true,
822
+ "pid": "p01qgrz9",
823
+ "programme": {
824
+ "actual_start": "2014-02-02T16:53:37Z",
825
+ "available_until": "2014-02-09T16:02:00Z",
826
+ "display_titles": {
827
+ "subtitle": "02/02/2014",
828
+ "title": "Guy Garvey's Finest Hour"
829
+ },
830
+ "duration": 7200,
831
+ "first_broadcast_date": "2014-02-02T14:00:00Z",
832
+ "image": {
833
+ "pid": "p01r1839"
834
+ },
835
+ "is_available_mediaset_pc_sd": true,
836
+ "is_legacy_media": false,
837
+ "media": {
838
+ "availability": "6 days left to listen",
839
+ "expires": "2014-02-09T16:02:00Z",
840
+ "format": "audio"
841
+ },
842
+ "media_type": "audio",
843
+ "ownership": {
844
+ "service": {
845
+ "id": "bbc_6music",
846
+ "key": "6music",
847
+ "title": "BBC Radio 6 Music",
848
+ "type": "radio"
849
+ }
850
+ },
851
+ "pid": "b03t8r4f",
852
+ "position": null,
853
+ "programme": {
854
+ "expected_child_count": null,
855
+ "first_broadcast_date": "2007-09-16T22:00:00+01:00",
856
+ "ownership": {
857
+ "service": {
858
+ "id": "bbc_6music",
859
+ "key": "6music",
860
+ "title": "BBC Radio 6 Music",
861
+ "type": "radio"
862
+ }
863
+ },
864
+ "pid": "b0072q60",
865
+ "position": null,
866
+ "title": "Guy Garvey's Finest Hour",
867
+ "type": "brand"
868
+ },
869
+ "short_synopsis": "Guy presents the show - not from his flat in North Manchester. Where is he?",
870
+ "title": "02/02/2014",
871
+ "type": "episode"
872
+ },
873
+ "start": "2014-02-03T00:00:00Z"
874
+ },
875
+ {
876
+ "duration": 3600,
877
+ "end": "2014-02-03T03:00:00Z",
878
+ "is_blanked": false,
879
+ "is_repeat": false,
880
+ "pid": "p01qgrzc",
881
+ "programme": {
882
+ "actual_start": "2014-02-03T04:12:44Z",
883
+ "available_until": "2014-02-10T03:02:00Z",
884
+ "display_titles": {
885
+ "subtitle": "03/02/2014",
886
+ "title": "The BBC Introducing Mixtape"
887
+ },
888
+ "duration": 3600,
889
+ "first_broadcast_date": "2014-02-03T02:00:00Z",
890
+ "image": {
891
+ "pid": "p01qfcws"
892
+ },
893
+ "is_available_mediaset_pc_sd": true,
894
+ "is_legacy_media": false,
895
+ "media": {
896
+ "availability": "7 days left to listen",
897
+ "expires": "2014-02-10T03:02:00Z",
898
+ "format": "audio"
899
+ },
900
+ "media_type": "audio",
901
+ "ownership": {
902
+ "service": {
903
+ "id": "bbc_6music",
904
+ "key": "6music",
905
+ "title": "BBC Radio 6 Music",
906
+ "type": "radio"
907
+ }
908
+ },
909
+ "pid": "b03tcgrh",
910
+ "position": null,
911
+ "programme": {
912
+ "expected_child_count": null,
913
+ "first_broadcast_date": "2012-04-09T02:00:00+01:00",
914
+ "ownership": {
915
+ "service": {
916
+ "id": "bbc_6music",
917
+ "key": "6music",
918
+ "title": "BBC Radio 6 Music",
919
+ "type": "radio"
920
+ }
921
+ },
922
+ "pid": "b01ghtz0",
923
+ "position": null,
924
+ "title": "The BBC Introducing Mixtape",
925
+ "type": "brand"
926
+ },
927
+ "short_synopsis": "Tom Robinson presents a mixtape of his personal selection of tracks from BBC Introducing.",
928
+ "title": "03/02/2014",
929
+ "type": "episode"
930
+ },
931
+ "start": "2014-02-03T02:00:00Z"
932
+ },
933
+ {
934
+ "duration": 3600,
935
+ "end": "2014-02-03T04:00:00Z",
936
+ "is_blanked": false,
937
+ "is_repeat": false,
938
+ "pid": "p01qgrzd",
939
+ "programme": {
940
+ "actual_start": "2014-02-03T04:46:46Z",
941
+ "available_until": "2014-02-10T04:02:00Z",
942
+ "display_titles": {
943
+ "subtitle": "Phish, Dinosaur Jr and Cutting Pink with Knives",
944
+ "title": "6 Music Live Hour"
945
+ },
946
+ "duration": 3600,
947
+ "first_broadcast_date": "2014-02-03T03:00:00Z",
948
+ "image": {
949
+ "pid": "p01lzk0c"
950
+ },
951
+ "is_available_mediaset_pc_sd": true,
952
+ "is_legacy_media": false,
953
+ "media": {
954
+ "availability": "7 days left to listen",
955
+ "expires": "2014-02-10T04:02:00Z",
956
+ "format": "audio"
957
+ },
958
+ "media_type": "audio",
959
+ "ownership": {
960
+ "service": {
961
+ "id": "bbc_6music",
962
+ "key": "6music",
963
+ "title": "BBC Radio 6 Music",
964
+ "type": "radio"
965
+ }
966
+ },
967
+ "pid": "b03tcgrk",
968
+ "position": null,
969
+ "programme": {
970
+ "expected_child_count": null,
971
+ "first_broadcast_date": "2010-04-03T04:00:00+01:00",
972
+ "ownership": {
973
+ "service": {
974
+ "id": "bbc_6music",
975
+ "key": "6music",
976
+ "title": "BBC Radio 6 Music",
977
+ "type": "radio"
978
+ }
979
+ },
980
+ "pid": "b00rwm3t",
981
+ "position": null,
982
+ "title": "6 Music Live Hour",
983
+ "type": "brand"
984
+ },
985
+ "short_synopsis": "Phish at Glastonbury 1997, plus sessions from Dinosaur Jr and Cutting Pink with Knives.",
986
+ "title": "Phish, Dinosaur Jr and Cutting Pink with Knives",
987
+ "type": "episode"
988
+ },
989
+ "start": "2014-02-03T03:00:00Z"
990
+ },
991
+ {
992
+ "duration": 3600,
993
+ "end": "2014-02-03T05:00:00Z",
994
+ "is_blanked": false,
995
+ "is_repeat": false,
996
+ "pid": "p01qgrzg",
997
+ "programme": {
998
+ "actual_start": "2014-02-03T05:41:49Z",
999
+ "available_until": "2014-02-10T05:02:00Z",
1000
+ "display_titles": {
1001
+ "subtitle": "A Reasonable Guide to a Horrible Noise",
1002
+ "title": "The Story of Pop"
1003
+ },
1004
+ "duration": 3600,
1005
+ "first_broadcast_date": "2011-02-01T03:00:00Z",
1006
+ "image": {
1007
+ "pid": "p01l68ky"
1008
+ },
1009
+ "is_available_mediaset_pc_sd": true,
1010
+ "is_legacy_media": false,
1011
+ "media": {
1012
+ "availability": "7 days left to listen",
1013
+ "expires": "2014-02-10T05:02:00Z",
1014
+ "format": "audio"
1015
+ },
1016
+ "media_type": "audio",
1017
+ "ownership": {
1018
+ "service": {
1019
+ "id": "bbc_6music",
1020
+ "key": "6music",
1021
+ "title": "BBC Radio 6 Music",
1022
+ "type": "radio"
1023
+ }
1024
+ },
1025
+ "pid": "b00y3z5b",
1026
+ "position": 29,
1027
+ "programme": {
1028
+ "expected_child_count": 52,
1029
+ "first_broadcast_date": "2011-01-04T03:00:00Z",
1030
+ "ownership": {
1031
+ "service": {
1032
+ "id": "bbc_6music",
1033
+ "key": "6music",
1034
+ "title": "BBC Radio 6 Music",
1035
+ "type": "radio"
1036
+ }
1037
+ },
1038
+ "pid": "b00xp4rp",
1039
+ "position": null,
1040
+ "title": "The Story of Pop",
1041
+ "type": "series"
1042
+ },
1043
+ "short_synopsis": "Alan Freeman looks back at the rise and fall of punk rock in Britain.",
1044
+ "title": "A Reasonable Guide to a Horrible Noise",
1045
+ "type": "episode"
1046
+ },
1047
+ "start": "2014-02-03T04:00:00Z"
1048
+ },
1049
+ {
1050
+ "duration": 7200,
1051
+ "end": "2014-02-03T07:00:00Z",
1052
+ "is_blanked": false,
1053
+ "is_repeat": false,
1054
+ "pid": "p01qgrzk",
1055
+ "programme": {
1056
+ "actual_start": "2014-02-03T07:46:58Z",
1057
+ "available_until": "2014-02-10T07:02:00Z",
1058
+ "display_titles": {
1059
+ "subtitle": "03/02/2014",
1060
+ "title": "Chris Hawkins"
1061
+ },
1062
+ "duration": 7200,
1063
+ "first_broadcast_date": "2014-02-03T05:00:00Z",
1064
+ "image": {
1065
+ "pid": "p01lc263"
1066
+ },
1067
+ "is_available_mediaset_pc_sd": true,
1068
+ "is_legacy_media": false,
1069
+ "media": {
1070
+ "availability": "7 days left to listen",
1071
+ "expires": "2014-02-10T07:02:00Z",
1072
+ "format": "audio"
1073
+ },
1074
+ "media_type": "audio",
1075
+ "ownership": {
1076
+ "service": {
1077
+ "id": "bbc_6music",
1078
+ "key": "6music",
1079
+ "title": "BBC Radio 6 Music",
1080
+ "type": "radio"
1081
+ }
1082
+ },
1083
+ "pid": "b03tcgt1",
1084
+ "position": null,
1085
+ "programme": {
1086
+ "expected_child_count": null,
1087
+ "first_broadcast_date": "2007-09-17T02:00:00+01:00",
1088
+ "ownership": {
1089
+ "service": {
1090
+ "id": "bbc_6music",
1091
+ "key": "6music",
1092
+ "title": "BBC Radio 6 Music",
1093
+ "type": "radio"
1094
+ }
1095
+ },
1096
+ "pid": "b0072l8y",
1097
+ "position": null,
1098
+ "title": "Chris Hawkins",
1099
+ "type": "brand"
1100
+ },
1101
+ "short_synopsis": "The Hawk delivers early morning music and chat to the early risers of the world (unite).",
1102
+ "title": "03/02/2014",
1103
+ "type": "episode"
1104
+ },
1105
+ "start": "2014-02-03T05:00:00Z"
1106
+ }
1107
+ ],
1108
+ "date": "2014-02-02",
1109
+ "has_next": 1,
1110
+ "has_previous": 1
1111
+ },
1112
+ "service": {
1113
+ "key": "6music",
1114
+ "title": "BBC Radio 6 Music",
1115
+ "type": "radio"
1116
+ }
1117
+ }
1118
+ }