次の方法で共有


PartyChatTextReceivedStateChange

状態変更の ChatTextReceived 型に固有の情報。

構文

struct PartyChatTextReceivedStateChange : PartyStateChange {  
    PartyChatControl* senderChatControl;  
    uint32_t receiverChatControlCount;  
    PartyLocalChatControlArray receiverChatControls;  
    PartyString languageCode;  
    PartyString chatText;  
    uint32_t dataSize;  
    const void* data;  
    uint32_t translationCount;  
    PartyTranslation* translations;  
    PartyChatTextReceivedOptions options;  
    PartyString originalChatText;  
    PartyError errorDetail;  
}  

メンバー

senderChatControlPartyChatControl*

テキスト メッセージを発信したチャット コントロール オブジェクト。

receiverChatControlCount uint32_t

テキスト メッセージのアドレス指定先となるローカル レシーバー チャット コントロールの数。

receiverChatControlsPartyLocalChatControlArray
配列のサイズreceiverChatControlCount

テキスト メッセージのアドレス指定先となるローカル レシーバー チャット コントロール。

languageCodePartyString

チャット テキストの言語。

言語は、ローカル言語への翻訳が有効になっている場合にのみ提供されます。 翻訳が有効になっていない場合、または翻訳中にエラーが発生した場合、言語コードは空の文字列になります。

言語コードは、英語 (米国) の en-US などの BCP 47 形式になります。 サポートされている言語コードは、言語サポートで列挙されます。

chatTextPartyString

受信したチャット テキスト。

文字列は、null 終端文字を除いて最大 c_maxChatTextMessageLength 文字までの長さにすることができます。

フィルタリングを有効にすると、このテキストはリモート ユーザーによって送信されたテキストと完全には一致しない可能性があります。 正確なソース テキストは、originalChatText フィールドから取得できます。

dataSize uint32_t

テキスト メッセージと関連付けられたデータのサイズ。

data const void*
サイズ dataSize バイトのバッファー

このテキスト メッセージに関連付けられているデータ。

translationCount uint32_t

チャット テキストに関連付けられている翻訳の数。

PartyTextChatOptions::TranslateToLocalLanguage が、このデバイスのチャット コントロール ローカルで PartyLocalChatControl::SetTextChatOptions() を介して指定されている場合、翻訳が提供されます。 複数のローカル チャット コントロールで翻訳が有効になっており、ローカル チャット コントロールが PartyLocalDevice::CreateChatControl() を介して異なる言語を指定している場合は、複数の翻訳が存在する可能性があります。 その場合、アプリは、translations の各 PartyTranslation の languageCode フィールドを、receiverChatControls のローカル チャット コントロールごとに PartyLocalChatControl::GetLanguage() を介して取得した言語コードと比較して、各翻訳のターゲット ローカル チャット コントロールを決定できます。

translationsPartyTranslation*
配列のサイズtranslationCount

チャット テキスト文字列の翻訳を含む配列。

PartyTextChatOptions::TranslateToLocalLanguage が、このデバイスのチャット コントロール ローカルで PartyLocalChatControl::SetTextChatOptions() を介して指定されている場合、翻訳が提供されます。 複数のローカル チャット コントロールで翻訳が有効になっており、ローカル チャット コントロールが PartyLocalDevice::CreateChatControl() を介して異なる言語を指定している場合は、複数の翻訳が存在する可能性があります。 その場合、アプリは、translations の各 PartyTranslation の languageCode フィールドを、receiverChatControls のローカル チャット コントロールごとに PartyLocalChatControl::GetLanguage() を介して取得した言語コードと比較して、各翻訳のターゲット ローカル チャット コントロールを決定できます。

optionsPartyChatTextReceivedOptions

チャット テキストに関する追加情報を記述したフラグ。

originalChatTextPartyString

受信テキスト チャットの最初のバージョン。

このフィールドは常に、リモート ユーザーから送信されたフィルタリングされていないソース テキストです。 フィルタリングが有効になっていない場合は、chatText へのポインターです。 options フィールドの PartyChatTextReceivedOptions::None で示されているように、フィルタリングが有効になっていても、フィルタリングを必要としていなかった場合、これは chatText へのポインターです。

errorDetail PartyError

潜在的なエラー状態に関する追加のトラブルシューティング情報を提供する診断値。

このエラーは、診断のみを目的としています。 エラーが発生した場合、 PartyChatTextReceivedOptions::FilteredDueToError フラグが options フィールドに表示されます。

要件

ヘッダー: Party.h

関連項目

パーティーのメンバー
PartyLocalDevice::CreateChatControl
PartyLocalChatControl::SendText
PartyLocalChatControl::SetTextChatOptions