Pleas help write plugin
Firs, I'am not developer but try to understand how work plugin.
I'm trying to write a plugin for this page http://tv.delfi.lt/
Rss http://tv.delfi.lt/feed/rss
I tried to write but do not work. My code:
- Code:
import org.serviio.library.metadata.*
import org.serviio.library.online.*
/** delfitv.info content URL extractor plugin.
*
* http://tv.delfi.lt/feed/rss
*
* @author Neoromancer
*
*/
class delfitvUrlExtractor extends FeedItemUrlExtractor {
final VALID_FEED_URL = '^http://ytv.delfi.lt/v/.*'
String getExtractorName() {
return getClass().getName();
}
boolean extractorMatches(URL feedUrl) {
return feedUrl ==~ VALID_FEED_URL;
}
/* Quality is ignored on delfitv */
ContentURLContainer extractUrl(Map links, PreferredQuality requestedQuality) {
def linkUrl = links.alternate != null ? links.alternate : links.default
// open the HTML page first
def webPage = linkUrl.getText()
// find SWFObject : content file location
// Example : so.addVariable('file','http://ytv.delfi.lt/v/55rqhjZ8.mp4%3FPHPSESSID%3D863c2f07ab6b1230367086add75ef866%26ft%3Da.mp4');
def matcher = webPage =~ 'so.addVariable.*file.*'
def linkParts = matcher[0].toString().split("'")
def videoUrl = linkParts[3]
return new ContentURLContainer(fileType: MediaFileType.VIDEO, contentUrl: videoUrl)
}
/* Groovy test method */
static void main(args) {
delfitvUrlExtractor extractor = new delfitvUrlExtractor()
assert extractor.extractorMatches( new URL("http://tv.delfi.lt/feed/rss"))
Map links = ['default': new URL("http://ytv.delfi.lt")]
ContentURLContainer result = extractor.extractUrl(links, PreferredQuality.MEDIUM)
println "Result: $result"
}
}
I do not understand where my mistake. Help write a working plugin. Then try to understand how it works.
Thanks.