tivohmo 0.2.3 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/CHANGELOG +30 -0
  4. data/Gemfile +2 -0
  5. data/README.md +4 -6
  6. data/TODO +1 -0
  7. data/contrib/tivohmo.conf +2 -2
  8. data/contrib/tivohmo.plist +1 -1
  9. data/contrib/tivohmo.yml +60 -0
  10. data/lib/tivohmo/adapters/filesystem/file_item.rb +2 -3
  11. data/lib/tivohmo/adapters/plex/category.rb +87 -6
  12. data/lib/tivohmo/adapters/plex/episode.rb +30 -11
  13. data/lib/tivohmo/adapters/plex/group.rb +20 -0
  14. data/lib/tivohmo/adapters/plex/movie.rb +15 -3
  15. data/lib/tivohmo/adapters/plex/qualified_category.rb +14 -3
  16. data/lib/tivohmo/adapters/plex/season.rb +2 -2
  17. data/lib/tivohmo/adapters/plex/section.rb +5 -5
  18. data/lib/tivohmo/adapters/plex/transcoder.rb +5 -1
  19. data/lib/tivohmo/adapters/plex.rb +1 -0
  20. data/lib/tivohmo/adapters/settings/application.rb +37 -0
  21. data/lib/tivohmo/adapters/settings/display_item.rb +35 -0
  22. data/lib/tivohmo/adapters/settings/key_container.rb +35 -0
  23. data/lib/tivohmo/adapters/settings/metadata.rb +26 -0
  24. data/lib/tivohmo/adapters/settings/reset_defaults_item.rb +39 -0
  25. data/lib/tivohmo/adapters/settings/set_value_item.rb +38 -0
  26. data/lib/tivohmo/adapters/settings/transcoder.rb +23 -0
  27. data/lib/tivohmo/adapters/settings.rb +7 -0
  28. data/lib/tivohmo/adapters/streamio/transcoder.rb +39 -1
  29. data/lib/tivohmo/api/container.rb +5 -1
  30. data/lib/tivohmo/api/item.rb +2 -0
  31. data/lib/tivohmo/api/subtitle.rb +13 -0
  32. data/lib/tivohmo/api/transcoder.rb +1 -3
  33. data/lib/tivohmo/api.rb +1 -0
  34. data/lib/tivohmo/beacon.rb +3 -3
  35. data/lib/tivohmo/cli.rb +175 -48
  36. data/lib/tivohmo/config.rb +157 -0
  37. data/lib/tivohmo/server/views/_container.builder +1 -1
  38. data/lib/tivohmo/server.rb +6 -3
  39. data/lib/tivohmo/version.rb +1 -1
  40. data/lib/tivohmo.rb +1 -0
  41. data/spec/adapters/filesystem/file_item_spec.rb +1 -1
  42. data/spec/adapters/plex/application_spec.rb +10 -1
  43. data/spec/adapters/plex/category_spec.rb +93 -20
  44. data/spec/adapters/plex/episode_spec.rb +34 -15
  45. data/spec/adapters/plex/metadata_spec.rb +5 -7
  46. data/spec/adapters/plex/movie_spec.rb +10 -7
  47. data/spec/adapters/plex/qualified_category_spec.rb +17 -17
  48. data/spec/adapters/plex/season_spec.rb +23 -4
  49. data/spec/adapters/plex/section_spec.rb +4 -4
  50. data/spec/adapters/plex/show_spec.rb +19 -4
  51. data/spec/adapters/plex/transcoder_spec.rb +2 -8
  52. data/spec/adapters/settings/application_spec.rb +25 -0
  53. data/spec/adapters/settings/display_item_spec.rb +29 -0
  54. data/spec/adapters/settings/key_container_spec.rb +33 -0
  55. data/spec/adapters/settings/metadata_spec.rb +33 -0
  56. data/spec/adapters/settings/reset_defaults_item_spec.rb +54 -0
  57. data/spec/adapters/settings/set_value_item_spec.rb +54 -0
  58. data/spec/api/container_spec.rb +12 -0
  59. data/spec/api/item_spec.rb +2 -0
  60. data/spec/api/transcoder_spec.rb +0 -1
  61. data/spec/beacon_spec.rb +3 -1
  62. data/spec/cli_spec.rb +57 -19
  63. data/spec/config_spec.rb +224 -0
  64. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Application/_children/should_get_children.yml +61 -0
  65. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_allow_disabling_subtitles.yml +424 -0
  66. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_display_non-zero_child_count_once_children_fetched.yml +653 -0
  67. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_have_children.yml +599 -0
  68. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_have_children_with_embedded_subtitles.yml +595 -0
  69. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_have_children_with_subtitles.yml +482 -0
  70. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_memoize.yml +478 -0
  71. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_refresh_children_when_config_changes.yml +1245 -0
  72. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_children/should_use_category_value_for_children.yml +395 -0
  73. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_initialize/should_instantiate.yml +61 -0
  74. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_initialize/should_set_presorted_if_present.yml +61 -0
  75. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Category/_initialize/should_use_category_value_for_title_if_present.yml +61 -0
  76. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Episode/_initialize/should_instantiate.yml +444 -0
  77. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Episode/_metadata/should_allow_disabling_series_id_in_metadata.yml +444 -0
  78. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Episode/_metadata/should_populate_metadata.yml +579 -0
  79. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Metadata/_initialize/should_instantiate.yml +296 -0
  80. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Movie/_initialize/should_instantiate.yml +296 -0
  81. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Movie/_metadata/should_populate_metadata.yml +296 -0
  82. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_QualifiedCategory/_children/should_display_non-zero_child_count_once_children_fetched.yml +220 -0
  83. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_QualifiedCategory/_children/should_have_children.yml +393 -0
  84. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_QualifiedCategory/_children/should_memoize.yml +219 -0
  85. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_QualifiedCategory/_initialize/should_instantiate.yml +61 -0
  86. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Season/_children/should_have_children.yml +444 -0
  87. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Season/_children/should_memoize.yml +444 -0
  88. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Season/_initialize/should_instantiate.yml +250 -0
  89. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Section/_children/should_have_category_children.yml +61 -0
  90. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Section/_children/should_memoize.yml +61 -0
  91. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Section/_initialize/should_instantiate.yml +61 -0
  92. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Show/_children/should_have_children.yml +250 -0
  93. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Show/_children/should_memoize.yml +250 -0
  94. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Show/_initialize/should_instantiate.yml +166 -0
  95. data/spec/fixtures/vcr/TivoHMO_Adapters_Plex_Transcoder/_initialize/should_instantiate.yml +296 -0
  96. data/spec/server_spec.rb +31 -2
  97. data/spec/spec_helper.rb +24 -36
  98. data/tivohmo.gemspec +2 -2
  99. metadata +109 -3
@@ -0,0 +1,595 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://localhost:32400/library/sections
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - text/xml;charset=utf-8
23
+ Connection:
24
+ - close
25
+ X-Plex-Protocol:
26
+ - '1.0'
27
+ X-Plex-Content-Original-Length:
28
+ - '2988'
29
+ X-Plex-Content-Compressed-Length:
30
+ - '802'
31
+ Content-Length:
32
+ - '802'
33
+ Cache-Control:
34
+ - no-cache
35
+ body:
36
+ encoding: UTF-8
37
+ string: |
38
+ <?xml version="1.0" encoding="UTF-8"?>
39
+ <MediaContainer size="6" allowSync="0" identifier="com.plexapp.plugins.library" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1420767545" title1="Plex Library">
40
+ <Directory allowSync="0" art="/:/resources/movie-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/movie.png" key="8" type="movie" title="Adult Movies" composite="/library/sections/8/composite/1424899706" agent="com.plexapp.agents.imdb" scanner="Plex Movie Scanner" language="en" uuid="608ca2bb-e5f2-49ab-b040-dbb95ac5631e" updatedAt="1424899706" createdAt="1424196765">
41
+ <Location id="12" path="/Users/mconway/Movies/Adult Movies" />
42
+ </Directory>
43
+ <Directory allowSync="0" art="/:/resources/show-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/show.png" key="2" type="show" title="Adult TV Shows" composite="/library/sections/2/composite/1424990701" agent="com.plexapp.agents.thetvdb" scanner="Plex Series Scanner" language="en" uuid="af8295a272d545681d462eed8025113d09195007" updatedAt="1424990701" createdAt="1332713366">
44
+ <Location id="6" path="/Users/mconway/Movies/Adult TV Shows" />
45
+ </Directory>
46
+ <Directory allowSync="0" art="/:/resources/movie-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/movie.png" key="5" type="movie" title="Kid Movies" composite="/library/sections/5/composite/1425073806" agent="com.plexapp.agents.imdb" scanner="Plex Movie Scanner" language="en" uuid="340479de-6015-4e6c-9ec0-c74f936f4013" updatedAt="1425073806" createdAt="1411071543">
47
+ <Location id="9" path="/Users/mconway/Movies/Kid Movies" />
48
+ </Directory>
49
+ <Directory allowSync="0" art="/:/resources/show-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/show.png" key="4" type="show" title="Kid TV Shows" composite="/library/sections/4/composite/1424464474" agent="com.plexapp.agents.thetvdb" scanner="Plex Series Scanner" language="en" uuid="fa1dde48-f6dd-44f7-91f3-9283160dc953" updatedAt="1424464474" createdAt="1411071497">
50
+ <Location id="8" path="/Users/mconway/Movies/Kid TV Shows" />
51
+ </Directory>
52
+ <Directory allowSync="0" art="/:/resources/movie-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/movie.png" key="6" type="movie" title="Test Movies" composite="/library/sections/6/composite/1424464475" agent="com.plexapp.agents.imdb" scanner="Plex Movie Scanner" language="en" uuid="fbc810b7-6b51-40ba-a3c5-9a2c391e5a3d" updatedAt="1424464475" createdAt="1423935251">
53
+ <Location id="10" path="/Users/mconway/Movies/TivoHMOTest/Movies" />
54
+ </Directory>
55
+ <Directory allowSync="0" art="/:/resources/show-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/show.png" key="7" type="show" title="Test TV Shows" composite="/library/sections/7/composite/1424464497" agent="com.plexapp.agents.thetvdb" scanner="Plex Series Scanner" language="en" uuid="4c37cd05-86d7-4a34-8d5b-aa2fb261a136" updatedAt="1424464497" createdAt="1423935290">
56
+ <Location id="11" path="/Users/mconway/Movies/TivoHMOTest/TV Shows" />
57
+ </Directory>
58
+ </MediaContainer>
59
+ http_version:
60
+ recorded_at: Sun, 01 Mar 2015 18:52:57 GMT
61
+ - request:
62
+ method: get
63
+ uri: http://localhost:32400/library/sections
64
+ body:
65
+ encoding: US-ASCII
66
+ string: ''
67
+ headers:
68
+ Accept-Encoding:
69
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
70
+ Accept:
71
+ - "*/*"
72
+ User-Agent:
73
+ - Ruby
74
+ response:
75
+ status:
76
+ code: 200
77
+ message: OK
78
+ headers:
79
+ Content-Type:
80
+ - text/xml;charset=utf-8
81
+ Connection:
82
+ - close
83
+ X-Plex-Protocol:
84
+ - '1.0'
85
+ X-Plex-Content-Original-Length:
86
+ - '2988'
87
+ X-Plex-Content-Compressed-Length:
88
+ - '802'
89
+ Content-Length:
90
+ - '802'
91
+ Cache-Control:
92
+ - no-cache
93
+ body:
94
+ encoding: UTF-8
95
+ string: |
96
+ <?xml version="1.0" encoding="UTF-8"?>
97
+ <MediaContainer size="6" allowSync="0" identifier="com.plexapp.plugins.library" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1420767545" title1="Plex Library">
98
+ <Directory allowSync="0" art="/:/resources/movie-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/movie.png" key="8" type="movie" title="Adult Movies" composite="/library/sections/8/composite/1424899706" agent="com.plexapp.agents.imdb" scanner="Plex Movie Scanner" language="en" uuid="608ca2bb-e5f2-49ab-b040-dbb95ac5631e" updatedAt="1424899706" createdAt="1424196765">
99
+ <Location id="12" path="/Users/mconway/Movies/Adult Movies" />
100
+ </Directory>
101
+ <Directory allowSync="0" art="/:/resources/show-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/show.png" key="2" type="show" title="Adult TV Shows" composite="/library/sections/2/composite/1424990701" agent="com.plexapp.agents.thetvdb" scanner="Plex Series Scanner" language="en" uuid="af8295a272d545681d462eed8025113d09195007" updatedAt="1424990701" createdAt="1332713366">
102
+ <Location id="6" path="/Users/mconway/Movies/Adult TV Shows" />
103
+ </Directory>
104
+ <Directory allowSync="0" art="/:/resources/movie-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/movie.png" key="5" type="movie" title="Kid Movies" composite="/library/sections/5/composite/1425073806" agent="com.plexapp.agents.imdb" scanner="Plex Movie Scanner" language="en" uuid="340479de-6015-4e6c-9ec0-c74f936f4013" updatedAt="1425073806" createdAt="1411071543">
105
+ <Location id="9" path="/Users/mconway/Movies/Kid Movies" />
106
+ </Directory>
107
+ <Directory allowSync="0" art="/:/resources/show-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/show.png" key="4" type="show" title="Kid TV Shows" composite="/library/sections/4/composite/1424464474" agent="com.plexapp.agents.thetvdb" scanner="Plex Series Scanner" language="en" uuid="fa1dde48-f6dd-44f7-91f3-9283160dc953" updatedAt="1424464474" createdAt="1411071497">
108
+ <Location id="8" path="/Users/mconway/Movies/Kid TV Shows" />
109
+ </Directory>
110
+ <Directory allowSync="0" art="/:/resources/movie-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/movie.png" key="6" type="movie" title="Test Movies" composite="/library/sections/6/composite/1424464475" agent="com.plexapp.agents.imdb" scanner="Plex Movie Scanner" language="en" uuid="fbc810b7-6b51-40ba-a3c5-9a2c391e5a3d" updatedAt="1424464475" createdAt="1423935251">
111
+ <Location id="10" path="/Users/mconway/Movies/TivoHMOTest/Movies" />
112
+ </Directory>
113
+ <Directory allowSync="0" art="/:/resources/show-fanart.jpg" filters="1" refreshing="0" thumb="/:/resources/show.png" key="7" type="show" title="Test TV Shows" composite="/library/sections/7/composite/1424464497" agent="com.plexapp.agents.thetvdb" scanner="Plex Series Scanner" language="en" uuid="4c37cd05-86d7-4a34-8d5b-aa2fb261a136" updatedAt="1424464497" createdAt="1423935290">
114
+ <Location id="11" path="/Users/mconway/Movies/TivoHMOTest/TV Shows" />
115
+ </Directory>
116
+ </MediaContainer>
117
+ http_version:
118
+ recorded_at: Sun, 01 Mar 2015 18:52:57 GMT
119
+ - request:
120
+ method: get
121
+ uri: http://localhost:32400/library/sections/6/newest
122
+ body:
123
+ encoding: US-ASCII
124
+ string: ''
125
+ headers:
126
+ Accept-Encoding:
127
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
128
+ Accept:
129
+ - "*/*"
130
+ User-Agent:
131
+ - Ruby
132
+ response:
133
+ status:
134
+ code: 200
135
+ message: OK
136
+ headers:
137
+ Content-Type:
138
+ - text/xml;charset=utf-8
139
+ Connection:
140
+ - close
141
+ X-Plex-Protocol:
142
+ - '1.0'
143
+ X-Plex-Content-Original-Length:
144
+ - '5274'
145
+ X-Plex-Content-Compressed-Length:
146
+ - '2313'
147
+ Content-Length:
148
+ - '2313'
149
+ Cache-Control:
150
+ - no-cache
151
+ body:
152
+ encoding: ASCII-8BIT
153
+ string: !binary |-
154
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPE1lZGlh
155
+ Q29udGFpbmVyIHNpemU9IjMiIGFsbG93U3luYz0iMSIgYXJ0PSIvOi9yZXNv
156
+ dXJjZXMvbW92aWUtZmFuYXJ0LmpwZyIgaWRlbnRpZmllcj0iY29tLnBsZXhh
157
+ cHAucGx1Z2lucy5saWJyYXJ5IiBsaWJyYXJ5U2VjdGlvbklEPSI2IiBsaWJy
158
+ YXJ5U2VjdGlvblRpdGxlPSJUZXN0IE1vdmllcyIgbGlicmFyeVNlY3Rpb25V
159
+ VUlEPSJmYmM4MTBiNy02YjUxLTQwYmEtYTNjNS05YTJjMzkxZTVhM2QiIG1l
160
+ ZGlhVGFnUHJlZml4PSIvc3lzdGVtL2J1bmRsZS9tZWRpYS9mbGFncy8iIG1l
161
+ ZGlhVGFnVmVyc2lvbj0iMTQyMDc2NzU0NSIgdGh1bWI9Ii86L3Jlc291cmNl
162
+ cy9tb3ZpZS5wbmciIHRpdGxlMT0iVGVzdCBNb3ZpZXMiIHRpdGxlMj0iUmVj
163
+ ZW50bHkgUmVsZWFzZWQiIHZpZXdHcm91cD0ibW92aWUiIHZpZXdNb2RlPSI2
164
+ NTU5MiI+CjxWaWRlbyByYXRpbmdLZXk9IjExNzUiIGtleT0iL2xpYnJhcnkv
165
+ bWV0YWRhdGEvMTE3NSIgc3R1ZGlvPSJHdWVyaWxsYSBGaWxtcyIgdHlwZT0i
166
+ bW92aWUiIHRpdGxlPSJXeXJtd29vZCIgc3VtbWFyeT0iQmFycnkgaXMgYSB0
167
+ YWxlbnRlZCBtZWNoYW5pYyBhbmQgZmFtaWx5IG1hbiB3aG9zZSBsaWZlIGlz
168
+ IHRvcm4gYXBhcnQgb24gdGhlIGV2ZSBvZiBhIHpvbWJpZSBhcG9jYWx5cHNl
169
+ LiBIaXMgc2lzdGVyLCBCcm9va2UsIGlzIGtpZG5hcHBlZCBieSBhIHNpbmlz
170
+ dGVyIHRlYW0gb2YgZ2FzLW1hc2sgd2VhcmluZyBzb2xkaWVycyAmYW1wO2Ft
171
+ cDsgZXhwZXJpbWVudGVkIG9uIGJ5IGEgcHN5Y2hvdGljIGRvY3Rvci4gV2hp
172
+ bGUgQnJvb2tlIHBsYW5zIGhlciBlc2NhcGUgQmFycnkgZ29lcyBvdXQgb24g
173
+ dGhlIHJvYWQgdG8gZmluZCBoZXIgJmFtcDthbXA7IHRlYW1zIHVwIHdpdGgg
174
+ QmVubnksIGEgZmVsbG93IHN1cnZpdm9yIC0gdG9nZXRoZXIgdGhleSBtdXN0
175
+ IGFybSB0aGVtc2VsdmVzIGFuZCBwcmVwYXJlIHRvIGJhdHRsZSB0aGVpciB3
176
+ YXkgdGhyb3VnaCBob3JkZXMgb2YgZmxlc2gtZWF0aW5nIG1vbnN0ZXJzIGlu
177
+ IGEgaGFyc2ggQXVzdHJhbGlhbiBidXNobGFuZC4iIHllYXI9IjIwMTUiIHRo
178
+ dW1iPSIvbGlicmFyeS9tZXRhZGF0YS8xMTc1L3RodW1iLzE0MjQ0NjQ4NDYi
179
+ IGFydD0iL2xpYnJhcnkvbWV0YWRhdGEvMTE3NS9hcnQvMTQyNDQ2NDg0NiIg
180
+ ZHVyYXRpb249IjU5MTQ2NTkiIG9yaWdpbmFsbHlBdmFpbGFibGVBdD0iMjAx
181
+ NS0wMi0xMyIgYWRkZWRBdD0iMTQyMzkzNjAzNiIgdXBkYXRlZEF0PSIxNDI0
182
+ NDY0ODQ2Ij4KPE1lZGlhIHZpZGVvUmVzb2x1dGlvbj0ic2QiIGlkPSIxNDAy
183
+ IiBkdXJhdGlvbj0iNTkxNDY1OSIgYml0cmF0ZT0iOTg5IiB3aWR0aD0iNjQw
184
+ IiBoZWlnaHQ9IjM1MiIgYXNwZWN0UmF0aW89IjEuODUiIGF1ZGlvQ2hhbm5l
185
+ bHM9IjIiIGF1ZGlvQ29kZWM9Im1wMyIgdmlkZW9Db2RlYz0ibXBlZzQiIGNv
186
+ bnRhaW5lcj0iYXZpIiB2aWRlb0ZyYW1lUmF0ZT0iMjRwIj4KPFBhcnQgaWQ9
187
+ IjE5NTciIGtleT0iL2xpYnJhcnkvcGFydHMvMTk1Ny9maWxlLmF2aSIgZHVy
188
+ YXRpb249IjU5MTQ2NTkiIGZpbGU9Ii9Vc2Vycy9tY29ud2F5L01vdmllcy9U
189
+ aXZvSE1PVGVzdC9Nb3ZpZXMvV3lybXdvb2QgKDIwMTQpLmF2aSIgc2l6ZT0i
190
+ NzMxMDMzOTE4IiBjb250YWluZXI9ImF2aSIgLz4KPC9NZWRpYT4KPEdlbnJl
191
+ IHRhZz0iQWN0aW9uIiAvPgo8R2VucmUgdGFnPSJIb3Jyb3IiIC8+CjxXcml0
192
+ ZXIgdGFnPSJLaWFoIFJvYWNoZS1UdXJuZXIiIC8+CjxXcml0ZXIgdGFnPSJU
193
+ cmlzdGFuIFJvYWNoZS1UdXJuZXIiIC8+CjxEaXJlY3RvciB0YWc9IktpYWgg
194
+ Um9hY2hlLVR1cm5lciIgLz4KPENvdW50cnkgdGFnPSJBdXN0cmFsaWEiIC8+
195
+ CjxSb2xlIHRhZz0iSmF5IEdhbGxhZ2hlciIgLz4KPFJvbGUgdGFnPSJCaWFu
196
+ Y2EgQnJhZGV5IiAvPgo8Um9sZSB0YWc9Ikxlb24gQnVyY2hpbGwiIC8+Cjwv
197
+ VmlkZW8+CjxWaWRlbyByYXRpbmdLZXk9IjEyMDEiIGtleT0iL2xpYnJhcnkv
198
+ bWV0YWRhdGEvMTIwMSIgc3R1ZGlvPSJXYXJuZXIgQnJvcy4iIHR5cGU9Im1v
199
+ dmllIiB0aXRsZT0iUnVyb3VuaSBLZW5zaGluOiBLeW90byBJbmZlcm5vIiBv
200
+ cmlnaW5hbFRpdGxlPSJSdXJvdW5pIEtlbnNoaW4gMiA6IEt5b3RvIEluZmVy
201
+ bm8g4Lij4Li54LmC4Lij4LiZ4Li04LiZIOC5gOC4hOC4meC4iuC4tOC4mSDg
202
+ uYDguIHguLXguKLguKfguYLguJXguJfguLDguYDguKUiIGNvbnRlbnRSYXRp
203
+ bmc9IlBHLTEzIiBzdW1tYXJ5PSJLZW5zaGluIGhhcyBzZXR0bGVkIGludG8g
204
+ aGlzIG5ldyBsaWZlIHdpdGggS2FvcnUgYW5kIGhpcyBvdGhlciBmcmllbmRz
205
+ IHdoZW4gaGUgaXMgYXBwcm9hY2hlZCB3aXRoIGEgcmVxdWVzdCBmcm9tIHRo
206
+ ZSBNZWlqaSBnb3Zlcm5tZW50LiBNYWtvdG8gU2hpc2hpbywgYSBmb3JtZXIg
207
+ YXNzYXNzaW4gbGlrZSBLZW5zaGluLCB3YXMgYmV0cmF5ZWQsIHNldCBvbiBm
208
+ aXJlIGFuZCBsZWZ0IGZvciBkZWFkLiBIZSBzdXJ2aXZlZCwgYW5kIGlzIG5v
209
+ dyBpbiBLeW90bywgcGxvdHRpbmcgd2l0aCBoaXMgZ2F0aGVyZWQgd2Fycmlv
210
+ cnMgdG8gb3ZlcnRocm93IHRoZSBuZXcgZ292ZXJubWVudC4gQWdhaW5zdCBL
211
+ YW9ydSZhcG9zO3Mgd2lzaGVzLCBLZW5zaGluIHJlbHVjdGFudGx5IGFncmVl
212
+ cyB0byBnbyB0byBLeW90byBhbmQgaGVscCBrZWVwIGhpcyBjb3VudHJ5IGZy
213
+ b20gZmFsbGluZyBiYWNrIGludG8gY2l2aWwgd2FyLiIgcmF0aW5nPSI3LjY5
214
+ OTk5OTgwOTI2NTE0MDMiIHllYXI9IjIwMTQiIHRhZ2xpbmU9IkZhdGUgSGFu
215
+ Z3MgT24gSGlzIFN3b3JkIiB0aHVtYj0iL2xpYnJhcnkvbWV0YWRhdGEvMTIw
216
+ MS90aHVtYi8xNDI0NDY0NDgzIiBhcnQ9Ii9saWJyYXJ5L21ldGFkYXRhLzEy
217
+ MDEvYXJ0LzE0MjQ0NjQ0ODMiIGR1cmF0aW9uPSI4MzIxMzM1IiBvcmlnaW5h
218
+ bGx5QXZhaWxhYmxlQXQ9IjIwMTQtMDgtMDEiIGFkZGVkQXQ9IjE0MjQ0NjQ0
219
+ NzUiIHVwZGF0ZWRBdD0iMTQyNDQ2NDQ4MyI+CjxNZWRpYSB2aWRlb1Jlc29s
220
+ dXRpb249IjcyMCIgaWQ9IjE0MjYiIGR1cmF0aW9uPSI4MzIxMzM1IiBiaXRy
221
+ YXRlPSIxMTA5IiB3aWR0aD0iMTI4MCIgaGVpZ2h0PSI1MzYiIGFzcGVjdFJh
222
+ dGlvPSIyLjM1IiBhdWRpb0NoYW5uZWxzPSIyIiBhdWRpb0NvZGVjPSJhYWMi
223
+ IHZpZGVvQ29kZWM9ImgyNjQiIGNvbnRhaW5lcj0ibWt2IiB2aWRlb0ZyYW1l
224
+ UmF0ZT0iMjRwIj4KPFBhcnQgaWQ9IjE5ODEiIGtleT0iL2xpYnJhcnkvcGFy
225
+ dHMvMTk4MS9maWxlLm1rdiIgZHVyYXRpb249IjgzMjEzMzUiIGZpbGU9Ii9V
226
+ c2Vycy9tY29ud2F5L01vdmllcy9UaXZvSE1PVGVzdC9Nb3ZpZXMvUnVyb3Vu
227
+ aSBLZW5zaGluIEt5b3RvIEluZmVybm8gKDIwMTQpLm1rdiIgc2l6ZT0iMTE1
228
+ MzgzMzEzOSIgY29udGFpbmVyPSJta3YiIC8+CjwvTWVkaWE+CjxHZW5yZSB0
229
+ YWc9IkFjdGlvbiIgLz4KPEdlbnJlIHRhZz0iQWR2ZW50dXJlIiAvPgo8RGly
230
+ ZWN0b3IgdGFnPSJLZWlzaGkgT2h0b21vIiAvPgo8Q291bnRyeSB0YWc9Ikph
231
+ cGFuIiAvPgo8Um9sZSB0YWc9IlRha2VydSBTYXRvIiAvPgo8Um9sZSB0YWc9
232
+ Ill1IEFvaSIgLz4KPFJvbGUgdGFnPSJUYXRzdXlhIEZ1aml3YXJhIiAvPgo8
233
+ L1ZpZGVvPgo8VmlkZW8gcmF0aW5nS2V5PSIxMTY5IiBrZXk9Ii9saWJyYXJ5
234
+ L21ldGFkYXRhLzExNjkiIHN0dWRpbz0iVmlkaHUgVmlub2QgQ2hvcHJhIFBy
235
+ b2R1Y3Rpb25zIiB0eXBlPSJtb3ZpZSIgdGl0bGU9IjMgSWRpb3RzIiBjb250
236
+ ZW50UmF0aW5nPSJQRyIgc3VtbWFyeT0iSW4gdGhlIHRyYWRpdGlvbiBvZiDi
237
+ gJxGZXJyaXMgQnVlbGxlcuKAmXMgRGF5IE9mZuKAnSBjb21lcyB0aGlzIHJl
238
+ ZnJlc2hpbmcgY29tZWR5IGFib3V0IGEgcmViZWxsaW91cyBwcmFua3N0ZXIg
239
+ d2l0aCBhIGNyYWZ0eSBtaW5kIGFuZCBhIGhlYXJ0IG9mIGdvbGQuIFJhc2Nh
240
+ bC4gSm9rZXIuIERyZWFtZXIuIEdlbml1cy4uLiBZb3UmYXBvczt2ZSBuZXZl
241
+ ciBtZXQgYSBjb2xsZWdlIHN0dWRlbnQgcXVpdGUgbGlrZSAmcXVvdDtSYW5j
242
+ aG8uJnF1b3Q7IEZyb20gdGhlIG1vbWVudCBoZSBhcnJpdmVzIGF0IEluZGlh
243
+ JmFwb3M7cyBtb3N0IHByZXN0aWdpb3VzIHVuaXZlcnNpdHksIFJhbmNobyZh
244
+ cG9zO3Mgb3V0bGFuZGlzaCBzY2hlbWVzIHR1cm4gdGhlIGNhbXB1cyB1cHNp
245
+ ZGUgZG93buKAlGFsb25nIHdpdGggdGhlIGxpdmVzIG9mIGhpcyB0d28gbmV3
246
+ Zm91bmQgYmVzdCBmcmllbmRzLiBUb2dldGhlciwgdGhleSBtYWtlIGxpZmUg
247
+ bWlzZXJhYmxlIGZvciAmcXVvdDtWaXJ1cywmcXVvdDsgdGhlIHNjaG9vbOKA
248
+ mXMgdXB0aWdodCBhbmQgaGVhcnRsZXNzIGRlYW4uIEJ1dCB3aGVuIFJhbmNo
249
+ byBjYXRjaGVzIHRoZSBleWUgb2YgdGhlIGRlYW4mYXBvcztzIHNleHkgZGF1
250
+ Z2h0ZXIsIFZpcnVzIHNldHMgaGlzIHNpZ2h0cyBvbiBmbHVua2luZyBvdXQg
251
+ dGhlICZxdW90OzMgaWRpb3RzJnF1b3Q7IG9uY2UgYW5kIGZvciBhbGwuIiBy
252
+ YXRpbmc9IjcuNjk5OTk5ODA5MjY1MTQwMyIgeWVhcj0iMjAwOSIgdGh1bWI9
253
+ Ii9saWJyYXJ5L21ldGFkYXRhLzExNjkvdGh1bWIvMTQyNDQ2NDg0NiIgYXJ0
254
+ PSIvbGlicmFyeS9tZXRhZGF0YS8xMTY5L2FydC8xNDI0NDY0ODQ2IiBkdXJh
255
+ dGlvbj0iOTg1NTQ0MCIgb3JpZ2luYWxseUF2YWlsYWJsZUF0PSIyMDA5LTEy
256
+ LTI1IiBhZGRlZEF0PSIxNDIzOTM1MzUyIiB1cGRhdGVkQXQ9IjE0MjQ0NjQ4
257
+ NDYiPgo8TWVkaWEgdmlkZW9SZXNvbHV0aW9uPSJzZCIgaWQ9IjEzOTkiIGR1
258
+ cmF0aW9uPSI5ODU1NDQwIiBiaXRyYXRlPSI4MDgiIHdpZHRoPSI2NDAiIGhl
259
+ aWdodD0iMjcyIiBhc3BlY3RSYXRpbz0iMi4zNSIgYXVkaW9DaGFubmVscz0i
260
+ NiIgYXVkaW9Db2RlYz0iYWMzIiB2aWRlb0NvZGVjPSJtcGVnNCIgY29udGFp
261
+ bmVyPSJhdmkiIHZpZGVvRnJhbWVSYXRlPSJQQUwiPgo8UGFydCBpZD0iMTk1
262
+ NCIga2V5PSIvbGlicmFyeS9wYXJ0cy8xOTU0L2ZpbGUuYXZpIiBkdXJhdGlv
263
+ bj0iOTg1NTQ0MCIgZmlsZT0iL1VzZXJzL21jb253YXkvTW92aWVzL1Rpdm9I
264
+ TU9UZXN0L01vdmllcy8zIElkaW90cyAoMjAwOSkuYXZpIiBzaXplPSI5OTU0
265
+ NDM3ODQiIGNvbnRhaW5lcj0iYXZpIiAvPgo8L01lZGlhPgo8R2VucmUgdGFn
266
+ PSJDb21lZHkiIC8+CjxHZW5yZSB0YWc9IkRyYW1hIiAvPgo8V3JpdGVyIHRh
267
+ Zz0iUmFqa3VtYXIgSGlyYW5pIiAvPgo8RGlyZWN0b3IgdGFnPSJSYWprdW1h
268
+ ciBIaXJhbmkiIC8+CjxDb3VudHJ5IHRhZz0iSW5kaWEiIC8+CjxSb2xlIHRh
269
+ Zz0iQWFtaXIgS2hhbiIgLz4KPFJvbGUgdGFnPSJLYXJlZW5hIEthcG9vciIg
270
+ Lz4KPFJvbGUgdGFnPSJNYWRoYXZhbiIgLz4KPC9WaWRlbz4KPC9NZWRpYUNv
271
+ bnRhaW5lcj4K
272
+ http_version:
273
+ recorded_at: Sun, 01 Mar 2015 18:52:57 GMT
274
+ - request:
275
+ method: get
276
+ uri: http://localhost:32400/library/metadata/1175
277
+ body:
278
+ encoding: US-ASCII
279
+ string: ''
280
+ headers:
281
+ Accept-Encoding:
282
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
283
+ Accept:
284
+ - "*/*"
285
+ User-Agent:
286
+ - Ruby
287
+ response:
288
+ status:
289
+ code: 200
290
+ message: OK
291
+ headers:
292
+ Content-Type:
293
+ - text/xml;charset=utf-8
294
+ Connection:
295
+ - close
296
+ X-Plex-Protocol:
297
+ - '1.0'
298
+ X-Plex-Content-Original-Length:
299
+ - '3128'
300
+ X-Plex-Content-Compressed-Length:
301
+ - '1536'
302
+ Content-Length:
303
+ - '1536'
304
+ Cache-Control:
305
+ - no-cache
306
+ body:
307
+ encoding: UTF-8
308
+ string: |
309
+ <?xml version="1.0" encoding="UTF-8"?>
310
+ <MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="6" librarySectionTitle="Test Movies" librarySectionUUID="fbc810b7-6b51-40ba-a3c5-9a2c391e5a3d" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1420767545">
311
+ <Video ratingKey="1175" key="/library/metadata/1175" guid="com.plexapp.agents.imdb://tt2535470?lang=en" studio="Guerilla Films" type="movie" title="Wyrmwood" summary="Barry is a talented mechanic and family man whose life is torn apart on the eve of a zombie apocalypse. His sister, Brooke, is kidnapped by a sinister team of gas-mask wearing soldiers &amp;amp; experimented on by a psychotic doctor. While Brooke plans her escape Barry goes out on the road to find her &amp;amp; teams up with Benny, a fellow survivor - together they must arm themselves and prepare to battle their way through hordes of flesh-eating monsters in a harsh Australian bushland." year="2015" thumb="/library/metadata/1175/thumb/1424464846" art="/library/metadata/1175/art/1424464846" duration="5914659" originallyAvailableAt="2015-02-13" addedAt="1423936036" updatedAt="1424464846">
312
+ <Media videoResolution="sd" id="1402" duration="5914659" bitrate="989" width="640" height="352" aspectRatio="1.85" audioChannels="2" audioCodec="mp3" videoCodec="mpeg4" container="avi" videoFrameRate="24p">
313
+ <Part id="1957" key="/library/parts/1957/file.avi" duration="5914659" file="/Users/mconway/Movies/TivoHMOTest/Movies/Wyrmwood (2014).avi" size="731033918" container="avi">
314
+ <Stream id="5736" streamType="1" codec="mpeg4" index="0" bitrate="851" bitDepth="8" chromaSubsampling="4:2:0" codecID="XVID" colorSpace="yuv" duration="5914659" frameRate="23.976" gmc="0" height="352" level="5" profile="asp" qpel="0" scanType="progressive" title="" width="640" />
315
+ <Stream id="5737" streamType="2" selected="1" codec="mp3" index="1" channels="2" bitrate="128" bitrateMode="cbr" codecID="55" duration="5914659" samplingRate="48000" title="" />
316
+ </Part>
317
+ </Media>
318
+ <Genre id="89" tag="Action" />
319
+ <Genre id="1859" tag="Horror" />
320
+ <Genre id="251" tag="Science Fiction" />
321
+ <Writer id="7694" tag="Kiah Roache-Turner" />
322
+ <Writer id="7695" tag="Tristan Roache-Turner" />
323
+ <Director id="7693" tag="Kiah Roache-Turner" />
324
+ <Country id="1669" tag="Australia" />
325
+ <Role id="7696" tag="Jay Gallagher" role="Barry" />
326
+ <Role id="7697" tag="Bianca Bradey" role="Brooke" thumb="http://image.tmdb.org/t/p/original/1RxZYeFEcIOGI7A0yO0WUJcHCXZ.jpg" />
327
+ <Role id="7698" tag="Leon Burchill" role="Benny" />
328
+ <Role id="7699" tag="Luke McKenzie" role="The Captain" />
329
+ <Role id="7700" tag="Yure Covich" role="Chalker" />
330
+ <Role id="7701" tag="Catherine Terracini" role="Annie" />
331
+ <Role id="7702" tag="Keith Agius" role="Frank" />
332
+ <Role id="7703" tag="Berryn Schwerdt" role="The Doctor" />
333
+ <Role id="7704" tag="Cain Thompson" role="McGaughlin" />
334
+ <Role id="7705" tag="Beth Aubrey" role="Charlotte" />
335
+ <Role id="7706" tag="Sheridan Harbridge" role="Sherri" />
336
+ <Role id="7707" tag="Damian Dyke" role="Thompson" />
337
+ <Role id="7708" tag="John Michael Burdon" role="Zombie" />
338
+ </Video>
339
+ </MediaContainer>
340
+ http_version:
341
+ recorded_at: Sun, 01 Mar 2015 18:52:57 GMT
342
+ - request:
343
+ method: get
344
+ uri: http://localhost:32400/library/metadata/1201
345
+ body:
346
+ encoding: US-ASCII
347
+ string: ''
348
+ headers:
349
+ Accept-Encoding:
350
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
351
+ Accept:
352
+ - "*/*"
353
+ User-Agent:
354
+ - Ruby
355
+ response:
356
+ status:
357
+ code: 200
358
+ message: OK
359
+ headers:
360
+ Content-Type:
361
+ - text/xml;charset=utf-8
362
+ Connection:
363
+ - close
364
+ X-Plex-Protocol:
365
+ - '1.0'
366
+ X-Plex-Content-Original-Length:
367
+ - '4371'
368
+ X-Plex-Content-Compressed-Length:
369
+ - '2072'
370
+ Content-Length:
371
+ - '2072'
372
+ Cache-Control:
373
+ - no-cache
374
+ body:
375
+ encoding: ASCII-8BIT
376
+ string: !binary |-
377
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPE1lZGlh
378
+ Q29udGFpbmVyIHNpemU9IjEiIGFsbG93U3luYz0iMSIgaWRlbnRpZmllcj0i
379
+ Y29tLnBsZXhhcHAucGx1Z2lucy5saWJyYXJ5IiBsaWJyYXJ5U2VjdGlvbklE
380
+ PSI2IiBsaWJyYXJ5U2VjdGlvblRpdGxlPSJUZXN0IE1vdmllcyIgbGlicmFy
381
+ eVNlY3Rpb25VVUlEPSJmYmM4MTBiNy02YjUxLTQwYmEtYTNjNS05YTJjMzkx
382
+ ZTVhM2QiIG1lZGlhVGFnUHJlZml4PSIvc3lzdGVtL2J1bmRsZS9tZWRpYS9m
383
+ bGFncy8iIG1lZGlhVGFnVmVyc2lvbj0iMTQyMDc2NzU0NSI+CjxWaWRlbyBy
384
+ YXRpbmdLZXk9IjEyMDEiIGtleT0iL2xpYnJhcnkvbWV0YWRhdGEvMTIwMSIg
385
+ Z3VpZD0iY29tLnBsZXhhcHAuYWdlbnRzLmltZGI6Ly90dDMwMjk1NTg/bGFu
386
+ Zz1lbiIgc3R1ZGlvPSJXYXJuZXIgQnJvcy4iIHR5cGU9Im1vdmllIiB0aXRs
387
+ ZT0iUnVyb3VuaSBLZW5zaGluOiBLeW90byBJbmZlcm5vIiBvcmlnaW5hbFRp
388
+ dGxlPSJSdXJvdW5pIEtlbnNoaW4gMiA6IEt5b3RvIEluZmVybm8g4Lij4Li5
389
+ 4LmC4Lij4LiZ4Li04LiZIOC5gOC4hOC4meC4iuC4tOC4mSDguYDguIHguLXg
390
+ uKLguKfguYLguJXguJfguLDguYDguKUiIGNvbnRlbnRSYXRpbmc9IlBHLTEz
391
+ IiBzdW1tYXJ5PSJLZW5zaGluIGhhcyBzZXR0bGVkIGludG8gaGlzIG5ldyBs
392
+ aWZlIHdpdGggS2FvcnUgYW5kIGhpcyBvdGhlciBmcmllbmRzIHdoZW4gaGUg
393
+ aXMgYXBwcm9hY2hlZCB3aXRoIGEgcmVxdWVzdCBmcm9tIHRoZSBNZWlqaSBn
394
+ b3Zlcm5tZW50LiBNYWtvdG8gU2hpc2hpbywgYSBmb3JtZXIgYXNzYXNzaW4g
395
+ bGlrZSBLZW5zaGluLCB3YXMgYmV0cmF5ZWQsIHNldCBvbiBmaXJlIGFuZCBs
396
+ ZWZ0IGZvciBkZWFkLiBIZSBzdXJ2aXZlZCwgYW5kIGlzIG5vdyBpbiBLeW90
397
+ bywgcGxvdHRpbmcgd2l0aCBoaXMgZ2F0aGVyZWQgd2FycmlvcnMgdG8gb3Zl
398
+ cnRocm93IHRoZSBuZXcgZ292ZXJubWVudC4gQWdhaW5zdCBLYW9ydSZhcG9z
399
+ O3Mgd2lzaGVzLCBLZW5zaGluIHJlbHVjdGFudGx5IGFncmVlcyB0byBnbyB0
400
+ byBLeW90byBhbmQgaGVscCBrZWVwIGhpcyBjb3VudHJ5IGZyb20gZmFsbGlu
401
+ ZyBiYWNrIGludG8gY2l2aWwgd2FyLiIgcmF0aW5nPSI3LjY5OTk5OTgwOTI2
402
+ NTE0MDMiIHllYXI9IjIwMTQiIHRhZ2xpbmU9IkZhdGUgSGFuZ3MgT24gSGlz
403
+ IFN3b3JkIiB0aHVtYj0iL2xpYnJhcnkvbWV0YWRhdGEvMTIwMS90aHVtYi8x
404
+ NDI0NDY0NDgzIiBhcnQ9Ii9saWJyYXJ5L21ldGFkYXRhLzEyMDEvYXJ0LzE0
405
+ MjQ0NjQ0ODMiIGR1cmF0aW9uPSI4MzIxMzM1IiBvcmlnaW5hbGx5QXZhaWxh
406
+ YmxlQXQ9IjIwMTQtMDgtMDEiIGFkZGVkQXQ9IjE0MjQ0NjQ0NzUiIHVwZGF0
407
+ ZWRBdD0iMTQyNDQ2NDQ4MyI+CjxNZWRpYSB2aWRlb1Jlc29sdXRpb249Ijcy
408
+ MCIgaWQ9IjE0MjYiIGR1cmF0aW9uPSI4MzIxMzM1IiBiaXRyYXRlPSIxMTA5
409
+ IiB3aWR0aD0iMTI4MCIgaGVpZ2h0PSI1MzYiIGFzcGVjdFJhdGlvPSIyLjM1
410
+ IiBhdWRpb0NoYW5uZWxzPSIyIiBhdWRpb0NvZGVjPSJhYWMiIHZpZGVvQ29k
411
+ ZWM9ImgyNjQiIGNvbnRhaW5lcj0ibWt2IiB2aWRlb0ZyYW1lUmF0ZT0iMjRw
412
+ Ij4KPFBhcnQgaWQ9IjE5ODEiIGtleT0iL2xpYnJhcnkvcGFydHMvMTk4MS9m
413
+ aWxlLm1rdiIgZHVyYXRpb249IjgzMjEzMzUiIGZpbGU9Ii9Vc2Vycy9tY29u
414
+ d2F5L01vdmllcy9UaXZvSE1PVGVzdC9Nb3ZpZXMvUnVyb3VuaSBLZW5zaGlu
415
+ IEt5b3RvIEluZmVybm8gKDIwMTQpLm1rdiIgc2l6ZT0iMTE1MzgzMzEzOSIg
416
+ Y29udGFpbmVyPSJta3YiPgo8U3RyZWFtIGlkPSI1ODI1IiBzdHJlYW1UeXBl
417
+ PSIxIiBjb2RlYz0iaDI2NCIgaW5kZXg9IjAiIGJpdHJhdGU9IjExMDkiIGJp
418
+ dERlcHRoPSI4IiBjYWJhYz0iMSIgY2hyb21hU3Vic2FtcGxpbmc9IjQ6Mjow
419
+ IiBjb2RlY0lEPSJWX01QRUc0L0lTTy9BVkMiIGNvbG9yU3BhY2U9Inl1diIg
420
+ ZHVyYXRpb249IjgzMjEzMjEiIGZyYW1lUmF0ZT0iMjMuOTc2IiBmcmFtZVJh
421
+ dGVNb2RlPSJjZnIiIGhhc1NjYWxpbmdNYXRyaXg9IjAiIGhlaWdodD0iNTM2
422
+ IiBsZXZlbD0iMzEiIHByb2ZpbGU9ImhpZ2giIHJlZkZyYW1lcz0iNCIgc2Nh
423
+ blR5cGU9InByb2dyZXNzaXZlIiB0aXRsZT0iIiB3aWR0aD0iMTI4MCIgLz4K
424
+ PFN0cmVhbSBpZD0iNTgyNiIgc3RyZWFtVHlwZT0iMiIgc2VsZWN0ZWQ9IjEi
425
+ IGNvZGVjPSJhYWMiIGluZGV4PSIxIiBjaGFubmVscz0iMiIgbGFuZ3VhZ2U9
426
+ IuaXpeacrOiqniIgbGFuZ3VhZ2VDb2RlPSJqcG4iIGNvZGVjSUQ9IkFfQUFD
427
+ IiBkdXJhdGlvbj0iODMyMTMzNSIgcHJvZmlsZT0ibGMiIHNhbXBsaW5nUmF0
428
+ ZT0iNDgwMDAiIHRpdGxlPSIiIC8+CjxTdHJlYW0gaWQ9IjU4MjciIHN0cmVh
429
+ bVR5cGU9IjMiIGRlZmF1bHQ9IjEiIGNvZGVjPSJzcnQiIGluZGV4PSIyIiBj
430
+ b2RlY0lEPSJTX1RFWFQvVVRGOCIgZm9ybWF0PSJzcnQiIHRpdGxlPSIiIC8+
431
+ CjwvUGFydD4KPC9NZWRpYT4KPEdlbnJlIGlkPSI4OSIgdGFnPSJBY3Rpb24i
432
+ IC8+CjxHZW5yZSBpZD0iMTM2IiB0YWc9IkFkdmVudHVyZSIgLz4KPEdlbnJl
433
+ IGlkPSIxMDMiIHRhZz0iQW5pbWF0aW9uIiAvPgo8R2VucmUgaWQ9Ijg4IiB0
434
+ YWc9IkRyYW1hIiAvPgo8RGlyZWN0b3IgaWQ9IjcwNDYiIHRhZz0iS2Vpc2hp
435
+ IE9odG9tbyIgLz4KPENvdW50cnkgaWQ9IjE5ODgiIHRhZz0iSmFwYW4iIC8+
436
+ CjxSb2xlIGlkPSI3NTM4IiB0YWc9IlRha2VydSBTYXRvIiByb2xlPSJLZW5z
437
+ aGluIEhpbXVyYSIgdGh1bWI9Imh0dHA6Ly9pbWFnZS50bWRiLm9yZy90L3Av
438
+ b3JpZ2luYWwvOEdKODQ5R1E5ZUhDTGZzUmowMjZKVVZhcUpDLmpwZyIgLz4K
439
+ PFJvbGUgaWQ9Ijc1NDAiIHRhZz0iWXUgQW9pIiByb2xlPSJNZWd1bWkgVGFr
440
+ YW5pIiB0aHVtYj0iaHR0cDovL2ltYWdlLnRtZGIub3JnL3QvcC9vcmlnaW5h
441
+ bC9zWGd2VUs4dVdKNHhDeEE5T2tsYXBtMDhEUEouanBnIiAvPgo8Um9sZSBp
442
+ ZD0iNzA1MyIgdGFnPSJUYXRzdXlhIEZ1aml3YXJhIiByb2xlPSJNYWtvdG8g
443
+ U2hpc2hpbyIgdGh1bWI9Imh0dHA6Ly9pbWFnZS50bWRiLm9yZy90L3Avb3Jp
444
+ Z2luYWwveFBGWUdlZzF0RTRlMjFBblFHdXdiYkhOWGdCLmpwZyIgLz4KPFJv
445
+ bGUgaWQ9Ijc1NDIiIHRhZz0iWcO7c3VrZSBJc2V5YSIgcm9sZT0iQW9zaGkg
446
+ U2hpbm9tb3JpIiB0aHVtYj0iaHR0cDovL2ltYWdlLnRtZGIub3JnL3QvcC9v
447
+ cmlnaW5hbC81R2hjTFFMaWNMZTh4ZEpsblY3aWM3RHRqcjUuanBnIiAvPgo8
448
+ Um9sZSBpZD0iNzA0OCIgdGFnPSJFbWkgVGFrZWkiIHJvbGU9Ikthb3J1IEth
449
+ bWl5YSIgdGh1bWI9Imh0dHA6Ly9pbWFnZS50bWRiLm9yZy90L3Avb3JpZ2lu
450
+ YWwvOWtIRGlrQVlGdDIzNEFZbFNaemQ0ZWJVM3laLmpwZyIgLz4KPFJvbGUg
451
+ aWQ9IjcwNTEiIHRhZz0iWcWNc3VrZSBFZ3VjaGkiIHJvbGU9IkhhamltZSBT
452
+ YWl0byIgdGh1bWI9Imh0dHA6Ly9pbWFnZS50bWRiLm9yZy90L3Avb3JpZ2lu
453
+ YWwvd3ROanZLVDVHcVRZS1hucVlhOEM4dkw3QkV4LmpwZyIgLz4KPFJvbGUg
454
+ aWQ9IjcwNjAiIHRhZz0iTXVuZXRha2EgQW9raSIgcm9sZT0iU2Fub3N1a2Ug
455
+ U2FnYXJhIiB0aHVtYj0iaHR0cDovL2ltYWdlLnRtZGIub3JnL3QvcC9vcmln
456
+ aW5hbC8xNElBdWVqalB0T0F5Rkhoa29QckJ2U29rUWsuanBnIiAvPgo8Um9s
457
+ ZSBpZD0iNzA1OCIgdGFnPSJSeXVub3N1a2UgS2FtaWtpIiByb2xlPSJTb2pp
458
+ cm8gU2V0YSIgdGh1bWI9Imh0dHA6Ly9pbWFnZS50bWRiLm9yZy90L3Avb3Jp
459
+ Z2luYWwvNFl0QmR4SjduVHY2Q3VNdnhJQTZza2ZxY3puLmpwZyIgLz4KPFJv
460
+ bGUgaWQ9IjcwNTIiIHRhZz0iVGFvIFRzdWNoaXlhIiByb2xlPSJNYWtpbWFj
461
+ aGkgTWlzYW8iIHRodW1iPSJodHRwOi8vaW1hZ2UudG1kYi5vcmcvdC9wL29y
462
+ aWdpbmFsL2tUOE16YUdBTTBoUUZqYWZKUlF2MzZCemRCUi5qcGciIC8+CjxS
463
+ b2xlIGlkPSI3MDU2IiB0YWc9Ik1pbiBUYW5ha2EiIHJvbGU9Ikthc2hpd2F6
464
+ YWtpIE5lbmppIiB0aHVtYj0iaHR0cDovL2ltYWdlLnRtZGIub3JnL3QvcC9v
465
+ cmlnaW5hbC9wcEtLaldwRUp4YUNHcW9SZHBaVjNveEttbWMuanBnIiAvPgo8
466
+ Um9sZSBpZD0iNzU0MyIgdGFnPSJLYXp1ZnVtaSBNaXlhemF3YSIgcm9sZT0i
467
+ VG9zaGltaWNoaSBPb2t1Ym8iIC8+CjxSb2xlIGlkPSI3NTQ0IiB0YWc9Ill1
468
+ a2l5b3NoaSBPemF3YSIgcm9sZT0iSXRvIEhpcm9idW1pIiB0aHVtYj0iaHR0
469
+ cDovL2ltYWdlLnRtZGIub3JnL3QvcC9vcmlnaW5hbC9mNVhDeTRnRHRBVlRz
470
+ MXI3S3pnZWJUeXZOUlQuanBnIiAvPgo8Um9sZSBpZD0iNzU0NSIgdGFnPSJL
471
+ ZW5pY2hpIFRha2l0byIgcm9sZT0iU2Fkb2ppbWEgSG9qaSIgdGh1bWI9Imh0
472
+ dHA6Ly9pbWFnZS50bWRiLm9yZy90L3Avb3JpZ2luYWwvZ0FCeDNROWVJS1hY
473
+ VmJqa2NCb3NUVE84em9LLmpwZyIgLz4KPC9WaWRlbz4KPC9NZWRpYUNvbnRh
474
+ aW5lcj4K
475
+ http_version:
476
+ recorded_at: Sun, 01 Mar 2015 18:52:57 GMT
477
+ - request:
478
+ method: get
479
+ uri: http://localhost:32400/library/metadata/1169
480
+ body:
481
+ encoding: US-ASCII
482
+ string: ''
483
+ headers:
484
+ Accept-Encoding:
485
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
486
+ Accept:
487
+ - "*/*"
488
+ User-Agent:
489
+ - Ruby
490
+ response:
491
+ status:
492
+ code: 200
493
+ message: OK
494
+ headers:
495
+ Content-Type:
496
+ - text/xml;charset=utf-8
497
+ Connection:
498
+ - close
499
+ X-Plex-Protocol:
500
+ - '1.0'
501
+ X-Plex-Content-Original-Length:
502
+ - '3639'
503
+ X-Plex-Content-Compressed-Length:
504
+ - '1800'
505
+ Content-Length:
506
+ - '1800'
507
+ Cache-Control:
508
+ - no-cache
509
+ body:
510
+ encoding: ASCII-8BIT
511
+ string: !binary |-
512
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPE1lZGlh
513
+ Q29udGFpbmVyIHNpemU9IjEiIGFsbG93U3luYz0iMSIgaWRlbnRpZmllcj0i
514
+ Y29tLnBsZXhhcHAucGx1Z2lucy5saWJyYXJ5IiBsaWJyYXJ5U2VjdGlvbklE
515
+ PSI2IiBsaWJyYXJ5U2VjdGlvblRpdGxlPSJUZXN0IE1vdmllcyIgbGlicmFy
516
+ eVNlY3Rpb25VVUlEPSJmYmM4MTBiNy02YjUxLTQwYmEtYTNjNS05YTJjMzkx
517
+ ZTVhM2QiIG1lZGlhVGFnUHJlZml4PSIvc3lzdGVtL2J1bmRsZS9tZWRpYS9m
518
+ bGFncy8iIG1lZGlhVGFnVmVyc2lvbj0iMTQyMDc2NzU0NSI+CjxWaWRlbyBy
519
+ YXRpbmdLZXk9IjExNjkiIGtleT0iL2xpYnJhcnkvbWV0YWRhdGEvMTE2OSIg
520
+ Z3VpZD0iY29tLnBsZXhhcHAuYWdlbnRzLmltZGI6Ly90dDExODcwNDM/bGFu
521
+ Zz1lbiIgc3R1ZGlvPSJWaWRodSBWaW5vZCBDaG9wcmEgUHJvZHVjdGlvbnMi
522
+ IHR5cGU9Im1vdmllIiB0aXRsZT0iMyBJZGlvdHMiIGNvbnRlbnRSYXRpbmc9
523
+ IlBHIiBzdW1tYXJ5PSJJbiB0aGUgdHJhZGl0aW9uIG9mIOKAnEZlcnJpcyBC
524
+ dWVsbGVy4oCZcyBEYXkgT2Zm4oCdIGNvbWVzIHRoaXMgcmVmcmVzaGluZyBj
525
+ b21lZHkgYWJvdXQgYSByZWJlbGxpb3VzIHByYW5rc3RlciB3aXRoIGEgY3Jh
526
+ ZnR5IG1pbmQgYW5kIGEgaGVhcnQgb2YgZ29sZC4gUmFzY2FsLiBKb2tlci4g
527
+ RHJlYW1lci4gR2VuaXVzLi4uIFlvdSZhcG9zO3ZlIG5ldmVyIG1ldCBhIGNv
528
+ bGxlZ2Ugc3R1ZGVudCBxdWl0ZSBsaWtlICZxdW90O1JhbmNoby4mcXVvdDsg
529
+ RnJvbSB0aGUgbW9tZW50IGhlIGFycml2ZXMgYXQgSW5kaWEmYXBvcztzIG1v
530
+ c3QgcHJlc3RpZ2lvdXMgdW5pdmVyc2l0eSwgUmFuY2hvJmFwb3M7cyBvdXRs
531
+ YW5kaXNoIHNjaGVtZXMgdHVybiB0aGUgY2FtcHVzIHVwc2lkZSBkb3du4oCU
532
+ YWxvbmcgd2l0aCB0aGUgbGl2ZXMgb2YgaGlzIHR3byBuZXdmb3VuZCBiZXN0
533
+ IGZyaWVuZHMuIFRvZ2V0aGVyLCB0aGV5IG1ha2UgbGlmZSBtaXNlcmFibGUg
534
+ Zm9yICZxdW90O1ZpcnVzLCZxdW90OyB0aGUgc2Nob29s4oCZcyB1cHRpZ2h0
535
+ IGFuZCBoZWFydGxlc3MgZGVhbi4gQnV0IHdoZW4gUmFuY2hvIGNhdGNoZXMg
536
+ dGhlIGV5ZSBvZiB0aGUgZGVhbiZhcG9zO3Mgc2V4eSBkYXVnaHRlciwgVmly
537
+ dXMgc2V0cyBoaXMgc2lnaHRzIG9uIGZsdW5raW5nIG91dCB0aGUgJnF1b3Q7
538
+ MyBpZGlvdHMmcXVvdDsgb25jZSBhbmQgZm9yIGFsbC4iIHJhdGluZz0iNy42
539
+ OTk5OTk4MDkyNjUxNDAzIiB5ZWFyPSIyMDA5IiB0aHVtYj0iL2xpYnJhcnkv
540
+ bWV0YWRhdGEvMTE2OS90aHVtYi8xNDI0NDY0ODQ2IiBhcnQ9Ii9saWJyYXJ5
541
+ L21ldGFkYXRhLzExNjkvYXJ0LzE0MjQ0NjQ4NDYiIGR1cmF0aW9uPSI5ODU1
542
+ NDQwIiBvcmlnaW5hbGx5QXZhaWxhYmxlQXQ9IjIwMDktMTItMjUiIGFkZGVk
543
+ QXQ9IjE0MjM5MzUzNTIiIHVwZGF0ZWRBdD0iMTQyNDQ2NDg0NiI+CjxNZWRp
544
+ YSB2aWRlb1Jlc29sdXRpb249InNkIiBpZD0iMTM5OSIgZHVyYXRpb249Ijk4
545
+ NTU0NDAiIGJpdHJhdGU9IjgwOCIgd2lkdGg9IjY0MCIgaGVpZ2h0PSIyNzIi
546
+ IGFzcGVjdFJhdGlvPSIyLjM1IiBhdWRpb0NoYW5uZWxzPSI2IiBhdWRpb0Nv
547
+ ZGVjPSJhYzMiIHZpZGVvQ29kZWM9Im1wZWc0IiBjb250YWluZXI9ImF2aSIg
548
+ dmlkZW9GcmFtZVJhdGU9IlBBTCI+CjxQYXJ0IGlkPSIxOTU0IiBrZXk9Ii9s
549
+ aWJyYXJ5L3BhcnRzLzE5NTQvZmlsZS5hdmkiIGR1cmF0aW9uPSI5ODU1NDQw
550
+ IiBmaWxlPSIvVXNlcnMvbWNvbndheS9Nb3ZpZXMvVGl2b0hNT1Rlc3QvTW92
551
+ aWVzLzMgSWRpb3RzICgyMDA5KS5hdmkiIHNpemU9Ijk5NTQ0Mzc4NCIgY29u
552
+ dGFpbmVyPSJhdmkiPgo8U3RyZWFtIGlkPSI1NzMyIiBzdHJlYW1UeXBlPSIx
553
+ IiBjb2RlYz0ibXBlZzQiIGluZGV4PSIwIiBiaXRyYXRlPSI2MTEiIGJpdERl
554
+ cHRoPSI4IiBjaHJvbWFTdWJzYW1wbGluZz0iNDoyOjAiIGNvZGVjSUQ9IlhW
555
+ SUQiIGNvbG9yU3BhY2U9Inl1diIgZHVyYXRpb249Ijk4NTU0NDAiIGZyYW1l
556
+ UmF0ZT0iMjUuMDAwIiBnbWM9IjAiIGhlaWdodD0iMjcyIiBsZXZlbD0iNSIg
557
+ cHJvZmlsZT0iYXNwIiBxcGVsPSIwIiBzY2FuVHlwZT0icHJvZ3Jlc3NpdmUi
558
+ IHRpdGxlPSIiIHdpZHRoPSI2NDAiIC8+CjxTdHJlYW0gaWQ9IjU3MzMiIHN0
559
+ cmVhbVR5cGU9IjIiIHNlbGVjdGVkPSIxIiBjb2RlYz0iYWMzIiBpbmRleD0i
560
+ MSIgY2hhbm5lbHM9IjYiIGJpdHJhdGU9IjE5MiIgYml0RGVwdGg9IjE2IiBi
561
+ aXRyYXRlTW9kZT0iY2JyIiBjb2RlY0lEPSIyMDAwIiBkaWFsb2dOb3JtPSIt
562
+ MzEiIGR1cmF0aW9uPSI5ODU1MzYwIiBzYW1wbGluZ1JhdGU9IjQ4MDAwIiB0
563
+ aXRsZT0iIiAvPgo8U3RyZWFtIGlkPSI1NzM4IiBrZXk9Ii9saWJyYXJ5L3N0
564
+ cmVhbXMvNTczOCIgc3RyZWFtVHlwZT0iMyIgY29kZWM9InNydCIgbGFuZ3Vh
565
+ Z2U9IkVuZ2xpc2giIGxhbmd1YWdlQ29kZT0iZW5nIiBmb3JtYXQ9InNydCIg
566
+ Lz4KPC9QYXJ0Pgo8L01lZGlhPgo8R2VucmUgaWQ9IjQ0IiB0YWc9IkNvbWVk
567
+ eSIgLz4KPEdlbnJlIGlkPSI4OCIgdGFnPSJEcmFtYSIgLz4KPEdlbnJlIGlk
568
+ PSIzNjgxIiB0YWc9IlJvbWFuY2UiIC8+CjxXcml0ZXIgaWQ9IjY5MDUiIHRh
569
+ Zz0iUmFqa3VtYXIgSGlyYW5pIiAvPgo8RGlyZWN0b3IgaWQ9IjY5MDIiIHRh
570
+ Zz0iUmFqa3VtYXIgSGlyYW5pIiAvPgo8UHJvZHVjZXIgaWQ9IjY5MjkiIHRh
571
+ Zz0iVmlkaHUgVmlub2QgQ2hvcHJhIiAvPgo8Q291bnRyeSBpZD0iNjA5IiB0
572
+ YWc9IkluZGlhIiAvPgo8Um9sZSBpZD0iNjkxMyIgdGFnPSJBYW1pciBLaGFu
573
+ IiByb2xlPSJSYW5jaG8iIHRodW1iPSJodHRwOi8vaW1hZ2UudG1kYi5vcmcv
574
+ dC9wL29yaWdpbmFsL2pZb2hsVVZrTFBGZG5EcnlaOFYxSFprSnpEdC5qcGci
575
+ IC8+CjxSb2xlIGlkPSI3MjQ3IiB0YWc9IkthcmVlbmEgS2Fwb29yIiByb2xl
576
+ PSJQaWEiIHRodW1iPSJodHRwOi8vaW1hZ2UudG1kYi5vcmcvdC9wL29yaWdp
577
+ bmFsL2tEWWVCRU5YY1ZLZkhKalNIbGNpTkNMbXRyRy5qcGciIC8+CjxSb2xl
578
+ IGlkPSI3MjQ4IiB0YWc9Ik1hZGhhdmFuIiByb2xlPSJGYXJoYW4iIHRodW1i
579
+ PSJodHRwOi8vaW1hZ2UudG1kYi5vcmcvdC9wL29yaWdpbmFsL2p4cUV4NElp
580
+ OWFZeDdra2t6MU14N0ZXcmpDdC5qcGciIC8+CjxSb2xlIGlkPSI2OTE1IiB0
581
+ YWc9IlNoYXJtYW4gSm9zaGkiIHJvbGU9IlJhanUiIHRodW1iPSJodHRwOi8v
582
+ aW1hZ2UudG1kYi5vcmcvdC9wL29yaWdpbmFsL2xhc21laTFTb1drU1p4V1F0
583
+ TmgyYkkxMFQySC5qcGciIC8+CjxSb2xlIGlkPSI2OTE0IiB0YWc9IkJvbWFu
584
+ IElyYW5pIiByb2xlPSJWaXJ1IFNhaGFzdHJhYnVkaGhlIiB0aHVtYj0iaHR0
585
+ cDovL2ltYWdlLnRtZGIub3JnL3QvcC9vcmlnaW5hbC95YmhGYW04YWRVcFd6
586
+ M1JlNDlUOHVEbThEY1QuanBnIiAvPgo8Um9sZSBpZD0iNjkwOCIgdGFnPSJN
587
+ b25hIFNpbmdoIiByb2xlPSJNb25hIiB0aHVtYj0iaHR0cDovL2ltYWdlLnRt
588
+ ZGIub3JnL3QvcC9vcmlnaW5hbC83VHdFTkhJTWpLWk82d1lUVkd5OW5xaFZZ
589
+ TFouanBnIiAvPgo8Um9sZSBpZD0iNjkxNyIgdGFnPSJPbWkgVmFpZHlhIiBy
590
+ b2xlPSJDaGF0dXIgUmFtYWxpbmdhbSIgdGh1bWI9Imh0dHA6Ly9pbWFnZS50
591
+ bWRiLm9yZy90L3Avb3JpZ2luYWwvak1zSHFscno0MVpwRDdSRXlzNzhaYUNU
592
+ TTNVLmpwZyIgLz4KPC9WaWRlbz4KPC9NZWRpYUNvbnRhaW5lcj4K
593
+ http_version:
594
+ recorded_at: Sun, 01 Mar 2015 18:52:57 GMT
595
+ recorded_with: VCR 2.9.3