MiraiForum

    • 注册
    • 登录
    • 搜索
    • 热门
    • 最新
    • 未解决
    • 标签
    • 群组
    • 友情链接
    1. 主页
    2. cssxsh
    3. 最佳
    • 资料
    • 关注 0
    • 粉丝 128
    • 主题 61
    • 帖子 2101
    • 最佳 158
    • 有争议的 0
    • 群组 2

    cssxsh 发布的最佳帖子

    • mirai-console 插件使用 Hibernate-JPA 的 方式 调用数据库

      JPA是Java Persistence API的简称,中文名Java持久层API,
      可以通过 注解或XML描述对象-关系表的映射关系。

      简单来说,你声明了一个实体类,可以通过注解的方式,实现

      • 将注解类和数据库中是数据表关联,一一对应
      • 将实体类的属性和数据列关联,一一对应
      • 将实体类和实体类关联,外键

      以上功能 sql 将会自动生成,而不需要手写 sql 。

      jpa 这种方式有利有弊。相对于 mybatis 来说,隐去了维护 sql 的麻烦,方便支持多数据库平台,
      缺点是性能差,不利于像 mybatis 一样可以通过插件拓展功能。
      但是一般来说,mirai-console 插件 并不需要过多关注数据库性能。

      可作为前置插件的成品,带有一个消息记录器持久化消息到数据库
      https://github.com/cssxsh/mirai-hibernate-plugin

      首先在 dependencies 中加入相关依赖
      从我的前置插件中获得

      dependencies {
          implementation("xyz.cssxsh.mirai:mirai-hibernate-plugin:2.4.4")
      }
      
      mirai {
          jvmTarget = JavaVersion.VERSION_11
      }
      

      或者你可以从原始库中获得

      
      dependencies {
      
          // SQL/ORM 
      
          api("org.hibernate.orm:hibernate-core:6.1.3.Final")
      
          api("org.hibernate.orm:hibernate-hikaricp:6.1.3.Final")
      
          api("org.hibernate.orm:hibernate-community-dialects:6.1.3.Final")
      
          // 连接池
      
          api("com.zaxxer:HikariCP:5.0.1")
      
          // 数据库驱动
      
          api("com.h2database:h2:2.1.214")
      
          api("org.xerial:sqlite-jdbc:3.39.3.0")
      
          api("mysql:mysql-connector-java:8.0.30")
      
          api("org.postgresql:postgresql:42.5.0")  
      
      
      
          testImplementation(kotlin("test"))
      
          testImplementation("org.slf4j:slf4j-simple:2.0.0")
      
          testImplementation("net.mamoe:mirai-logging-slf4j:2.12.3")
      
          testImplementation("net.mamoe:mirai-core-utils:2.12.3")
      
      }
      
      
      
      mirai {
      
          jvmTarget = JavaVersion.VERSION_11
      
      }
      
      
      发布在 技术交流板块
      cssxsh
      cssxsh
    • RE: 版本过低问题 code=45

      换一个协议
      比如 MACOS

      发布在 BUG反馈
      cssxsh
      cssxsh
    • RE: 无法登录的临时处理方案

      @河被被被人
      https://github.com/iTXTech/mirai-native/issues/167#issuecomment-1304617220

      里面有临时修复版

      InoryS created this issue in iTXTech/mirai-native

      closed 不支持 mirai 2.13.0 #167

      发布在 官方公告
      cssxsh
      cssxsh
    • 使用 Termux 简单的在安卓手机上 运行 Mirai

      https://github.com/termux/termux-app

      一个在安卓手机上模拟 Linux 终端的软件

      首先 你需要一个 Android 7.0 以上版本的安卓手机
      (低于此版本的也可以, 但是我没空整一个低版本的教程)

      到
      https://f-droid.org/zh_Hans/packages/com.termux/
      下滑, 下载最新版本的构建, 现在是 com.termux_118.apk
      735abf05-3f2d-474d-bdec-cdeb4eb7d28b-image.png

      1. termux-change-repo
        先修改源保证后面的操作通畅
        第一个选项直接选择 OK (回车)
        第二个选项修改源为国内源
        选择 Mirrors in ChinaAll in China 选项 (上下切换后 使用空格选中) , 然后 OK (回车)

      2. pkg update
        因为是刚安装, 所以需要先拉取(查询)最新的包版本信息

      3. pkg install openjdk-17
        安装 Java 17

      4. java -version
        查看是否安装成功
        如果是, 就会出现 openjdk version "17-internal" ....

      5. pkg install wget
        安装 wget 需要 他来下载 MCL

      6. wget https://github.com/iTXTech/mirai-console-loader/releases/download/v2.1.2/mcl-2.1.2.zip
        下载最新版 MCL (现在是 2.1.2)

      7. unzip mcl-2.1.2.zip -d mcl
        解压到文件夹 mcl

      8. cd mcl
        进入下载文件夹,
        你可以使用 ls -l 查看一下文件夹里目前有那些文件

      9. chmod 777 mcl
        把启动脚本调整为可以运行

      10. ./mcl -u
        启动 MCL

      发布在 技术交流板块
      cssxsh
      cssxsh
    • RE: mirai更新至2.13.2后登录qq不接收消息

      https://github.com/mamoe/mirai/issues/2418

      你这个都没登陆成功

      disymayufei created this issue in mamoe/mirai

      closed 尝试登录账号时,出现net.mamoe.mirai.internal.utils.crypto.DecryptionFailedException错误 #2418

      发布在 BUG反馈
      cssxsh
      cssxsh
    • 协议问题汇报

      请按照以下格式提交你遇到的问题

      不要截图
      不要截图
      不要截图

      日志文件在 logs 文件夹,自行翻阅提取信息

      不符合本贴主题 及 格式不对 或者 必要信息不足 的回复将会被删除

      1. mirai 版本
        例如下面日志里的 2.15.0-dev-98
      ===============================[ Mirai console 2.15.0-dev-98 ]================================
       __       __ __                   __  ______                                      __
      |  \     /  \  \                 |  \/      \                                    |  \
      | ▓▓\   /  ▓▓\▓▓ ______   ______  \▓▓  ▓▓▓▓▓▓\ ______  _______   _______  ______ | ▓▓ ______
      | ▓▓▓\ /  ▓▓▓  \/      \ |      \|  \ ▓▓   \▓▓/      \|       \ /       \/      \| ▓▓/      \
      | ▓▓▓▓\  ▓▓▓▓ ▓▓  ▓▓▓▓▓▓\ \▓▓▓▓▓▓\ ▓▓ ▓▓     |  ▓▓▓▓▓▓\ ▓▓▓▓▓▓▓\  ▓▓▓▓▓▓▓  ▓▓▓▓▓▓\ ▓▓  ▓▓▓▓▓▓\
      | ▓▓\▓▓ ▓▓ ▓▓ ▓▓ ▓▓   \▓▓/      ▓▓ ▓▓ ▓▓   __| ▓▓  | ▓▓ ▓▓  | ▓▓\▓▓    \| ▓▓  | ▓▓ ▓▓ ▓▓    ▓▓
      | ▓▓ \▓▓▓| ▓▓ ▓▓ ▓▓     |  ▓▓▓▓▓▓▓ ▓▓ ▓▓__/  \ ▓▓__/ ▓▓ ▓▓  | ▓▓_\▓▓▓▓▓▓\ ▓▓__/ ▓▓ ▓▓ ▓▓▓▓▓▓▓▓
      | ▓▓  \▓ | ▓▓ ▓▓ ▓▓      \▓▓    ▓▓ ▓▓\▓▓    ▓▓\▓▓    ▓▓ ▓▓  | ▓▓       ▓▓\▓▓    ▓▓ ▓▓\▓▓     \
       \▓▓      \▓▓\▓▓\▓▓       \▓▓▓▓▓▓▓\▓▓ \▓▓▓▓▓▓  \▓▓▓▓▓▓ \▓▓   \▓▓\▓▓▓▓▓▓▓  \▓▓▓▓▓▓ \▓▓ \▓▓▓▓▓▓▓
      
      
      2023-06-15 11:05:20 I/main: Backend: version 2.15.0-dev-98, built on 2023-06-04 07:47:48.
      2023-06-15 11:05:20 I/main: Frontend Terminal: version 2.15.0-dev-98, provided by Mamoe Technologies
      
      1. 协议版本信息
        例如下面日志 ,如果你没有安装 fix-protocol-version 可以不提交
      2023-06-15 11:06:05 I/fix-protocol-version: 当前各协议版本日期: 
      ANDROID_PHONE  8.9.58.11170  2023-05-19T11:35+08:00
      ANDROID_PAD    8.8.88.7083   2022-03-23T11:01:55+08:00
      ANDROID_WATCH  2.0.8         2019-06-03T20:25:31+08:00
      IPAD           8.9.33.614    2021-12-31T11:36:26+08:00
      MACOS          6.7.9         1970-01-01T08:00+08:00
      
      1. 登录方式及使用的协议
        密码登录(ANDROID_PAD) / 扫码登录(ANDROID_WATCH)

      2. 出现的问题
        举例:

      • 登录不上,日志为 xxxx
      • 消息发不出去,消息类型为群聊/私聊
      发布在 官方公告
      cssxsh
      cssxsh
    • RE: Arknights Helper / 明日方舟 助手,更新订阅的微博号配置项

      @narumi
      正常来说即使 时间不对 也会按照 id 进行历史过滤
      我可能需要优化一下过滤器

      发布在 插件发布
      cssxsh
      cssxsh
    • RE: 怎么查看或知道对于插件权限的作用

      @1926144593

      一般来说

      command.xxx 结尾的权限对应 xxx 命令

      带 * 号的权限是泛指

      发布在 技术交流板块
      cssxsh
      cssxsh
    • RE: 无法登录qq code=45 修改协议也无法登录

      @jie-e

      要的是 mirai 版本,不是mcl版本
      你给错版本信息了

      发布在 BUG反馈
      cssxsh
      cssxsh
    • RE: 天网开发组,非官方开发交流群

      没新人了,顶一顶

      发布在 摸鱼区
      cssxsh
      cssxsh
    • RE: 机器人自己发送的消息,MessageEvent事件监听不到

      MessagePostSendEvent.receipt.source

      发布在 BUG反馈
      cssxsh
      cssxsh
    • Mirai Selenium Plugin,前置插件,用于使用Selenium调用浏览器进行截图等操作

      Mirai Selenium Plugin

      Mirai Selenium 前置插件

      Mirai-Console的前置插件,用于使用Selenium调用浏览器进行截图等

      maven-central

      运行平台支持

      OS Browser Support
      Windows Chrome Yes
      Windows Firefox Yes
      Windows Edge Yes
      Linux Chrome Yes
      Linux Firefox Yes
      MacOS Chrome Test
      MacOS Firefox Test

      在插件项目中引用

      repositories {
          mavenCentral()
      }
      
      dependencies {
          compileOnly("xyz.cssxsh.mirai:mirai-selenium-plugin:${version}")
      }
      

      示例代码

      • kotlin

      使用本前置插件的项目

      • BiliBili Helper

      配置

      MiraiSeleniumConfig.yml

      • user_agent 截图UA
      • width 截图宽度
      • height 截图高度
      • pixel_ratio 截图像素比
      • headless 无头模式(后台模式)
      • proxy 代理地址
      • log 启用日志文件
      • browser 指定使用的浏览器: Chrome,Firefox,Edge
      • factory 指定使用的Factory: ktor,netty

      安装

      MCL 指令安装

      ./mcl --update-package xyz.cssxsh.mirai:mirai-selenium-plugin --channel stable --type plugin

      手动安装

      1. 运行 Mirai Console 生成plugins文件夹
      2. 从 Releases 下载jar并将其放入plugins文件夹中
      发布在 插件发布
      cssxsh
      cssxsh
    • Pixiv Helper 插件跑路拉

      跑路停更,以上

      发布在 摸鱼区
      cssxsh
      cssxsh
    • RE: mcl如何升级到2.15?

      首先
      mcl 是 https://github.com/iTXTech/mirai-console-loader 最新版是 2.1.2
      其次 mirai/mirai-console 是 https://github.com/mamoe/mirai 最新正式版是 2.14.0 最新测试版是 2.15.0-M1

      升级 mirai 版本可以看这个
      https://mirai.mamoe.net/topic/2061

      另外2.15.0-M1还没有提供内置的扫码登录指令,可以看这个
      https://mirai.mamoe.net/topic/2134

      发布在 BUG反馈
      cssxsh
      cssxsh
    • RE: Weibo Helper 一个简单的将微博转发到QQ的插件

      @mous
      是否有关闭mirai的行为,
      如果有的话,请使用/stop命令正常关闭
      不然的话,cookie保存可能出现异常

      发布在 插件发布
      cssxsh
      cssxsh
    • RE: 有大佬能提供个碧蓝档案的插件吗,求求了

      你这没问题阿
      很正常阿
      slf4j 那个报错不用理会,不影响运行的

      发布在 摸鱼区
      cssxsh
      cssxsh
    • RE: code=238,使用二维码登录这个怎么解决?

      autologin 是密码登录,不是你所描述的二维码扫码登录

      发布在 BUG反馈
      cssxsh
      cssxsh
    • Hibernate 前置插件,ORM 数据库框架,群/好友消息记录

      Mirai Hibernate Plugin

      Mirai Hibernate 前置插件

      Mirai Console 的前置插件,用于 Hibernate ORM 框架的初始化

      maven-central

      插件自带聊天记录器 MiraiHibernateRecorder,
      会记录 群聊/私聊 的内容到数据库方便其他插件使用,默认是 h2database 数据库(since 2.2.0+)
      数据库配置在 config/xyz.cssxsh.mirai.plugin.mirai-hibernate-plugin/hibernate.properties
      2.2.0 之前的版本的 默认数据库 为 sqlite, 你可以直接删掉 hibernate.properties, 让其重新生成 h2database 配置

      数据库支持

      本插件打包了以下版本的数据库驱动和连接池

      • mysql:mysql-connector-java:8.0.29
      • org.xerial:sqlite-jdbc:3.36.0.3
      • org.postgresql:postgresql:42.3.5
      • com.h2database:h2:2.1.212
      • com.zaxxer:HikariCP:5.0.1

      需要其他数据库驱动支持请将 数据库驱动Jar包 放到 plugins 目录中一同被 mirai-console 加载

      在插件项目中引用

      repositories {
          mavenCentral()
      }
      
      dependencies {
          compileOnly("xyz.cssxsh.mirai:mirai-hibernate-plugin:${version}")
      }
      

      一些方法和类说明

      • MiraiHibernateConfiguration
        配置的,对应于 JvmPlugin 的 SessionFactory
        默认将会读取(生成)在 configFolder 目录下的 hibernate.properties 作为配置文件
        并且自动扫描加载 JvmPlugin 所在类包下的被 javax.persistence.Entity 标记的实体类

      • MiraiHibernateRecorder
        是本插件自带的消息记录器,通过对 MessageEvent 和 MessagePostSendEvent 记录,保存消息历史到数据库

      • CriteriaBuilder.rand
        MiraiHibernateConfiguration 中会对 Sqlite 的 random 进行别名注册为 rand 统一SQL语句的中的随机函数名

      示例代码

      • kotlin

      安装

      MCL 指令安装

      ./mcl --update-package xyz.cssxsh.mirai:mirai-hibernate-plugin --channel stable --type plugin

      手动安装

      1. 运行 Mirai Console 生成plugins文件夹
      2. 从 Releases 下载jar并将其放入plugins文件夹中
      发布在 插件发布
      cssxsh
      cssxsh
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 3 / 8