За да се избегнат постоянни проверки от клиента относно статуса на преводите или генерирането на съдържание, платформата Ovesio предлага автоматичен механизъм за обратен повик.
Този механизъм включва автоматично изпращане на резултата до URL адрес, предоставен от клиента, веднага щом операцията бъде успешно завършена.
Как работи
- Ако в API заявката или в Работния процес е зададен
callback_url
адрес, системата автоматично ще изпрати резултата с POST метода до този адрес. - Изпратеният отговор е от тип
application/json
и съдържа структурата на резултата, специфична за всеки тип операция:- преводи (по един пост за всеки език)
- генериране на описания
- генериране на SEO мета тагове
Изисквания за URL адреса на обратния повик
- Трябва да върне HTTP статус код 200
- Трябва да отговори с JSON:
{ "success": true }
- Всеки друг тип отговор или статус код ще бъде считан за невалиден.
Механизъм за повторно опитване
В случай на невалиден отговор, системата автоматично ще опита 3 пъти (първи опит + 2 повторни опити).
Ако след 3 опита не бъде получен валиден отговор, операцията ще бъде маркирана като неуспешна при подаване . След това клиентът има две опции:
- Може ръчно да изпрати отново резултата директно от приложението Ovesio
- Може да получи резултата, използвайки посветения статус API крайна точка или други крайни точки, предназначени за извличане на статус
Специфични правила за преводи
Обратният повик за превод е изпратен само при следните условия :
-
Ако опцията за обратен повик е активирана в Работния процес и:
- е зададен по подразбиране
callback_url
- опцията "Игнориране на дублиращи се обратни повиквания" е деактивирана
Ако опцията "Игнориране на дублиращи се обратни повиквания" е активирана, обратен повик ще бъде изпратен само за нови преводи . Заявките, които целят предварително преведени текстове, няма да задействат ново обратен повик.
- е зададен по подразбиране
-
Ако в API заявката е изпратен
callback_url
, дори ако Работният процес има различен URL по подразбиране.- Ако искате да активирате поведението на избягване на дублиращи се обратни повиквания, можете да използвате параметъра:
"delta_mode": true
По подразбиране стойността е
false
.
⚠ В случай на генериране на съдържание (описания, мета тагове), опцията "Игнориране на дублиращи се обратни повиквания" не важи , и отговорът винаги ще бъде изпратен, ако е наличен callback_url
.
Формат на отговорите, изпратени чрез обратен повик
1. Превод на текст
{
"id": 346,
"ref": "product/7492",
"to": "en",
"from": "ro",
"content": [
{
"key": "description",
"value": "<p>...</p>"
}
]
}
2. Генериране на описания
{
"id": 3419,
"ref": "product/72017",
"to": "ro",
"content": {
"description": "<p>...</p>"
}
}
3. Генериране на SEO мета тагове
{
"id": 3422,
"ref": "product/71072",
"to": "ro",
"content": {
"seo_h1": "...",
"seo_h2": "...",
"seo_h3": "...",
"meta_title": "...",
"meta_description": "...",
"meta_keywords": "..."
}
}