69 lines
2.4 KiB
C#
69 lines
2.4 KiB
C#
using Api.Framework.SDK;
|
|
using Chat.Framework.WXSdk;
|
|
using Chat.Framework.WXSdk.Implement;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using CsharpHttpHelper;
|
|
namespace 群成员监控
|
|
{
|
|
public class Class1:Plugin
|
|
{
|
|
public Class1()
|
|
{
|
|
this.Name = "群成员监控";
|
|
}
|
|
public override void Start()
|
|
{
|
|
SDK.WXNewMemerEvent += SDK_WXNewMemerEvent;
|
|
SDK.WXReceiveGroupMsgEvent += SDK_WXReceiveGroupMsgEvent;
|
|
base.Start();
|
|
}
|
|
|
|
private void SDK_WXReceiveGroupMsgEvent(object sender, Chat.Framework.WXSdk.Events.WXReceiveGroupMsg e)
|
|
{
|
|
if (e.Message.Contains("邀请朋友进群"))
|
|
{
|
|
Upload(e.Group.UserName, e.Client);
|
|
}
|
|
}
|
|
|
|
private void SDK_WXNewMemerEvent(object sender, Chat.Framework.WXSdk.Events.WXNewMemer e)
|
|
{
|
|
Upload(e.GroupId,e.Client);
|
|
}
|
|
|
|
private void Upload(string groupid, WeixinBase client)
|
|
{
|
|
Task.Run(()=> {
|
|
try
|
|
{
|
|
System.Threading.Thread.Sleep(5000);
|
|
GroupMember[] Members = client.GetMembers(groupid, true);
|
|
if (Members != null && Members.Length != 0)
|
|
{
|
|
var members = new List<object>();
|
|
foreach (var item in Members) members.Add(new { username = item.Username, nickname = item.NickName, logo = item.SmallHeadImgUrl, invitername = item.InviterUserName });
|
|
var obj = new { groupid = groupid, members = members };
|
|
var http = new CsharpHttpHelper.HttpHelper();
|
|
|
|
var data = Convert.ToBase64String(Encoding.UTF8.GetBytes(HttpHelper.ObjectToJson(obj)));
|
|
var x = http.GetItem("http://www.xindaogou.net/Create/UploadGroups", "", System.Web.HttpUtility.UrlEncode(data));
|
|
x.Timeout = 1000 * 20;
|
|
|
|
this.OnLog("上传结果:" + http.GetHtml(x).Html);
|
|
}
|
|
else throw new Exception("没有提取到,群成员数据!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
this.OnLog("上传失败:" + ex.Message);
|
|
}
|
|
|
|
});
|
|
}
|
|
}
|
|
}
|