DynamicTranslation : inclus dans le champ d’application
L’API DynamicTranslation fournit des méthodes qui traduisent le texte, en temps réel, en plusieurs langues à l’aide de fournisseurs de services de traduction.
En outre, vous pouvez utiliser cette API pour détecter la langue d’une chaîne spécifique et vérifier si les méthodes DynamicTranslation sont activées pour un service de traduction. Utilisez cette API pour créer une expérience de localisation transparente pour votre interface utilisateur, permettant à une interface de desservir plusieurs pays.
Actuellement, cette API prend en charge deux fournisseurs de services de traduction : Microsoft Azure Translator Service et Google Cloud Translator Service. Vous pouvez également configurer d’autres services de traduction au sein de votre instance, puis utiliser l’API DynamicTranslation pour traduire votre texte.
Lorsque vous utilisez ces méthodes dans un script côté serveur, utilisez l’identificateur d’espace de noms sn_dt_api. Avant de pouvoir utiliser cette API, vous devez activer le module d’extension DynamicTranslation (com.glide.dynamic_translation). Pour plus d’informations sur ce module d’extension et plus d’informations sur , reportez-vous à Traduction dynamiquela rubrique Vue d’ensemble de Traduction dynamique.
DynamicTranslation - getDetectedLanguage(String text, Object parms)
Détecte la langue du texte transmis.
Si vous transmettez un traducteur, la méthode utilise ce service de traduction pour détecter la langue source. Dans le cas contraire, la détection est effectuée par le service de traduction par défaut. Assurez-vous que les chaînes de texte que vous fournissez contiennent suffisamment de verbiage pour permettre une détection correcte de la langue.
En plus de la langue détectée, la réponse contient un niveau de confiance de la détection, ainsi que d’autres alternatives linguistiques possibles. Si un traducteur n’est pas transmis, la méthode renvoie également le service de traduction par défaut utilisé pour détecter la langue.
| Nom | Type | Description |
|---|---|---|
| Texte | Chaîne | Texte à utiliser pour détecter la langue. |
| Parms | Objet | Facultatif. Objet JSON contenant des paramètres de traduction supplémentaires. |
| parms.translator | Chaîne | Facultatif. Service de traduction à utiliser pour traduire le texte (insensible à la casse). Valeurs valides :
Remarque :
Pour utiliser des services de traduction personnalisés, vous devez d’abord configurer le service de traduction dans votre instance. Pour plus d’informations, voir Intégrer à un fournisseur de service de traduction. Par défaut : service de traduction configuré dans la table Configuration du traducteur [sn_dt_translator_configuration]. |
| Type | Description |
|---|---|
| alternatives | Tableau d’objets qui décrivent d’autres langues qui peuvent également concorder. Type de données : tableau |
| alternatives.code | Code de langue de l’autre langue. Type de données : chaîne |
| alternatives.confiance | Valeur flottante indiquant le niveau de confiance de l’autre langue. La valeur se situe entre zéro et un. Plus la valeur est faible, plus le niveau de fiabilité est faible. Type de données : chaîne |
| alternatives.name | Code de langue de l’autre langue. Type de données : chaîne |
| detectedLanguage | Description de la langue détectée. Type de données : objet |
| detectedLanguage.code | Code de langue de la langue détectée. Type de données : chaîne |
| detectedLanguage.confidence | Valeur flottante indiquant le niveau de confiance de l’autre langue. La valeur se situe entre zéro et un. Plus la valeur est faible, plus le niveau de fiabilité est faible. Type de données : chaîne |
| detectedLanguage.name | Code de langue de la langue détectée. Type de données : chaîne |
| traducteur | Service de traduction utilisé pour détecter la langue. Type de données : chaîne |
| Messages d'erreur | Vous trouverez ci-dessous des messages d’erreur que la méthode peut renvoyer et des indications quant à la cause première de l’erreur.
|
Cet exemple montre le code d’un script côté serveur qui détecte une chaîne en anglais à l’aide du service de traduction d’IBM.
var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":'IBM'});
gs.info(JSON.stringify(detectedResponse));
Sortie :
{
detectedLanguage:
{ "code": "en", "confidence": "1", "name": "en" }
alternatives:
[
{ "code": "vi", "confidence": "0.86", "name": "vi" },
{ "code": "id", "confidence": "0.86", "name": "id" }
]
}
Cet exemple montre un script serveur qui génère une erreur lorsqu’un service de traduction non valide est transmis.
var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguage('Please detect the language of this text', {"translator":123});
gs.info(JSON.stringify(detectedResponse));
Sortie :
{"code":"40003","message":"Translator (\"translator\" field) is invalid"}
DynamicTranslation : getDetectedLanguages(Array texts, Object parms)
Détecte les langues des chaînes de texte transmises.
Si vous transmettez un traducteur, la méthode utilise ce service de traduction pour détecter la langue source. Dans le cas contraire, la détection est effectuée par le service de traduction par défaut. Assurez-vous que les chaînes de texte que vous fournissez contiennent suffisamment de verbiage pour permettre une détection correcte de la langue.
En plus de la langue détectée, la réponse contient un niveau de confiance de la détection, ainsi que d’autres alternatives linguistiques possibles. Si un traducteur n’est pas transmis, la méthode renvoie également le service de traduction par défaut utilisé pour détecter la langue.
| Nom | Type | Description |
|---|---|---|
| textes | Tableau | Liste des chaînes de texte à utiliser pour détecter la ou les langues. |
| Parms | Objet | Facultatif. Objet JSON contenant des paramètres de traduction supplémentaires. |
| parms.translator | Chaîne | Service de traduction à utiliser pour détecter la langue d’une chaîne. Les services de traduction sont configurés dans le menu Configuration du traducteur et se trouvent dans la table Configuration du traducteur [sn_dt_translator_configuration]. Valeurs possibles - insensibles à la casse :
Remarque :
Pour utiliser des services de traduction personnalisés, vous devez d’abord configurer le service de traduction dans votre instance. Pour plus d’informations, voir Intégrer à un fournisseur de service de traduction. Par défaut : service de traduction configuré dans la table Configuration du traducteur [sn_dt_translator_configuration]. |
| Type | Description |
|---|---|
| détections | Détection de la langue des chaînes de texte. Type de données : objet |
| détections.alternatives | Tableau d’objets qui décrivent d’autres langues qui peuvent également concorder. Type de données : tableau |
| détections.alternatives.code | Code de langue de l’autre langue. Type de données : chaîne |
| détections.alternatives.fiabilité | Valeur flottante indiquant le niveau de confiance de l’autre langue. La valeur se situe entre zéro et un. Plus la valeur est faible, plus le niveau de fiabilité est faible. Type de données : chaîne |
| detections.alternatives.name | Code de langue de l’autre langue. Type de données : chaîne |
| détections.detectedLanguage | Description de la langue détectée. Type de données : objet |
| détections.detectedLanguage.code | Code de langue de la langue détectée. Type de données : chaîne |
| détections.languedetected.confidence | Valeur flottante indiquant le niveau de confiance de l’autre langue. La valeur se situe entre zéro et un. Plus la valeur est faible, plus le niveau de fiabilité est faible. Type de données : chaîne |
| detections.detectedLanguage.name | Code de langue de la langue détectée. Type de données : chaîne |
| détections.isError | Marqueur indiquant si la détection de la langue du texte a entraîné une erreur. Valeurs valides :
Type de données : booléennes |
| statut | État de la réponse à l’appel de méthode. Valeurs possibles :
Type de données : chaîne |
| traducteur | Service de traduction utilisé pour détecter la langue. Type de données : chaîne |
| Messages d'erreur | Vous trouverez ci-dessous des messages d’erreur que la méthode peut renvoyer et des indications quant à la cause première de l’erreur.
|
Cet exemple montre le code d’un script serveur qui détecte l’anglais comme langue des chaînes transmises à l’aide du service de traduction 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));
Sortie
{
"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"}
]
}
]
}
Cet exemple montre du code dans un script serveur qui renvoie un état partiel lorsque deux chaînes de texte sont transmises et que l’une d’elles n’est pas valide.
var detectedResponse = sn_dt_api.DynamicTranslation.getDetectedLanguages(["First text string language to detect", ""], {"translator": "Microsoft"});
gs.info(JSON.stringify(detectedResponse));
Sortie
{
"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"
}
]
}
Cet exemple montre le code d’un script serveur qui génère une erreur lorsqu’un service de traduction non valide est transmis.
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));
Sortie
{"code":"40003","message":"Translator (\"translator\" field) is invalid","status":"Error"}
DynamicTranslation : getTranslation(String textToTranslate, Object parms)
Traduit le texte transmis vers une ou plusieurs langues.
La méthode utilise des services de traduction, tels que Microsoft Azure Translator Service et Google Cloud Translator Service, pour effectuer la traduction. Si vous ne transmettez pas de paramètres de traduction, la méthode utilise la valeur système par défaut.
| Nom | Type | Description |
|---|---|---|
| textToTranslate (en anglais seulement) | Chaîne | Texte à traduire. |
| Parms | Objet | Facultatif. Objet JSON contenant des paramètres de traduction supplémentaires. |
| parms.additionalParameters | Tableau | Facultatif. Tableau d’objets JSON. Chaque objet contient des paires clé-valeur qui fournissent des informations supplémentaires sur l’exécution de la traduction. |
| parms.additionalParameters.parameterName | Chaîne | Facultatif. Nom de la clé. Valeurs valides : textype : Type de texte à traduire. Pour Microsoft Azure Translator Service uniquement. |
| parms.additionalParameters.parameterValue | Chaîne | Facultatif. Valeur de la clé associée. Valeurs valides :
Par défaut : brut |
| parms.sourceLanguage | Chaîne | Facultatif. Code de langue du texte source. Par défaut : le service de traduction détecte la langue source. |
| parms.targetLanguages | Tableau | Facultatif. Liste des codes de langue à utiliser pour traduire. La méthode renvoie du texte traduit pour chaque code de langue. Par défaut : langue préférée de l’utilisateur. |
| parms.translator | Chaîne | Facultatif. Service de traduction à utiliser pour traduire le texte (insensible à la casse). Valeurs valides :
Remarque :
Pour utiliser des services de traduction personnalisés, vous devez d’abord configurer le service de traduction dans votre instance. Pour plus d’informations, voir Intégrer à un fournisseur de service de traduction. Par défaut : service de traduction configuré dans la table Configuration du traducteur [sn_dt_translator_configuration]. |
| Type | Description |
|---|---|
| detectedLanguage | Description de la langue détectée. Type de données : objet |
| detectedLanguage.code | Code de langue de la langue détectée. Type de données : chaîne |
| detectedLanguage.name | Code de langue de la langue détectée. Type de données : chaîne |
| traductions | Tableau d’objets décrivant les traductions. Type de données : tableau |
| traductions.targetLanguage | Code de la langue vers laquelle le texte source a été traduit. Type de données : chaîne |
| translations.translatedText | Texte traduit. Type de données : chaîne |
| traducteur | Service de traduction utilisé pour détecter la langue. Type de données : chaîne |
| Messages d'erreur | Vous trouverez ci-dessous des messages d’erreur que la méthode peut renvoyer et des indications quant à leur cause profonde.
|
Cet exemple montre un script serveur traduisant du texte brut de l’anglais (détecté) vers le français et l’italien à l’aide du service de traduction de 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);
}
Réponse :
{"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"}
}
Cet exemple montre un script serveur qui génère une erreur lorsqu’une langue cible non valide est transmise.
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);
}
Réponse :
{"code":"40054","message":"Target language is invalid"}
DynamicTranslation - getTranslations(Tableau de textes, Objet parms)
Traduit les chaînes de texte transmises dans une ou plusieurs langues.
La méthode utilise des services de traduction, tels que Microsoft Azure Translator Service et Google Cloud Translator Service, pour effectuer la traduction. Si vous ne transmettez pas de paramètres de traduction, la méthode utilise la valeur système par défaut.
| Nom | Type | Description |
|---|---|---|
| textes | Tableau | Liste des piqûres de texte à traduire. |
| Parms | Objet | Facultatif. Objet JSON contenant des paramètres de traduction supplémentaires. |
| parms.additionalParameters | Objet | Facultatif. Tableau d’objets JSON. Chaque objet contient des paires clé-valeur qui fournissent des informations supplémentaires sur l’exécution de la traduction. |
| parms.additionalParameters.parameterName | Chaîne | Facultatif. Nom de la clé. Valeurs valides : textype : Type de texte à traduire. Pour Microsoft Azure Translator Service uniquement. |
| parms.additionalParameters.parameterValue | Chaîne | Facultatif. Valeur de la clé associée. Valeurs valides :
Par défaut : brut |
| parms.sourceLanguage | Chaîne | Facultatif. Code de langue du texte source. Par défaut : le service de traduction détecte la langue source. |
| parms.targetLanguages | Tableau | Facultatif. Liste des codes de langue à utiliser pour traduire. La méthode renvoie du texte traduit pour chaque code de langue. Par défaut : langue préférée de l’utilisateur. |
| parms.translator | Chaîne | Facultatif. Service de traduction à utiliser pour traduire le texte (insensible à la casse). Valeurs valides :
Remarque :
Pour utiliser des services de traduction personnalisés, vous devez d’abord configurer le service de traduction dans votre instance. Pour plus d’informations, voir Intégrer à un fournisseur de service de traduction. Par défaut : service de traduction configuré dans la table Configuration du traducteur [sn_dt_translator_configuration]. |
| Type | Description |
|---|---|
| statut | État de la réponse à l’appel de méthode. Valeurs possibles :
Type de données : chaîne |
| traductions | Tableau d’objets décrivant les traductions. Type de données : tableau |
| translations.isError | Marqueur indiquant si la traduction du texte a entraîné une erreur. Valeurs valides :
Type de données : booléennes |
| traductions.detectedLanguage | Description de la langue détectée. Type de données : objet |
| traductions.detectedLanguage.code | Code de langue de la langue détectée. Type de données : chaîne |
| translations.detectedLanguage.name | Code de langue de la langue détectée. Type de données : chaîne |
| textTranlations | Tableau d’objets. Description de la langue utilisée pour traduire la chaîne de texte. |
| textTranslations.targetLanguage | Code de la langue vers laquelle le texte source a été traduit. Type de données : chaîne |
| textTranslations.translatedText | Texte traduit. Type de données : chaîne |
| traducteur | Service de traduction utilisé pour traduire le texte. Type de données : chaîne |
| Messages d'erreur | Vous trouverez ci-dessous des messages d’erreur que la méthode peut renvoyer et des indications quant à leur cause profonde.
|
Cet exemple montre le code dans un script côté serveur qui traduit une liste de chaînes de texte en français et en italien à l’aide du service de traduction 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);
}
Réponse :
{
"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"
}
Cet exemple montre un script serveur qui renvoie un état partiel lorsque l’une des deux chaînes de texte transmises n’est pas valide.
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);
}
Réponse :
{
"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"
}
Cet exemple montre un script serveur qui génère une erreur lorsqu’un service de traduction non valide est transmis.
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);
}
Réponse :
{"code":"40003","message":"Translator (\"translator\" field) is invalid","status":"Error"}
DynamicTranslation : isEnabled (traducteur de chaînes)
Détermine si les différentes méthodes de l’API DynamicTranslation sont activées pour un service de traduction.
Si vous transmettez un service de traduction spécifique, la méthode vérifie l’activation de la méthode pour ce service de traduction ; Dans le cas contraire, la méthode vérifie le service de traduction par défaut.
| Nom | Type | Description |
|---|---|---|
| traducteur | Chaîne | Facultatif. Service de traduction à utiliser pour vérifier si les méthodes sont actives. Les services de traduction sont configurés dans le menu Configuration du traducteur. Valeurs possibles - insensibles à la casse :
Remarque :
Pour utiliser des services de traduction personnalisés, vous devez d’abord configurer le service de traduction dans votre instance. Pour plus d’informations, voir Intégrer à un fournisseur de service de traduction. Par défaut : service de traduction par défaut. |
| Type | Description |
|---|---|
| batchDetection (détection par lots) | Marqueur indiquant si la méthode getDetectedLanguages() est activée. Valeurs possibles :
Type de données : booléennes |
| Traduction par lots | Marqueur indiquant si la méthode getTranslations() est activée. Valeurs possibles :
Type de données : booléennes |
| détection | Marqueur indiquant si la méthode getDetectedLanguage() est activée. Valeurs possibles :
Type de données : booléennes |
| traduction | Marqueur indiquant si la méthode getTranslation() est activée. Valeurs possibles :
Type de données : booléennes |
| Messages d'erreur | Vous trouverez ci-dessous les messages d’erreur que l’API peut renvoyer et des indications quant à leur cause première.
|
Cet exemple montre un script serveur qui vérifie si les méthodes DynamicTranslation sont actives pour le traducteur Microsoft.
try {
var response = sn_dt_api.DynamicTranslation.isEnabled('Microsoft');
gs.info(JSON.stringify(response));
} catch(error) {
gs.info(error.message);
}
Sortie :
{"detection":true,"batchTranslation":true,"batchDetection":true,"translation":true}
Cet exemple montre un script serveur qui génère une erreur lorsqu’un service de traduction non valide est transmis.
try {
var response = sn_dt_api.DynamicTranslation.isEnabled(123);
gs.info(JSON.stringify(response));
} catch(error) {
gs.info(error.message);
}
Sortie :
{"code":"40003","message":"Translator (\"translator\" field) is invalid"}