如何让用户在范围内定义自己的插件并使其对自己可见?

时间:2013-03-26 10:26:47

标签: python flask

我正在使用烧瓶构建一个Web应用程序,它保存所有输入消息(用户发送xml消息)并找到正确的插件来响应并将响应返回给用户,该应用程序提供了基本插件,但我希望用户在我定义的apis下编写自己的插件,下面是架构:

plugins     
   common_plugins1.py
   common_plugins2.py  
templates   
actions   
myapp.py

但我遇到了几个问题:

  1. 我只希望用户调用他的插件而不是其他人,而其他插件对他来说是不可见的
  2. 我只希望用户调用我定义的已定义函数或模块
  3. 我想让它可扩展
  4. 是否可以让用户通过python上传他们的插件?并让应用程序动态加载它。

    感谢您的帮助!

    下面的

    是插件示例:

    #coding: utf-8
    import somemodule 
    from somemodule import *
    
    def do(dmessage,context,default,**option):
        import re   
        try:
            _l=default.split('%|placeholder|%')
            message=ModuleRequestVoice(dmessage)
            r=ModuleResponseMusic()
            return r.render(message,_l[0],_l[1],_l[2],_l[2])
        except Exception,e:
            print 'match voice error:%s'%e
            return False
    

0 个答案:

没有答案