Modul für externe QA-Prüfung
Mit diesem Modul kannst du erweiterte, KI-gestützte und andere spezialisierte QA-Prüfungen integrieren und so Übersetzungen auf differenzierte Probleme überprüfen, die von den standardmäßigen QA-Prüfungen oder JavaScript-basierten benutzerdefinierten QA-Prüfungen nicht erkannt werden können.
Du kannst Zugriff auf dieses Modul für eine der folgenden Benutzerkategorien gewähren:
- Nur Organisationsadministratoren
- Alle Benutzer in den Projekten der Organisation
- Ausgewählte Benutzer
{ "modules": { "external-qa-check": [ { "key": "custom-check-qa", "name": "QA Check", "description": "Description", "runQaCheckUrl": "/validate", "getBatchSizeUrl": "/batch-size", "url": "/settings/index.html" } ] }}key | Typ: Erforderlich: ja Beschreibung: Kennung des Moduls innerhalb der Crowdin-App. |
name | Typ: Erforderlich: ja Beschreibung: Der für Menschen lesbare Name des Moduls. |
description | Typ: Beschreibung: Die für Menschen lesbare Beschreibung der Funktion des Moduls. |
runQaCheckUrl | Typ: Erforderlich: ja Beschreibung: Die relative URL, die ausgelöst wird, wenn Texte zur QA-Validierung gesendet werden. |
getBatchSizeUrl | Typ: Erforderlich: nein Beschreibung: Die relative URL, die beim Abrufen der vom Modul unterstützten Batchgröße ausgelöst wird. |
url | Typ: Erforderlich: nein Beschreibung: Die relative URL zur Einstellungsseite des Moduls. |
environments | Typ: Zulässige Werte: Beschreibung: Menge der Umgebungen, in denen ein Modul installiert werden kann. |
Kommunikation zwischen der App für externe QA-Prüfungen und Crowdin
Abschnitt betitelt „Kommunikation zwischen der App für externe QA-Prüfungen und Crowdin“Das System sendet Texte zur QA-Validierung über runQaCheckUrl, entweder aus dem Editor nach dem Speichern der Übersetzung oder wenn QA-Prüfungen durchgeführt werden. Die App verarbeitet die Texte und antwortet dem System mit einer von zwei möglichen Antwortarten: ohne QA-Probleme oder mit QA-Problemen. Wenn die App die maximale Batchgröße für die QA-Prüfung bestimmen muss, setzt sie den Schlüssel getBatchSizeUrl in der manifest.json auf die URL zu einem Endpunkt, der die optimale Batchgröße bereitstellt.
Anfrage von Crowdin an die App für runQaCheckUrl
Abschnitt betitelt „Anfrage von Crowdin an die App für runQaCheckUrl“Beispiel für die Nutzlast der Anfrage:
{ "data": { "translations": [ { "id": 12345, "stringId": 1234567, "languageId": "fr", "userId": 1, "text": "La mise à jour est installé avec succès.", "provider": null, "pluralCategoryName": null, "isPreTranslated": false, "rating": 0 } ], "strings": [ { "id": 1234567, "key": "update_success", "context": "Confirmation of successful software update", "maxLength": null, "text": "The update was successfully installed.", "fields": [] } ],57 ausgeblendete Zeilen
"sourceLanguage": { "id": "en", "name": "English", "twoLettersCode": "en", "threeLettersCode": "eng", "locale": "en-US", "pluralCategoryNames": ["one", "other"], "pluralRules": "(n != 1)", "pluralExamples": [1, 2], "textDirection": "ltr", "dialectOf": null }, "targetLanguage": { "id": "fr", "name": "French", "twoLettersCode": "fr", "threeLettersCode": "fra", "locale": "fr-FR", "pluralCategoryNames": ["one", "other"], "pluralRules": "(n > 1)", "pluralExamples": [1, 2], "textDirection": "ltr", "dialectOf": null }, "project": { "id": 123, "type": 0, "sourceLanguage": { "id": "en", "name": "English", "twoLettersCode": "en", "threeLettersCode": "eng", "locale": "en-US", "pluralCategoryNames": ["one", "other"], "pluralRules": "(n != 1)", "pluralExamples": [1, 2], "textDirection": "ltr", "dialectOf": null }, "targetLanguages": [ { "id": "fr", "name": "French", "twoLettersCode": "fr", "threeLettersCode": "fra", "locale": "fr-FR", "pluralCategoryNames": ["one", "other"], "pluralRules": "(n > 1)", "pluralExamples": [1, 2], "textDirection": "ltr", "dialectOf": null } ], "name": "Project Name", "description": "Project Description", "fields": [] }, "file": { "id": 123, "name": "filename.csv", "title": null, "context": null, "type": "csv", "path": "/filename.csv", "fields": [] } }}Erwartete Antwort der App (ohne QA-Probleme)
Abschnitt betitelt „Erwartete Antwort der App (ohne QA-Probleme)“Beispiel für die Nutzlast der Antwort:
{ "data": { "validations": [ { "translationId": 123, "passed": true } ] }}Erwartete Antwort der App (mit QA-Problemen)
Abschnitt betitelt „Erwartete Antwort der App (mit QA-Problemen)“Beispiel für die Nutzlast der Antwort:
{ "data": { "validations": [ { "translationId": 456, "passed": false, "error": { "message": "Example error message" } } ] }}Antwort der App an Crowdin für getBatchSizeUrl
Abschnitt betitelt „Antwort der App an Crowdin für getBatchSizeUrl“Beispiel für die Nutzlast der Antwort:
{ "data": { "size": 10 }}Die Struktur der Antworten der App muss den dargestellten Beispielen entsprechen. Andernfalls betrachtet Crowdin sie als ungültig.