Skip to content

amelon/jab-vimeo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deprecated

see: https://www.npmjs.com/package/@b-flower/bdn-vimeo

jab-vimeo

vimeo API + stream support & duplicate & patch & info & getDownloadStream functions

Official Node.js library for the Vimeo API (extended).

Installation

npm install jab-vimeo

API

uploadStream(stream [, opts])

Returns a Promise Object

Params

stream
Readable stream to upload to vimeo
opts
Object

opts is optional

opts.upTo1080=false - do you want to convert your video to HD? opts.name=undefined - name of video that appears in Vimeo. If no name is given, function try to determine filename on stream object.

opts.description=undefined - description of video that appears in Vimeo

Return

Promise is resolved with following properties

body
body response of patch on video
res
Object
videoId
Number

Example

var Vimeo = require('jab-vimeo').Vimeo;
var lib   = new Vimeo(CLIENT_ID, CLIENT_SECRET, ACCESS_TOKEN);
var fs    = require('fs');

var streamToUpload = fs.createReadStream(path.join(__dirname, 'your_video.mp4'));

lib.uploadStream(streamToUpload)
  .then(function(props) {
    console.log(props.res.headers);
    console.log(props.res.statusCode);
    console.log(props.body);
    console.log(props.videoId);
  });

patch(videoId, data)

Returns a Promise Object

Params

videoId
existing id of a vimeo video
data
Object

data can be anything available on Vimeo API

Return

Promise is resolved with following properties

body
body response of patch on video
res
Object
videoId
Number

Example

var Vimeo = require('jab-vimeo').Vimeo;
var lib   = new Vimeo(CLIENT_ID, CLIENT_SECRET, ACCESS_TOKEN);

var data = {name: 'my new video name', description: 'awesome description of my video'}

lib.patch(videoId, data)
  .then(function(props) {
    console.log(props.res.headers);
    console.log(props.res.statusCode);
    console.log(props.body);
    console.log(props.videoId);
  });

duplicate(videoId)

Returns a Promise Object

Params

videoId
existing id of a vimeo video

On Vimeo, there are different video quality available for download.

Function try to duplicate video with following priority: original source hd sd mobile

Return

Promise is resolved with following properties:

body
body response of patch on video
res
Object
videoId
Number

Example

var Vimeo = require('jab-vimeo').Vimeo;
var lib   = new Vimeo(CLIENT_ID, CLIENT_SECRET, ACCESS_TOKEN);

lib.duplicate(videoId)
  .then(function(props) {
    console.log(props.res.headers);
    console.log(props.res.statusCode);
    console.log(props.body);
    console.log(props.videoId);
  });

getDownloadStream(videoId)

Returns a Promise Object

Params

videoId
existing id of a vimeo video

On Vimeo, there are different video quality available for download.

Function try to duplicate video with following priority: original source hd sd mobile

Return

Promise is resolved with following properties:

req
hyperquest request representing readable stream

Example

var Vimeo   = require('jab-vimeo').Vimeo;
var lib     = new Vimeo(CLIENT_ID, CLIENT_SECRET, ACCESS_TOKEN);
var Promise = require('bluebird');
var fs      = require('fs');

function saveFile(stream) {
  return new Promise(function(resolve, reject) {
    var file = fs.createWriteStream('./downstream.mp4');

    stream.pipe(file);
    file.on('finish', function() { resolve(); });
    file.on('error', function(err) { reject(err); });
  });
}

lib.getDownloadStream(videoId)
  .then(saveFile);

info(videoId)

Returns a Promise Object

Params

videoId
existing id of a vimeo video

Return

Promise is resolved with following properties

body
body response of patch on video
res
Object
videoId
Number

Example

var Vimeo = require('jab-vimeo').Vimeo;
var lib   = new Vimeo(CLIENT_ID, CLIENT_SECRET, ACCESS_TOKEN);

lib.info(videoId)
  .then(function(props) {
    console.log(props.res.headers);
    console.log(props.res.statusCode);
    console.log(props.body);
    console.log(props.videoId);
  });

About

vimeo API + stream support & duplicate function

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •