AgentNotificationActivity Класс

Оболочка вокруг объекта Activity с типизированными сущностями уведомлений.

Этот класс предоставляет удобный доступ к типизированным сущностям уведомлений, извлеченным из коллекции сущностей действия. Он автоматически анализирует и проверяет уведомления по электронной почте, комментарии Word/PowerPoint/Excel и события жизненного цикла во время строительства.

Конструктор

AgentNotificationActivity()

Параметры

Имя Описание
activity
Обязательно

Объект Activity для упаковки. Не должно быть нет.

Примеры


   async def email_handler(
       context: TurnContext,
       state: TurnState,
       notification: AgentNotificationActivity,
   ) -> None:
       email = notification.email
       if email:
           print(f"Received email: {email.id}")
           print(f"Body: {email.html_body}")

Методы

__init__
__new__
as_model

Анализ значения действия в качестве типа пользовательской модели.

Этот метод предоставляет универсальный способ проверки и анализа полезных данных значения действия в любом типе модели Pydantic. Полезно для пользовательских типов уведомлений, которые не поддерживаются непосредственно типизированными свойствами.

__init__

__init__(activity: Activity)

Параметры

Имя Описание
activity
Обязательно

__new__

__new__(**kwargs)

as_model

Анализ значения действия в качестве типа пользовательской модели.

Этот метод предоставляет универсальный способ проверки и анализа полезных данных значения действия в любом типе модели Pydantic. Полезно для пользовательских типов уведомлений, которые не поддерживаются непосредственно типизированными свойствами.

as_model(model: Type[TModel]) -> TModel | None

Параметры

Имя Описание
model
Обязательно
Type[<xref:microsoft_agents_a365.notifications.models.agent_notification_activity.TModel>]

Класс модели Pydantic для проверки и анализа значения действия.

Возвращаемое значение

Тип Описание
<xref:microsoft_agents_a365.notifications.models.agent_notification_activity.TModel> | None

Экземпляр указанного типа модели, если проверка выполнена успешно, в противном случае — Нет.

Примеры


   from pydantic import BaseModel

   class CustomNotification(BaseModel):
       custom_field: str

   notification = AgentNotificationActivity(activity)
   custom = notification.as_model(CustomNotification)
   if custom:
       print(custom.custom_field)

Атрибуты

channel

Идентификатор канала из channel_id действия.

Возвращаемое значение

Тип Описание

Имя канала (например, agent, msteams) или None, если оно недоступно.

email

Проанализированная сущность ссылки на электронную почту, если она присутствует.

Возвращаемое значение

Тип Описание

Объект EmailReference, если сущность уведомления по электронной почте найдена и успешно проанализирована, в противном случае — None.

notification_type

Обнаруженный тип уведомления.

Возвращаемое значение

Тип Описание

Значение перечисления NotificationTypes, указывающее тип уведомления (EMAIL_NOTIFICATION, WPX_COMMENT или AGENT_LIFECYCLE), или Нет, если тип уведомления не удалось определить.

sub_channel

Идентификатор подканала из channel_id действия.

Возвращаемое значение

Тип Описание

Имя подканала (например, "email", "word") или "Нет", если оно недоступно.

type

Тип действия.

Возвращаемое значение

Тип Описание

Тип действия (например, message, event) или None, если он не задан.

value

Полезные данные значения из действия.

Возвращаемое значение

Тип Описание

Значение действия, которое может содержать дополнительные данные уведомления.

wpx_comment

При наличии синтаксический анализ сущности комментариев Word/PowerPoint/Excel.

Возвращаемое значение

Тип Описание

Объект WpxComment, если сущность комментария найдена и успешно проанализирована, в противном случае — None.

activity

Базовый объект Activity.