Currently, the only way to tell when a task has completed (or failed) is to keep polling the API to check the task status.
It would likely be more efficient and convenient if a task could be associated with a client provided callback URL (either on a per task or per application basis) that would be called by ABBYY when a task's status changes (or at least if it completes or fails).
Not only could this make things easier for developers using the OCR SDK in their products, but eliminating the need for frequent polling may significantly reduce server load and network congestion for ABBYY as well.