增加发送原始名片xml

This commit is contained in:
老道 2022-11-12 16:55:55 +08:00
parent 77ee22abae
commit 2f4671706e
4 changed files with 32 additions and 3 deletions

View File

@ -64,6 +64,7 @@ namespace PCRobot.Pack
autoAuthMiniAPPLogin = 1039,//小程序自动授权登录
uploadCiecleImage = 1040,//上传朋友圈图片
getlogincode = 1041,//获取登录二维码
sendCardXml = 1042,//发送名片原始XML
@ -92,7 +93,6 @@ namespace PCRobot.Pack
//企业微信服务器接收
sendVideo_workWeChat = 3000,
rcvTxt_workWeChat = 3001,

View File

@ -596,6 +596,9 @@ namespace PCRobot
case PCRobotCMD.sendInviteGroup:
api.SendCard(data.ToUsername, data.ToMessage);
break;
case PCRobotCMD.sendCardXml:
(api as Wechat_Xiaoxie)?.SendCardXml(data.ToUsername, data.ToMessage);
break;
case PCRobotCMD.getContact:
api.GetContact(true);
break;

View File

@ -2342,6 +2342,17 @@ namespace Chat.Framework.WXSdk.Implement
pack.SendServer(PCRobotCMD.sendCard, friendwxid, WechatMsgType., username);
}
/// <summary>
/// 发送XML卡片
/// </summary>
/// <param name="username"></param>
/// <param name="xml"></param>
public override void SendCardXml(string username, string xml)
{
WechatPack pack = new WechatPack(this);
pack.SendServer(PCRobotCMD.sendCardXml, xml, WechatMsgType., username);
}
/// <summary>
/// 邀请入群
/// </summary>
@ -2517,7 +2528,15 @@ namespace Chat.Framework.WXSdk.Implement
matchs = Regex.Matches(message, @"\[卡片\=([^\]]+)\]", RegexOptions.IgnoreCase);
foreach (Match item in matchs)
{
SendCard(username, item.Groups[1].Value == "自己" ? User.Username : item.Groups[1].Value);
var recommendedUser = item.Groups[1].Value;
if (recommendedUser.ToLower().Contains("<?xml"))
{
SendCardXml(username, recommendedUser);
}
else
{
SendCard(username, recommendedUser == "自己" ? User.Username : item.Groups[1].Value);
}
}
message = Regex.Replace(message, @"\[卡片\=([^\]]+)\]", "");
message = DelayMess(message);

View File

@ -312,6 +312,13 @@ namespace Chat.Framework.WXSdk.Implement
/// <param name="friendwxid">卡片用户账号</param>
public virtual void SendCard(string username, string friendwxid) { throw new Exception("本协议暂时不支持该方法"); }
/// <summary>
/// 发送Xml卡片消息
/// </summary>
/// <param name="username"></param>
/// <param name="xml"></param>
public virtual void SendCardXml(string username, string xml) { throw new Exception("本协议暂时不支持该方法"); }
/// <summary>
/// 获取群成员,不支持pc
/// </summary>