Mirai.Net Versions Save

Mirai.Net是基于mirai-api-http实现的轻量级mirai社区sdk。

2.4.9

11 months ago

更新了什么

  • ForwardMessage增加了Display属性 @Mliybs
  • 添加了两个方法获取MessageChain的 Quote 和 Source @Mliybs
  • MessageChainMessageBase添加了SerializeToMiraiCode方法 可以转换为Mirai码 @Mliybs
  • 重载了MessageChain的相等运算符和不等运算符 @Mliybs

我什么也没有做

2.4.8

1 year ago

加入了什么?

  • GroupManager加入了对群公告进行操作的能力. 调用 GetGroupAnnouncement(Async)获取群公告 PublishGroupAnnouncement(Async)发布群公告 DeleteGroupAnnouncement(Async)删除群公告 #60 #63

修复了什么

  • 更新了GroupManager 内不合适的api文档

2.4.7

1 year ago

加入了什么?

  • 添加了FriendSyncMessageReceiver, GroupSyncMessageReceiver, TempSyncMessageReceiver来支持获取同步消息, 可以使用这些类得知消息是否已经成功发送 #61 #62
  • MessageManager加入了 GetRoamingMessages(Async)来支持获取好友漫游消息 #62

修复了什么

  • 修复了一些文档的注释

2.4.6

1 year ago

加入了什么?

  • 加入了 SubscribeGroupMessage(Async)SubscribeFriendMessage(Async)四个IObservable<MessageReceiverBase>的拓展方法,比如,现在无需使用bot.MessageReceived.OfType<GroupMessageReceiver>.Subscribe而是直接使用bot.MessageReceived.SubscribeGroupMessageAsync
  • string也可以直接隐式转化为MessageChain
  • ForwardMessage添加了静态方法FromChains来更加方便地构造一条转发消息 #47

修复了什么

  • 适配 mirai-api-http-v2.6.2
  • 修复了发送图片失败的问题 #56
  • 修复了模块化系统的开启/关闭功能不生效的问题 #49
  • 修复了一些模棱两可的参数命名 #48
  • 删除了一些意义不明的属性
  • 删除了一些老旧的遗留方法

2.4.4

1 year ago

修复了上个版本不彻底的改动,增加了Unknown枚举以用于未知类型。

2.4.3

1 year ago

有什么新变化?

  • 引入了UnknownMessageUnknownEvent以及UnknownReceiver,用来表示Mirai.NET中没有进行适配的mirai-api-http返回。它们都共有一个属性RawJson,可供进行手动解析。

2.4.2

2 years ago
  • 这个版本仅仅修复了 #42
  • 更新了Flurl.Http依赖

2.4.1

2 years ago

增加了ConnectConfig来配置连接,它可以被隐式地和字符串进行互转 #41

以前你这样初始化一个MiraiBot对象:

var bot = new MiraiBot
{
    Address = "localhost:8080",
    VerifyKey = "xx",
    QQ = "xx"
};

现在你可以这样了:

var bot = new MiraiBot
{
    Address = new ConnectConfig
    {
        HttpAddress = new ConnectConfig.AdapterConfig("localhost", "8080"), //或者直接使用字符串,AdapterConfig同样可以和字符串隐式互转
        WebsocketAddress = new ConnectConfig.AdapterConfig("localhost", "1234")
    },
    VerifyKey = "xx",
    QQ = "xx"
};

增加了Bot模板

pending

2.4.0

2 years ago

更新了什么

  • data命名空间下整体使用record来替代class #40
  • AtMessage添加了参数为Member的构造器 #38
  • 添加了延迟操作工具类DispatchUtils,所以现在可以实现延迟撤回消息和延迟发送消息了 #30 #37

内部更改

  • MiraiBot类进行了重构,让它更容易维护了
  • 修改一些不必要公开的类的修饰符为internal
  • 修复了主项目内的所有警告
  • 更新了一些依赖的版本

2.4.0-RC1

2 years ago

2.4.0-Release Candidate 1

这个版本更新了很多东西,同时保持部分旧有兼容性,非常推荐更新

从这个版本开始,更新日志将会变得尽可能详细。

修复了什么?

  • Mirai.Net.Data下所有类型都有注释了,甚至包括你看不见也用不到的空构造器。
  • GetModules方法添加了约束
  • 隐藏了AtMessage中无用的Display属性 #19
  • 删除了冗余的以及历史残留的类型

什么改名了?

  • 各种xxMessageReceiver中,NameId等属性被具体地改为例如GroupNameFriendId的形式
  • ModuleScaffold中的SubscribeModule被改为更合理的Raise

全新的处理请求事件的方式 #32 & #31

现在,你可以完全摒弃那堆麻烦的枚举和管理器,只需这样处理请求(不管是好友请求,邀请入群请求还是申请入群请求都是如此):


bot.EventReceived
    .OfType<NewMemberRequestedEvent>()
    .Subscribe(async e =>
{
    
    await e.ApproveAsync();
    //await e.RejectAsync();
    //await e.DismissAsync();
    //await e.DismissAndBlockAsync();
    //await e.DismissAndBlockAsync();
});

发送和构造消息的奇技淫巧

比起上个版本,更进一步地,你现在可以直接调用MessageChainSendToAsync来发送它。并且,就像,你现在可以像1+1那样地构造一条消息链。


bot.MessageReceived.OfType<GroupMessageReceiver>()
    .Subscribe(async receiver =>
    {
        //构造消息链
        MessageChain chain = new MessageChainBuilder().At("114514").Plain("1919810").Build()
        //运算符"+"被重载了
        chain += new ImageMessage { Path = "獣と化した先辈.jpg" };
        chain += chain;
        //发送消息
        await chain.SendToAsync(receiver);
    });