forked from erp-dev/erp
18 lines
591 B
Python
18 lines
591 B
Python
from notifier.backends import JPushNotifierBackend, MessageAPINotifierBackend, WeComWebhookNotifierBackend
|
|
from notifier.models import NotifierChannelEnum
|
|
|
|
|
|
BACKEND_REGISTRY = {
|
|
NotifierChannelEnum.WECOM_WEBHOOK: WeComWebhookNotifierBackend,
|
|
NotifierChannelEnum.MESSAGE_API: MessageAPINotifierBackend,
|
|
NotifierChannelEnum.JPUSH: JPushNotifierBackend,
|
|
}
|
|
|
|
|
|
def get_notifier_backend(channel: str):
|
|
try:
|
|
backend_cls = BACKEND_REGISTRY[channel]
|
|
except KeyError as exc:
|
|
raise ValueError(f"不支持的通知渠道: {channel}") from exc
|
|
return backend_cls()
|