facebookstatus 0.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.
Binary file
@@ -0,0 +1,4 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use default@facebookstatus
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in facebookstatus.gemspec
4
+ gemspec
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,26 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "facebookstatus/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "facebookstatus"
7
+ s.version = Facebookstatus::VERSION
8
+ s.authors = ["shabbirv"]
9
+ s.email = ["shabbirv@gmail.com"]
10
+ s.homepage = "http://shabz.co"
11
+ s.summary = %q{Facebook status is a Siri plugin.}
12
+ s.description = %q{This is a plugin that allows you to post to your Facebook wall using Siri.}
13
+
14
+ s.rubyforge_project = "facebookstatus"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ # specify any dependencies here; for example:
22
+ # s.add_development_dependency "rspec"
23
+ # s.add_runtime_dependency "rest-client"
24
+ s.add_runtime_dependency "json"
25
+ s.add_runtime_dependency "httparty"
26
+ end
Binary file
@@ -0,0 +1,56 @@
1
+ require "facebookstatus/version"
2
+ require 'cora'
3
+ require 'siri_objects'
4
+ require 'httparty'
5
+ require 'json'
6
+
7
+ class SiriProxy::Plugin::Facebook < SiriProxy::Plugin
8
+ attr_accessor :access_token
9
+ attr_accessor :username
10
+
11
+ def initialize(config)
12
+ self.access_token = config["access_token"]
13
+ self.username = config["username"]
14
+ end
15
+
16
+
17
+ listen_for /facebook status (.+)/i do |facebookText|
18
+ say "Here is your status:"
19
+
20
+ # Preview of the Status update
21
+ object = SiriAddViews.new
22
+ object.make_root(last_ref_id)
23
+ answer = SiriAnswer.new("Facebook Status", [
24
+ SiriAnswerLine.new('logo','http://cl.ly/CXNm/Screen%20Shot%202011-12-11%20at%2011.26.52%20AM.png'), # facebook logo
25
+ SiriAnswerLine.new(facebookText)
26
+ ])
27
+ object.views << SiriAnswerSnippet.new([answer])
28
+ send_object object
29
+
30
+
31
+
32
+ if confirm "Ready to send it?"
33
+ say "Posting to Facebook..."
34
+ Thread.new {
35
+ begin
36
+ page = HTTParty.post(
37
+ "https://graph.facebook.com/me/feed",
38
+ :query => {
39
+ :message => (facebookText),
40
+ :access_token => (access_token)
41
+ }
42
+ )
43
+ say "Your status has been updated."
44
+ rescue Exception
45
+ pp $!
46
+ say "Sorry, I encountered an error: #{$!}"
47
+ ensure
48
+ request_completed
49
+ end
50
+ }
51
+ else
52
+ say "Ok I won't send it."
53
+ request_completed
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,3 @@
1
+ module Facebookstatus
2
+ VERSION = "0.0.1"
3
+ end
metadata ADDED
@@ -0,0 +1,78 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: facebookstatus
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - shabbirv
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-12-16 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: json
16
+ requirement: &70262250859240 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70262250859240
25
+ - !ruby/object:Gem::Dependency
26
+ name: httparty
27
+ requirement: &70262250858740 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70262250858740
36
+ description: This is a plugin that allows you to post to your Facebook wall using
37
+ Siri.
38
+ email:
39
+ - shabbirv@gmail.com
40
+ executables: []
41
+ extensions: []
42
+ extra_rdoc_files: []
43
+ files:
44
+ - .DS_Store
45
+ - .gitignore
46
+ - .rvmrc
47
+ - Gemfile
48
+ - Rakefile
49
+ - facebookstatus.gemspec
50
+ - lib/.DS_Store
51
+ - lib/facebookstatus.rb
52
+ - lib/facebookstatus/.DS_Store
53
+ - lib/facebookstatus/version.rb
54
+ homepage: http://shabz.co
55
+ licenses: []
56
+ post_install_message:
57
+ rdoc_options: []
58
+ require_paths:
59
+ - lib
60
+ required_ruby_version: !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ required_rubygems_version: !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - ! '>='
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
72
+ requirements: []
73
+ rubyforge_project: facebookstatus
74
+ rubygems_version: 1.8.10
75
+ signing_key:
76
+ specification_version: 3
77
+ summary: Facebook status is a Siri plugin.
78
+ test_files: []