pedrofranceschi-phtwitvid 0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/lib/phtwitvid.rb +40 -0
  2. data/phtwitvid.gemspec +35 -0
  3. metadata +84 -0
data/lib/phtwitvid.rb ADDED
@@ -0,0 +1,40 @@
1
+ require 'rubygems'
2
+ require 'httparty'
3
+ require 'xmlsimple'
4
+ require 'mechanize'
5
+
6
+ class PHTwitVid
7
+
8
+ $api_url = "https://im.twitvid.com/api"
9
+
10
+ def initialize
11
+ end
12
+
13
+ def get_token(username, password)
14
+ params = { :query => {:username => username, :password => password}}
15
+ response = HTTParty.post("#{$api_url}/authenticate", params)
16
+ xml = XmlSimple.xml_in(response.body, { 'KeyAttr' => 'name' })
17
+ if xml['token'] == nil
18
+ return "Invalid username/password"
19
+ else
20
+ return xml['token']
21
+ end
22
+ end
23
+
24
+ def upload(token, message, video_path, post)
25
+ f = File.new(video_path, File::RDWR)
26
+ agent = WWW::Mechanize.new
27
+ response = agent.post(
28
+ "#{$api_url}/#{post}",
29
+ {
30
+ :media => f,
31
+ :token => token,
32
+ :message => message
33
+ }
34
+ )
35
+ f.close
36
+ xml = XmlSimple.xml_in(response.body, { 'KeyAttr' => 'name' })
37
+ return xml['media_url']
38
+ end
39
+
40
+ end
data/phtwitvid.gemspec ADDED
@@ -0,0 +1,35 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = %q{phtwitvid}
3
+ s.version = "0.1"
4
+
5
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
6
+ s.authors = ["pH (Pedro Henrique Cavallieri Franceschi)"]
7
+ s.date = %q{2009-09-12}
8
+ s.default_executable = %q{phtwitvid}
9
+ s.description = %q{A Library for TwitVid integration written in Ruby.}
10
+ s.homepage = %q{http://www.iBlogeek.com}
11
+ s.email = ["pedrohfranceschi@gmail.com"]
12
+ s.files = ["phtwitvid.gemspec","lib/phtwitvid.rb"]
13
+ s.require_paths = ["lib"]
14
+ s.summary = %q{A Library for TwitVid integration written in Ruby.}
15
+
16
+ if s.respond_to? :specification_version then
17
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
18
+ s.specification_version = 2
19
+
20
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
21
+ s.add_runtime_dependency(%q<httparty>, [">= 0.4.3"])
22
+ s.add_runtime_dependency(%q<xml-simple>, [">= 1.0.12"])
23
+ s.add_runtime_dependency(%q<mechanize>, [">= 0.9.3"])
24
+ else
25
+ s.add_dependency(%q<httparty>, [">= 0.4.3"])
26
+ s.add_dependency(%q<xml-simple>, [">= 1.0.12"])
27
+ s.add_dependency(%q<mechanize>, [">= 0.9.3"])
28
+ end
29
+ else
30
+ s.add_dependency(%q<httparty>, [">= 0.4.3"])
31
+ s.add_dependency(%q<xml-simple>, [">= 1.0.12"])
32
+ s.add_dependency(%q<mechanize>, [">= 0.9.3"])
33
+ end
34
+
35
+ end
metadata ADDED
@@ -0,0 +1,84 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pedrofranceschi-phtwitvid
3
+ version: !ruby/object:Gem::Version
4
+ version: "0.1"
5
+ platform: ruby
6
+ authors:
7
+ - pH (Pedro Henrique Cavallieri Franceschi)
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-09-12 00:00:00 -07:00
13
+ default_executable: phtwitvid
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: httparty
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.4.3
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: xml-simple
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.0.12
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: mechanize
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 0.9.3
44
+ version:
45
+ description: A Library for TwitVid integration written in Ruby.
46
+ email:
47
+ - pedrohfranceschi@gmail.com
48
+ executables: []
49
+
50
+ extensions: []
51
+
52
+ extra_rdoc_files: []
53
+
54
+ files:
55
+ - phtwitvid.gemspec
56
+ - lib/phtwitvid.rb
57
+ has_rdoc: false
58
+ homepage: http://www.iBlogeek.com
59
+ post_install_message:
60
+ rdoc_options: []
61
+
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: "0"
69
+ version:
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: "0"
75
+ version:
76
+ requirements: []
77
+
78
+ rubyforge_project:
79
+ rubygems_version: 1.2.0
80
+ signing_key:
81
+ specification_version: 2
82
+ summary: A Library for TwitVid integration written in Ruby.
83
+ test_files: []
84
+