Files
BotPages/BotPages.Core/Pages/Page.cs

43 lines
2.1 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using BotPages.Core.Abstractions;
using BotPages.Core.Context;
namespace BotPages.Core;
/// <summary>
/// Базовый класс страницы.
/// </summary>
public abstract class Page
{
/// <summary>Вход на страницу.</summary>
public virtual Task OnEnter(PageContext ctx, CancellationToken ct) => Task.CompletedTask;
/// <summary>Общий обработчик обновлений.</summary>
public virtual Task OnUpdate(PageContext ctx, UpdateContext update, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка текста.</summary>
public virtual Task OnText(PageContext ctx, string text, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка файлов.</summary>
public virtual Task OnFile(PageContext ctx, List<FileDescriptor> files, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка кнопки.</summary>
public virtual Task OnButton(PageContext ctx, string payload, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка редактирования сообщения.</summary>
public virtual Task OnEdit(PageContext ctx, EditInfo editInfo, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка удаления сообщения.</summary>
public virtual Task OnDelete(PageContext ctx, DeleteInfo deleteInfo, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка закрепления сообщения.</summary>
public virtual Task OnPin(PageContext ctx, PinInfo pinInfo, CancellationToken ct) => Task.CompletedTask;
/// <summary>Выход со страницы.</summary>
public virtual Task OnLeave(PageContext ctx, CancellationToken ct) => Task.CompletedTask;
/// <summary>Таймаут бездействия.</summary>
public virtual Task OnTimeout(PageContext ctx, TimeSpan timeout, CancellationToken ct) => Task.CompletedTask;
/// <summary>Обработка ошибок.</summary>
public virtual Task OnError(PageContext ctx, Exception ex, CancellationToken ct) => Task.CompletedTask;
}