textme 0.0.1 → 0.0.2

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. checksums.yaml +4 -4
  2. data/lib/textme.rb +46 -20
  3. metadata +1 -15
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bf540be0c1e85dfd63bd87b6b44f16ace7ac2340
4
- data.tar.gz: f585ca7178ca87c0859d6b305b339b03b84a2045
3
+ metadata.gz: ceb46c088e7d48f7a65d5f9be0888bcf2dac4b1f
4
+ data.tar.gz: 467c1782393669d14d8dc5542b199e008a77f374
5
5
  SHA512:
6
- metadata.gz: 2d56f2c541be52aa562e189c5f371bb4f21cb9a61ae67ed6ac55f0ff0898556f85e445020307f0d049b8f692a7c059403a7c35743fdbbb796fde29db9fff26d4
7
- data.tar.gz: c677200317a85d1934ec7b9242b0de1dddbbc8314e66504eeabcd68bc9fecfea6d31a820071ef054b7cd28b808976905287d9125e562735255e56f9105bcad1f
6
+ metadata.gz: c7dbba1ff905f01ffd18f96ed41bd59ca050d6a99e1a175bfc59120183fcfb9ae96dc4816312712380adfa7ce4a8e20241637dd2600a8ad2dfe7b481e6a0a2ce
7
+ data.tar.gz: de93c27169b8a12a2256913ee709abbf8e73695370cf156d6748b4a42766c42c2912bebe4bfda2ca3d12adadc990eccb94a2513958c83a23e1831b52fd272c14
data/lib/textme.rb CHANGED
@@ -1,50 +1,76 @@
1
- require 'httparty'
2
- require 'twilio-ruby'
3
- require 'json'
4
- require 'metainspector'
1
+ #
2
+ #Initialize once with the credentials
3
+ #Keep texting 'send_message' method to the number entered in the argument
4
+ #
5
+
6
+ require 'twilio-ruby' #The Twilio gem
7
+ require 'metainspector' #Gem to help extract the open graph data
5
8
 
6
9
  module TextMe
7
10
  class Core
11
+ #Constructor
12
+ #What: Initialize Twilio with credentials and save the from number
13
+ #Input: account_sid, auth_token => From twilio dashbaord
14
+ # 'from' number => from your twilio settings
15
+ #Output: No output
8
16
  def initialize(account_sid, auth_token, sender_number)
17
+ #Initialize the twilio client
9
18
  @client = Twilio::REST::Client.new account_sid, auth_token
19
+
20
+ #Save the 'from' number as private variable
10
21
  @sender_number = sender_number
11
22
  end
12
23
 
24
+ #Helper Method
25
+ #What: Take a youversion url and return the verse and the verse image from the open graph data
26
+ #Input: You version url of the verse
27
+ #Output: A hash with the (always) 'verse' => (verse name + verse text),
28
+ # (optional) 'image_url' => image verse
13
29
  def meta_extractor(url)
30
+ #Use a Hash to store the verse and image url
14
31
  metadata = Hash.new
32
+
15
33
  page = MetaInspector.new(url)
16
- metadata['name'] = page.meta['og:title']
34
+
35
+ #Get the verse name and the verse
36
+ metadata['verse'] = page.meta['og:title']
37
+
38
+ #If the page contains an opengraph image
17
39
  if page.meta['og:image']
18
- metadata['image_url'] = page.meta['og:image']
40
+ if page.meta['og:image'].include? "http"
41
+ metadata['image_url'] = page.meta['og:image']
42
+ end
19
43
  end
44
+
20
45
  return metadata
21
46
  end
22
47
 
48
+ #What: Take the recievers number and the verse url. Calls the meta_extractor helper method
49
+ #Input: 'To' number, You version url of the verse
50
+ #Output: No actual output. Send's a text containing verse name(always), verse text(always) and verse image(optional) to the 'To' number
23
51
  def send_message(reciever_number, url)
24
- verse = meta_extractor(url)
25
- if verse['image_url']
52
+ #A call to the meta_extractor to get the verse name, verse text and verse image(optional)
53
+ verse_data = meta_extractor(url)
54
+
55
+ #If: There is a verse image for the verse
56
+ #Else: There is no image
57
+ if verse_data['image_url']
58
+ #Sending a text with the twilio client
26
59
  @client.api.account.messages.create(
27
60
  from: @sender_number,
28
61
  to: reciever_number,
29
- body: verse['name'],
30
- media_url: verse['image_url']
62
+ body: verse_data['verse'],
63
+ media_url: verse_data['image_url']
31
64
  )
32
65
  else
66
+ #Sending a text with the twilio client
33
67
  @client.api.account.messages.create(
34
68
  from: @sender_number,
35
69
  to: reciever_number,
36
- body: verse['name']
70
+ body: verse_data['verse']
37
71
  )
38
72
 
39
73
  end
40
74
  end
41
75
  end
42
- end
43
-
44
- #page = MetaInspector.new('https://www.bible.com/bible/2PE.3.9.nlt')
45
- #puts page.meta['og:title']
46
- #puts page.meta['og:image']
47
-
48
- #twil = TextMe::Core.new('ACa9011dd6fa6cabf225303edd1bdb71be', 'a426a2ba3deca28af4f6b17a91aacb5f', '+16197730346')
49
- #twil.send_message('+14696551861', 'Hello')
50
- #twil.send_message('+14696551861', 'https://www.bible.com/bible/2PE.3.9.nlt')
76
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: textme
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Harsh Gosar
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 5.7.1
27
- - !ruby/object:Gem::Dependency
28
- name: httparty
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: metainspector
43
29
  requirement: !ruby/object:Gem::Requirement