pedrofranceschi-phtwitvid 0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+