> For the complete documentation index, see [llms.txt](https://prethink.gitbook.io/prtelegrambot/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://prethink.gitbook.io/prtelegrambot/ru/api/klassy/preventbus.md).

# PREventBus

```csharp
namespace PRTelegramBot.EventBus
{
    /// <summary>
    /// Шина событий.
    /// </summary>
    public static class PREventBus
    {
        #region Поля и свойства

        /// <summary>
        /// Подписчики событий.
        /// </summary>
        private static Dictionary<Type, SubscribersList<IPRGlobalSubscriber>> subscribers = new Dictionary<Type, SubscribersList<IPRGlobalSubscriber>>();

        #endregion

        #region Методы

        /// <summary>
        /// Подписаться.
        /// </summary>
        /// <param name="subscriber">Подписчик.</param>
        public static void Subscribe(IPRGlobalSubscriber subscriber)

        /// <summary>
        /// Отписаться.
        /// </summary>
        /// <param name="subscriber">Подписчик.</param>
        public static void Unsubscribe(IPRGlobalSubscriber subscriber)

        /// <summary>
        /// Вызвать событие.
        /// </summary>
        /// <typeparam name="TSubscriber">Тип подписчика.</typeparam>
        /// <param name="action">Метод вызова.</param>
        public static void RaiseEvent<TSubscriber>(Action<TSubscriber> action) where TSubscriber : class, IPRGlobalSubscriber

        #endregion
    }
}

```
