AgentNotificationActivity Classe

Wrapper intorno a un oggetto Activity con entità di notifica tipizzato.

Questa classe consente di accedere facilmente alle entità di notifica tipate estratte dalla raccolta di entità di un'attività. Analizza e convalida automaticamente le notifiche di posta elettronica, i commenti di Word/PowerPoint/Excel e gli eventi del ciclo di vita in fase di costruzione.

Costruttore

AgentNotificationActivity()

Parametri

Nome Descrizione
activity
Necessario

Oggetto Activity di cui eseguire il wrapping. Non deve essere Nessuno.

Esempio


   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}")

Metodi

__init__
__new__
as_model

Analizzare il valore dell'attività come tipo di modello personalizzato.

Questo metodo fornisce un modo generico per convalidare e analizzare il payload del valore dell'attività in qualsiasi tipo di modello Pydantic. Utile per i tipi di notifica personalizzati non supportati direttamente dalle proprietà tipizzate.

__init__

__init__(activity: Activity)

Parametri

Nome Descrizione
activity
Necessario

__new__

__new__(**kwargs)

as_model

Analizzare il valore dell'attività come tipo di modello personalizzato.

Questo metodo fornisce un modo generico per convalidare e analizzare il payload del valore dell'attività in qualsiasi tipo di modello Pydantic. Utile per i tipi di notifica personalizzati non supportati direttamente dalle proprietà tipizzate.

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

Parametri

Nome Descrizione
model
Necessario
Type[<xref:microsoft_agents_a365.notifications.models.agent_notification_activity.TModel>]

Classe di modello Pydantic in cui convalidare e analizzare il valore dell'attività.

Valori restituiti

Tipo Descrizione
<xref:microsoft_agents_a365.notifications.models.agent_notification_activity.TModel> | None

Istanza del tipo di modello specificato se la convalida ha esito positivo; in caso contrario, Nessuna.

Esempio


   from pydantic import BaseModel

   class CustomNotification(BaseModel):
       custom_field: str

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

Attributi

channel

Identificatore del canale del channel_id dell'attività.

Valori restituiti

Tipo Descrizione

Nome del canale ,ad esempio 'agents', 'msteams') o Nessuno, se non disponibile.

email

Entità di riferimento alla posta elettronica analizzata, se presente.

Valori restituiti

Tipo Descrizione

Oggetto EmailReference se è stata trovata e analizzata correttamente un'entità di notifica tramite posta elettronica; in caso contrario, Nessuna.

notification_type

Tipo di notifica rilevato.

Valori restituiti

Tipo Descrizione

Valore enumerazione NotificationTypes che indica il tipo di notifica (EMAIL_NOTIFICATION, WPX_COMMENT o AGENT_LIFECYCLE) o Nessuno se non è stato possibile determinare il tipo di notifica.

sub_channel

Identificatore del canale secondario del channel_id dell'attività.

Valori restituiti

Tipo Descrizione

Nome del canale secondario (ad esempio, 'email', 'word') o Nessuno, se non disponibile.

type

Tipo di attività.

Valori restituiti

Tipo Descrizione

Tipo dell'attività (ad esempio, 'message', 'event') o Nessuno se non impostato.

value

Payload del valore dell'attività.

Valori restituiti

Tipo Descrizione

Valore dell'attività, che può contenere dati di notifica aggiuntivi.

wpx_comment

Entità commento di Word/PowerPoint/Excel analizzata, se presente.

Valori restituiti

Tipo Descrizione

Oggetto WpxComment se un'entità commento è stata trovata e analizzata correttamente; in caso contrario, Nessuna.

activity

Oggetto Activity sottostante.