1) Now RetryAfter is multiplied by 1000, because request contains value in second instead milliseconds. (see https://core.telegram.org/bots/api#responseparameters) 2) Now calls occur in a loop, but a limited number of times. This also ensures that exceptions are caught during a repeated request.