DynamicTranslation - 클라이언트

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기44분
  • DynamicTranslation API는 번역 서비스 공급자를 사용하여 실시간으로 텍스트를 여러 언어로 번역하는 메서드를 제공합니다. 이 API는 표준 클라이언트와 Angular 기반 서비스 포털 클라이언트 모두에서 사용할 수 있습니다.

    또한 이 API를 사용하여 특정 문자열의 언어를 감지하고 번역 서비스에 대해 DynamicTranslation 메서드를 사용할 수 있는지 여부를 확인할 수 있습니다. 이 API를 사용하면 사용자 인터페이스에 대한 원활한 현지화 환경을 만들 수 있으며, 이를 통해 하나의 인터페이스로 여러 국가에 서비스를 제공할 수 있습니다.

    현재 이 API는 Microsoft Azure Translator Service, IBM Watson Translator Service 및 Google Cloud Translator Service의 세 가지 번역 서비스 제공자를 지원합니다. 인스턴스 내에서 다른 번역 서비스를 구성한 다음 DynamicTranslation API를 사용하여 텍스트를 번역할 수도 있습니다.

    이 API를 사용하려면 Dynamic Translation 플러그인을 활성화해야 합니다. 이 플러그인에 대한 자세한 내용과 Dynamic Translation에 대한 추가 정보는 Dynamic Translation 개요를 참조하십시오. 또한 위젯에서 이 API를 서비스 포털 사용하려면 dynamicTranslation 서비스를 위젯 클라이언트 스크립트 함수에 삽입해야 합니다.

    주:
    클라이언트에서 사용할 클래스의 이름은 dynamicTranslation이고, 표준 클라이언트에서 사용할 서비스 포털 클래스의 이름은 DynamicTranslation입니다.

    DynamicTranslation - getDetectedLanguage(문자열 텍스트, 객체 parms)

    전달된 텍스트의 언어를 탐지합니다.

    번역기를 전달하면 메서드는 해당 번역 서비스를 사용하여 소스 언어를 검색합니다. 그렇지 않으면 기본 번역 서비스에서 탐지를 수행합니다. 제공하는 텍스트 문자열에 적절한 언어 탐지를 사용할 수 있는 충분한 단어가 포함되어 있는지 확인합니다.

    응답에는 검색된 언어 외에도 다른 가능한 언어 대안과 함께 검색의 신뢰도 수준이 포함됩니다. 번역기가 전달되지 않은 경우 메서드는 언어를 검색하는 데 사용되는 기본 번역 서비스도 반환합니다.

    표 1. 매개변수
    이름 유형 설명
    텍스트 문자열 언어를 탐지하는 데 사용할 텍스트입니다.
    팔름 객체 옵션입니다. 추가 변환 매개 변수를 포함하는 JSON 객체입니다.
    "parms": {
      "translator": "String"
    }
    parms.translator 문자열 문자열의 언어를 탐지하는 데 사용할 번역 서비스입니다. 번역 서비스는 번역기 구성 메뉴에서 구성되며 번역기 구성 [sn_dt_translator_configuration] 테이블에 있습니다.

    가능한 값 - 대/소문자를 구분하지 않음:

    • Google
    • Microsoft
    • IBM
    • <사용자 지정>
    주:
    사용자 지정 번역 서비스를 사용하려면 먼저 인스턴스에서 번역 서비스를 구성해야 합니다. 자세한 내용은 번역 서비스 공급자와 통합을 참조하세요.

    기본값: 번역기 구성 [sn_dt_translator_configuration] 테이블에 구성된 번역 서비스.

    표 2. 반환
    유형 설명
    대체 일치할 수 있는 다른 언어를 설명하는 객체의 배열입니다.

    데이터 유형: 배열

    "alternatives": [
      {
        "code": "String",
        "confidence": "String",
        "name": "String"
      }
    ]
    alternatives.code 대체 언어의 언어 코드입니다.

    데이터 유형: 문자열

    alternatives.confidence 대체 언어의 신뢰도 수준을 나타내는 부동 소수점 값입니다. 값은 0에서 1 사이입니다. 값이 낮을수록 신뢰 수준이 낮아집니다.

    데이터 유형: 문자열

    alternatives.name 대체 언어의 언어 코드입니다.

    데이터 유형: 문자열

    탐지된 언어 탐지된 언어에 대한 설명입니다.

    데이터 유형: 객체

    "detectedLanguage": {
      "code": "String",
      "confidence": "String",
      "name": "String"
    }
    detectedLanguage.code 탐지된 언어의 언어 코드

    데이터 유형: 문자열

    detectedLanguage.confidence 대체 언어의 신뢰도 수준을 나타내는 부동 소수점 값입니다. 값은 0에서 1 사이입니다. 값이 낮을수록 신뢰 수준이 낮아집니다.

    데이터 유형: 문자열

    detectedLanguage.name 탐지된 언어의 언어 코드

    데이터 유형: 문자열

    번역기 언어를 탐지하는 데 사용되는 번역 서비스입니다.

    데이터 유형: 문자열

    오류 메시지 다음은 메서드가 반환할 수 있는 오류 메시지와 오류의 근본 원인에 대한 표시입니다.
    • 텍스트("텍스트" 필드)가 누락되었거나 잘못되었습니다. (40000): 언어를 검색하는 텍스트가 누락되었거나 문자열이 아닙니다.
    • 동적 변환 플러그인이 설치되어 있지 않습니다. (40001): com.glide.dynamic_translation 플러그인을 활성화하지 않고 동적 변환 API가 호출되었습니다. 이 플러그인 활성화에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.
    • 잘못된 번역기("번역기" 필드)입니다. (40003): 전달된 매개 변수가 문자열이 translator 아닙니다.
    • <번역기> 번역기가 구성되어 있지 않습니다. (40004): 지정된 번역 서비스가 번역기 구성에 구성되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • <번역기> 번역기가 비활성 상태입니다. (40005): 지정된 번역 서비스가 번역기 구성에서 활성 으로 설정되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 추가 매개변수가 잘못되었습니다. (40006): 전달된 추가 매개 변수가 개체가 아닙니다.
    • 최대 시간 제한이 초과되었습니다. (40009): 변환 구성에 지정된 정의된 시간 제한 값보다 작업이 오래 걸렸습니다. 기본값: 40초
    • 기본 번역기가 탐지하도록 구성되어 있지 않습니다. (40011): 번역기 구성에서 언어 감지에 대한 기본 번역 서비스가 지정되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • <번역기> 번역기가 탐지하도록 구성되어 있지 않습니다. (40013): 지정된 번역 서비스가 번역기 구성에서 언어 감지에 대해 구성되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 알 수 없는 오류가 발생했습니다. (40051): 오류가 다른 범주에 속하지 않을 때 throw되는 기본 오류입니다.
    • 텍스트("텍스트" 필드)가 최대 길이를 초과했습니다. (40052): 언어 감지를 위해 전달된 텍스트가 해당 번역 서비스에서 지원하는 최대 길이를 초과합니다.
    • 자격 증명이 누락되었거나 잘못되어 요청이 인증되지 않았습니다 (40055): 연결 및 자격 증명에서 번역 서비스에 대해 구성된 자격 증명이 잘못되었습니다. 연결 및 자격 증명에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.

    이 예제는 표준 클라이언트 스크립트에서 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" }
        ]                  
     }

    이 예제에서는 잘못된 번역 서비스가 전달될 때 오류를 throw하는 클라이언트 스크립트를 보여 줍니다.

    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(배열 텍스트, 객체 매개변수)

    전달된 텍스트 문자열의 언어를 탐지합니다.

    번역기를 전달하면 메서드는 해당 번역 서비스를 사용하여 소스 언어를 검색합니다. 그렇지 않으면 기본 번역 서비스에서 탐지를 수행합니다. 제공하는 텍스트 문자열에 적절한 언어 탐지를 사용할 수 있는 충분한 단어가 포함되어 있는지 확인합니다.

    응답에는 검색된 언어 외에도 다른 가능한 언어 대안과 함께 검색의 신뢰도 수준이 포함됩니다. 번역기가 전달되지 않은 경우 메서드는 언어를 검색하는 데 사용되는 기본 번역 서비스도 반환합니다.

    포털 클라이언트 스크립트에서 이 메서드를 호출할 때 dynamicTranslation 클래스 이름을 사용합니다. dynamicTranslation.getTranslations()와 같은 것입니다. 플랫폼 클라이언트 스크립트에서 호출할 때 클래스 이름 DynamicTranslation을 사용합니다. 예를 들어 DynamicTranslation.getTranslations()를 사용할 수 있습니다.

    표 3. 매개변수
    이름 유형 설명
    팔름 객체 옵션입니다. 추가 변환 매개 변수를 포함하는 JSON 객체입니다.
    "parms": {
      "translator": "String"
    }
    parms.translator 문자열 문자열의 언어를 탐지하는 데 사용할 번역 서비스입니다. 번역 서비스는 번역기 구성 메뉴에서 구성되며 번역기 구성 [sn_dt_translator_configuration] 테이블에 있습니다.

    가능한 값 - 대/소문자를 구분하지 않음:

    • Google
    • Microsoft
    • IBM
    • <사용자 지정>
    주:
    사용자 지정 번역 서비스를 사용하려면 먼저 인스턴스에서 번역 서비스를 구성해야 합니다. 자세한 내용은 번역 서비스 공급자와 통합을 참조하세요.

    기본값: 번역기 구성 [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 메서드 호출에 대한 응답의 상태입니다.
    가능한 값:
    • 오류
    • 부분
    • 성공

    데이터 유형: 문자열

    번역기 언어를 탐지하는 데 사용되는 번역 서비스입니다.

    데이터 유형: 문자열

    오류 메시지 다음은 메서드가 반환할 수 있는 오류 메시지와 오류의 근본 원인에 대한 표시입니다.
    • 텍스트("텍스트" 필드)가 누락되었거나 잘못되었습니다. (40000): 언어를 검색하는 텍스트가 누락되었거나 문자열이 아닙니다.
    • 동적 변환 플러그인이 설치되어 있지 않습니다. (40001): com.glide.dynamic_translation 플러그인을 활성화하지 않고 동적 변환 API가 호출되었습니다. 이 플러그인 활성화에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.
    • 잘못된 번역기("번역기" 필드)입니다. (40003): 전달된 매개 변수가 문자열이 translator 아닙니다.
    • <번역기> 번역기가 구성되어 있지 않습니다. (40004): 지정된 번역 서비스가 번역기 구성에 구성되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • <번역기> 번역기가 비활성 상태입니다. (40005): 지정된 번역 서비스가 번역기 구성에서 활성 으로 설정되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 추가 매개변수가 잘못되었습니다. (40006): 전달된 추가 매개 변수가 개체가 아닙니다.
    • 최대 시간 제한이 초과되었습니다. (40009): 변환 구성에 지정된 정의된 시간 제한 값보다 작업이 오래 걸렸습니다. 기본값: 40초
    • 여러 오류로 요청에 실패했습니다. (40010): 언어 검색 호출에서 여러 오류가 발생 했습니다. 자세한 내용은 각 개별 텍스트 문자열에 대한 응답을 참조하십시오.
    • 기본 번역기가 탐지하도록 구성되어 있지 않습니다. (40011): 번역기 구성에서 언어 감지에 대한 기본 번역 서비스가 지정되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • <번역기> 번역기가 탐지하도록 구성되어 있지 않습니다. (40013): 지정된 번역 서비스가 번역기 구성에서 언어 감지에 대해 구성되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 번역기 구성 버전이 잘못되었습니다. v3으로 마이그레이션합니다. (40014): 지정된 번역 서비스에 대한 번역기 구성의 연결된 버전이 지정된 텍스트 번역 메서드를 지원하지 않습니다. 자세한 내용은 번역기 구성의 버전 v3으로 마이그레이션을 참조하세요.
    • 알 수 없는 오류가 발생했습니다. (40051): 오류가 다른 범주에 속하지 않을 때 throw되는 기본 오류입니다.
    • 텍스트("텍스트" 필드)가 최대 길이를 초과했습니다. (40052): 언어 감지를 위해 전달된 텍스트가 해당 번역 서비스에서 지원하는 최대 길이를 초과합니다.
    • 자격 증명이 누락되었거나 잘못되어 요청이 인증되지 않았습니다 (40055): 연결 및 자격 증명에서 번역 서비스에 대해 구성된 자격 증명이 잘못되었습니다. 연결 및 자격 증명에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.

    이 예시에서는 Microsoft Translation Service를 사용하여 전달된 문자열의 언어로 영어를 탐지하는 포털 클라이언트 스크립트의 코드를 보여줍니다.

    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"}
          ]
        }
      ]
    }

    이 예시에서는 두 개의 텍스트 문자열이 전달되고 그 중 하나가 유효하지 않을 때 부분 상태를 반환하는 포털 클라이언트 스크립트의 코드를 보여줍니다. 플랫폼 클라이언트 스크립트에서 이 코드 예제를 사용하려면 dynamicTranslation.getDetectedLanguages를 DynamicTranslation.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.getDetectedLanguages를 DynamicTranslation.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)

    전달된 텍스트를 하나 이상의 언어로 번역합니다.

    이 메서드는 Microsoft Azure Translator Service, IBM Watson Translator Service 및 Google Cloud Translator Service와 같은 번역 서비스를 사용하여 번역을 수행합니다. 변환 매개변수를 전달하지 않으면 이 메서드는 시스템 기본값을 사용합니다.

    표 5. 매개변수
    이름 유형 설명
    textToTranslate 문자열 번역할 텍스트입니다.
    팔름 객체 옵션입니다. 추가 변환 매개 변수를 포함하는 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 Service 전용입니다.

    parms.additionalParameters.parameterValue 문자열 옵션입니다. 연결된 키의 값입니다.

    유효한 값은 다음과 같습니다.

    • plain: 표준 텍스트 문자열
    • html: HTML 텍스트 문자열

    기본값: 일반

    parms.sourceLanguage 문자열 옵션입니다. 소스 텍스트의 언어 코드입니다.

    기본값: 번역 서비스가 소스 언어를 검색합니다.

    parms.targetLanguages 배열 옵션입니다. 텍스트를 번역하는 데 사용할 언어 코드 목록입니다. 이 메서드는 각 언어 코드에 대해 번역된 텍스트를 반환합니다.

    기본값: 사용자 기본 설정 언어입니다.

    parms.translator 문자열 옵션입니다. 텍스트를 번역하는 데 사용할 번역 서비스입니다(대소문자 구분 없음).

    유효한 값은 다음과 같습니다.

    • Google
    • Microsoft
    • IBM
    • <사용자 지정>
    주:
    사용자 지정 번역 서비스를 사용하려면 먼저 인스턴스에서 번역 서비스를 구성해야 합니다. 자세한 내용은 번역 서비스 공급자와 통합을 참조하세요.

    기본값: 번역기 구성 [sn_dt_translator_configuration] 테이블에 구성된 번역 서비스.

    표 6. 반환
    유형 설명
    탐지된 언어 탐지된 언어에 대한 설명입니다.

    데이터 유형: 객체

    "detectedLanguage": {
      "code": "String",
      "name": "String"
    }
    detectedLanguage.code 탐지된 언어의 언어 코드

    데이터 유형: 문자열

    detectedLanguage.name 탐지된 언어의 언어 코드

    데이터 유형: 문자열

    번역 언어 번역을 설명하는 객체의 배열입니다.

    데이터 유형: 배열

    translations": [
      {
        "targetLanguage": "String",
        "translatedText": "String"
      }
    ]
    translations.targetLanguage 소스 텍스트가 번역된 언어 코드입니다.

    데이터 유형: 문자열

    translations.translated텍스트 번역 결과.

    데이터 유형: 문자열

    번역기 언어를 탐지하는 데 사용되는 번역 서비스입니다.

    데이터 유형: 문자열

    오류 메시지 다음은 메서드가 반환할 수 있는 오류 메시지와 근본 원인에 대한 표시입니다.
    • 텍스트("텍스트" 필드)가 누락되었거나 잘못되었습니다. (40000): 번역할 텍스트가 누락되었거나 문자열이 아닙니다.
    • 동적 변환 플러그인이 설치되어 있지 않습니다. (40001): com.glide.dynamic_translation 플러그인을 활성화하지 않고 동적 변환 API가 호출되었습니다. 이 플러그인 활성화에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.
    • 기본 번역기가 번역용으로 구성되어 있지 않습니다. (40002): 번역기 구성에서 기본 번역 서비스로 번역 서비스가 선택되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 잘못된 번역기("번역기" 필드)입니다. (40003): 전달된 매개 변수가 문자열이 translator 아닙니다.
    • <번역기> 번역기가 구성되어 있지 않습니다. (40004): 지정된 번역 서비스가 번역기 구성에 구성되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • <번역기> 번역기가 비활성 상태입니다. (40005): 지정된 번역 서비스가 번역기 구성에서 활성 으로 설정되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 추가 매개변수가 잘못되었습니다. (40006): 전달된 추가 매개 변수가 개체가 아닙니다.
    • 잘못된 대상 언어("targetLanguages" 필드)입니다. (40007): targetLanguages 매개 변수가 호출에 전달되지만 다음 이유 중 하나로 인해 유효하지 않습니다.
      • 값은 배열이 아닙니다.
      • 배열이 비어 있음
      • 항목 중 하나 또는 여러 개가 문자열이 아닙니다.
    • 잘못된 소스 언어("sourceLanguage" 필드)입니다. (40008): sourceLanguage 매개 변수가 호출에 전달되지만 값이 String이 아닙니다.
    • 최대 시간 제한이 초과되었습니다. (40009): 변환 구성에 지정된 정의된 시간 제한 값보다 작업이 오래 걸렸습니다. 기본값: 40초
    • <번역기> 번역기가 번역용으로 구성되어 있지 않습니다. (40012): 지정된 번역 서비스가 번역기 구성에서 텍스트 번역에 대해 구성되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 알 수 없는 오류가 발생했습니다. (40051): 오류가 다른 범주에 속하지 않을 때 throw되는 기본 오류입니다.
    • 텍스트("텍스트" 필드)가 최대 길이를 초과했습니다. (40052): 번역을 위해 전달된 텍스트가 해당 번역 서비스에서 지원하는 최대 길이를 초과합니다.
    • 소스 언어가 잘못되었습니다. (40053): 전달된 sourceLanguage 매개 변수에는 해당 번역 서비스에서 지원하지 않는 언어 코드가 포함되어 있습니다.
    • 대상 언어가 잘못되었습니다. (40054): 매개 변수에 전달된 targetLanguages 언어 코드 중 하나 이상이 해당 번역 서비스에서 지원되지 않습니다.
    • 자격 증명이 누락되었거나 잘못되어 요청이 인증되지 않았습니다 (40055): 연결 및 자격 증명에서 번역 서비스에 대해 구성된 자격 증명이 잘못되었습니다. 연결 및 자격 증명에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.
    • 텍스트를 대상 언어로 번역할 수 없습니다. (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"}
    }

    이 예제에서는 잘못된 대상 언어가 전달될 때 오류를 throw하는 클라이언트 스크립트를 보여 줍니다.

    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(배열 텍스트, 객체 parms)

    전달된 텍스트 문자열을 하나 이상의 언어로 번역합니다.

    이 메서드는 Microsoft Azure Translator Service, IBM Watson Translator Service 및 Google Cloud Translator Service와 같은 번역 서비스를 사용하여 번역을 수행합니다. 변환 매개변수를 전달하지 않으면 이 메서드는 시스템 기본값을 사용합니다.

    포털 클라이언트 스크립트에서 이 메서드를 호출할 때 dynamicTranslation 클래스 이름을 사용합니다. dynamicTranslation.getTranslations()와 같은 것입니다. 플랫폼 클라이언트 스크립트에서 호출할 때 클래스 이름 DynamicTranslation을 사용합니다. 예를 들어 DynamicTranslation.getTranslations()를 사용할 수 있습니다.

    표 7. 매개변수
    이름 유형 설명
    텍스트 배열 번역할 텍스트 찌르기 목록입니다.
    팔름 객체 옵션입니다. 추가 변환 매개 변수를 포함하는 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 Service 전용입니다.

    parms.additionalParameters.parameterValue 문자열 옵션입니다. 연결된 키의 값입니다.

    유효한 값은 다음과 같습니다.

    • plain: 표준 텍스트 문자열
    • html: HTML 텍스트 문자열

    기본값: 일반

    parms.sourceLanguage 문자열 옵션입니다. 소스 텍스트의 언어 코드입니다.

    기본값: 번역 서비스가 소스 언어를 검색합니다.

    parms.targetLanguages 배열 옵션입니다. 텍스트를 번역하는 데 사용할 언어 코드 목록입니다. 이 메서드는 각 언어 코드에 대해 번역된 텍스트를 반환합니다.

    기본값: 사용자 기본 설정 언어입니다.

    parms.translator 문자열 옵션입니다. 텍스트를 번역하는 데 사용할 번역 서비스입니다(대소문자 구분 없음).

    유효한 값은 다음과 같습니다.

    • Google
    • Microsoft
    • IBM
    • <사용자 지정>
    주:
    사용자 지정 번역 서비스를 사용하려면 먼저 인스턴스에서 번역 서비스를 구성해야 합니다. 자세한 내용은 번역 서비스 공급자와 통합을 참조하세요.

    기본값: 번역기 구성 [sn_dt_translator_configuration] 테이블에 구성된 번역 서비스.

    표 8. 반환
    유형 설명
    status 메서드 호출에 대한 응답의 상태입니다.
    가능한 값:
    • 오류
    • 부분
    • 성공

    데이터 유형: 문자열

    번역 언어 번역을 설명하는 객체의 배열입니다.

    데이터 유형: 배열

    translations": [
      {
        "isError": Boolean;
        "detectedLanguage": {Object},
        "textTranslations": [Array]
      }
    ]
    translations.isError 텍스트의 번역으로 인해 오류가 발생했는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 오류가 발생했습니다.
    • false: 텍스트 번역이 성공했습니다.

    데이터 유형: 부울

    translations.detected언어 탐지된 언어에 대한 설명입니다.

    데이터 유형: 객체

    "detectedLanguage": {
      "code": "String",
      "name": "String"
    }
    translations.detectedLanguage.code 탐지된 언어의 언어 코드

    데이터 유형: 문자열

    translations.detectedLanguage.name 탐지된 언어의 언어 코드

    데이터 유형: 문자열

    텍스트Tranlations 객체의 배열입니다. 텍스트 문자열을 번역하는 데 사용되는 언어에 대한 설명입니다.
    "textTranslation": {
      "targetLanguage": "String",
      "translatedText": "String"
    }
    textTranslations.targetLanguage 소스 텍스트가 번역된 언어 코드입니다.

    데이터 유형: 문자열

    textTranslations.translatedText 번역 결과.

    데이터 유형: 문자열

    번역기 텍스트를 번역하는 데 사용되는 번역 서비스입니다.

    데이터 유형: 문자열

    오류 메시지 다음은 메서드가 반환할 수 있는 오류 메시지와 근본 원인에 대한 표시입니다.
    • 텍스트("텍스트" 필드)가 누락되었거나 잘못되었습니다. (40000): 번역할 텍스트가 누락되었거나 문자열이 아닙니다.
    • 동적 변환 플러그인이 설치되어 있지 않습니다. (40001): com.glide.dynamic_translation 플러그인을 활성화하지 않고 동적 변환 API가 호출되었습니다. 이 플러그인 활성화에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.
    • 기본 번역기가 번역용으로 구성되어 있지 않습니다. (40002): 번역기 구성에서 기본 번역 서비스로 번역 서비스가 선택되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 잘못된 번역기("번역기" 필드)입니다. (40003): 전달된 매개 변수가 문자열이 translator 아닙니다.
    • <번역기> 번역기가 구성되어 있지 않습니다. (40004): 지정된 번역 서비스가 번역기 구성에 구성되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • <번역기> 번역기가 비활성 상태입니다. (40005): 지정된 번역 서비스가 번역기 구성에서 활성 으로 설정되어 있지 않습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 추가 매개변수가 잘못되었습니다. (40006): 전달된 추가 매개 변수가 개체가 아닙니다.
    • 잘못된 대상 언어("targetLanguages" 필드)입니다. (40007): targetLanguages 매개 변수가 호출에 전달되지만 다음 이유 중 하나로 인해 유효하지 않습니다.
      • 값은 배열이 아닙니다.
      • 배열이 비어 있음
      • 항목 중 하나 또는 여러 개가 문자열이 아닙니다.
    • 잘못된 소스 언어("sourceLanguage" 필드)입니다. (40008): sourceLanguage 매개 변수가 호출에 전달되지만 값이 String이 아닙니다.
    • 최대 시간 제한이 초과되었습니다. (40009): 변환 구성에 지정된 정의된 시간 제한 값보다 작업이 오래 걸렸습니다. 기본값: 40초
    • 여러 오류로 요청에 실패했습니다. (40010): 언어 검색 호출에서 여러 오류가 발생 했습니다. 자세한 내용은 각 개별 텍스트 문자열에 대한 응답을 참조하십시오.
    • <번역기> 번역기가 번역용으로 구성되어 있지 않습니다. (40012): 지정된 번역 서비스가 번역기 구성에서 텍스트 번역에 대해 구성되지 않았습니다. 번역기 구성 만들기/수정에 대한 자세한 내용은 번역기 구성 만들기를 참조하세요.
    • 번역기 구성 버전이 잘못되었습니다. v3으로 마이그레이션합니다. (40014): 지정된 번역 서비스에 대한 번역기 구성의 연결된 버전이 지정된 텍스트 번역 메서드를 지원하지 않습니다. 자세한 내용은 번역기 구성의 버전 v3으로 마이그레이션을 참조하세요.
    • 알 수 없는 오류가 발생했습니다. (40051): 오류가 다른 범주에 속하지 않을 때 throw되는 기본 오류입니다.
    • 텍스트("텍스트" 필드)가 최대 길이를 초과했습니다. (40052): 번역을 위해 전달된 텍스트가 해당 번역 서비스에서 지원하는 최대 길이를 초과합니다.
    • 소스 언어가 잘못되었습니다. (40053): 전달된 sourceLanguage 매개 변수에는 해당 번역 서비스에서 지원하지 않는 언어 코드가 포함되어 있습니다.
    • 대상 언어가 잘못되었습니다. (40054): 매개 변수에 전달된 targetLanguages 언어 코드 중 하나 이상이 해당 번역 서비스에서 지원되지 않습니다.
    • 자격 증명이 누락되었거나 잘못되어 요청이 인증되지 않았습니다 (40055): 연결 및 자격 증명에서 번역 서비스에 대해 구성된 자격 증명이 잘못되었습니다. 연결 및 자격 증명에 대한 자세한 내용은 Dynamic Translation 개요를 참조하십시오.
    • 텍스트를 대상 언어로 번역할 수 없습니다. (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"
    }

    이 예시에서는 전달된 두 텍스트 문자열 중 하나가 올바르지 않을 때 부분 상태를 반환하는 포털 클라이언트 스크립트를 보여줍니다. 플랫폼 클라이언트 스크립트에 이 코드 예제를 사용하려면 dynamicTranslation.getTranslations를 DynamicTranslation.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.getTranslations를 DynamicTranslation.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(문자열 번역기)

    DynamicTranslation API의 다양한 메서드를 번역 서비스에 사용할 수 있는지 여부를 결정합니다.

    특정 번역 서비스를 전달하면 메서드는 해당 번역 서비스에 대한 메서드 활성화를 확인합니다. 그렇지 않으면 메서드는 기본 번역 서비스를 확인합니다.

    포털 클라이언트 스크립트에서 이 메서드를 호출할 때 dynamicTranslation 클래스 이름을 사용합니다. dynamicTranslation.isEnabled()와 같은 것입니다. 플랫폼 클라이언트 스크립트에서 호출할 때 클래스 이름 DynamicTranslation을 사용합니다. 예를 들면 DynamicTranslation.isEnabled()와 같습니다.

    표 9. 매개변수
    이름 유형 설명
    번역기 문자열 옵션입니다. 메서드가 활성 상태인지 여부를 확인하는 데 사용할 번역 서비스입니다. 번역 서비스는 번역기 구성 메뉴에서 구성됩니다.

    가능한 값 - 대/소문자를 구분하지 않음:

    • Google
    • Microsoft
    • IBM
    • <사용자 지정>
    주:
    사용자 지정 번역 서비스를 사용하려면 먼저 인스턴스에서 번역 서비스를 구성해야 합니다. 자세한 내용은 번역 서비스 공급자와 통합을 참조하세요.

    기본값: 기본 번역 서비스입니다.

    표 10. 반환
    유형 설명
    batchDetection getDetectedLanguage() 메서드를 사용할 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 사용
    • false: 사용 안 함

    데이터 유형: 부울

    배치번역 getTranslations() 메서드를 사용할 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 사용
    • false: 사용 안 함

    데이터 유형: 부울

    검색 getDetectedLanguage() 메서드를 사용할 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 사용
    • false: 사용 안 함

    데이터 유형: 부울

    번역 getTranslation() 메서드를 사용할 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • true: 사용
    • false: 사용 안 함

    데이터 유형: 부울

    오류 메시지 다음은 API가 반환할 수 있는 오류 메시지와 근본 원인에 대한 표시입니다.
    • 잘못된 번역기("번역기" 필드)입니다. (40003): 전달된 매개 변수가 문자열이 translator 아닙니다.

    이 예제에서는 Microsoft Translation 서비스에 대해 DynamicTranslation 메서드를 사용할 수 있는지 여부를 확인하는 클라이언트 스크립트를 보여 줍니다. 플랫폼 클라이언트 스크립트에 이 코드 예제를 사용하려면 DynamicTranslation.getTranslations를 dynamicTranslation.getTranslations로 변경합니다.

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

    출력:

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

    이 예제에서는 잘못된 번역 서비스가 전달될 때 오류를 throw하는 클라이언트 스크립트를 보여 줍니다. 플랫폼 클라이언트 스크립트에 이 코드 예제를 사용하려면 DynamicTranslation.getTranslations를 dynamicTranslation.getTranslations로 변경합니다.

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

    출력:

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