Vous ne pouvez pas sélectionner plus de 25 sujets
Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
|
- """
- channel factory
- """
- from common import const
- from .channel import Channel
-
-
- def create_channel(channel_type) -> Channel:
- """
- create a channel instance
- :param channel_type: channel type code
- :return: channel instance
- """
- ch = Channel()
- if channel_type == "wx":
- from channel.wechat.wechat_channel import WechatChannel
- ch = WechatChannel()
- # elif channel_type == "wxy":
- # from channel.wechat.wechaty_channel import WechatyChannel
- # ch = WechatyChannel()
- # elif channel_type == "terminal":
- # from channel.terminal.terminal_channel import TerminalChannel
- # ch = TerminalChannel()
- # elif channel_type == "wechatmp":
- # from channel.wechatmp.wechatmp_channel import WechatMPChannel
- # ch = WechatMPChannel(passive_reply=True)
- # elif channel_type == "wechatmp_service":
- # from channel.wechatmp.wechatmp_channel import WechatMPChannel
- # ch = WechatMPChannel(passive_reply=False)
- # elif channel_type == "wechatcom_app":
- # from channel.wechatcom.wechatcomapp_channel import WechatComAppChannel
- # ch = WechatComAppChannel()
- # elif channel_type == "wework":
- # from channel.wework.wework_channel import WeworkChannel
- # ch = WeworkChannel()
- # elif channel_type == const.FEISHU:
- # from channel.feishu.feishu_channel import FeiShuChanel
- # ch = FeiShuChanel()
- # elif channel_type == const.DINGTALK:
- # from channel.dingtalk.dingtalk_channel import DingTalkChanel
- # ch = DingTalkChanel()
- else:
- raise RuntimeError
- ch.channel_type = channel_type
- return ch
|