java.lang.Object
org.miaixz.bus.starter.notify.NotifyService
通知服务提供类,用于管理和创建各种消息通知服务提供者实例。 该类维护了一个通知组件的缓存,支持通过配置或手动注册方式添加通知组件。
该类支持多种消息通知方式,包括但不限于:
- 短信服务:阿里云、腾讯云、华为云、百度云、网易云、七牛云等
- 邮件服务:阿里云邮件、通用邮件
- 企业通讯:钉钉、企业微信
- 微信通知:公众号、小程序、客服消息等
使用示例:
// 创建配置
NotifyProperties properties = new NotifyProperties();
// 创建服务
NotifyProviderService service = new NotifyProviderService(properties);
// 获取阿里云短信服务提供者
Provider smsProvider = service.require(Registry.ALIYUN_SMS);
// 发送短信
smsProvider.send("手机号", "短信内容");
- Since:
- Java 17+
- Author:
- Justubborn
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
properties
通知配置属性,包含各种通知组件的配置信息。
-
-
Constructor Details
-
NotifyService
使用指定的配置属性创建通知服务提供者实例。- Parameters:
properties- 通知配置属性,不能为null
-
-
Method Details
-
register
public static void register(org.miaixz.bus.notify.Registry registry, org.miaixz.bus.notify.Context context) 注册通知组件到缓存中。 如果已存在相同类型的组件,则抛出异常。- Parameters:
registry- 通知组件类型,不能为nullcontext- 通知组件上下文,不能为null- Throws:
org.miaixz.bus.core.lang.exception.InternalException- 如果已存在相同类型的组件
-
require
public org.miaixz.bus.notify.Provider require(org.miaixz.bus.notify.Registry registry) 根据通知组件类型获取对应的通知服务提供者实例。 首先从缓存中查找,如果不存在则从配置中获取。- Parameters:
registry- 通知组件类型,不能为null- Returns:
- 对应的通知服务提供者实例
- Throws:
org.miaixz.bus.core.lang.exception.InternalException- 如果找不到对应的通知组件
-