Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python chatbot服务插件的模块化方法_Python_Python 3.x - Fatal编程技术网

Python chatbot服务插件的模块化方法

Python chatbot服务插件的模块化方法,python,python-3.x,Python,Python 3.x,我说的不仅仅是插件和插件加载器。 假设有一个处理所有聊天机器人逻辑的主python脚本。 我希望能够连接多个通道(服务),如电报和slack。 现在,它(微妙地)处理导入(两者都相互导入)。但这无法扩展到多个服务。每个服务调用主脚本的一个函数,主脚本调用服务脚本中的一个函数进行应答 模块/导入的类是否有办法与父级通信?我认为将逻辑层和通信层分离是个好主意。我已经找到了,但不确定它是否可用 至于我,我解决了这个问题,在flask服务器上实现逻辑,并创建“哑”机器人,将用户消息代理给flask。如果

我说的不仅仅是插件和插件加载器。 假设有一个处理所有聊天机器人逻辑的主python脚本。 我希望能够连接多个通道(服务),如电报和slack。 现在,它(微妙地)处理导入(两者都相互导入)。但这无法扩展到多个服务。每个服务调用主脚本的一个函数,主脚本调用服务脚本中的一个函数进行应答


模块/导入的类是否有办法与父级通信?

我认为将逻辑层和通信层分离是个好主意。我已经找到了,但不确定它是否可用


至于我,我解决了这个问题,在flask服务器上实现逻辑,并创建“哑”机器人,将用户消息代理给flask。如果您想使用某些特定于频道的功能(如电报中的geo),这是一件非常麻烦的事情。

您的描述非常笼统,但通常这种问题是通过继承来解决的。您创建了一个通用的
类chatbot:
,您提到的不同插件导入并继承该类:
类slackChatbot(chatbot):