Unsupported protocol(plugin) errors

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
bossanova808 Offline
Donor
Posts: 2,180
Joined: Sep 2009
Reputation: 32
Location: Melbourne, Australia
Post: #1
My plugin is generating a crap load of these:

Code:
21:01:07 T:3444 WARNING: XFILE::CFileFactory::CreateLoader - Unsupported protocol(plugin) in plugin://plugin.program.xsqueezechooser/folder.jpg?url=&mode=1&name=New+Music+%28latest+50+albums%29&album=&artist=&artistID=&genreID=&year=

...note my plugin is an odd one in that it doesn't actually pass any media to XBMC as such, it actually triggers event on a external music player...hence the perhaps funky parameters.

Is there anything I can do to stop these errors being triggered as they make for a messy log....

My XBMC stuff:
(This post was last modified: 2012-05-10 13:22 by bossanova808.)
find quote
spiff Offline
Retired Developer
Posts: 12,386
Joined: Nov 2003
Post: #2
only fixable through c++.
find quote
bossanova808 Offline
Donor
Posts: 2,180
Joined: Sep 2009
Reputation: 32
Location: Melbourne, Australia
Post: #3
Ok well log spew it is then! Smile

My XBMC stuff:
find quote
Bstrdsmkr Offline
Posting Freak
Posts: 803
Joined: Oct 2010
Reputation: 17
Post: #4
Create it as a folder, in the function that it directs to, execute your external code, then use Container.Update to redraw the items. That seems like it should work
find quote
bossanova808 Offline
Donor
Posts: 2,180
Joined: Sep 2009
Reputation: 32
Location: Melbourne, Australia
Post: #5
I am not sure I follow to be honest....I do currently at the items raising this error as a folder item..and the handler for this mode (when these things are clicked) - then exectues the external stuff and adds some non folder nodes to indicate what has happened....

But it seems like adding any node using the sys.argv[0] reference raises the error as that uses plugin:// as the protocol....which I need to do so the plugin items re-invoke the plugin when clicked, right?

My XBMC stuff:
find quote
Bstrdsmkr Offline
Posting Freak
Posts: 803
Joined: Oct 2010
Reputation: 17
Post: #6
Try creating the result nodes as folder item pointing pack to the previous level's mode handler. That should eliminate the errors above, but now the window history is jacked up and you have to hit back like 30 times to go up a level. So use Container.Update to add the nodes instead of the normal addDirectoryItem()
find quote
bossanova808 Offline
Donor
Posts: 2,180
Joined: Sep 2009
Reputation: 32
Location: Melbourne, Australia
Post: #7
Sorry, I am probably dense, but I can't see how to add a noce with Container.Update - can you post an example?

Perhaps you mean add the nodes and then call container.update to somehow fix the path? I can't find a good example of container.update's use....

My XBMC stuff:
find quote
Bstrdsmkr Offline
Posting Freak
Posts: 803
Joined: Oct 2010
Reputation: 17
Post: #8
Code:
    url = addon.build_plugin_url({'mode':'GetFilteredResults', 'section':section, 'genre':genre, 'letter':letter, 'sort':sort, 'page':index+1})
    builtin = 'Container.Update(%s)' %url
    xbmc.executebuiltin(builtin)

url should come back as something like plugin://script.video.something/?mode=GetFilteredResults&section=AZ&someparam=somevalue

When that plugin:// string is executed, it should call a function which adds the nodes to the container (as folders since you always want to add nodes after taking action)
find quote