Skip to content

Instantly share code, notes, and snippets.

@mmcc
Created November 29, 2013 15:05
Show Gist options
  • Save mmcc/7707017 to your computer and use it in GitHub Desktop.
Save mmcc/7707017 to your computer and use it in GitHub Desktop.
Bootstrap Zencoder progress
var jobId = 12345;
var jobProgress = 0;
function poll() {
setTimeout(function() {
$.ajax({
url: 'https://app.zencoder.com/api/v2/jobs/' + jobId + '/progress',
type: 'GET',
headers: { "Zencoder-Api-Key": 'ZENCODER READ ONLY API KEY' },
//dataType: 'json',
success: function(data) {
parseResponse(data);
},
error: function(data) {
console.log(data)
}
});
}, 3000);
}
function parseResponse(data) {
switch(data.state) {
case 'pending':
console.log('Pending');
poll();
break;
case 'waiting':
console.log('Waiting');
poll();
break;
case 'processing':
console.log('processing');
if (data.progress >= jobProgress) {
$('.progress .bar').css('width', Math.round(data.progress) + '%');
jobProgress = data.progress;
}
poll();
break;
case 'finished':
console.log('Finished');
$('.progress').removeClass('active');
$('.progress .bar').css('width', '100%');
break;
case 'failed':
console.log('Failed');
break;
case 'cancelled':
console.log('Cancelled');
break;
default:
console.log("Wat?");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment