DynamicTranslation - クライアント

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:47分
  • DynamicTranslation API は、翻訳サービスプロバイダーを使用してテキストを複数の言語にリアルタイムで翻訳するメソッドを提供します。 この API は、標準クライアントと Angular ベースの サービスポータル クライアントの両方で使用できます。

    また、この API を使用して、特定の文字列の言語を検出し、翻訳サービスに対して DynamicTranslation メソッドが有効になっているかどうかをチェックできます。この API を使用して、ユーザーインターフェイスのシームレスなローカライズエクスペリエンスを作成し、1 つのインターフェイスで複数の国にサービスを提供できるようにします。

    現在、この API は、Microsoft Azure Translator サービスと Google Cloud Translator サービスの 2 つの翻訳サービスプロバイダーをサポートしています。インスタンス内で他の翻訳サービスを設定し、DynamicTranslation API を使用してテキストを翻訳することもできます。

    この API を使用するには、Dynamic Translation プラグインをアクティブ化する必要があります。このプラグインの詳細と動的翻訳の詳細については、「 動的翻訳の概要」を参照してください。また、この API を サービスポータル ウィジェットで使用するには、dynamicTranslation サービスをウィジェットのクライアントスクリプト関数に挿入する必要があります。

    注:
    サービスポータル クライアントで使用するクラスの名前は dynamicTranslation です。一方、標準クライアントで使用するクラスの名前は DynamicTranslation です。

    DynamicTranslation - getDetectedLanguage(文字列 text, オブジェクト parms)

    渡されたテキストの言語を検出します。

    翻訳者を渡すと、 メソッドはその翻訳サービスを使用してソース言語を検出します。それ以外の場合は、デフォルトの翻訳サービスによって検出が実行されます。指定するテキスト文字列に、適切な言語検出を可能にするのに十分な言い回しが含まれていることを確認してください。

    応答には、検出された言語に加えて、検出の信頼性レベルと他の考えられる代替言語が含まれています。翻訳者が渡されない場合、このメソッドは言語の検出に使用されるデフォルトの翻訳サービスも返します。

    表 : 1. パラメーター
    名前 タイプ 説明
    text 文字列 言語の検出に使用するテキストです。
    parms オブジェクト オプション。追加の translation パラメーターを含む JSON オブジェクトです。
    "parms": {
      "translator": "String"
    }
    parms.translator 文字列 文字列の言語を検出するために使用する翻訳サービス。翻訳サービスは、[ 翻訳ツール構成 ] メニューで構成されます。

    可能な値 - 大文字と小文字を区別しない:

    • Google
    • Microsoft
    • IBM
    • <custom>
    注:
    カスタム翻訳サービスを使用するには、最初にインスタンスで翻訳サービスを設定する必要があります。詳細については、「 翻訳サービスプロバイダーとの統合」を参照してください。

    デフォルト:翻訳者構成 [sn_dt_translator_configuration] テーブルで構成された翻訳サービス。

    テーブル:機械翻訳エンジン構成 [sn_dt_translator_configuration]

    表 : 2. 返される内容
    タイプ 説明
    alternatives 一致する可能性がある他の言語を説明するオブジェクトのアレイです。

    データタイプ:アレイ

    "alternatives": [
      {
        "code": "String",
        "confidence": "String",
        "name": "String"
      }
    ]
    alternatives.code 代替言語の言語コード。

    データタイプ:文字列

    alternatives.confidence 代替言語の信頼性レベルを示す浮動小数点値。値は 0 と 1 の間です。値が小さいほど、信頼性レベルが低くなります。

    データタイプ:文字列

    alternatives.name 代替言語の言語コード。

    データタイプ:文字列

    detectedLanguage 検出された言語の説明です。

    データタイプ:オブジェクト

    "detectedLanguage": {
      "code": "String",
      "confidence": "String",
      "name": "String"
    }
    detectedLanguage.code 検出された言語の言語コード。

    データタイプ:文字列

    detectedLanguage.confidence 代替言語の信頼性レベルを示す浮動小数点値。値は 0 と 1 の間です。値が小さいほど、信頼性レベルが低くなります。

    データタイプ:文字列

    detectedLanguage.name 検出された言語の言語コード。

    データタイプ:文字列

    translator 言語を検出するために使用される翻訳サービス。

    データタイプ:文字列

    エラーメッセージ メソッドが返す可能性があるエラーメッセージとエラーの根本原因の表示を以下に示します。
    • テキスト ([テキスト] フィールド) が欠落しているか無効です。 (40000):言語を検出するためのテキストが欠落しているか、文字列ではありません。
    • Dynamic Translation プラグインがインストールされていません。 (40001): com.glide.dynamic_translation プラグインを有効にせずに Dynamic Translation API が呼び出されました。このプラグインのアクティブ化については、「 動的翻訳の概要」を参照してください。
    • 翻訳者 ([翻訳者] フィールド) が無効です。 (40003):渡された translator パラメーターが文字列ではありません。
    • <translator> 翻訳者が構成されていません。 (40004):指定された翻訳サービスが [翻訳者構成] で構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • <translator> 翻訳者が非アクティブです。 (40005):指定された翻訳サービスが [翻訳者構成] で [アクティブ] に設定されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 追加のパラメーターが無効です。 (40006):渡された追加のパラメーターはオブジェクトではありません。
    • 最大時間制限を超えました。(40009):翻訳構成で指定された定義済みのタイムアウト値よりも長い時間が操作にかかりました。 デフォルト:40 秒
    • デフォルトの翻訳者が検出用に構成されていません。 (40011):[翻訳者構成] で言語検出のデフォルトの翻訳サービスが指定されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • <translator> 翻訳者が検出用に構成されていません。 (40013):指定された翻訳サービスが [翻訳者構成] で言語検出用に構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 不明なエラーが発生しました。(40051):エラーが他のカテゴリに該当しない場合にスローされるデフォルトのエラー。
    • テキスト ([テキスト] フィールド) が最大長を超えました。(40052):言語検出のために渡されたテキストが、対応する翻訳サービスでサポートされている最大長を超えています。
    • 資格情報がないか無効であるため、要求は許可されません (40055):[接続 & 資格情報] で翻訳サービス用に構成された認証情報が無効です。接続と資格情報の詳細については、「 動的翻訳の概要」を参照してください。

    この例は、標準のクライアントスクリプトで IBM の翻訳サービスを使用して英語の文字列を検出するコードを示しています。

    var detectedResponse = DynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":'IBM'}).then(function(res) {console.log(res); }, function(res) {console.log(res); } );

    出力:

    detectedResponse {
      detectedLanguage:
        { "code": "en", "confidence": "1", "name": "en" }
      alternatives: 
        [
          { "code": "vi", "confidence": "0.86", "name": "vi" },
          { "code": "id", "confidence": "0.86", "name": "id" }
        ]                  
     }

    この例は、無効な翻訳サービスが渡されたときにエラーをスローするクライアントスクリプトを示しています。

    var detectedResponse = DynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":123}).then(function(res) {console.log(res); }, function(res) {console.log(res); } );
    出力:
    {"code":"40003","message":"Translator (\"translator\" field) is invalid"}

    この例は、サービスポータル ウィジェットのクライアントスクリプトで IBM の翻訳サービスを使用して英語の文字列を検出するコードを示しています。クラスの名前は DynamicTranslation ではなく、dynamicTranslation であることに注意してください。

    var detectedResponse = dynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":'IBM'}).then(function(res) {console.log(res); }, function(res) {console.log(res); } );
    出力:
    detectedResponse {
      detectedLanguage:
        { "code": "en", "confidence": "1", "name": "en" }
      alternatives: 
        [
          { "code": "vi", "confidence": "0.86", "name": "vi" },
          { "code": "id", "confidence": "0.86", "name": "id" }
        ]                  
     }

    この例は、無効な翻訳サービスが渡されたときにエラーをスローする サービスポータル ウィジェットのクライアントスクリプトを示しています。

    var detectedResponse = dynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":123}).then(function(res) {console.log(res); }, function(res) {console.log(res); } );
    出力:
    {"code":"40003","message":"Translator (\"translator\" field) is invalid"}

    DynamicTranslation - getDetectedLanguages(アレイ texts, オブジェクト parms)

    渡されたテキスト文字列の言語を検出します。

    翻訳者を渡すと、 メソッドはその翻訳サービスを使用してソース言語を検出します。それ以外の場合は、デフォルトの翻訳サービスによって検出が実行されます。指定するテキスト文字列に、適切な言語検出を可能にするのに十分な言い回しが含まれていることを確認してください。

    応答には、検出された言語に加えて、検出の信頼性レベルと他の考えられる代替言語が含まれています。翻訳者が渡されない場合、このメソッドは言語の検出に使用されるデフォルトの翻訳サービスも返します。

    ポータルのクライアントスクリプトからこのメソッドを呼び出す場合は、クラス名 dynamicTranslation を使用します。たとえば、dynamicTranslation.getTranslations() とします。プラットフォームのクライアントスクリプトからこのメソッドを呼び出す場合は、クラス名 DynamicTranslation を使用します。たとえば、DynamicTranslation.getTranslations() とします。

    表 : 3. パラメーター
    名前 タイプ 説明
    parms オブジェクト オプション。追加の translation パラメーターを含む JSON オブジェクトです。
    "parms": {
      "translator": "String"
    }
    parms.translator 文字列 文字列の言語を検出するために使用する翻訳サービス。翻訳サービスは、[ 翻訳ツール構成 ] メニューで構成されます。

    可能な値 - 大文字と小文字を区別しない:

    • Google
    • Microsoft
    • IBM
    • <custom>
    注:
    カスタム翻訳サービスを使用するには、最初にインスタンスで翻訳サービスを設定する必要があります。詳細については、「 翻訳サービスプロバイダーとの統合」を参照してください。

    デフォルト:翻訳者構成 [sn_dt_translator_configuration] テーブルで構成された翻訳サービス。

    テーブル:機械翻訳エンジン構成 [sn_dt_translator_configuration]

    テキスト アレイ 言語を検出するために使用するテキスト文字列のリスト。
    表 : 4. 返される内容
    タイプ 説明
    検出 テキスト文字列の言語検出。

    データタイプ:オブジェクト

    "detections": {
      "alternatives": [Array],
      "detectedLanguage": {Object},
      "isError": Boolean
    }
    detections.alternatives 一致する可能性がある他の言語を説明するオブジェクトのアレイです。

    データタイプ:アレイ

    "alternatives": [
      {
        "code": "String",
        "confidence": "String",
        "name": "String"
      }
    ]
    detections.alternatives.code 代替言語の言語コード。

    データタイプ:文字列

    detections.alternatives.confidence 代替言語の信頼性レベルを示す浮動小数点値。値は 0 と 1 の間です。値が小さいほど、信頼性レベルが低くなります。

    データタイプ:文字列

    detections.alternatives.name 代替言語の言語コード。

    データタイプ:文字列

    detections.detectedLanguage 検出された言語の説明です。

    データタイプ:オブジェクト

    "detectedLanguage": {
      "code": "String",
      "confidence": "String",
      "name": "String"
    }
    detections.detectedLanguage.code 検出された言語の言語コード。

    データタイプ:文字列

    detections.detectedLanguage.confidence 代替言語の信頼性レベルを示す浮動小数点値。値は 0 と 1 の間です。値が小さいほど、信頼性レベルが低くなります。

    データタイプ:文字列

    detections.detectedLanguage.name 検出された言語の言語コード。

    データタイプ:文字列

    detections.isError テキストの言語の検出がエラーとなったかどうかを示すフラグ。
    有効な値:
    • true:エラーが発生しました。
    • false:言語の検出に成功しました。

    データタイプ:ブール

    status メソッド呼び出しへの応答のステータス。
    可能な値:
    • エラー
    • 部分的
    • 成功

    データタイプ:文字列

    translator 言語を検出するために使用される翻訳サービス。

    データタイプ:文字列

    エラーメッセージ メソッドが返す可能性があるエラーメッセージとエラーの根本原因の表示を以下に示します。
    • テキスト ([テキスト] フィールド) が欠落しているか無効です。 (40000):言語を検出するためのテキストが欠落しているか、文字列ではありません。
    • Dynamic Translation プラグインがインストールされていません。 (40001): com.glide.dynamic_translation プラグインを有効にせずに Dynamic Translation API が呼び出されました。このプラグインのアクティブ化については、「 動的翻訳の概要」を参照してください。
    • 翻訳者 ([翻訳者] フィールド) が無効です。 (40003):渡された translator パラメーターが文字列ではありません。
    • <translator> 翻訳者が構成されていません。 (40004):指定された翻訳サービスが [翻訳者構成] で構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • <translator> 翻訳者が非アクティブです。 (40005):指定された翻訳サービスが [翻訳者構成] で [アクティブ] に設定されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 追加のパラメーターが無効です。 (40006):渡された追加のパラメーターはオブジェクトではありません。
    • 最大時間制限を超えました。(40009):翻訳構成で指定された定義済みのタイムアウト値よりも長い時間が操作にかかりました。 デフォルト:40 秒
    • 複数のエラーで要求が失敗しました。 (40010):言語検出呼び出しで複数のエラーが発生しました。詳細については、個々のテキスト文字列の応答を参照してください。
    • デフォルトの翻訳者が検出用に構成されていません。 (40011):[翻訳者構成] で言語検出のデフォルトの翻訳サービスが指定されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • <translator> 翻訳者が検出用に構成されていません。 (40013):指定された翻訳サービスが [翻訳者構成] で言語検出用に構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 翻訳者構成バージョンが無効です。v3 に移行してください。 (40014):指定された翻訳サービスに関連付けられている翻訳者構成のバージョンは、指定されたテキスト翻訳方法をサポートしていません。詳細については、「 翻訳者構成のバージョン v3 への移行」を参照してください。
    • 不明なエラーが発生しました。(40051):エラーが他のカテゴリに該当しない場合にスローされるデフォルトのエラー。
    • テキスト ([テキスト] フィールド) が最大長を超えました。(40052):言語検出のために渡されたテキストが、対応する翻訳サービスでサポートされている最大長を超えています。
    • 資格情報がないか無効であるため、要求は許可されません (40055):[接続 & 資格情報] で翻訳サービス用に構成された認証情報が無効です。接続と資格情報の詳細については、「 動的翻訳の概要」を参照してください。

    この例は、Microsoft の翻訳サービスを使用して、渡された文字列の言語として英語を検出するポータルのクライアントスクリプトのコードを示しています。

    var detectedResponse = dynamicTranslation.getDetectedLanguages(["First text string language to detect", "Second text string language to detect"], {"translator": "Microsoft"}).then(function(res) {console.log(res);}, function(res) {console.log(res);});
    gs.info(JSON.stringify(detectedResponse));
    

    出力

    {
      "translator":"Microsoft",
      "status":"Success",
      "detections":[
        {
          "isError":false,
          "detectedLanguage":{"name":"en", "code":"en", "confidence":"1"},
          "alternatives":[
            {"name":"id", "code":"id", "confidence":"0.83"},
            {"name":"ms", "code":"ms", "confidence":"0.83"}
          ]
        },
        {
          "isError":false,
          "detectedLanguage":{"name":"en", "code":"en", "confidence":"1"},
          "alternatives":[
            {"name":"fr", "code":"fr", "confidence":"0.83"},
            {"name":"id", "code":"id", "confidence":"0.83"}
          ]
        }
      ]
    }

    この例は、2 つのテキスト文字列が渡されて、そのうちの 1 つが無効である場合に Partial というステータスを返すポータルのクライアントスクリプトのコードを示しています。プラットフォームのクライアントスクリプトでこのコード例を使用するには、dynamicTranslation.getDetectedLanguagesDynamicTranslation.getDetectedLanguages に変更します。

    var detectedResponse = dynamicTranslation.getDetectedLanguages(["First text string language to detect", ""], {"translator": "Microsoft"}).then(function(res) {console.log(res); }, function(res) {console.log(res); } );
    gs.info(JSON.stringify(detectedResponse));

    出力

    {
      "translator":"Microsoft",
      "status":"Partial",
      "detections":[
        {
          "isError":false,
          "detectedLanguage":{"name":"en", "code":"en", "confidence":"1"},
          "alternatives":[
            {"name":"id", "code":"id", "confidence":"0.83"},
            {"name":"ms", "code":"ms", "confidence":"0.83"}
          ]
        },
        {
          "isError":true,
          "code":"40000",
          "message":"Text is missing or invalid"
        }
      ]
    }

    この例は、無効な翻訳サービスが渡されたときにエラーをスローするポータルクライアントスクリプトのコードを示しています。プラットフォームのクライアントスクリプトでこのコード例を使用するには、dynamicTranslation.getDetectedLanguagesDynamicTranslation.getDetectedLanguages に変更します。

    var detectedResponse = dynamicTranslation.getDetectedLanguages(["First text string language to detect", "Second text string language to detect"], {"translator": "123"}).then(function(res) {console.log(res); }, function(res) {console.log(res); } );
    gs.info(JSON.stringify(detectedResponse));

    出力

    {"code":"40003","message":"Translator (\"translator\" field) is invalid","status":"Error"}

    DynamicTranslation - getTranslation(文字列 textToTranslate, オブジェクト parms)

    渡されたテキストを 1 つ以上の言語に翻訳します。

    この方法では、Microsoft Azure Translator サービスや Google Cloud Translator サービスなどの翻訳サービスを使用して翻訳を実行します。翻訳パラメーターを渡さない場合、メソッドはシステムのデフォルトを使用します。

    表 : 5. パラメーター
    名前 タイプ 説明
    textToTranslate 文字列 翻訳するテキスト。
    parms オブジェクト オプション。追加の translation パラメーターを含む JSON オブジェクトです。
    "parms": {
      "additionalParameters": {Object},
      "sourceLanguage": "String",
      "targetLanguages": [Array],
      "translator": "String"
    }
    parms.additionalParameters オブジェクト オプション。JSON オブジェクトのアレイ。各オブジェクトには、翻訳を実行するための追加情報を提供するキーと値のペアが含まれています。
    "additionalParameters": {
      "parameterName": "String",
      "parameterValue": "String"
    }
    parms.additionalParameters.parameterName 文字列 オプション。キー名。

    有効な値:

    textype:翻訳するテキストのタイプ。Microsoft Azure Translator サービスの場合のみ。

    parms.additionalParameters.parameterValue 文字列 オプション。関連付けられたキーの値。

    有効な値:

    • html:HTML テキスト文字列
    • plain:標準的なテキスト文字列

    デフォルト:plain

    parms.sourceLanguage 文字列 オプション。ソーステキストの言語コード。

    デフォルト:翻訳サービスがソース言語を検出します。

    parms.targetLanguages アレイ オプション。テキストの翻訳に使用する言語コードのリスト。このメソッドは、言語コードごとに翻訳されたテキストを返します。

    デフォルト:ユーザーの優先言語。

    parms.translator 文字列 オプション。テキストの翻訳に使用される翻訳サービス (大文字と小文字は区別されません)。

    有効な値:

    • Google
    • Microsoft
    • IBM
    • <custom>
    注:
    カスタム翻訳サービスを使用するには、最初にインスタンスで翻訳サービスを設定する必要があります。詳細については、「 翻訳サービスプロバイダーとの統合」を参照してください。

    デフォルト:翻訳者構成 [sn_dt_translator_configuration] テーブルで構成された翻訳サービス。

    表 : 6. 返される内容
    タイプ 説明
    detectedLanguage 検出された言語の説明です。

    データタイプ:オブジェクト

    "detectedLanguage": {
      "code": "String",
      "name": "String"
    }
    detectedLanguage.code 検出された言語の言語コード。

    データタイプ:文字列

    detectedLanguage.name 検出された言語の言語コード。

    データタイプ:文字列

    翻訳 言語翻訳を説明するリスト。

    データタイプ:オブジェクトのアレイ

    translations": [
      {
        "targetLanguage": "String",
        "translatedText": "String"
      }
    ]
    translations.targetLanguage ソーステキストが翻訳された言語コード。

    データタイプ:文字列

    translations.translatedText 翻訳されたテキスト。

    データタイプ:文字列

    translator 言語を検出するために使用される翻訳サービス。

    データタイプ:文字列

    エラーメッセージ メソッドが返す可能性があるエラーメッセージとその根本原因の表示を以下に示します。
    • テキスト ([テキスト] フィールド) が欠落しているか無効です。 (40000):翻訳するテキストが欠落しているか、文字列ではありません。
    • Dynamic Translation プラグインがインストールされていません。 (40001): com.glide.dynamic_translation プラグインを有効にせずに Dynamic Translation API が呼び出されました。このプラグインのアクティブ化については、「 動的翻訳の概要」を参照してください。
    • デフォルトの翻訳者が翻訳用に構成されていません。 (40002):[翻訳者構成] でデフォルトの翻訳サービスとして選択されている翻訳サービスがありません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 翻訳者 ([翻訳者] フィールド) が無効です。 (40003):渡された translator パラメーターが文字列ではありません。
    • <translator> 翻訳者が構成されていません。 (40004):指定された翻訳サービスが [翻訳者構成] で構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • <translator> 翻訳者が非アクティブです。 (40005):指定された翻訳サービスが [翻訳者構成] で [アクティブ] に設定されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 追加のパラメーターが無効です。 (40006):渡された追加のパラメーターはオブジェクトではありません。
    • ターゲット言語 ([targetLanguages] フィールド) が無効です。 (40007):targetLanguages パラメーターが呼び出しで渡されましたが、次のいずれかの理由で有効ではありません。
      • 値がアレイではありません
      • アレイが空です
      • 1 つまたは複数のエントリが文字列ではありません
    • ソース言語 ([sourceLanguage] フィールド) が無効です。 (40008):sourceLanguage パラメーターが呼び出しで渡されましたが、値が文字列ではありません。
    • 最大時間制限を超えました。(40009):翻訳構成で指定された定義済みのタイムアウト値よりも長い時間が操作にかかりました。 デフォルト:40 秒
    • <translator> 翻訳者が翻訳用に構成されていません。 (40012):指定された翻訳サービスが [翻訳者構成] でテキスト翻訳用に構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 不明なエラーが発生しました。(40051):エラーが他のカテゴリに該当しない場合にスローされるデフォルトのエラー。
    • テキスト ([テキスト] フィールド) が最大長を超えました。(40052):翻訳のために渡されたテキストが、対応する翻訳サービスでサポートされている最大長を超えています。
    • ソース言語が無効です。 (40053):渡された sourceLanguage パラメーターに、対応する翻訳サービスでサポートされていない言語コードが含まれています。
    • ターゲット言語が無効です。 (40054):targetLanguages パラメーターで渡された 1 つ以上の言語コードが、対応する翻訳サービスでサポートされていません。
    • 資格情報がないか無効であるため、要求は許可されません (40055):[接続 & 資格情報] で翻訳サービス用に構成された認証情報が無効です。接続と資格情報の詳細については、「 動的翻訳の概要」を参照してください。
    • テキストをターゲット言語に翻訳できません。(40056):指定された翻訳サービスは、渡されたテキストを指定されたターゲット言語に翻訳できません。

    この例は、標準のクライアントスクリプトで Microsoft の翻訳サービスを使用して、プレーンテキストコンテンツを、(検出された) 英語からフランス語とイタリア語に翻訳する方法を示しています。

    DynamicTranslation.getTranslation("Translate this text using platform from client", {
      "targetLanguages": ["fr", "it"],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": "Microsoft"
     }).then(function(res){console.log(res);}, function(res){console.log(res);});
    

    応答:

    
    {"translations":[
        {
          "targetLanguage":"it",
          "translatedText":"Tradurre questo testo utilizzando la piattaforma dal client"
        },
        {
          "targetLanguage":"fr",
          "translatedText":"Traduire ce texte en utilisant la plate-forme du client"
        }
      ],
      "translator":"Microsoft",
      "detectedLanguage":{"code":"en","name":"en"}
    }

    この例は、無効なターゲット言語が渡されたときにエラーをスローするクライアントスクリプトを示しています。

    DynamicTranslation.getTranslation("Translate this text using platform from client", {
      "targetLanguages": ["123"],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": "Microsoft"
     }).then(function(res){console.log(res);}, function(res){console.log(res);});
    

    応答:

    {"code":"40054","message":"Target language is invalid"}

    この例は、サービスポータル ウィジェットのクライアントスクリプトで Microsoft の翻訳サービスを使用して、プレーンテキストコンテンツを、(検出された) 英語からフランス語とイタリア語に翻訳する方法を示しています。クラスの名前は DynamicTranslation ではなく、dynamicTranslation であることに注意してください。

    dynamicTranslation.getTranslation("Translate this text using platform from client", {
      "targetLanguages": ["fr", "it"],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": "Microsoft"
     }).then(function(res){console.log(res);}, function(res){console.log(res);});
    

    応答:

    
    {"translations":[
        {
          "targetLanguage":"it",
          "translatedText":"Tradurre questo testo utilizzando la piattaforma dal client"
        },
        {
          "targetLanguage":"fr",
          "translatedText":"Traduire ce texte en utilisant la plate-forme du client"
        }
      ],
      "translator":"Microsoft",
      "detectedLanguage":{"code":"en","name":"en"}
    }

    この例は、無効なターゲット言語が渡されたときにエラーをスローする サービスポータル ウィジェットのクライアントスクリプトを示しています。

    dynamicTranslation.getTranslation("Translate this text using platform from client", {
      "targetLanguages": [123],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": "Microsoft"
     }).then(function(res){console.log(res);}, function(res){console.log(res);});
    

    応答:

    {"code":"40054","message":"Target language is invalid"}

    DynamicTranslation - getTranslations(アレイ texts, オブジェクト parms)

    渡されたテキスト文字列を 1 つ以上の言語に翻訳します。

    この方法では、Microsoft Azure Translator サービスや Google Cloud Translator サービスなどの翻訳サービスを使用して翻訳を実行します。翻訳パラメーターを渡さない場合、メソッドはシステムのデフォルトを使用します。

    ポータルのクライアントスクリプトからこのメソッドを呼び出す場合は、クラス名 dynamicTranslation を使用します。たとえば、dynamicTranslation.getTranslations() とします。プラットフォームのクライアントスクリプトからこのメソッドを呼び出す場合は、クラス名 DynamicTranslation を使用します。たとえば、DynamicTranslation.getTranslations() とします。

    表 : 7. パラメーター
    名前 タイプ 説明
    テキスト アレイ 翻訳するテキスト文字列のリストです。
    parms オブジェクト オプション。追加の translation パラメーターを含む JSON オブジェクトです。
    "parms": {
      "additionalParameters": {Object},
      "sourceLanguage": "String",
      "targetLanguages": [Array],
      "translator": "String"
    }
    parms.additionalParameters オブジェクト オプション。JSON オブジェクトのアレイ。各オブジェクトには、翻訳を実行するための追加情報を提供するキーと値のペアが含まれています。
    "additionalParameters": {
      "parameterName": "String",
      "parameterValue": "String"
    }
    parms.additionalParameters.parameterName 文字列 オプション。キー名。

    有効な値:

    textype:翻訳するテキストのタイプ。Microsoft Azure Translator サービスの場合のみ。

    parms.additionalParameters.parameterValue 文字列 オプション。関連付けられたキーの値。

    有効な値:

    • html:HTML テキスト文字列
    • plain:標準的なテキスト文字列

    デフォルト:plain

    parms.sourceLanguage 文字列 オプション。ソーステキストの言語コード。

    デフォルト:翻訳サービスがソース言語を検出します。

    parms.targetLanguages アレイ オプション。テキストの翻訳に使用する言語コードのリスト。このメソッドは、言語コードごとに翻訳されたテキストを返します。

    デフォルト:ユーザーの優先言語。

    parms.translator 文字列 オプション。テキストの翻訳に使用される翻訳サービス (大文字と小文字は区別されません)。

    有効な値:

    • Google
    • Microsoft
    • IBM
    • <custom>
    注:
    カスタム翻訳サービスを使用するには、最初にインスタンスで翻訳サービスを設定する必要があります。詳細については、「 翻訳サービスプロバイダーとの統合」を参照してください。

    デフォルト:翻訳者構成 [sn_dt_translator_configuration] テーブルで構成された翻訳サービス。

    表 : 8. 返される内容
    タイプ 説明
    status メソッド呼び出しへの応答のステータス。
    可能な値:
    • エラー
    • 部分的
    • 成功

    データタイプ:文字列

    翻訳 言語翻訳を説明するリスト。

    データタイプ:アレイ

    translations": [
      {
        "isError": Boolean;
        "detectedLanguage": {Object},
        "textTranslations": [Array]
      }
    ]
    translations.isError テキストの翻訳がエラーとなったかどうかを示すフラグです。
    有効な値:
    • true:エラーが発生しました。
    • false:テキストの翻訳に成功しました。

    データタイプ:ブーリアン

    translations.detectedLanguage 検出された言語の説明です。

    データタイプ:オブジェクト

    "detectedLanguage": {
      "code": "String",
      "name": "String"
    }
    translations.detectedLanguage.code 検出された言語の言語コード。

    データタイプ:文字列

    translations.detectedLanguage.name 検出された言語の言語コード。

    データタイプ:文字列

    textTranlations テキスト文字列の翻訳に使用される言語の説明。

    データタイプ:オブジェクトのアレイ

    "textTranslation": {
      "targetLanguage": "String",
      "translatedText": "String"
    }
    textTranslations.targetLanguage ソーステキストが翻訳された言語コード。

    データタイプ:文字列

    textTranslations.translatedText 翻訳されたテキスト。

    データタイプ:文字列

    translator テキストの翻訳に使用される翻訳サービスです。

    データタイプ:文字列

    エラーメッセージ メソッドが返す可能性があるエラーメッセージとその根本原因の表示を以下に示します。
    • テキスト ([テキスト] フィールド) が欠落しているか無効です。 (40000):翻訳するテキストが欠落しているか、文字列ではありません。
    • Dynamic Translation プラグインがインストールされていません。 (40001): com.glide.dynamic_translation プラグインを有効にせずに Dynamic Translation API が呼び出されました。このプラグインのアクティブ化については、「 動的翻訳の概要」を参照してください。
    • デフォルトの翻訳者が翻訳用に構成されていません。 (40002):[翻訳者構成] でデフォルトの翻訳サービスとして選択されている翻訳サービスがありません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 翻訳者 ([翻訳者] フィールド) が無効です。 (40003):渡された translator パラメーターが文字列ではありません。
    • <translator> 翻訳者が構成されていません。 (40004):指定された翻訳サービスが [翻訳者構成] で構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • <translator> 翻訳者が非アクティブです。 (40005):指定された翻訳サービスが [翻訳者構成] で [アクティブ] に設定されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 追加のパラメーターが無効です。 (40006):渡された追加のパラメーターはオブジェクトではありません。
    • ターゲット言語 ([targetLanguages] フィールド) が無効です。 (40007):targetLanguages パラメーターが呼び出しで渡されましたが、次のいずれかの理由で有効ではありません。
      • 値がアレイではありません
      • アレイが空です
      • 1 つまたは複数のエントリが文字列ではありません
    • ソース言語 ([sourceLanguage] フィールド) が無効です。 (40008):sourceLanguage パラメーターが呼び出しで渡されましたが、値が文字列ではありません。
    • 最大時間制限を超えました。(40009):翻訳構成で指定された定義済みのタイムアウト値よりも長い時間が操作にかかりました。 デフォルト:40 秒
    • 複数のエラーで要求が失敗しました。 (40010):言語検出呼び出しで複数のエラーが発生しました。詳細については、個々のテキスト文字列の応答を参照してください。
    • <translator> 翻訳者が翻訳用に構成されていません。 (40012):指定された翻訳サービスが [翻訳者構成] でテキスト翻訳用に構成されていません。翻訳ツール構成の作成/変更については、「 翻訳ツール構成の作成」を参照してください。
    • 翻訳者構成バージョンが無効です。v3 に移行してください。 (40014):指定された翻訳サービスに関連付けられている翻訳者構成のバージョンは、指定されたテキスト翻訳方法をサポートしていません。詳細については、「 翻訳者構成のバージョン v3 への移行」を参照してください。
    • 不明なエラーが発生しました。(40051):エラーが他のカテゴリに該当しない場合にスローされるデフォルトのエラー。
    • テキスト ([テキスト] フィールド) が最大長を超えました。(40052):翻訳のために渡されたテキストが、対応する翻訳サービスでサポートされている最大長を超えています。
    • ソース言語が無効です。 (40053):渡された sourceLanguage パラメーターに、対応する翻訳サービスでサポートされていない言語コードが含まれています。
    • ターゲット言語が無効です。 (40054):targetLanguages パラメーターで渡された 1 つ以上の言語コードが、対応する翻訳サービスでサポートされていません。
    • 資格情報がないか無効であるため、要求は許可されません (40055):[接続 & 資格情報] で翻訳サービス用に構成された認証情報が無効です。接続と資格情報の詳細については、「 動的翻訳の概要」を参照してください。
    • テキストをターゲット言語に翻訳できません。(40056):指定された翻訳サービスは、渡されたテキストを指定されたターゲット言語に翻訳できません。

    この例は、Microsoft の翻訳サービスを使用してテキスト文字列のリストをフランス語とイタリア語に翻訳するポータルクライアントスクリプトのコードを示しています。

    dynamicTranslation.getTranslations(["Translate first text using portal from client", "Translate second text using portal from client"], {
      "targetLanguages": ["fr", "it"],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": "Microsoft"
     }).then(function(res){console.log(res);}, function(res){console.log(res);});

    応答:

    {
      "translations":[
        {
          "isError":false,
          "textTranslations":[
            {
              "targetLanguage":"it",
              "translatedText":"Tradurre il primo testo utilizzando il portale dal client"
            },
            {
              "targetLanguage":"fr",
              "translatedText":"Traduire le premier texte à l'aide du portail à partir du client"
            }
          ],
          "detectedLanguage": {"name":"en", "code":"en"}
        },
        {
          "isError":false,
          "textTranslations":[
            {
              "targetLanguage":"it",
              "translatedText":"Traduci il secondo testo utilizzando il portale dal client"
            },
            {
              "targetLanguage":"fr",
              "translatedText":"Traduire le deuxième texte à l'aide du portail à partir du client"
            }
          ],
          "detectedLanguage": {"name":"en", "code":"en"}
        }
      ],
      "translator":"Microsoft",
      "status":"Success"
    }

    この例は、渡された 2 つのテキスト文字列のうちの 1 つが無効である場合に Partial というステータスを返すポータルのクライアントスクリプトを示しています。プラットフォームのクライアントスクリプトでこのコード例を使用するには、dynamicTranslation.getTranslationsDynamicTranslation.getTranslations に変更します。

    dynamicTranslation.getTranslations(["Translate first text using portal from client", ""], {
      "targetLanguages": ["fr", "it"],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": "Microsoft"
     }).then(function(res){console.log(res);}, function(res){console.log(res);});

    応答:

    {
      "translations":[
        {
          "isError":false,
          "textTranslations":[
            {
              "targetLanguage":"it",
              "translatedText":"Tradurre il primo testo utilizzando il portale dal client"
            },
            {
              "targetLanguage":"fr",
              "translatedText":"Traduire le premier texte à l'aide du portail à partir du client"
            }
          ],
          "detectedLanguage":{"name":"en", "code":"en"}
        },
        {
          "isError":true,
          "code":"40000",
          "message":"Text is missing or invalid"
        }
      ],
     "translator":"Microsoft",
     "status":"Partial"
    }

    この例は、無効な翻訳サービスが渡されたときにエラーをスローするポータルのクライアントスクリプトを示しています。プラットフォームのクライアントスクリプトでこのコード例を使用するには、dynamicTranslation.getTranslationsDynamicTranslation.getTranslations に変更します。

    dynamicTranslation.getTranslations(["Translate first text using portal from client", "Translate second text using portal from client"], {
      "targetLanguages": ["fr", "it"],
      "additionalParameters": [{
        "parameterName": "texttype",
        "parameterValue": "plain"
      }],
      "translator": 123
     }).then(function(res){console.log(res);}, function(res){console.log(res);});

    応答:

    {"code":"40003","message":"Translator (\"translator\" field) is invalid","status":"Error"}

    DynamicTranslation - isEnabled(文字列 translator)

    DynamicTranslation API のさまざまなメソッドを翻訳サービスに対して有効にするかどうかを決定します。

    特定の翻訳サービスを渡すと、メソッドはその翻訳サービスのメソッドのアクティブ化をチェックします。それ以外の場合、メソッドはデフォルトの翻訳サービスをチェックします。

    ポータルのクライアントスクリプトからこのメソッドを呼び出す場合は、クラス名 dynamicTranslation を使用します。例えば dynamicTranslation.isEnabled() とします。プラットフォームのクライアントスクリプトからこのメソッドを呼び出す場合は、クラス名 DynamicTranslation を使用します。例えば DynamicTranslation.isEnabled() とします。

    表 : 9. パラメーター
    名前 タイプ 説明
    translator 文字列 オプション。メソッドがアクティブかどうかを確認するために使用する翻訳サービス。翻訳サービスは、[翻訳者構成] メニューで構成します。

    可能な値 - 大文字と小文字を区別しない:

    • Google
    • Microsoft
    • IBM
    • <custom>
    注:
    カスタム翻訳サービスを使用するには、最初にインスタンスで翻訳サービスを設定する必要があります。詳細については、「 翻訳サービスプロバイダーとの統合」を参照してください。

    デフォルト:デフォルトの翻訳サービス。

    表 : 10. 返される内容
    タイプ 説明
    batchDetection getDetectedLanguages() メソッドが有効かどうかを示すフラグ。
    可能な値:
    • false:無効
    • true:有効

    データタイプ:ブーリアン

    batchTranslation getTranslations() メソッドが有効かどうかを示すフラグ。
    可能な値:
    • false:無効
    • true:有効

    データタイプ:ブーリアン

    detection getDetectedLanguage() メソッドが有効かどうかを示すフラグ。
    可能な値:
    • false:無効
    • true:有効

    データタイプ:ブーリアン

    translation getTranslation() メソッドが有効かどうかを示すフラグ。
    可能な値:
    • false:無効
    • true:有効

    データタイプ:ブーリアン

    エラーメッセージ API が返す可能性があるエラーメッセージとその根本原因の表示を以下に示します。
    • 翻訳者 ([翻訳者] フィールド) が無効です。 (40003):渡された translator パラメーターが文字列ではありません。

    この例は、Microsoft の翻訳サービスに対して DynamicTranslation メソッドが有効になっているかどうかをチェックするクライアントスクリプトを示しています。プラットフォームのクライアントスクリプトでこのコード例を使用するには、DynamicTranslation.getTranslationsdynamicTranslation.getTranslations に変更します。

    DynamicTranslation.isEnabled('Microsoft').then(function(res){console.log(res);}, function(res){console.log(res);});

    出力:

    {"detection":true,"batchTranslation":true,"batchDetection":true,"translation":true}

    この例は、無効な翻訳サービスが渡されたときにエラーをスローするクライアントスクリプトを示しています。プラットフォームのクライアントスクリプトでこのコード例を使用するには、DynamicTranslation.getTranslationsdynamicTranslation.getTranslations に変更します。

    DynamicTranslation.isEnabled(123).then(function(res){console.log(res);}, function(res){console.log(res);});

    出力:

    {"code":"40003","message":"Translator (\"translator\" field) is invalid"}