sms48-rails 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/lib/sms48.rb +55 -0
- metadata +43 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MWNjMzkyOTcwMGZmMjQwNzhjOWJmZDUxMTI2YTNhNjY0YzI0ZDY1MA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
YzNiNjdmZGQ4MzM5MTM0NjhlODk0NGI1ODIwMzJmOTMxMGMyMDNiZg==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NTFhNDQwOGY5YjQzYTE4ODRkNzVlZThmMmJhZWQyZDY2YjgwMTMzNWMzNThk
|
10
|
+
MGIwOTMxZjk0YzkyOGQ4NzE5MzkxYWYzOTk1NmFkZTQ3YTIxMDhjYjhkOWI2
|
11
|
+
MjIyMzM3MWRhMzczZTdlOGYyNTZmZmE4N2JmYjIyNzcwOTY4MTM=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NGE3NDk4ZjQyMDkyMGY4ZGRjNGJjNmNhMmU3MTI1YjA2YTA3YTYxYzdjYTQ3
|
14
|
+
ZDRiODZmMWYyYTg2NmMxOWIzMjVjYWU2OWY1NGJiZGFiMzc5Mjc4N2FhN2Uz
|
15
|
+
NTQ4NjJmMjI1OWMxYWI0ZGQ2NDljYjk1NWIzMmYxYzdhZGUyYjU=
|
data/lib/sms48.rb
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
#encoding:utf-8
|
2
|
+
|
3
|
+
#SmsSend::count - Количество оставшихся SMS
|
4
|
+
#SmsSend::snd from, to, msg, status_url
|
5
|
+
|
6
|
+
#status_url - на этот URL будет передаваться с
|
7
|
+
#параметрами статус доставки
|
8
|
+
#пример: http://example.com/sms/1/%d
|
9
|
+
#(%d - статус, значение 8 - отправлено,
|
10
|
+
#1 - доставлено, 2 - не удалось)
|
11
|
+
|
12
|
+
# До использования необходимо установить логин
|
13
|
+
# с паролем к sms48.ru следующим образом:
|
14
|
+
# При использовании Rails
|
15
|
+
# в файле /config/initializers/sms48.rb
|
16
|
+
|
17
|
+
# module Sms48
|
18
|
+
# EMAIL = 'yourmail@mail.com'
|
19
|
+
# PASS = 'yourpassword'
|
20
|
+
# end
|
21
|
+
|
22
|
+
require 'net/http'
|
23
|
+
require 'digest'
|
24
|
+
|
25
|
+
module Sms48
|
26
|
+
|
27
|
+
def self.snd from, to, msg, status_url
|
28
|
+
phone = get_phone to
|
29
|
+
|
30
|
+
msg = msg.encode("cp1251")
|
31
|
+
|
32
|
+
msg = URI::encode(msg);
|
33
|
+
dlr = URI::encode(status_url);
|
34
|
+
|
35
|
+
checksumm = md5("#{EMAIL}#{md5(PASS)}#{phone}");
|
36
|
+
|
37
|
+
res = Net::HTTP.get('sms48.ru',
|
38
|
+
"/send_sms.php?login=#{EMAIL}&to=#{phone}&msg=#{msg}&from=#{from}&check2=#{checksumm}&dlr_url=#{dlr}")
|
39
|
+
return res == "1"
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.get_phone phone
|
43
|
+
phone.gsub!(/[- ]/, '')
|
44
|
+
"7#{/.*(\d{10})/.match(phone)[1]}"
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.md5 text
|
48
|
+
Digest::MD5.hexdigest(text)
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.count
|
52
|
+
check = md5("#{EMAIL}#{md5(PASS)}")
|
53
|
+
Net::HTTP.get('sms48.ru', "/get_balance?login=#{EMAIL}&check=#{check}").to_i
|
54
|
+
end
|
55
|
+
end
|
metadata
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sms48-rails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Alexander Presnyakov
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-07-27 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: Sending sms with sms48.ru
|
14
|
+
email: alex@pixella.ru
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files: []
|
18
|
+
files:
|
19
|
+
- lib/sms48.rb
|
20
|
+
homepage: http://rubygems.org/gems/sms48-rails
|
21
|
+
licenses: []
|
22
|
+
metadata: {}
|
23
|
+
post_install_message:
|
24
|
+
rdoc_options: []
|
25
|
+
require_paths:
|
26
|
+
- lib
|
27
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
28
|
+
requirements:
|
29
|
+
- - ! '>='
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: 1.9.3
|
32
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
33
|
+
requirements:
|
34
|
+
- - ! '>='
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '0'
|
37
|
+
requirements: []
|
38
|
+
rubyforge_project:
|
39
|
+
rubygems_version: 2.0.3
|
40
|
+
signing_key:
|
41
|
+
specification_version: 4
|
42
|
+
summary: sms48-rails
|
43
|
+
test_files: []
|