I am using the chunked upload to post a tweet with an attached video.
When I have uploaded the video I then use the STATUS command to poll for processing status updates as described in the docs (https://dev.twitter.com/rest/media/uploading-media), so I am using the value returned in processing_info > check_after_secs to determine how long to wait before checking the status again.
The problem is that the processing seems to sometimes get stuck which results in too many status check API calls being made and the potential for hitting the rate limits.
For example, for a video I just uploaded here were the results of calling status:
{mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=5, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=35, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=57, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=0, state=in_progress, checkAfterSecs=5, progressPercent=78, errorCode=0, errorName=null, errorMessage=null, videoType=null} {mediaId=769176446266961920, expiresAfterSecs=86396, state=succeeded, checkAfterSecs=0, progressPercent=100, errorCode=0, errorName=null, errorMessage=null, videoType=video/mp4}
Can this be fixed?