AgentNotification Classe
Handler para notificações de agentes a partir de aplicações Microsoft 365.
Esta classe fornece decoradores para registar manipuladores que respondem a notificações de vários canais e subcanais Microsoft 365. Suporta o encaminhamento com base no ID do canal, subcanal e eventos do ciclo de vida.
Construtor
AgentNotification()
Parâmetros
| Name | Description |
|---|---|
|
app
Necessário
|
A instância de aplicação que gerirá as notificações encaminhadas. |
|
known_subchannels
|
Iterável opcional de subcanais reconhecidos. Se Nenhum, por defeito todos os valores no enum do AgentSubChannel. Default value: None
|
|
known_lifecycle_events
|
Iterável opcional de eventos reconhecidos do ciclo de vida. Se Não, por defeito todos os valores estão no enum do AgentLifecycleEvent. Default value: None
|
Exemplos
from microsoft_agents.hosting import Application
from microsoft_agents_a365.notifications import AgentNotification
app = Application()
notifications = AgentNotification(app)
@notifications.on_email()
async def handle_email(context, state, notification):
email = notification.email
if email:
await context.send_activity(f"Received email: {email.id}")
Métodos
| __init__ | |
| __new__ | |
| on_agent_lifecycle_notification |
Regista um handler para notificações de eventos do ciclo de vida do agente. Este decorador regista uma função handler a ser chamada quando ocorrem eventos do ciclo de vida, como a criação de utilizadores, eliminação ou atualizações de integração de cargas de trabalho. |
| on_agent_notification |
Registe um handler para notificações de um canal e subcanal específicos. Este decorador regista uma função handler a ser chamada quando uma notificação é recebida do canal especificado e do subcanal opcional. O handler receberá um wrapper AgentNotificationActivity digitado. |
| on_email |
Registe um gestor para notificações de email do Outlook. Este é um decorador de conveniência que regista um handler para notificações do subcanal de email. |
| on_excel |
Registe um handler para as notificações de comentários do Microsoft Excel. Este é um decorador de conveniência que regista um handler para notificações do subcanal do Excel. |
| on_lifecycle |
Registe um handler para todas as notificações de eventos do ciclo de vida do agente. Este é um decorador de conveniência que regista um handler para todos os eventos do ciclo de vida usando o combinador de wildcard "*". |
| on_powerpoint |
Registe um handler para as notificações de comentários do Microsoft PowerPoint. Este é um decorador de conveniência que regista um handler para notificações do subcanal do PowerPoint. |
| on_user_created |
Registar um handler para eventos do ciclo de vida de criação de utilizadores. Este é um decorador de conveniência que regista um handler especificamente para eventos de criação de identidade de utilizador agente. |
| on_user_deleted |
Registar um handler para eventos do ciclo de vida de eliminação do utilizador. Este é um decorador de conveniência que regista um handler especificamente para eventos de eliminação de identidade de utilizador agente. |
| on_user_workload_onboarding |
Registe um handler para os eventos de atualização de integração de carga de trabalho do utilizador. Este é um decorador de conveniência que regista um handler para eventos que ocorrem quando o estado de onboarding da carga de trabalho do utilizador é atualizado. |
| on_word |
Registe um handler para notificações de comentários no Microsoft Word. Este é um decorador de conveniência que regista um handler para notificações do subcanal do Word. |
__init__
__init__(app: Any, known_subchannels: Iterable[str | AgentSubChannel] | None = None, known_lifecycle_events: Iterable[str | AgentLifecycleEvent] | None = None)
Parâmetros
| Name | Description |
|---|---|
|
app
Necessário
|
|
|
known_subchannels
|
Default value: None
|
|
known_lifecycle_events
|
Default value: None
|
__new__
__new__(**kwargs)
on_agent_lifecycle_notification
Regista um handler para notificações de eventos do ciclo de vida do agente.
Este decorador regista uma função handler a ser chamada quando ocorrem eventos do ciclo de vida, como a criação de utilizadores, eliminação ou atualizações de integração de cargas de trabalho.
on_agent_lifecycle_notification(lifecycle_event: str, **kwargs: Any)
Parâmetros
| Name | Description |
|---|---|
|
lifecycle_event
Necessário
|
O evento do ciclo de vida a seguir. Use "*" para corresponder a todos os eventos do ciclo de vida, ou especifique um evento específico do AgentLifecycleEvent. |
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_agent_lifecycle_notification("agenticuseridentitycreated")
async def handle_user_created(context, state, notification):
print("New user created")
on_agent_notification
Registe um handler para notificações de um canal e subcanal específicos.
Este decorador regista uma função handler a ser chamada quando uma notificação é recebida do canal especificado e do subcanal opcional. O handler receberá um wrapper AgentNotificationActivity digitado.
on_agent_notification(channel_id: ChannelId, **kwargs: Any)
Parâmetros
| Name | Description |
|---|---|
|
channel_id
Necessário
|
O ID do canal especifica o canal e o subcanal opcional a ouvir. Use "*" como subcanal para corresponder a todos os subcanais. |
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
from microsoft_agents.activity import ChannelId
@notifications.on_agent_notification(
ChannelId(channel="agents", sub_channel="email")
)
async def handle_custom_channel(context, state, notification):
print(f"Received notification on {notification.channel}/{notification.sub_channel}")
on_email
Registe um gestor para notificações de email do Outlook.
Este é um decorador de conveniência que regista um handler para notificações do subcanal de email.
on_email(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_email()
async def handle_email(context, state, notification):
email = notification.email
if email:
print(f"Received email: {email.id}")
response = EmailResponse.create_email_response_activity(
"<p>Thank you for your email.</p>"
)
await context.send_activity(response)
on_excel
Registe um handler para as notificações de comentários do Microsoft Excel.
Este é um decorador de conveniência que regista um handler para notificações do subcanal do Excel.
on_excel(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_excel()
async def handle_excel_comment(context, state, notification):
comment = notification.wpx_comment
if comment:
print(f"Received Excel comment: {comment.comment_id}")
on_lifecycle
Registe um handler para todas as notificações de eventos do ciclo de vida do agente.
Este é um decorador de conveniência que regista um handler para todos os eventos do ciclo de vida usando o combinador de wildcard "*".
on_lifecycle(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_lifecycle()
async def handle_any_lifecycle_event(context, state, notification):
print(f"Lifecycle event type: {notification.notification_type}")
on_powerpoint
Registe um handler para as notificações de comentários do Microsoft PowerPoint.
Este é um decorador de conveniência que regista um handler para notificações do subcanal do PowerPoint.
on_powerpoint(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_powerpoint()
async def handle_powerpoint_comment(context, state, notification):
comment = notification.wpx_comment
if comment:
print(f"Received PowerPoint comment: {comment.comment_id}")
on_user_created
Registar um handler para eventos do ciclo de vida de criação de utilizadores.
Este é um decorador de conveniência que regista um handler especificamente para eventos de criação de identidade de utilizador agente.
on_user_created(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_user_created()
async def handle_user_created(context, state, notification):
print("New agentic user identity created")
on_user_deleted
Registar um handler para eventos do ciclo de vida de eliminação do utilizador.
Este é um decorador de conveniência que regista um handler especificamente para eventos de eliminação de identidade de utilizador agente.
on_user_deleted(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_user_deleted()
async def handle_user_deleted(context, state, notification):
print("Agentic user identity deleted")
on_user_workload_onboarding
Registe um handler para os eventos de atualização de integração de carga de trabalho do utilizador.
Este é um decorador de conveniência que regista um handler para eventos que ocorrem quando o estado de onboarding da carga de trabalho do utilizador é atualizado.
on_user_workload_onboarding(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_user_workload_onboarding()
async def handle_onboarding_update(context, state, notification):
print("User workload onboarding status updated")
on_word
Registe um handler para notificações de comentários no Microsoft Word.
Este é um decorador de conveniência que regista um handler para notificações do subcanal do Word.
on_word(**kwargs: Any) -> Callable[[Callable[[TContext, TState, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
Parâmetros
| Name | Description |
|---|---|
|
**kwargs
Necessário
|
Argumentos adicionais de palavras-chave passaram para o método add_route da aplicação. |
Devoluções
| Tipo | Description |
|---|---|
|
Callable[[Callable[[<xref:microsoft_agents_a365.notifications.agent_notification.TContext>, <xref:microsoft_agents_a365.notifications.agent_notification.TState>, AgentNotificationActivity], Awaitable[None]]], Callable[[TurnContext, TurnState], Awaitable[None]]]
|
Uma função decoradora que regista o manipulador com a aplicação. |
Exemplos
@notifications.on_word()
async def handle_word_comment(context, state, notification):
comment = notification.wpx_comment
if comment:
print(f"Received Word comment: {comment.comment_id}")