· 6 years ago · Feb 16, 2020, 06:42 PM
1Jen
21 Introduction to Jen
31.1 What is Jen?
4
5Jen is an addon written by a long time Kodi Developer. It is free to use and has universalscrapers integrated into it. This addon does not host any of the content which is found and has no affiliation with any of the content providers. This addon simply searches websites for content. Use at your own risk!
62 How to Install Jen
72.1 Follow the Instructions to Make a Jen Addon
82.1.1 Add an Icon
9
10 Add an icon to the main jen folder.
11 It should be 512 x 512 and it must be called icon.png
12
132.1.2 Add Fanart
14
15 Add fanart to the main jen folder
16 It should be 1920 x 1080 and must be called fanart.jpg
17
182.1.3 Changing the addon.xml
19
20 Change the addon id and name and anything else you need to suit your addon.
21
222.1.4 Change the name of the folder
23
24 Change the name of the folder from plugin.video.jen to the addon id in your addon.xml
25
262.1.5 Changing the settings.xml
27
28 Open resources/settings.xml
29 Change plugin.video.jen to the addon id in your addon.xml
30 Add your apis to each default=""
31
32 Add your path to your main menu xml file to the default="". If it is a website url, enter the full url.
33 Configure the Service settings using the default="" entries. The service is used to update the root xml path and api keys if you ever need to change them. Defaults will work fine.
34
352.1.6 Change entries in the strings.po files
36
37 Change the first 3 lines of your strings.po files in /resources/language to your Addon ID, provider, and addon name
38
393 How to Get API Keys for Jen
403.1 TMDB
41
42 You can get a TMDB Api by going to website.
43 Use google.com for url
44
453.2 TRAKT
46
47 You can get a Trakt Api by clicking here
48 Use google.com for url
49
503.3 TVDB
51
52 You can get a TVDB Api by clicking here
53 May need to be signed in to your account to access this page
54
553.4 Last.fm
56
57 You can get a Last.fm Api by clicking here
58 Go to the Getting Started section on this page
59
604 Upgrading Jen
61
62 Slide over your icon, fanart, strings.po, settings from your copy of settings.xml and copy over the stuff from your addon.xml to the new version
63 Copy over the configuration variables in your default.py to the new location in resources/settings.xml (Jen Template v1.5 and higher) - DO NOT OVERWRITE THE DEFAULT.PY WITH YOURS
64 Update your addon.xml version number (if required)
65 Zip up the new folder and add the correct version number to the end eg. plugin.video.jen-1.1.zip
66 Push out new version
67
685 Jen Plugins
695.1 How to Add a Plugin
70
71 Plugins are found in resources/lib/plugins.
72 The plugin.py can be found in resources/lib/util
73 You can see where you can overwrite default behavior. If there are any other useful ones, open an issue.
74
755.2 Using Trakt Plugin
765.2.1 How to Add a Trakt List
77
78 <dir>
79 <title></title>
80 <trakt></trakt>
81 </dir>
82
83 See the trakt.py for examples
84
855.2.2 How to Find Lists in Trakt that Belong to Others
86
87 Go to search and type what you're looking for eg. War
88 Click on Lists on the left
89 Open a list
90 Copy the list's url and add the "api." to the beginning of it and "/items" to the end of it (see "How to Add an Individual Trakt List to your XML above)
91 Example of a user's URL
92 Example of a same URL put in your xml file with "api." and "/items" added to it
93
945.2.3 How to Fix Trakt Lists that Aren't Showing
95
96 Make sure the trakt url is correct.
97 If your list is private (or account is private), then you need to make both public.
98 Make sure you have trakt apis in settings.xml
99 Make sure the plugins folder has the unidecode folder.
100 Make sure you have the TMDB Api in settings.xml as well. If you don't want to get a TMDB Api you will need to go to resources/lib/plugins/trakt.py and change line 113 from
101 Make sure you have the trakt/tmdb api key. Sometimes they get cancelled or expired.
102
103 SKIP_TMDB_INFO = False to SKIP_TMDB_INFO = True
104 **Note this will let you open lists but you will not have artwork**
105
1065.3 Using TMDB Plugin
1075.3.1 How to Add a TMDB List
108
109 <dir>
110 <title></title>
111 <tmdb></tmdb>
112 </dir>
113
114 See the TMDB.py for examples.
115
1165.3.2 How to Fix TMDB Lists that Aren't Showing
117
118 Make sure the tmdb url is correct.
119 Make sure you have tmdb apis in settings.xml
120 Make sure the plugins folder has the unidecode folder.
121 Make sure you have the trakt/tmdb api key. Sometimes they get cancelled or expired.
122
1235.4 Using IMDB Plugin
1245.4.1 How to Add an IMDB List
125
126 <dir>
127 <title></title>
128 <imdburl></imdburl>
129 </dir>
130
1315.5 Using Last.fm Plugin
1325.5.1 How to Add an Artist Track List
133
134 <dir>
135 <title>Muse Tracks</title>
136 <lastfm>artist/muse/tracks</lastfm>
137 </dir>
138
1395.5.2 How to Add an Artist Album List
140
141 <dir>
142 <title>Muse Albums</title>
143 <lastfm>artist/muse/albums</lastfm>
144 </dir>
145
1465.6 Using TVMaze Plugin
1475.6.1 How to Add an Artist Track List
148
149 <dir>
150 <title>All Networks</title>
151 <tvmaze>country/all</tvmaze>
152 </dir>
153
1546 Hosting
1556.1 Hosting for XML and Thumbnails (Overview and Tips)
1566.1.1 XML and Image Hosting Online
157
158 Root XML setting and even links to other menu files are always the full URL to the file
159
160 <dir>
161 <title>Cartoons</title>
162 <link>http://www.example.com/menus/cartoons.xml</link>
163 </dir>
164
165 Images, such as Fanart and Thumbnails, are always the full URL to the file
166
167 <dir>
168 <title>Cartoons</title>
169 <link>http://www.example.com/menus/cartoons.xml</link>
170 <thumbnail>http://www.example.com/artwork/toonicon.png</thumbnail>
171 <fanart>http://www.example.com/artwork/toon_fanart.jpg</fanart>
172 </dir>
173
1746.1.2 XML and Image Hosting Local
175
176 Root XML setting and even links to other menu files are always pre-pended with file://
177 Local xml files root path starts in the xml folder under your Addon.
178
179 Example for an xml file in the root of your xml folder
180
181 <dir>
182 <title>Main Menu</title>
183 <link>file://main.xml</link>
184 </dir>
185
186 You can put xml files locally in subfolders to help organize them better. Just include the subfolder name as part of the path
187
188 Example for an xml file in the subfolder calls toons under the xml folder
189
190 <dir>
191 <title>Cartoons</title>
192 <link>file://toons/cartoons.xml</link>
193 </dir>
194
195 You can link to thumbnails and fanart from folders in Kodi using the "special://" links like below
196
197 To access artwork from your addon, or any other addon, use special://home/addons as the first part of the path
198
199 <dir>
200 <title>Cartoons</title>
201 <link>file://toons/cartoons.xml</link>
202 <thumbnail>special://home/addons/plugin.video.jen/resources/media/toonicon.png</thumbnail>
203 <fanart>special://home/addons/plugin.video.jen/resources/media/toon_fanart.jpg</fanart>
204 </dir>
205
2066.2 Using Github for Hosting
2076.2.1 How to get Raw URL
208
209 Click on the file you want the url for.
210 Click on the raw icon.
211 Copy the url in the address bar.
212
2136.3 Using Pastebin for Hosting
2146.3.1 How to get Raw URL
215
216 Click on the file you want the url for.
217 Click on the raw icon.
218 Copy the url in the address bar.
219
2207 How to Add Search to Jen
2217.1 Trakt
222
223 <dir>
224 <title>Search Trakt</title>
225 <trakt>search</trakt>
226 </dir>
227
2287.2 TMDB
229
230 <dir>
231 <title>Search TMDB</title>
232 <tmdb>search</tmdb>
233 </dir>
234
2357.3 IMDB
236
237 <dir>
238 <title>Search IMDB</title>
239 <imdburl>search</imdburl>
240 </dir>
241
2427.4 Last.fm
243
244 <dir>
245 <title>Search Last.fm for Artists</title>
246 <lastfm>search/artist</lastfm>
247 </dir>
248
249 <dir>
250 <title>Search Last.fm for Albums</title>
251 <lastfm>search/album</lastfm>
252 </dir>
253
2548 XML Formats for Jen
255
256 You can find all formats in xml/other/jenformats.xml
257
2589 Adding Customized Icons
259
260 Add these to your main.xml in order to add these icons to your startup screen.
261 Just change plugin.video.jen to your addon id
262
2639.1 Settings
264
265 <plugin>
266 <name>30701</name>
267 <link>plugin://plugin.video.jen/?action=openSettings</link>
268 <thumbnail></thumbnail>
269 </plugin>
270
2719.2 Search
272
273 <plugin>
274 <name>30702</name>
275 <link>plugin://plugin.video.jen/?action=search</link>
276 <thumbnail></thumbnail>
277 </plugin>
278
27910 Changing List Colours
280
281 You can change a list colour for trakt and tmdb lists by opening the py files and changing the <title> colour.
282 Only the title above the meta tag needs changing. See below. Change blue to whatever colour you want.
283
284 Movies
285
286 xml = "<item>" \
287 "<title>[COLOR blue]%s[/COLOR]</title>" \
288 "<meta>" \
289 "<content>movie</content>" \
290 "<imdb>%s</imdb>" \
291 "<title>%s</title>" \
292 "<year>%s</year>" \
293 "</meta>" \
294 "<link>" \
295 "<sublink>search</sublink>" \
296 "<sublink>searchsd</sublink>" \
297 "</link>" \
298 "<thumbnail>%s</thumbnail>" \
299 "<fanart>%s</fanart>" \
300 "</item>" % (title, imdb, title, year, thumbnail, fanart)
301 return xml
302
303 TV Show
304
305 xml = "<dir>"\
306 "<title>[COLOR blue]%s[/COLOR]</title>"\
307 "<meta>"\
308 "<content>tvshow</content>"\
309 "<imdb>%s</imdb>"\
310 "<tvshowtitle>%s</tvshowtitle>"\
311 "<year>%s</year>"\
312 "</meta>"\
313 "<link>trakt_tv_show(%s, %s, %s, %s, %s)</link>"\
314 "<thumbnail>%s</thumbnail>" \
315 "<fanart>%s</fanart>" \
316 "</dir>" % (title, imdb, title, year, trakt_id, year, title, tmdb,
317 imdb, thumbnail, fanart)
318 return xml
319
320 TV Seasons
321
322 xml = "<dir>"\
323 "<title>[COLOR blue]Season %s[/COLOR]</title>"\
324 "<meta>"\
325 "<imdb>%s</imdb>"\
326 "<content>season</content>"\
327 "<season>%s</season>"\
328 "</meta>"\
329 "<link>trakt_season(%s,%s, %s, %s, %s, %s)</link>"\
330 "<thumbnail>%s</thumbnail>" \
331 "<fanart>%s</fanart>" \
332 "</dir>" % (season, imdb, season, trakt_id, season, year,
333 tvtitle, tmdb,
334 imdb, thumbnail, fanart)
335 return xml
336
337 TV Episodes
338
339 xml = "<item>"\
340 "<title>[COLOR blue]%s[/COLOR]</title>"\
341 "<meta>"\
342 "<content>episode</content>"\
343 "<imdb>%s</imdb>"\
344 "<tvshowtitle>%s</tvshowtitle>"\
345 "<year>%s</year>"\
346 "<title>%s</title>"\
347 "<premiered>%s</premiered>"\
348 "<season>%s</season>"\
349 "<episode>%s</episode>"\
350 "</meta>"\
351 "<link>"\
352 "<sublink>search</sublink>"\
353 "<sublink>searchsd</sublink>"\
354 "</link>"\
355 "<thumbnail>%s</thumbnail>" \
356 "<fanart>%s</fanart>" % (
357 title, imdb, tvtitle, year, title,
358 premiered, season, episode,
359 thumbnail, fanart)
360 xml += "</item>"
361 return xml
362
36311 First Time Install And Dependencies
364
365 Make sure you either have all the dependencies installed from your addon.xml or simply install a repo that already has Jen addons in it.
366
36712 Setting Up Your First Repository
368
369 Click on the image below to go to a video series on setting up your first repo the easiest way possible.
370
37113 Making Your Jen Private
372
373 This is an overview of making your Jen require a username and password to access the main menu.
374 Requires Jen Template v1.8 or higher.
375
37613.1 Settings.XML Entries
377
378 <setting id="use-account" type="bool" label="30200" default="false" visible="false"/>
379 <setting id="username" type="text" label="30201" default="" enable="!eq(-1,false)"/>
380 <setting id="password" type="text" label="30202" default="" option="hidden" enable="!eq(-2,false)"/>
381 <setting id="login_message_style" type="select" label="30209" values="notification|popup|none" default="notification" visible="true" enable="!eq(-3,false)" />
382 <setting id="login_url" type="text" label="30204" default="PUT FULL URL USED TO VERIFY LOGIN" visible="false"/>
383 <setting id="user_var" type="text" label="30206" default="username" visible="false"/>
384 <setting id="pwd_var" type="text" label="30207" default="password" visible="false"/>
385 <setting id="session_length" type="text" label="30208" default="24" visible="false"/>
386 <setting id="login_verified" type="text" label="30205" default="Welcome to" visible="false"/>
387 <setting id="login_welcome_msg" type="text" label="30210" default="Welcome to Jen %s" visible="false"/>
388 <setting id="login_failed_msg" type="text" label="30211" default="Username or Password was incorrect %s" visible="false"/>
389 <setting id="login_required_msg" type="text" label="30212" default="Please enter a valid username and password in Settings" visible="false"/>
390
391 id 'use-account' : Change "default" to "true" to require a login for your Jen
392 id 'username' : This is set by the end user for a valid username
393 id 'password' : This is set by the end user for a valid password
394 id 'login_message_style' : This is set by the end user, to choose how they wish to see the login success message
395 id 'login_url' : Full url to your login page. Example: "http://www.example.com/login.php"
396 id 'user_var' : Variable name the login form uses for usernames, not visible to the user
397 id 'pwd_var' : Variable name the login form uses for passwords, not visible to the user
398 id 'session_length' : Set to the length, in hours, you want their session to be in Kodi
399 id 'login_verified' : Set default to text string unique to the page displayed after a successful login. Such as "Howdy, " for Wordpress or if using the supplied login template, "Welcome to"
400 id 'login_welcome_msg' : Set the message you want to be given on a successful login (can use one %s in string to insert username)
401 id 'login_failed_msg' : Set the message you want to be given on a failed login (can use one %s in string to insert username)
402 id 'login_required_msg' : Set the message you want given if username/password is blank
403
40413.2 Login Form On Website
405
406 A basic understanding of html, forms, and form values may be needed for customization. If you need help, it is available in the Jen Chat on Telegram.
407 You must ensure the weblogin.py is sending the right "username" and "password" variables to your website for login verification.
408 The supplied template/example in the login folder with the Jen Template uses "username" and "password", which is what is already in the settings.xml
409 For example, if you are using Wordpress for your website and want to verify the accounts through your website, change the user_var to "log" for username, and pwd_var to "pwd" for password
410
411
412
413
414 Created: 2018-07-08 Sun 04:16