Giter Club home page Giter Club logo

newbe.mahua.framework's Introduction

Newbe.Mahua.Framework 已于 2020 年 8 月 2 日 正式归档,源码将不再更新。

先点击一下右上角的 Star,开启隐藏功能。

GitHub last commit All Contributors

开篇一张图,功能全靠编

Newbe.Mahua.Version

FOSSA Status

你打麻花,谁疼?麻花疼。

QQ 协议实现也有不少,QQ 机器人平台有不少,这些平台大多具有不同的接口,对接开发存在巨大困难。

使用该 SDK 开发可以实现一次开发,运行于多个不同平台的绝佳体验。

SDK 提供多种可用的跨进程通信方案,开发者可以从中灵活选择自己适用的开发语言进行对接。

你只要基于 SDK 的接口开发一次,便可以将你的插件发布到所有支持的 QQ 机器人平台。

不用担心某个平台被咔嚓。

支持跨进程通行方案

名称 调用 回调 说明
HTTP http 的方式进行通信
Websocket websocket 双工通信方案,由客户程序连接到 Newbe.Mahua

调用:是指开发者的进程调用 Newbe.Mahua 的接口。

回调:是指 Newbe.Mahua 调用 开发者的进程的接口。

如果开发者有新的通信方案希望支持,不妨告知我们

支持的平台

立马开始

点击查看帮助文档 开始编写第一个 QQ 机器人。

快乐实践

我想将我的项目加在此处

使用 Python 对接 Newbe.Mahua.Plugin.Agent 插件实现各大机器人平台的 Http 接口功能,对接 QQBot Web Server 服务端实现统一各大机器人平台收发数据

版本

版本 下载量 开发版 说明
Newbe.Mahua.CQP.Asset Newbe.Mahua.CQP.Asset.Version Newbe.Mahua.CQP.Asset.Download Newbe.Mahua.CQP.Asset.Version.Pre CQP(酷 Q)实现
Newbe.Mahua.QQLight.Asset Newbe.Mahua.QQLight.Asset.Version Newbe.Mahua.QQLight.Asset.Download Newbe.Mahua.QQLight.Asset.Version.Pre QQLight 实现
Newbe.Mahua.MPQ.Asset Newbe.Mahua.MPQ.Asset.Version Newbe.Mahua.MPQ.Asset.Download Newbe.Mahua.MPQ.Asset.Version.Pre MPQ(MyPcQQ)实现
Newbe.Mahua.CleverQQ.Asset Newbe.Mahua.CleverQQ.Asset.Version Newbe.Mahua.CleverQQ.Asset.Download Newbe.Mahua.CleverQQ.Asset.Version.Pre CleverQQ 实现(已经停止维护)

Contributors

Thanks goes to these wonderful people (emoji key):

Newbe36524
Newbe36524

📖 💻 🔧 📝 💡
Traceless
Traceless

💻 🐛
kotoneme
kotoneme

💻
AllenXie
AllenXie

💻
bgli100
bgli100

💻 🐛
Q-Q
Q-Q

💻 🐛
LollipopGeneral
LollipopGeneral

💻
nbyang
nbyang

🐛
r4v3zn
r4v3zn

💡

This project follows the all-contributors specification. Contributions of any kind welcome!

说在最后面

开发本 SDK 的目的是为了促进.Net 技术的交流学习。

由本 SDK 衍生的任何产品均与本 SDK 无关!

由本 SDK 支持的 QQ 自动化管理助手平台均与本 SDK 无关!

禁止用于国家或地区法律法规所禁止的范围!

最后,但是最重要的,一定要 Star 一下!

特别感谢 Jetbrain 公司提供的 License 以支持该项目

jetbrains

License

FOSSA Status

Stargazers over time

Stargazers over time

newbe.mahua.framework's People

Contributors

allcontributors[bot] avatar allenxie888 avatar bgli100 avatar fossabot avatar imgbot[bot] avatar lollipopgeneral avatar newbe36524 avatar newde36524 avatar traceless0929 avatar xxxxbxxxxx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

newbe.mahua.framework's Issues

CQP无法发送图片

详细过程

CQP平台图片发送不出去!!!

图片发送不出去~

自动在程序的 data/image/ 复制了图片。然而消息发送出去了,图片没发送出去

如何重现

重现步骤:

_mahuaApi
                            .SendGroupMessage(context.FromGroup)
                            .img("data/image/1.jpg")
                            .Text("someText")
                            .Done();

发不出去

_mahuaApi
                            .SendGroupMessage(context.FromGroup)
                            .img("C:/1.jpg")
                            .Text("someText")
                            .Done();

也发不出去

是我的姿势不对嘛

系统参数:

  • 操作系统版本: [Windows 10 Build 14393]
  • VS版本: [VS2017]
  • CQP 5.11.14A(180531)

可以在插件中追加MahuaApi的实现

例如,CQP原生不支持获取好友列表,但是插件的作者,有办法实现这个部分的功能。
那么应当提供一种机制,使得插件的作者能够注入这部分实现。

同时在给定的位置,提示插件作者,将这部分贡献出来,放在SDK源码中。

酷Q Air 5.14 不识别插件

基本信息

Mahua 版本 : [2.1.1]
机器人平台 :[酷Q Air 5.14]

详细过程

通过 mahua.bat InstallMahua 安装后启动酷Q,点击应用管理,没有发现插件信息

测试期望

正常加载插件并运行

来点截图

1
2

系统参数:

  • 操作系统版本: [Windows 10 1803 Build 17134.984]

功能需求: CQP平台接收图片 (CQ_getImage)

基本信息

Mahua 版本 : 2.X

这个想法是不是和你的某个需求有关,说说看?

CQP平台下.cqimg文件内已经更新了如下字样
致开发者=由于消息服务器的更新,本文件中的 url 已被弃用,并将在未来被移除,请勿直接读取本文件。请更新至最新版 SDK,并使用 Api(CQ_getImage, 接收图片)读取本图片。

给出你的解决方案

实现CQ_getImage对应http api

额外信息

酷Q 打开设置中心后崩溃

详细过程

卸载了QQLight的包并换上了酷Q的包
build之后部署到酷Q上,再打开设置中心就会出现此报错.

如何重现

重现步骤:

https://github.com/TheRealKamisama/WFBot
我尝试更换成了老版本的框架,仍然是这个bug,可以直接build后测试 我不确定有没有可能是我环境的问题.

测试期望

指出错误就好了....

系统参数:

  • 操作系统版本: [Windows 10 1709]
  • VS版本: [VS 2017 15.8.7]
  • 酷Q Air 5.11.14A

错误日志

2018-11-01 23:06:15.3716 - ERROR [1]: 由ConfigurationManagerCommand命令引发了异常
EXCEPTION: System.InvalidOperationException: Handler was not found for request of type Newbe.Mahua.CQP.Commands.ConfigurationManagerCommand.
Container or service locator not configured properly or handlers not registered with your container. ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = ConfigurationManagerCommandHandler (ReflectionActivator), Services = [Newbe.Mahua.Commands.ICommandHandler`1[[Newbe.Mahua.CQP.Commands.ConfigurationManagerCommand, Newbe.Mahua.CQP, Version=1.13.0.0, Culture=neutral, PublicKeyToken=null]], MediatR.IRequestHandler`1[[Newbe.Mahua.CQP.Commands.ConfigurationManagerCommand, Newbe.Mahua.CQP, Version=1.13.0.0, Culture=neutral, PublicKeyToken=null]], Newbe.Mahua.Commands.ICommandHandler], Lifetime = Autofac.Core.Lifetime.CurrentScopeLifetime, Sharing = None, Ownership = OwnedByLifetimeScope ---> None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Newbe.Mahua.CQP.Commands.ConfigurationManagerCommandHandler' can be invoked with the available services and parameters:
Cannot resolve parameter 'Newbe.Mahua.IMahuaAdministration mahuaAdministration' of constructor 'Void .ctor(Newbe.Mahua.IMahuaAdministration, Newbe.Mahua.IMahuaApi)'. (See inner exception for details.) ---> Autofac.Core.DependencyResolutionException: None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Newbe.Mahua.CQP.Commands.ConfigurationManagerCommandHandler' can be invoked with the available services and parameters:
Cannot resolve parameter 'Newbe.Mahua.IMahuaAdministration mahuaAdministration' of constructor 'Void .ctor(Newbe.Mahua.IMahuaAdministration, Newbe.Mahua.IMahuaApi)'.
   在 Autofac.Core.Activators.Reflection.ReflectionActivator.GetValidConstructorBindings(IComponentContext context, IEnumerable`1 parameters)
   在 Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   在 Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   --- 内部异常堆栈跟踪的结尾 ---
   在 Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   在 Autofac.Core.Resolving.InstanceLookup.Execute()
   在 Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   在 Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable`1 parameters)
   在 Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   在 Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable`1 parameters, Object& instance)
   在 Autofac.ResolutionExtensions.TryResolve(IComponentContext context, Type serviceType, Object& instance)
   在 Newbe.Mahua.CrossAppDomainPluginLoader.<>c__DisplayClass5_0.<LoadPlugin>b__2(Type t)
   在 MediatR.Internal.RequestHandlerBase.GetHandler(Type requestType, SingleInstanceFactory singleInstanceFactory, Collection`1& resolveExceptions)
   --- 内部异常堆栈跟踪的结尾 ---
   在 MediatR.Internal.RequestHandlerImpl`1.GetHandler(TRequest request, CancellationToken cancellationToken, SingleInstanceFactory singleInstanceFactory)
   在 MediatR.Internal.RequestHandlerImpl`1.Handle(IRequest request, CancellationToken cancellationToken, SingleInstanceFactory singleFactory, MultiInstanceFactory multiFactory)
   在 MediatR.Mediator.Send(IRequest request, CancellationToken cancellationToken)
   在 Newbe.Mahua.Commands.CommandCenter.Handle[TCommand](TCommand command)
   在 Newbe.Mahua.Commands.ExceptionHandles.ExceptionHandleCommandCenter.Newbe.Mahua.Commands.ICommandCenter.Handle[TCommand](TCommand command) 
Stack trace: 
 <>c__DisplayClass5_0.<GetHandlerFactory>b__1 => HandlerExceptionHandler.Handle => LoggedExceptionOccuredMahuaEvent.HandleException 
=============
很抱歉,酷Q发生错误,无法继续运行。(SI2TIL)
错误模块:未知

[0xE0434352] 发生错误
EAX=0F31F580 EBX=00000005 ECX=00000005
EDX=00000000 ESI=0F31F644 EDI=00000001
EIP=75653EF2 ESP=0F31F580 EBP=0F31F5DC
CS=23 SS=2B DS=2B ES=2B FS=53 GS=2B

[KERNELBASE.dll](0x75550000)->RaiseException(0x103E90)+0x62=0x75653EF2
[clr.dll](0x0D5F0000)+0x11E9D2=0x0D70E9D2
[clr.dll](0x0D5F0000)+0x11EBD8=0x0D70EBD8
[mscorlib.ni.dll](0x78C90000)+0xCFFD25=0x7998FD25
[mscorlib.ni.dll](0x78C90000)+0x44BCB6=0x790DBCB6
[mscorlib.ni.dll](0x78C90000)+0x42919A=0x790B919A
[mscorlib.ni.dll](0x78C90000)+0x428902=0x790B8902
[mscorlib.ni.dll](0x78C90000)+0x42876A=0x790B876A
[clr.dll](0x0D5F0000)+0x16E64=0x0D606E64
[clr.dll](0x0D5F0000)+0x182F4=0x0D6082F4
[clr.dll](0x0D5F0000)+0xCE4E3=0x0D6BE4E3
[clr.dll](0x0D5F0000)+0xCD03A=0x0D6BD03A
[clr.dll](0x0D5F0000)+0xCD0A4=0x0D6BD0A4
[clr.dll](0x0D5F0000)+0xCD171=0x0D6BD171
[clr.dll](0x0D5F0000)+0x1B505=0x0D60B505
[clr.dll](0x0D5F0000)+0x1B4A7=0x0D60B4A7
[clr.dll](0x0D5F0000)+0x1B54D=0x0D60B54D
[clr.dll](0x0D5F0000)+0xCD0A4=0x0D6BD0A4
[clr.dll](0x0D5F0000)+0xCD171=0x0D6BD171
[clr.dll](0x0D5F0000)+0xCD1DF=0x0D6BD1DF
[clr.dll](0x0D5F0000)+0xCE471=0x0D6BE471
[clr.dll](0x0D5F0000)+0xCD54D=0x0D6BD54D
[clr.dll](0x0D5F0000)+0x2EDF1=0x0D61EDF1
[KERNEL32.DLL](0x74250000)->BaseThreadInitThunk(0x18630)+0x24=0x74268654
[ntdll.dll](0x77250000)->RtlGetAppContainerNamedObjectPath(0x649E0)+0x137=0x772B4B17
[ntdll.dll](0x77250000)->RtlGetAppContainerNamedObjectPath(0x649E0)+0x107=0x772B4AE7

在winserver2012上的MPQ中启用mahua插件, MPQ崩溃

基本信息

Mahua 版本 : NEWEST
机器人平台 :MPQ

详细过程

在winserver2012上无法运行mahua. 在MPQ中启用mahua插件, MPQ就会崩溃.
已按照正常的方法安装mahua, 同样的方法在win10上可以work

系统参数:

  • 操作系统版本: WinServer2012 R2
  • VS版本: NONE

错误日志
来自MPQ

在线程:Protect_分配单事件至插件中发生了一个未被处理的异常.
.在模块:D:\MPQVer20190521\Core.exe所创建的线程中发生了一个异常.线程ID=5764
.在窗口线程:中发生了一个未被处理的异常.即将尝试重启

CleverQQ 图片发送有点问题

代码如下,接到消息就自动截图再发送,图片是截成功了,就是发送有点问题

if (context.Message.Contains("屏幕截图"))
{
	System.Threading.Tasks.Task.Factory.StartNew(() =>
	{
		using (System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width, System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height))
		{
			using (System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(bitmap))
			{
				graphics.CopyFromScreen(0, 0, 0, 0, System.Windows.Forms.Screen.PrimaryScreen.Bounds.Size);
				bitmap.Save(System.Environment.CurrentDirectory + "\\screenshot.png");
			}
		}

		using (var robotSession = MahuaRobotManager.Instance.CreateSession())
		{
			var api = robotSession.MahuaApi;
			api.SendGroupMessage(context.FromGroup)
				.At(context.FromQq).Newline()
				.Image(System.Environment.CurrentDirectory + "\\screenshot.png").Done();
		}

		System.IO.File.Delete(System.Environment.CurrentDirectory + "\\screenshot.png");
	});
	return;
}

日志:
image
群里显示的消息:
image

系统参数
Win10 1809 10.0.17763.55 + Visual Studio 2017

QQLight(AmandaQQ 2.1.0)支持

AmandaQQ在今天更新到2.1.0后改名QQLight
原插件无法使用

2018-08-15 21:57:59.6814 - ERROR [1]: 引发类型为“Newbe.Mahua.NotSupportMahuaPlatformException”的异常。
EXCEPTION: Newbe.Mahua.NotSupportMahuaPlatformException: 引发类型为“Newbe.Mahua.NotSupportMahuaPlatformException”的异常。
   在 Newbe.Mahua.Internals.MahuaPlatformValueProvider.<>c.<.cctor>b__5_0()
   在 System.Lazy`1.CreateValue()
   在 System.Lazy`1.LazyInitValue()
   在 System.Lazy`1.get_Value()
   在 Newbe.Mahua.MahuaGlobal.get_CurrentPlatform()
   在 Newbe.Mahua.PluginInstanceManager.EnsureAppDomainInitialized(PluginFileInfo pluginFileInfo)
   在 Newbe.Mahua.PluginInstanceManager.GetInstance(PluginFileInfo pluginFileInfo) 
Stack trace: 
 PluginApiExporter.Information => PluginInstanceManager.GetInstance => PluginInstanceManager.GetInstance 
=============```

MahuaApi.GetGroupMemberInfo 只要调用就会随机闪退/报错/停止运行的可能性

再次实测发现只要调用就随机有bug,闪退,报错,停止运行等可能性 (eg:调用查看自己是否有管理权限)

下面分析作废

详细过程

正在尝试用用户名代替At,然后发现运行到取用户名值的时候总是闪退,经检查发现 MahuaApi.GetGroupMemberInfo 偶尔会在找不到信息后返回空值,偶尔直接报错程序退出
经过仔细排查,最后发现问题出现在 MahuaApi.GetGroupMemberInfo

如何重现

发现问题后,我立即针对 MahuaApi.GetGroupMemberInfo 进行大量测试
经过大量的反复测试,我发现出现闪退的都是使用邮箱为主qq号的qq
其他的就算不在一个群内,都不会出问题 (返回null)

//我这里使用的是从CreateSession拿到的api
            IMahuaApi api = MahuaRobotManager.Instance.CreateSession().MahuaApi;

例如:

api.GetGroupMemberInfo(667244***, 1091196***) //效果:立即闪退
image

api.GetGroupMemberInfo(667244***, 654284***) //效果:提示错误(软件非try)然后退出 image
image

测试期望

不要闪退,不要报错,安安静静的返回null就好了

来点源代码

获取用户名字的源代码:

IMahuaApi api = MahuaRobotManager.Instance.CreateSession().MahuaApi;

            GroupMemberInfo a = api.GetGroupMemberInfo(groupid, qq);
            if (a != null)
                if (a.InGroupName != "" && !a.InGroupName.Contains("<"))
                    return a.InGroupName;
                else
                    return a.NickName;
            return qq.Remove(qq.Length - 4, 3) + "***";

系统参数:

  • 操作系统版本: win10 1803 (在win7上有同样错误)

  • VS版本:vs2017

  • CQP 版本 Air 5.11.14A //PS:会不会这是CQP的原因 我没有使用其他的软件,有待调查

  • CPU Intel(R) Core(TM) i7-7700HQ @ 2.80GHz(2808 MHz)

  • 内存 Kingston DDR4 2400 8G *2

  • 硬盘 SAMSUNG SSD 970PRO (512 GB) INTEL -- SSD 600P (953 GB)

错误日志
没找到贴一些不重要的日志

该日志是没闪退成功,只是报错情况下从日志查看器中获取的
很抱歉,酷Q发生错误,无法继续运行。(W0X3E7)
错误模块:未知

[0xE0434352] 发生错误
EAX=0434F810 EBX=00000005 ECX=00000005
EDX=00000000 ESI=0434F8D0 EDI=00000001
EIP=7665DDC2 ESP=0434F810 EBP=0434F868
CS=23 SS=2B DS=2B ES=2B FS=53 GS=2B

KERNELBASE.dll->RaiseException(0x10DD60)+0x62=0x7665DDC2
clr.dll+0x155383=0x71EA5383
clr.dll+0x155588=0x71EA5588
mscorlib.ni.dll+0x42A91A=0x6F6CA91A
mscorlib.ni.dll+0x427E91=0x6F6C7E91
clr.dll+0xEC08=0x71D5EC08
clr.dll+0x16DD11=0x71EBDD11
clr.dll+0x179F93=0x71EC9F93
clr.dll+0xEFF4=0x71D5EFF4
0x0DD19D87
0x0DD1AE0D
0x0DD1AC96
0x035DDADC
CQP.dll+0x1C95A3=0x101C95A3
CQP.dll+0x1C962D=0x101C962D
CQP.dll+0x18F9A=0x10018F9A
CQP.dll+0x884A6=0x100884A6
CQP.dll+0x85FA7=0x10085FA7
CQP.dll+0x8DDE7=0x1008DDE7
ntdll.dll->RtlValidSecurityDescriptor(0x62F40)+0x11A=0x776F305A
ntdll.dll->RtlValidSecurityDescriptor(0x62F40)+0xEA=0x776F302A

额外信息

会不会这是CQP的原因 我没有使用其他的软件,有待调查

联系方式
QQ:707884072

CleverQQ(原IRQQ)对接计划开发工程师征集

CleverQQ(原IRQQ) http://www.cleverqq.cn/

是又一款采用易语言实现QQ机器人功能的机器人平台。

本框架力争做到适配更多机器人平台,为广大C#开发者带来便利。

为吸引更多开发者参与维护项目,现推出《CleverQQ(原IRQQ)对接计划》。

本计划需要吸纳更多C#开发工程师参与其中。

参与本计划基本规则如下:

  1. 每周日商定周会时间,周会内容主要围绕对接进度和对接计划进行商定,开会方式通过QQ群组(视频)进行讨论。

  2. 有意愿参加本计划的开发者,需要承担会议安排的任务,并能够尽力完成其中的内容。若遇到困难,可及时沟通,确保任务进度。框架作者将负责规划与讲解本框架开发要点。

  3. 参与本计划的开发者需缴纳 100 元人民币 作为质押金。质押金将在该对接计划发布,即发布Release版本之后,退还。若与开发过程中消极怠惰,或由于各种原因中途退出,则不予退还。

  4. 应征开发者,需要加入讨论群进行内容讨论。入群时缴纳的50元入群费用可抵扣第三点中提到的部分费用。点击链接加入群聊【Newbe.Mahua 610394020】:https://jq.qq.com/?_wv=1027&k=5RoLqdW

  5. 开发者需要熟练使用 Visual Studio 2017 作为开发工具,熟悉或对以下技术感兴趣: C# 语言、IOC、单元测试、Powershell。

  6. 所有参与本计划并缴纳质押金的开发者,将有罗列在本issue中。

CQP 插件加载失败:System.IO.FileLoadException

开发环境:Windows 10 x64 1803 (17134.112), Visual Studio 2017
部署环境:Windows 10 x64 1703 运行于 NAS
插件平台:CoolQ Air 5.11.14A

在开发机上编译并加载插件没有遇到任何问题,但是在部署机上加载时会报错崩溃。

2018-07-24 13:24:08.7024 - INFO [1]: 当前机器人平台为:Cqp 
=============
2018-07-24 13:24:08.8116 - INFO [1]: 开始加载插件 
=============
2018-07-24 13:24:08.8116 - DEBUG [1]: 
 Name: org.xyx0826.CappUtils,
 PluginApiExporterRuntimeFullpath: file:///C:/Users/User/Desktop/酷Q Air - 副本/data/tmp/capp/047885956eb3a9e8/org.xyx0826.CappUtils.dll,
 PluginEntryPointDllFullFilename: C:\Users\User\Desktop\酷Q Air - 副本\org.xyx0826.CappUtils\org.xyx0826.CappUtils.dll,
 PluginEntyPointDirectory: C:\Users\User\Desktop\酷Q Air - 副本\org.xyx0826.CappUtils, 
 PluginEntryPointConfigFullFilename: C:\Users\User\Desktop\酷Q Air - 副本\org.xyx0826.CappUtils\org.xyx0826.CappUtils.dll.config 
=============
2018-07-24 13:24:08.8116 - DEBUG [1]: 当前插件名称为org.xyx0826.CappUtils 
=============
2018-07-24 13:24:08.8116 - DEBUG [1]: 创建AppDomain进行加载插件:org.xyx0826.CappUtils 
=============
2018-07-24 13:24:08.9523 - ERROR [1]: 未能加载文件或程序集“Newbe.Mahua.PluginLoader, Version=1.10.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。不支持操作。 (异常来自 HRESULT:0x80131515)
EXCEPTION: System.IO.FileLoadException: 未能加载文件或程序集“Newbe.Mahua.PluginLoader, Version=1.10.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。不支持操作。 (异常来自 HRESULT:0x80131515)
文件名:“Newbe.Mahua.PluginLoader, Version=1.10.0.0, Culture=neutral, PublicKeyToken=null” ---> System.NotSupportedException: 尝试从一个网络位置加载程序集,在早期版本的 .NET Framework 中,这会导致对该程序集进行沙盒处理。此发行版的 .NET Framework 默认情况下不启用 CAS 策略,因此,此加载可能会很危险。如果此加载不是要对程序集进行沙盒处理,请启用 loadFromRemoteSources 开关。有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkId=155569。

   在 System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   在 System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   在 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   在 System.AppDomain.Load(AssemblyName assemblyRef)
   在 System.AppDomain.Load(AssemblyName assemblyRef)
   在 Newbe.Mahua.Domains.DomainLoader.Load()
   在 Newbe.Mahua.PluginInstanceManager.EnsureAppDomainInitialized(PluginFileInfo pluginFileInfo)
   在 Newbe.Mahua.PluginInstanceManager.GetInstance(PluginFileInfo pluginFileInfo)

 
Stack trace: 
 PluginApiExporter.AppInfo => PluginInstanceManager.GetInstance => PluginInstanceManager.GetInstance 
=============

CleverQQ clr.dll报错,http接口超时

基本信息

Mahua 版本 : [2.1.1]
机器人平台 :[CleverQQ Air Ver:8.6]

详细过程

启动CleverQQ ,http://127.0.0.1:36524/apiDoc/index.html 接口页面正常

接收消息post提交 api/v1/CleverQQ/Api_SendMsg 报错:Timeout,而QQLight可以

测试期望

[http接口正常]

系统参数:

  • 操作系统版本: [Windows 10 1803 Build 17134.984]

错误日志
c

ID:13  ʱ¼ä:22:40:19  À´Ô´:clr.dll  ÀàÐÍ:´íÎó  ÏûÏ¢:

Ä£¿é:clr.dllËù´´½¨µÄÏß³ÌÖз¢ÉúÁËÒ»¸öÒì³£
Òì³£µØÖ·:0x165C80C7
µØÖ·ËùÊôÄ£¿é:CleverQQ Air.exe
Ïß³ÌÈë¿Ú:0x5BC84520
Ï̺߳¯ÊýÃû:GetMetaDataPublicInterfaceFromInternal
Ïß³ÌID:8500
Òì³£´úÂë:0xC0000005
Òì³£ÀàÐÍ:ÄÚ´æ¶ÁÈ¡Òì³£
²Ù×÷µØÖ·:0x0


µ÷ÓÃÊ÷:
 Ä£¿é:ntdll.dll µØÖ·:0x77403B7F ·ûºÅ:RtlUnwind
  Ä£¿é:ntdll.dll µØÖ·:0x7740CD86 ·ûºÅ:KiUserExceptionDispatcher
   Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C6226
    Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C609C
     Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C5DEF
      Ä£¿é:CleverQQ Air.exe µØÖ·:0xD6E318B
       Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C5BFB
        Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C5A4E
         Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C59E3
          Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C50B8
           Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C4B83
            Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C4B1A
             Ä£¿é:CleverQQ Air.exe µØÖ·:0x154528BE
              Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C464B
               Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C458B
                Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C4522
                 Ä£¿é:CleverQQ Air.exe µØÖ·:0x15452837
                  Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C464B
                   Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C458B
                    Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C4522
                     Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C4376
                      Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C42F6
                       Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C428F
                        Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C40AC
                         Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C4003
                          Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C3F9B
                           Ä£¿é:CleverQQ Air.exe µØÖ·:0x165C3E25
                            Ä£¿é:CleverQQ Air.exe µØÖ·:0x15452699
                             Ä£¿é:CleverQQ Air.exe µØÖ·:0x15451BF6
                              Ä£¿é:CleverQQ Air.exe µØÖ·:0x1545113B
                               Ä£¿é:CleverQQ Air.exe µØÖ·:0x154510D2
                                Ä£¿é:CleverQQ Air.exe µØÖ·:0x69BDF24
                                 Ä£¿é:CleverQQ Air.exe µØÖ·:0x15450F13
                                  Ä£¿é:CleverQQ Air.exe µØÖ·:0x15450B6B
                                   Ä£¿é:CleverQQ Air.exe µØÖ·:0x15450AB2
                                    Ä£¿é:CleverQQ Air.exe µØÖ·:0x69BDA65
                                     Ä£¿é:CleverQQ Air.exe µØÖ·:0x69BADF6
                                      Ä£¿é:CleverQQ Air.exe µØÖ·:0x69BAD53
                                       Ä£¿é:CleverQQ Air.exe µØÖ·:0x69BACEA
                                        Ä£¿é:CleverQQ Air.exe µØÖ·:0x69B96ED
                                         Ä£¿é:CleverQQ Air.exe µØÖ·:0x69B8A03
                                          Ä£¿é:CleverQQ Air.exe µØÖ·:0x69B8932
                                           Ä£¿é:CleverQQ Air.exe µØÖ·:0x695D819
                                            Ä£¿é:CleverQQ Air.exe µØÖ·:0x695C8E7
                                             Ä£¿é:CleverQQ Air.exe µØÖ·:0x695C5FB
                                              Ä£¿é:CleverQQ Air.exe µØÖ·:0x695C4ED
                                               Ä£¿é:CleverQQ Air.exe µØÖ·:0x692F855
                                                Ä£¿é:CleverQQ Air.exe µØÖ·:0x692EF83
                                                 Ä£¿é:CleverQQ Air.exe µØÖ·:0x692EF1D
                                                  Ä£¿é:CleverQQ Air.exe µØÖ·:0x692E98A
                                                   Ä£¿é:CleverQQ Air.exe µØÖ·:0x692E4D3
                                                    Ä£¿é:CleverQQ Air.exe µØÖ·:0x692E46B
                                                     Ä£¿é:CleverQQ Air.exe µØÖ·:0xD6E1ABB
                                                      Ä£¿é:CleverQQ Air.exe µØÖ·:0x692BAD4
                                                       Ä£¿é:CleverQQ Air.exe µØÖ·:0x692B6E9
                                                        Ä£¿é:CleverQQ Air.exe µØÖ·:0x692B4DB
                                                         Ä£¿é:CleverQQ Air.exe µØÖ·:0x692B475
                                                          Ä£¿é:CleverQQ Air.exe µØÖ·:0x692A644
                                                           Ä£¿é:CleverQQ Air.exe µØÖ·:0x692A113
                                                            Ä£¿é:CleverQQ Air.exe µØÖ·:0x692A05F
                                                             Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA2F7FA
                                                              Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA6E444
                                                               Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA6E377
                                                                Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA2F74E
                                                                 Ä£¿é:CleverQQ Air.exe µØÖ·:0x690CF08
                                                                  Ä£¿é:CleverQQ Air.exe µØÖ·:0x690CE78
                                                                   Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA6E377
                                                                    Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA03A65
                                                                     Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA0319D
                                                                      Ä£¿é:mscorlib.ni.dll µØÖ·:0x5AA02FFB
                                                                       Ä£¿é:clr.dll µØÖ·:0x5BB022E5 ·ûºÅ:LogHelp_TerminateOnAssert
                                                                        Ä£¿é:clr.dll µØÖ·:0x5BB0B2F5 ·ûºÅ:LogHelp_NoGuiOnAssert
                                                                         Ä£¿é:clr.dll µØÖ·:0x5BBA1433 ·ûºÅ:GetMetaDataInternalInterface
                                                                          Ä£¿é:clr.dll µØÖ·:0x5BB9F686 ·ûºÅ:GetMetaDataInternalInterface
                                                                           Ä£¿é:clr.dll µØÖ·:0x5BB9F711 ·ûºÅ:GetMetaDataInternalInterface
                                                                            Ä£¿é:clr.dll µØÖ·:0x5BB9F603 ·ûºÅ:GetMetaDataInternalInterface
                                                                             Ä£¿é:clr.dll µØÖ·:0x5BB9F7F1 ·ûºÅ:GetMetaDataInternalInterface
                                                                              Ä£¿é:clr.dll µØÖ·:0x5BBA13A9 ·ûºÅ:GetMetaDataInternalInterface
                                                                               Ä£¿é:clr.dll µØÖ·:0x5BBA0054 ·ûºÅ:GetMetaDataInternalInterface
                                                                                Ä£¿é:clr.dll µØÖ·:0x5BC84577 ·ûºÅ:GetMetaDataPublicInterfaceFromInternal
                                                                                 Ä£¿é:KERNEL32.DLL µØÖ·:0x758F8494 ·ûºÅ:BaseThreadInitThunk
                                                                                  Ä£¿é:ntdll.dll µØÖ·:0x774041C8 ·ûºÅ:RtlAreBitsSet
                                                                                   Ä£¿é:ntdll.dll µØÖ·:0x77404198 ·ûºÅ:RtlAreBitsSet


ActiveMQ可以集成在本sdk中吗

项目中经常有这样的需求,比如某网站的注册,用户填写了自己的QQ号码之后,网站的QQ机器人可以给用户发送问候信息,用户注册之后触发ActiveMQ的生产者方法,往队列推送自己的QQ号码以及其他信息,然后机器人上边添加一个监听事件,消费者对生产者的数据进行处理,希望楼主可以把这部分内容集成到机器人中

CleverQQ无法响应私聊消息

基本信息

Mahua 版本 : v1.15.1
机器人平台 :CleverQQ Pro v8.9

详细过程

建立事件并注册
9_EXFIW}%LW{SIAH_$3~ETH
{5E2%O74F98SG7_6OL3W48

启动机器人平台后发送私聊消息
PGSVB1EPCEZE@IE _@9@$BC

机器人平台日志出现报错

P0RU0EKT)@6`~AZ_IOP}SJG

J2 FX6~D$6`T5AUSBX}@T90

Mahua Log里不会报错

测试期望

群消息事件没有任何问题
私聊消息理应有一样的回馈

系统参数:

  • 操作系统版本: Windows 10 Education v1809
  • VS版本: Rider 2018.3.4

在mpq平台调用GetGroupMemebersWithModel引发异常

由GetGroupMemebersWithModelApiMahuaCommand命令引发了异常
EXCEPTION: System.ArgumentNullException: 值不能为 null。
参数名: source
在 System.Linq.Enumerable.Select[TSource,TResult](IEnumerable1 source, Func2 selector)
在 Newbe.Mahua.MPQ.Apis.GetGroupMemebersWithModelApiMahuaCommandHandler.Handle(GetGroupMemebersWithModelApiMahuaCommand message)
在 MediatR.Internal.RequestHandlerImpl2.<>c__DisplayClass5_0.<GetHandlerFactory>b__1() 在 MediatR.Internal.RequestHandlerImpl2.GetPipeline(TRequest request, RequestHandlerDelegate1 invokeHandler, MultiInstanceFactory factory) 在 MediatR.Internal.RequestHandlerImpl2.Handle(IRequest1 request, CancellationToken cancellationToken, SingleInstanceFactory singleFactory, MultiInstanceFactory multiFactory) 在 MediatR.Mediator.Send[TResponse](IRequest1 request, CancellationToken cancellationToken)
在 Newbe.Mahua.Commands.CommandCenter.HandleWithResult[TCommand,TResult](TCommand command)
在 Newbe.Mahua.Commands.ExceptionHandles.ExceptionHandleCommandCenter.Newbe.Mahua.Commands.ICommandCenter.HandleWithResult[TCommand,TResult](TCommand command)
Stack trace:
<>c__DisplayClass5_0.b__1 => HandlerExceptionHandler.Handle => LoggedExceptionOccuredMahuaEvent.HandleException

5月3日酷Q上游更新以后读取DLL异常

详细过程

5月3日酷q更新以后原本正常运行的插件提示appid不合法

如何重现

重现步骤:

更新酷Q至最新版本即可重现

测试期望

[详细描述这个bug的期望]

来点截图

图片

系统参数:

  • 操作系统版本: windows server 2012 R2 standard
  • VS版本: VS2017

统一信息格式

第一次接触,如有打扰还请见谅...
看了下,链式API提供了简易关于发送的统一接口
but,似乎并没有提供关于解析的统一接口(将文本解析成IAt、IText等)

另外,感觉Mahua在某些情况下,把简单的搞复杂了?

尝试从一个网络位置加载程序集

详细过程

image

如何重现

重现步骤:

  1. 从网络下载插件, 并使用 Windows 自带解压,即可复现

测试期望

Newbe.Mahua 的 App.Config 中启用 loadFromRemoteSources
http://go.microsoft.com/fwlink/?LinkId=155569

来点截图

image

系统参数:

  • 操作系统版本: [Windows 10 Build 18334]
  • VS版本: [VS2019]

错误日志

2019-03-03 00:29:27.7174 - ERROR [1]: 未能加载文件或程序集“Newbe.Mahua.PluginLoader, Version=1.15.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。不支持操作。 (异常来自 HRESULT:0x80131515)
EXCEPTION: System.IO.FileLoadException: 未能加载文件或程序集“Newbe.Mahua.PluginLoader, Version=1.15.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。不支持操作。 (异常来自 HRESULT:0x80131515)
文件名:“Newbe.Mahua.PluginLoader, Version=1.15.0.0, Culture=neutral, PublicKeyToken=null” ---> System.NotSupportedException: 尝试从一个网络位置加载程序集,在早期版本的 .NET Framework 中,这会导致对该程序集进行沙盒处理。此发行版的 .NET Framework 默认情况下不启用 CAS 策略,因此,此加载可能会很危险。如果此加载不是要对程序集进行沙盒处理,请启用 loadFromRemoteSources 开关。有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkId=155569。

在 System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
在 System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
在 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
在 System.AppDomain.Load(AssemblyName assemblyRef)
在 System.AppDomain.Load(AssemblyName assemblyRef)
在 Newbe.Mahua.Domains.DomainLoader.Load()
在 Newbe.Mahua.PluginInstanceManager.EnsureAppDomainInitialized(PluginFileInfo pluginFileInfo)
在 Newbe.Mahua.PluginInstanceManager.GetInstance(PluginFileInfo pluginFileInfo)

额外信息

喵喵喵

发送私聊消息失败

详细过程
问题具体可以归结成这样,之前用的好好的,但是最近更新了vs2017 就异常了,但是不知道问题出在哪
[填写详细过程]
之前写的一个机器人,具体的逻辑是接受到符合条件的消息之后私聊个人,在 GroupMessageReceivedEvent 事件里边调用 _mahuaApiSendPrivateMessage方法,但是调用抛异常
如何重现

重现步骤:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

测试期望

[详细描述这个bug的期望]

来点截图
image

[有图截图]

系统参数:

  • 操作系统版本: [Microsoft Windows [版本 10.0.17134.471] ]
  • VS版本: [ VS2017 15.9.4]
    -插件版本 1.12.0
    错误日志
    Newbe.Mahua.Apis.SendPrivateMessageApiMahuaCommand is not registered in this resolver. resolver:StandardResolver

额外信息
这是我的调用信息


        private readonly IMahuaApi _mahuaApi;
        private GroupConfigEntity _groupConfigEntity;
public GroupMessageReceivedEvent(
            IMahuaApi mahuaApi)
        {
            _mahuaApi = mahuaApi;
            try
            {
                _groupConfigEntity = Tool.GetEntityFromFile("GroupConfig.json");

                // 使用浏览器打开定时任务的地址
                //  Process.Start("http://localhost:65238/hangfire/recurring");
            }
            catch
            {
                //ig
            }
        }

我也在模块里边注册了:


   private class MahuaEventsModule : Module
        {
            protected override void Load(ContainerBuilder builder)
            {
                base.Load(builder);
                // 将需要监听的事件注册,若缺少此注册,则不会调用相关的实现类
                builder.RegisterType()
                    .As();
                builder.RegisterType()
                    .As();
                builder.RegisterType().As();
            }
        }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.