love.forte.simple-robot.time-task:parent

simple-robot是一个通用bot开发框架,以同一种灵活的标准来编写不同平台的bot应用。而simpler-robot便是simple-robot 2.x版本命名。

License

License

GroupId

GroupId

love.forte.simple-robot.time-task
ArtifactId

ArtifactId

parent
Last Version

Last Version

2.0.0-BETA.5
Release Date

Release Date

Type

Type

jar
Description

Description

simple-robot是一个通用bot开发框架,以同一种灵活的标准来编写不同平台的bot应用。而simpler-robot便是simple-robot 2.x版本命名。

Download parent

How to add to project

<!-- https://jarcasting.com/artifacts/love.forte.simple-robot.time-task/parent/ -->
<dependency>
    <groupId>love.forte.simple-robot.time-task</groupId>
    <artifactId>parent</artifactId>
    <version>2.0.0-BETA.5</version>
</dependency>
// https://jarcasting.com/artifacts/love.forte.simple-robot.time-task/parent/
implementation 'love.forte.simple-robot.time-task:parent:2.0.0-BETA.5'
// https://jarcasting.com/artifacts/love.forte.simple-robot.time-task/parent/
implementation ("love.forte.simple-robot.time-task:parent:2.0.0-BETA.5")
'love.forte.simple-robot.time-task:parent:jar:2.0.0-BETA.5'
<dependency org="love.forte.simple-robot.time-task" name="parent" rev="2.0.0-BETA.5">
  <artifact name="parent" type="jar" />
</dependency>
@Grapes(
@Grab(group='love.forte.simple-robot.time-task', module='parent', version='2.0.0-BETA.5')
)
libraryDependencies += "love.forte.simple-robot.time-task" % "parent" % "2.0.0-BETA.5"
[love.forte.simple-robot.time-task/parent "2.0.0-BETA.5"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

- simpler-robot -

github    |    gitee
> 感谢 CatCode 开发团队成员制作的simbot logo <
> 走过路过,不要忘记点亮一颗喔~ <

简介

这是一个通用机器人开发框架,是simple-robot(下文简称simbot)的2.x版本。

simbot 是一个JVM平台的通用机器人开发框架,基于simbot核心API并对接开发不同平台的机器人应用,你可以使用相同的代码风格来开发不同平台的机器人。

simbot 在发展过程中,很多功能的使用灵感来自于springboot,例如基础依赖注入与注解监听,并且对于一些主要组件专门提供了springboot-starter模块以方便开发者快速整合springboot(当然,如果可以,我依旧更希望你使用原生simbot环境)。

simbot 提供了丰富的api接口与各种模块以支持机器人开发者与组件开发者使用,对于机器人开发者,你可以通过功能丰富的注解来实现各种较为复杂的事件匹配逻辑。对于组件开发者,你拥有很高的可选择性与灵活性来针对一个平台进行对接。

以及更多高级特性等待你的发现...


旧版本考古 -> simple-robot 1.x

支持平台

目前支持的机器人平台:

计划中准备支持的平台:

  • QQ
    • onebot(QQ机器人通用协议)
  • TG
  • discord
  • 钉钉
    • 企业内建应用事件
    • 企业内建群BOT

文档

simpler-robot文档:https://www.yuque.com/simpler-robot/simpler-robot-doc

其他模块

simpler-robot所独立的公共模块项目:

simpler-robot所使用的特殊码CatCode:

极简示例

文档-快速开始:https://www.yuque.com/simpler-robot/simpler-robot-doc/qeyorq

监听消息

@Beans
public class TestListener {
  /** 发送一句“我收到了”,并再复读收到的所有消息 */
  @OnPrivate
  public void listen(PrivateMsg msg, MsgSender sender) {
    sender.SENDER.sendPrivateMsg(msg, "我收到了");
    sender.SENDER.sendPrivateMsg(msg, msg.getMsgContent());
  }
}

监听并筛选消息

@Beans
public class TestListener {
  /** 监听群里的 'hi! simbot' 消息并作出回应 */
  @OnGroup
  @Filter("hi! simbot")
  public void listenGroup(GroupMsg msg, MsgSender sender) {
    // 获取发消息的人的账号
    String accountCode = m.getAccountInfo().getAccountCode();
    // 准备at这个人的CatCode
    String at = CatCodeUtil.INSTANCE.getStringTemplate().at(accountCode);
    // 发送消息
    sender.SENDER.sendGroupMsg(m, at + " 我在哦");
  }
}

@Beans
public class TestListener {
  /** 通过依赖注入得到消息构建器工厂。 */  
  @Depend
  private MessageContentBuilderFactory builderFactory;
  
  /** 监听群里的 'hi! simbot' 消息并作出回应 */
  @OnGroup
  @Filter("hi! simbot")
  public void listenGroup(GroupMsg msg, MsgSender sender){
    // 获取发消息的人的账号
    String accountCode = msg.getAccountInfo().getAccountCode();
    // 获取消息构建器
    MessageContentBuilder builder = builderFactory.getMessageContentBuilder();
    // 构建消息实例
    MessageContent msgContent = builder.at(accountCode).text(" 我在哦").build();
    // 发送消息
    sender.SENDER.sendGroupMsg(msg, msgContent);
  }
}

协助我

  • 你可以通过 pr 为项目代码作出贡献。
  • 你可以通过 issue 提出一个建议或者反馈一个问题。
  • 你可以通过 讨论区 与其他人或者simbot开发团队相互友好交流。
  • 如果你通过此项目创建了一个很酷的项目,欢迎通过 issue讨论区QQ群寻找群主 等方式联系团队开发人员,并将你酷酷的项目展示在作品展示区。

捐助我

如果你喜欢这个项目,不妨试着 捐助 一下我们,十分感谢。

特别鸣谢

感谢 jetbrains 为团队提供的免费 IntelliJ IDEA 授权,也希望大家能够支持IDEA,支持正版。

Versions

Version
2.0.0-BETA.5