awesome_sms 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/{LICENSE.txt → MIT-LICENSE} +1 -3
- data/Rakefile +20 -4
- data/app/assets/javascripts/sms_auth.js +2 -0
- data/app/assets/stylesheets/sms_auth.css +4 -0
- data/app/controllers/sms_auth_controller.rb +63 -0
- data/app/helpers/sms_auth_helper.rb +2 -0
- data/config/routes.rb +7 -0
- data/lib/awesome_sms.rb +1 -4
- data/lib/awesome_sms/engine.rb +8 -0
- data/lib/awesome_sms/version.rb +1 -1
- data/lib/tasks/awesome_sms_tasks.rake +4 -0
- metadata +34 -24
- data/.gitignore +0 -23
- data/.rspec +0 -2
- data/.travis.yml +0 -3
- data/Gemfile +0 -4
- data/README.md +0 -25
- data/awesome_sms.gemspec +0 -24
- data/spec/awesome_sms_spec.rb +0 -11
- data/spec/spec_helper.rb +0 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f33949dc4d42e24949044d55d69a01afb4c1e750
|
4
|
+
data.tar.gz: 743270bd5ce605dc46ea77cf79713808895f0a80
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9875e827241d53496c6495fb665b0b3b9de4a0b7bfb9d2f683c7d8f6b7c9f06720cedd2ad5f22007bac15229c1acaf8c4f1dccfb567e1aa83e51925a9fd6f6a4
|
7
|
+
data.tar.gz: c9191f503b931f5307f2fd43894d9e95d26d5a22eb98d625cd0b560fc242fe4cca7d78406b3917dd7bf674d923b287b1b31a304fc3bb2b92f7e58b80018860f0
|
data/{LICENSE.txt → MIT-LICENSE}
RENAMED
data/Rakefile
CHANGED
@@ -1,7 +1,23 @@
|
|
1
|
-
|
2
|
-
require
|
1
|
+
begin
|
2
|
+
require 'bundler/setup'
|
3
|
+
rescue LoadError
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
+
end
|
3
6
|
|
4
|
-
|
7
|
+
require 'rdoc/task'
|
5
8
|
|
6
|
-
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
11
|
+
rdoc.title = 'AwesomeSms'
|
12
|
+
rdoc.options << '--line-numbers'
|
13
|
+
rdoc.rdoc_files.include('README.rdoc')
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
15
|
+
end
|
16
|
+
|
17
|
+
APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
|
18
|
+
load 'rails/tasks/engine.rake'
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
Bundler::GemHelper.install_tasks
|
7
23
|
|
@@ -0,0 +1,63 @@
|
|
1
|
+
class SmsAuthController < ApplicationController
|
2
|
+
TWILIO_NUMBER = '+81xxxxxxxx' # 電話番号
|
3
|
+
|
4
|
+
# 認証ページ(GET)
|
5
|
+
# viewでは@sender_num, @user.sms_token, @user.idを表示
|
6
|
+
def index
|
7
|
+
@user = Rails.application.config.awesome_sms.user_class.constantize.find(current_user.id)
|
8
|
+
@sender_num = Rails.application.config.awesome_sms.twilio_num
|
9
|
+
@user.sms_token = generate_token
|
10
|
+
@user.save!
|
11
|
+
end
|
12
|
+
|
13
|
+
# 認証処理(POST)
|
14
|
+
def verify
|
15
|
+
begin
|
16
|
+
params_check;format_params;user_check;token_check;
|
17
|
+
logger.error("valid user!")
|
18
|
+
render :json => { code: 0 }
|
19
|
+
rescue => e
|
20
|
+
logger.error("error: #{e.message}")
|
21
|
+
render :json => { code: 400, message: e.message }
|
22
|
+
return
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
# 認証token生成
|
28
|
+
def generate_token
|
29
|
+
((0..9).to_a + ("a".."z").to_a + ("A".."Z").to_a).sample(4).join
|
30
|
+
end
|
31
|
+
|
32
|
+
# パラメータチェック
|
33
|
+
def params_check
|
34
|
+
raise 'Body is invalid' if params[:Body].nil?
|
35
|
+
raise "Body isn't contain underscore" if !params[:Body].include?("_")
|
36
|
+
raise 'From is invalid' if params[:From].nil?
|
37
|
+
end
|
38
|
+
|
39
|
+
# パラメータ整形
|
40
|
+
# params[:Body]は「user_id + '_' + token」の形式を想定
|
41
|
+
def format_params
|
42
|
+
body = params[:Body].split("_")
|
43
|
+
@user_id = body[0]
|
44
|
+
@token = body[1]
|
45
|
+
@user.mobile_number = params[:From].sub(/^\+81/, '0')
|
46
|
+
raise 'user_id is nil' if @user_id.nil?
|
47
|
+
raise 'token is nil' if @token.nil?
|
48
|
+
raise 'mobile_number is nil' if @user.mobile_number.nil?
|
49
|
+
end
|
50
|
+
|
51
|
+
# ユーザチェック
|
52
|
+
def user_check
|
53
|
+
@user = Rails.application.config.awesome_sms.user_class.constantize.find_by_id(@user_id)
|
54
|
+
raise 'user is invalid' if @user.nil?
|
55
|
+
end
|
56
|
+
|
57
|
+
# 認証トークンチェック
|
58
|
+
def token_check
|
59
|
+
raise 'token is invalid' if @user.sms_token == @token
|
60
|
+
@user.verify = true
|
61
|
+
@user.save!
|
62
|
+
end
|
63
|
+
end
|
data/config/routes.rb
ADDED
data/lib/awesome_sms.rb
CHANGED
data/lib/awesome_sms/version.rb
CHANGED
metadata
CHANGED
@@ -1,31 +1,45 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: awesome_sms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- kidachi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-07-
|
11
|
+
date: 2014-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: rails
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
-
type: :
|
19
|
+
version: 4.1.4
|
20
|
+
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 4.1.4
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: sqlite3
|
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'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
42
|
+
name: rspec-rails
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
30
44
|
requirements:
|
31
45
|
- - ">="
|
@@ -39,7 +53,7 @@ dependencies:
|
|
39
53
|
- !ruby/object:Gem::Version
|
40
54
|
version: '0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
56
|
+
name: factory_girl_rails
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
59
|
- - ">="
|
@@ -52,25 +66,24 @@ dependencies:
|
|
52
66
|
- - ">="
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '0'
|
55
|
-
description:
|
69
|
+
description: AwesomeSms.
|
56
70
|
email:
|
57
71
|
- t.daiki50@gmail.com
|
58
72
|
executables: []
|
59
73
|
extensions: []
|
60
74
|
extra_rdoc_files: []
|
61
75
|
files:
|
62
|
-
-
|
63
|
-
- ".rspec"
|
64
|
-
- ".travis.yml"
|
65
|
-
- Gemfile
|
66
|
-
- LICENSE.txt
|
67
|
-
- README.md
|
76
|
+
- MIT-LICENSE
|
68
77
|
- Rakefile
|
69
|
-
-
|
78
|
+
- app/assets/javascripts/sms_auth.js
|
79
|
+
- app/assets/stylesheets/sms_auth.css
|
80
|
+
- app/controllers/sms_auth_controller.rb
|
81
|
+
- app/helpers/sms_auth_helper.rb
|
82
|
+
- config/routes.rb
|
70
83
|
- lib/awesome_sms.rb
|
84
|
+
- lib/awesome_sms/engine.rb
|
71
85
|
- lib/awesome_sms/version.rb
|
72
|
-
-
|
73
|
-
- spec/spec_helper.rb
|
86
|
+
- lib/tasks/awesome_sms_tasks.rake
|
74
87
|
homepage: ''
|
75
88
|
licenses:
|
76
89
|
- MIT
|
@@ -94,8 +107,5 @@ rubyforge_project:
|
|
94
107
|
rubygems_version: 2.2.2
|
95
108
|
signing_key:
|
96
109
|
specification_version: 4
|
97
|
-
summary:
|
98
|
-
test_files:
|
99
|
-
- spec/awesome_sms_spec.rb
|
100
|
-
- spec/spec_helper.rb
|
101
|
-
has_rdoc:
|
110
|
+
summary: AwesomeSms.
|
111
|
+
test_files: []
|
data/.gitignore
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
*.gem
|
2
|
-
*.rbc
|
3
|
-
.bundle
|
4
|
-
.config
|
5
|
-
.yardoc
|
6
|
-
Gemfile.lock
|
7
|
-
InstalledFiles
|
8
|
-
_yardoc
|
9
|
-
coverage
|
10
|
-
doc/
|
11
|
-
lib/bundler/man
|
12
|
-
pkg
|
13
|
-
rdoc
|
14
|
-
spec/reports
|
15
|
-
test/tmp
|
16
|
-
test/version_tmp
|
17
|
-
tmp
|
18
|
-
*.bundle
|
19
|
-
*.so
|
20
|
-
*.o
|
21
|
-
*.a
|
22
|
-
mkmf.log
|
23
|
-
.idea/
|
data/.rspec
DELETED
data/.travis.yml
DELETED
data/Gemfile
DELETED
data/README.md
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
# AwesomeSms
|
2
|
-
|
3
|
-
## Installation
|
4
|
-
|
5
|
-
Add this line to your application's Gemfile:
|
6
|
-
|
7
|
-
gem 'awesome_sms'
|
8
|
-
|
9
|
-
And then execute:
|
10
|
-
|
11
|
-
$ bundle
|
12
|
-
|
13
|
-
Or install it yourself as:
|
14
|
-
|
15
|
-
$ gem install awesome_sms
|
16
|
-
|
17
|
-
## Usage
|
18
|
-
|
19
|
-
## Contributing
|
20
|
-
|
21
|
-
1. Fork it ( https://github.com/[my-github-username]/awesome_sms/fork )
|
22
|
-
2. Create your feature branch (`git checkout -b my-new-feature`)
|
23
|
-
3. Commit your changes (`git commit -am 'Add some feature'`)
|
24
|
-
4. Push to the branch (`git push origin my-new-feature`)
|
25
|
-
5. Create a new Pull Request
|
data/awesome_sms.gemspec
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require 'awesome_sms/version'
|
5
|
-
|
6
|
-
Gem::Specification.new do |spec|
|
7
|
-
spec.name = "awesome_sms"
|
8
|
-
spec.version = AwesomeSms::VERSION
|
9
|
-
spec.authors = ["kidachi_"]
|
10
|
-
spec.email = ["t.daiki50@gmail.com"]
|
11
|
-
spec.summary = %q{Awesome SMS.}
|
12
|
-
spec.description = %q{Awesome SMS.}
|
13
|
-
spec.homepage = ""
|
14
|
-
spec.license = "MIT"
|
15
|
-
|
16
|
-
spec.files = `git ls-files -z`.split("\x0")
|
17
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
-
spec.require_paths = ["lib"]
|
20
|
-
|
21
|
-
spec.add_development_dependency "bundler", "~> 1.6"
|
22
|
-
spec.add_development_dependency "rake"
|
23
|
-
spec.add_development_dependency "rspec"
|
24
|
-
end
|
data/spec/awesome_sms_spec.rb
DELETED
data/spec/spec_helper.rb
DELETED