RubyGem to access Dropcam account and Camera including direct live stream access
Add this line to your application's Gemfile:
gem 'dropcam'
And then execute:
$ bundle
Or install it yourself as:
$ gem install dropcam
require 'dropcam'
dropcam = Dropcam::Dropcam.new("<USERNAME>","<PASSWORD>")
camera = dropcam.cameras.first
# returns jpg image data of the latest frame captured
screenshot = camera.screenshot.current
# write data to disk
File.open("#{camera.title}.jpg", 'w') {|f| f.write(screenshot) }
# access and modify settings
# this disables the watermark on your camera stream
settings = camera.settings
settings["watermark.enabled"].set(false)
Streaming isn't directly integrated currently and it's up to you to find a player. Some of the players available:
- VLC (RTSP/RTMP)
- RTMPDump (RTMP)
- openRTSP (RTSP)
The easiest way to record the live camera stream is with RTMPDump. Install via homebrew:
`$ brew install rtmpdump`
To save a live stream:
require 'dropcam'
dropcam = Dropcam::Dropcam.new("<USERNAME>","<PASSWORD>")
camera = dropcam.cameras.first
# record the live stream for 30 seconds
camera.stream.save_live("#{camera.title}.flv", 30)
# to get access information to use a third party application
# RTMP/Flash Streaming
camera.stream.rtmp_details
# RTSP Streaming
camera.stream.rtsp_details
Currently stream resolution is limited to 400x240.
The Dropcam API is unofficial and unreleased. This code can break at anytime as Dropcam changes/updates their service.
This gem has only been tested on Mac OS 10.8 running Ruby 1.9.3
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request