Office.SmartAlertsEventCompletedOptions interface
OnMessageSend
またはOnAppointmentSend
イベントの処理が完了したときのスマート アラート アドインの動作を指定します。
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
例
// The following example checks whether a location is specified in an appointment before it's sent.
function onAppointmentSendHandler(event) {
Office.context.mailbox.item.location.getAsync({ asyncContext: event }, asyncResult => {
const event = asyncResult.asyncContext;
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log(asyncResult.error.message);
// If the add-in is unable to retrieve the appointment's location, the appointment isn't sent.
event.completed({ allowEvent: false, errorMessage: "Failed to get the appointment's location." });
return;
}
if (asyncResult.value === "") {
// If no location is specified, the appointment isn't sent and the user is alerted to include a location.
event.completed(
{
allowEvent: false,
cancelLabel: "Add a location",
commandId: "msgComposeOpenPaneButton",
contextData: JSON.stringify({ a: "aValue", b: "bValue" }),
errorMessage: "Don't forget to add a meeting location.",
errorMessageMarkdown: `
Don't forget to add a meeting location.\n\n
**Tip**: For a list of locations,
see [Meeting Locations]("https://www.contoso.com/meeting-locations).`,
sendModeOverride: Office.MailboxEnums.SendModeOverride.PromptUser
}
);
} else {
// If a location is specified, the appointment is sent.
event.completed({ allowEvent: true });
}
});
}
プロパティ
allow |
完了したメソッドを使用してイベント ハンドラーの完了を通知する場合、この値は、処理されたイベントが実行を続行するか、取り消されるかを示します。 たとえば、 |
cancel |
完了したメソッドを使用してイベント ハンドラーの完了を通知し、その 例については、 スマート アラートのチュートリアルを参照してください。 |
command |
完了したメソッドを使用してイベント ハンドラーの完了を通知し、その 例については、 スマート アラートのチュートリアルを参照してください。 |
context |
完了したメソッドを使用してイベント ハンドラーの完了を通知し、その |
error |
完了したメソッドを使用してイベント ハンドラーの完了を通知し、その |
send |
完了したメソッドを使用してイベント ハンドラーの完了を通知し、その 例については、 スマート アラートのチュートリアルを参照してください。 |
プロパティの詳細
allowEvent
完了したメソッドを使用してイベント ハンドラーの完了を通知する場合、この値は、処理されたイベントが実行を続行するか、取り消されるかを示します。 たとえば、 OnMessageSend
または OnAppointmentSend
イベントを処理するアドインでは、 allowEvent
を false
に設定してアイテムの送信を取り消すことができます。 完全なサンプルについては、 スマート アラートのチュートリアルを参照してください。
allowEvent?: boolean;
プロパティ値
boolean
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
cancelLabel
完了したメソッドを使用してイベント ハンドラーの完了を通知し、そのallowEvent
プロパティを false
に設定すると、スマート アラート ダイアログの [送信しない] ボタンのテキストがカスタマイズされます。 カスタム テキストは 20 文字以下にする必要があります。
例については、 スマート アラートのチュートリアルを参照してください。
cancelLabel?: string;
プロパティ値
string
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
commandId
完了したメソッドを使用してイベント ハンドラーの完了を通知し、そのallowEvent
プロパティを false
に設定すると、このプロパティは、[スマート アラート] ダイアログで [送信しない] ボタンが選択されたときに実行される作業ウィンドウまたは関数の ID を指定します。
例については、 スマート アラートのチュートリアルを参照してください。
commandId?: string;
プロパティ値
string
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
重要:
commandId
値は、アドインのマニフェストで指定された作業ウィンドウまたは関数 ID と一致する必要があります。 マークアップは、アドインで使用するマニフェストの種類によって異なります。
アドイン専用マニフェスト: 作業ウィンドウまたは関数を表す Control 要素の
id
属性。Microsoft 365 の統合マニフェスト: "controls" 配列の作業ウィンドウまたは関数コマンドの "id" プロパティ。
event.completed
呼び出しで contextData
オプションを指定する場合は、作業ウィンドウまたは関数 ID も commandId
オプションに割り当てる必要があります。 それ以外の場合、 contextData
に割り当てられた JSON データは無視されます。
contextData
完了したメソッドを使用してイベント ハンドラーの完了を通知し、そのallowEvent
プロパティを false
に設定すると、このプロパティは、[スマート アラート] ダイアログで [送信しない] ボタンが選択されたときに処理するためにアドインに渡されるすべての JSON データを指定します。
contextData?: any;
プロパティ値
any
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
重要:
Outlook on Windows では、バージョン 2402 (ビルド 17308.20000) 以降、
any
の種類がサポートされています。 以前のバージョンの Outlook on Windows では、string
の種類のみがサポートされています。event.completed
呼び出しで [contextData
] オプションを指定する場合は、作業ウィンドウ ID もcommandId
オプションに割り当てる必要があります。 それ以外の場合、contextData
に割り当てられた JSON データは無視されます。contextData
プロパティの値を取得するには、作業ウィンドウの JavaScript 実装でOffice.context.mailbox.item.getInitializationContextAsync
を呼び出す必要があります。JSON.stringify()
を使用して JSON 文字列を作成し、contextData
プロパティに割り当てる場合は、取得後にJSON.parse()
を使用して文字列を解析する必要があります。
errorMessage
完了したメソッドを使用してイベント ハンドラーの完了を通知し、そのallowEvent
プロパティを false
に設定すると、ユーザーに表示されるエラー メッセージが設定されます。 例については、 スマート アラートのチュートリアルを参照してください。
errorMessage?: string;
プロパティ値
string
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
sendModeOverride
完了したメソッドを使用してイベント ハンドラーの完了を通知し、そのallowEvent
プロパティを false
に設定すると、このプロパティは実行時にマニフェストで指定された送信モード オプションをオーバーライドします。
例については、 スマート アラートのチュートリアルを参照してください。
sendModeOverride?: MailboxEnums.SendModeOverride | string;
プロパティ値
Office.MailboxEnums.SendModeOverride | string
注釈
最小アクセス許可レベル (Outlook): 制限付き
適用される Outlook モード: Compose
重要: 現在、 sendModeOverride
は プロンプト ユーザー オプションにのみ設定できます。
Office Add-ins