Files
bot-on-anything/channel/channel_factory.py
2023-03-07 01:30:10 +08:00

50 lines
1.5 KiB
Python

"""
channel factory
"""
from common import const
def create_channel(channel_type):
"""
create a channel instance
:param channel_type: channel type code
:return: channel instance
"""
if channel_type== const.TERMINAL:
from channel.terminal.terminal_channel import TerminalChannel
return TerminalChannel()
if channel_type == const.WECHAT:
from channel.wechat.wechat_channel import WechatChannel
return WechatChannel()
elif channel_type == const.WECHAT_MP:
from channel.wechat.wechat_mp_channel import WechatSubsribeAccount
return WechatSubsribeAccount()
elif channel_type == const.WECHAT_MP_SERVICE:
from channel.wechat.wechat_mp_service_channel import WechatServiceAccount
return WechatServiceAccount()
elif channel_type == const.QQ:
from channel.qq.qq_channel import QQChannel
return QQChannel()
elif channel_type == const.GMAIL:
from channel.gmail.gmail_channel import GmailChannel
return GmailChannel()
elif channel_type == const.TELEGRAM:
from channel.telegram.telegram_channel import TelegramChannel
return TelegramChannel()
elif channel_type == const.SLACK:
from channel.slack.slack_channel import SlackChannel
return SlackChannel()
elif channel_type == const.HTTP:
from channel.http.http_channel import HttpChannel
return HttpChannel()
else:
raise RuntimeError