DynamicTranslation - 범위 지정됨

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기36분
  • DynamicTranslation API는 번역 서비스 공급자를 사용하여 텍스트를 실시간으로 여러 언어로 번역하는 메서드를 제공합니다.

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

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

    서버 측 스크립트에서 이러한 메서드를 사용하는 경우 sn_dt_api 네임스페이스 식별자를 사용합니다. 이 API를 사용하려면 먼저 DynamicTranslation (com.glide.dynamic_translation) 플러그인을 활성화해야 합니다. 이 플러그인에 대한 자세한 내용과 에 대한 동적 변환추가 정보는 동적 변환 개요를 참조하십시오.

    DynamicTranslation - getDetectedLanguage(문자열 텍스트, 객체 매개변수)

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

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

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

    표 1. 매개변수
    이름 유형 설명
    텍스트 문자열 언어를 탐지하는 데 사용할 텍스트입니다.
    파름 객체 옵션입니다. 추가 번역 매개변수를 포함하는 JSON 객체입니다.
    parms.translator 문자열 옵션입니다. 텍스트를 번역하는 데 사용할 번역 서비스(대소문자 구분 없음)입니다.

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

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

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

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

    데이터 유형: 배열

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

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    데이터 유형: 객체

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

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    이 예제는 IBM의 번역 서비스를 사용하여 영어로 된 문자열을 발견하는 서버 측 스크립트의 코드를 보여줍니다.

    var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":'IBM'});
     gs.info(JSON.stringify(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 = sn_dt_api.DynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":123});
     gs.info(JSON.stringify(detectedResponse));
    

    출력:

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

    DynamicTranslation - getDetectedLanguages(배열 텍스트, 객체 매개변수)

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

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

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

    표 3. 매개변수
    이름 유형 설명
    텍스트 배열 언어를 탐지하는 데 사용할 텍스트 문자열 목록입니다.
    파름 객체 옵션입니다. 추가 번역 매개변수를 포함하는 JSON 객체입니다.
    "parms": {
      "translator": "String"
    }
    parms.translator 문자열 문자열의 언어를 탐지하는 데 사용할 번역 서비스입니다. 번역 서비스는 번역기 구성 메뉴에서 구성됩니다.

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

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

    기본값: 번역기 구성 [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: 언어 탐지에 성공했습니다.

    데이터 유형: 부울

    상태 메서드 호출에 대한 응답의 상태입니다.
    가능한 값:
    • 오류
    • 부분
    • 성공

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    이 예제에서는 Microsoft 번역 서비스를 사용하여 전달된 문자열의 언어로 영어를 검색하는 서버 스크립트의 코드를 보여 줍니다.

    var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguages(["First text string language to detect", "Second text string language to detect"], {"translator": "Microsoft"});
    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"}
          ]
        }
      ]
    }

    이 예제에서는 두 개의 텍스트 문자열이 전달되고 그 중 하나가 잘못된 경우 Partial 상태를 반환하는 서버 스크립트의 코드를 보여 줍니다.

    var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguages(["First text string language to detect", ""], {"translator": "Microsoft"});
    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"
        }
      ]
    }

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

    var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguages(["First text string language to detect", "Second text string language to detect"], {"translator": "123"});
    gs.info(JSON.stringify(detectedResponse));

    출력

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

    DynamicTranslation - getTranslation(String textToTranslate, 객체 매개변수)

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

    이 메서드는 Microsoft Azure 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 문자열 옵션입니다. 연결된 키의 값입니다.

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

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

    기본값: 일반

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

    기본: 번역 서비스는 소스 언어를 탐지합니다.

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

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

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

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

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

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

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

    데이터 유형: 객체

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

    데이터 유형: 문자열

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

    데이터 유형: 문자열

    번역 언어 번역을 설명하는 목록입니다.

    데이터 유형: 객체 배열

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

    데이터 유형: 문자열

    translations.translatedText 번역 결과.

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    이 예제에서는 Microsoft의 번역 서비스를 사용하여 일반 텍스트를 영어(검색됨)에서 프랑스어 및 이탈리아어로 번역하는 서버 스크립트를 보여 줍니다.

    try {
      gs.info(JSON.stringify(sn_dt_api.DynamicTranslation.getTranslation("Translate this text using platform from server", {
        "targetLanguages": ["fr", "it"],
        "additionalParameters": [{
          "parameterName": "texttype",
          "parameterValue": "plain"
        }],
        "translator": "Microsoft"
      })));
    } catch (error) {
        gs.info(error.message);
    }

    응답:

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

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

    try {
        gs.info(JSON.stringify(sn_dt_api.DynamicTranslation.getTranslation("Translate this text using platform from server", {
            "targetLanguages": ["123"],
            "additionalParameters": [{
                "parameterName": "texttype",
                "parameterValue": "plain"
            }],
            "translator": "Microsoft"
        })));
    } catch (error) {
        gs.info(error.message);
    }

    응답:

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

    DynamicTranslation - getTranslations(배열 텍스트, 객체 매개변수)

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

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

    표 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 문자열 옵션입니다. 연결된 키의 값입니다.

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

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

    기본값: 일반

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

    기본: 번역 서비스는 소스 언어를 탐지합니다.

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

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

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

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

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

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

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

    데이터 유형: 문자열

    번역 언어 번역을 설명하는 목록입니다.

    데이터 유형: 배열

    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 번역 결과.

    데이터 유형: 문자열

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

    데이터 유형: 문자열

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

    이 예제에서는 Microsoft 번역 서비스를 사용하여 텍스트 문자열 목록을 프랑스어 및 이탈리아어로 번역하는 서버 쪽 스크립트의 코드를 보여 줍니다.

    try {
      gs.info(JSON.stringify(sn_dt_api.DynamicTranslation.getTranslations(["Translate first text using platform from server", "Translate second text using platform from server"], {
        "targetLanguages": ["fr", "it"],
        "additionalParameters": [{"parameterName": "texttype", "parameterValue": "plain"}],
        "translator": "Microsoft"
      })));
    } catch (error) {
        gs.error(error.message);
    }

    응답:

    {
      "translations":[
        {
          "isError":false,
          "textTranslations":[
            {
              "targetLanguage":"it",
              "translatedText":"Traduci il primo testo utilizzando la piattaforma dal server"
            },
            {
              "targetLanguage":"fr",
              "translatedText":"Traduire le premier texte à l'aide de la plate-forme à partir du serveur"
            }
          ],
          "detectedLanguage": {"name":"en", "code":"en"}
        },
        {
          "isError":false,
          "textTranslations":[
            {
              "targetLanguage":"it",
              "translatedText":"Traduci il secondo testo utilizzando la piattaforma dal server"
            },
            {
              "targetLanguage":"fr",
              "translatedText":"Traduire le deuxième texte à l'aide de la plate-forme à partir du serveur"
            }
          ],
          "detectedLanguage": {"name":"en", "code":"en"}
        }
      ],
      "translator":"Microsoft",
      "status":"Success"
    }

    이 예제에서는 텍스트 문자열에 전달된 두 가지 중 하나가 잘못되었을 때 Partial 상태를 반환하는 서버 스크립트를 보여 줍니다.

    try {
      gs.info(JSON.stringify(sn_dt_api.DynamicTranslation.getTranslations(["Translate first text using platform from server", ""], {
        "targetLanguages": ["fr", "it"],
        "additionalParameters": [{"parameterName": "texttype", "parameterValue": "plain"}],
        "translator": "Microsoft"
      })));
    } catch (error) {
        gs.error(error.message);
    }

    응답:

    {
      "translations":[
        {
          "isError":false,
          "textTranslations":[
            {
              "targetLanguage":"it",
              "translatedText":"Traduci il primo testo utilizzando la piattaforma dal server"
            },
            {
              "targetLanguage":"fr",
              "translatedText":"Traduire le premier texte à l'aide de la plate-forme à partir du serveur"
            }
          ],
          "detectedLanguage":{"name":"en", "code":"en"}
        },
        {
          "isError":true,
          "code":"40000",
          "message":"Text is missing or invalid"
        }
      ],
      "translator":"Microsoft",
      "status":"Partial"
    }

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

    try {
      gs.info(JSON.stringify(sn_dt_api.DynamicTranslation.getTranslations(["Translate first text using platform from server", "Translate second text using platform from server"], {
        "targetLanguages": ["fr", "it"],
        "additionalParameters": [{"parameterName": "texttype", "parameterValue": "plain"}],
        "translator": 123
      })));
    } catch (error) {
        gs.error(error.message);
    }

    응답:

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

    DynamicTranslation - isEnabled(문자열 번역기)

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

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

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

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

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

    기본값: 기본 번역 서비스.

    표 10. 반환
    유형 설명
    배치 감지 getDetectedLanguage() 메서드가 활성화되어 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • false: 비활성화
    • true: 활성화됨

    데이터 유형: 부울

    배치 번역 getTranslations() 메서드가 활성화되었는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • false: 비활성화
    • true: 활성화됨

    데이터 유형: 부울

    탐지 getDetectedLanguage() 메서드가 활성화되어 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • false: 비활성화
    • true: 활성화됨

    데이터 유형: 부울

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

    데이터 유형: 부울

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

    이 예제에서는 Microsoft Translator에 대해 DynamicTranslation 메서드가 활성 상태인지 여부를 확인하는 서버 스크립트를 보여 줍니다.

    try {
      var response = sn_dt_api.DynamicTranslation.isEnabled('Microsoft');
      gs.info(JSON.stringify(response));
    } catch(error) {
        gs.info(error.message);
    }

    출력:

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

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

    try {
      var response = sn_dt_api.DynamicTranslation.isEnabled(123);
      gs.info(JSON.stringify(response));
    } catch(error) {
        gs.info(error.message);
    }

    출력:

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