AgentNotificationActivity 類別
用帶有類型通知實體的 Activity 物件包裝。
此類別提供方便存取從活動實體集合中擷取的類型通知實體。 它會自動解析並驗證電子郵件通知、Word/PowerPoint/Excel 評論,以及施工期間的生命週期事件。
建構函式
AgentNotificationActivity()
參數
| 名稱 | Description |
|---|---|
|
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__
__new__
__new__(**kwargs)
as_model
將活動值解析為自訂模型類型。
此方法提供一種通用方法,能驗證並解析活動的值有效載荷,轉換為任意 Pydantic 模型類型。 對於未直接支援的自訂通知類型非常有用。
as_model(model: Type[TModel]) -> TModel | None
參數
| 名稱 | Description |
|---|---|
|
model
必要
|
Type[<xref:microsoft_agents_a365.notifications.models.agent_notification_activity.TModel>]
一個用來驗證並解析活動值的 Pydantic 模型類別。 |
傳回
| 類型 | Description |
|---|---|
|
<xref:microsoft_agents_a365.notifications.models.agent_notification_activity.TModel> | None
|
驗證成功時為指定模型類型的實例,否則為 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的頻道識別碼。
傳回
| 類型 | Description |
|---|---|
|
頻道名稱(例如「agents」、「msteams」)或「None」,如果無法使用。 |
如果有解析過的電子郵件參考實體。
傳回
| 類型 | Description |
|---|---|
|
若找到並成功解析電子郵件通知實體,則使用 EmailReference 物件,否則為 None。 |
notification_type
偵測到的通知類型。
傳回
| 類型 | Description |
|---|---|
|
NotificationTypes 的列舉值表示通知類型(EMAIL_NOTIFICATION、WPX_COMMENT 或 AGENT_LIFECYCLE),若無法確定通知類型則為 None。 |
sub_channel
活動channel_id的子頻道識別碼。
傳回
| 類型 | Description |
|---|---|
|
子頻道名稱(例如「電子郵件」、「word」)或「無」,若無法使用則為「無」。 |
type
活動類型。
傳回
| 類型 | Description |
|---|---|
|
活動類型(例如「訊息」、「事件」)或若未設定為「無」。 |
value
活動帶來的價值有效載荷。
傳回
| 類型 | Description |
|---|---|
|
活動值,可能包含額外的通知資料。 |
wpx_comment
解析後的 Word/PowerPoint/Excel 註解實體(如果存在)。
傳回
| 類型 | Description |
|---|---|
|
如果找到並成功解析註解實體,則為 WpxComment 物件,否則為 None。 |
activity
底層的 Activity 物件。