76 lines
2.1 KiB
C#
76 lines
2.1 KiB
C#
using System.Threading.Tasks;
|
|
using Telegram.Bot.Types.Enums;
|
|
using TelegramBotBase.Args;
|
|
using TelegramBotBase.Base;
|
|
|
|
namespace TelegramBotBase.Form
|
|
{
|
|
public class GroupForm : FormBase
|
|
{
|
|
public override async Task Load(MessageResult message)
|
|
{
|
|
switch (message.MessageType)
|
|
{
|
|
case MessageType.ChatMembersAdded:
|
|
|
|
await OnMemberChanges(new MemberChangeEventArgs(MessageType.ChatMembersAdded, message, message.Message.NewChatMembers));
|
|
|
|
break;
|
|
case MessageType.ChatMemberLeft:
|
|
|
|
await OnMemberChanges(new MemberChangeEventArgs(MessageType.ChatMemberLeft, message, message.Message.LeftChatMember));
|
|
|
|
break;
|
|
|
|
case MessageType.ChatPhotoChanged:
|
|
case MessageType.ChatPhotoDeleted:
|
|
case MessageType.ChatTitleChanged:
|
|
case MessageType.MigratedFromGroup:
|
|
case MessageType.MigratedToSupergroup:
|
|
case MessageType.MessagePinned:
|
|
case MessageType.GroupCreated:
|
|
case MessageType.SupergroupCreated:
|
|
case MessageType.ChannelCreated:
|
|
|
|
await OnGroupChanged(new GroupChangedEventArgs(message.MessageType, message));
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
await OnMessage(message);
|
|
|
|
break;
|
|
}
|
|
|
|
}
|
|
|
|
public override async Task Edited(MessageResult message)
|
|
{
|
|
await OnMessageEdit(message);
|
|
}
|
|
|
|
public virtual Task OnMemberChanges(MemberChangeEventArgs e)
|
|
{
|
|
return Task.CompletedTask;
|
|
}
|
|
|
|
|
|
public virtual Task OnGroupChanged(GroupChangedEventArgs e)
|
|
{
|
|
return Task.CompletedTask;
|
|
}
|
|
|
|
|
|
public virtual Task OnMessage(MessageResult e)
|
|
{
|
|
return Task.CompletedTask;
|
|
}
|
|
|
|
public virtual Task OnMessageEdit(MessageResult e)
|
|
{
|
|
return Task.CompletedTask;
|
|
}
|
|
}
|
|
}
|