如何在dreambox的启动/启动时运行我的基于enigma2的插件?

时间:2013-08-13 05:32:21

标签: python linux startup enigma2

我在enigma2中为dreambox开发了插件。我使用过这个东西

def Plugins(**kwargs):

    return PluginDescriptor(
           name="01loginscreendemo",
           description="loginScreenDemo ",
           where = PluginDescriptor.WHERE_PLUGINMENU,
           icon="../images.jpg",
           fnc=main)

所以它在插件菜单上显示我的插件。

是否可以在启动时运行插件?怎么样?

2 个答案:

答案 0 :(得分:1)

def autostart(reason, **kwargs):
         print "startup"



def Plugins(**kwargs):
    return [
        PluginDescriptor(
            where =  PluginDescriptor.WHERE_AUTOSTART,
            fnc = autostart),
        PluginDescriptor(
            name = "esprit 2",
            description = "Test Plugit 2",
            where = PluginDescriptor.WHERE_AUTOSTART,
            icon = "../ihad_tut.png",
            fnc = main)]

答案 1 :(得分:0)

from Plugins.Plugin import PluginDescriptor

def autoStart(reason, **kwargs):                           # starts DURING the Enigma2 booting
    if reason == 0:    # and kwargs.has_key('session'):
        print('PLUGINSTARTDEBUGLOG - autoStart executed , reason == 0 , kwargs.has_key("session") = %s' % kwargs.has_key("session")  )
    if reason == 1:
        print('PLUGINSTARTDEBUGLOG - autoStart executed , reason == 1 , kwargs.has_key("session") = %s' % kwargs.has_key("session")  )

def mainStart(session, **kwargs):                          # starts when the plugin is opened via Plugin-MENU
    print('PLUGINSTARTDEBUGLOG - mainStart executed , kwargs.has_key("session") = %s' % kwargs.has_key("session")  )

def sessionStart(reason, session):                         # starts AFTER the Enigma2 booting
    if reason == 0:
        print('PLUGINSTARTDEBUGLOG - sessionStart executed, reason == 0')
    if reason == 1:
        print('PLUGINSTARTDEBUGLOG - sessionStart executed, reason == 1')

def Plugins(**kwargs):
    """ Register plugin in the plugin menu and prepare the plugin with autostart """
    return [
        PluginDescriptor(
            where = PluginDescriptor.WHERE_AUTOSTART,      # starts DURING the Enigma2 booting
            #where = [PluginDescriptor.WHERE_AUTOSTART , PluginDescriptor.WHERE_SESSIONSTART],
            fnc = autoStart),
        PluginDescriptor(
            where = PluginDescriptor.WHERE_SESSIONSTART,   # starts AFTER the Enigma2 booting
            fnc = sessionStart),
        PluginDescriptor(
            where = PluginDescriptor.WHERE_PLUGINMENU,     # starts when the plugin is opened via Plugin-MENU
            name = "picons updater",
            description = "picon updater for OE2.0",
            icon = "images/plugin.png",
            fnc = mainStart)
        ]