moceansdk 0.1.6 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/LICENSE.txt +1 -1
- data/README.md +75 -57
- data/lib/moceansdk.rb +51 -5
- data/lib/moceansdk/auth/abstract_auth.rb +15 -0
- data/lib/moceansdk/auth/basic.rb +29 -0
- data/lib/moceansdk/client.rb +70 -14
- data/lib/moceansdk/exceptions/mocean_error.rb +18 -0
- data/lib/moceansdk/exceptions/required_field_exception.rb +8 -0
- data/lib/moceansdk/modules/abstact_client.rb +54 -0
- data/lib/moceansdk/modules/account/balance.rb +26 -22
- data/lib/moceansdk/modules/account/pricing.rb +37 -37
- data/lib/moceansdk/modules/command/command.rb +47 -0
- data/lib/moceansdk/modules/command/mc.rb +40 -0
- data/lib/moceansdk/modules/command/mc_builder.rb +30 -0
- data/lib/moceansdk/modules/command/mc_object/abstract_mc.rb +36 -0
- data/lib/moceansdk/modules/command/mc_object/send_sms.rb +41 -0
- data/lib/moceansdk/modules/command/mc_object/tg_request_contact.rb +49 -0
- data/lib/moceansdk/modules/command/mc_object/tg_send_animation.rb +41 -0
- data/lib/moceansdk/modules/command/mc_object/tg_send_audio.rb +41 -0
- data/lib/moceansdk/modules/command/mc_object/tg_send_document.rb +41 -0
- data/lib/moceansdk/modules/command/mc_object/tg_send_photo.rb +41 -0
- data/lib/moceansdk/modules/command/mc_object/tg_send_text.rb +41 -0
- data/lib/moceansdk/modules/command/mc_object/tg_send_video.rb +41 -0
- data/lib/moceansdk/modules/message/channel.rb +13 -0
- data/lib/moceansdk/modules/message/message_status.rb +29 -24
- data/lib/moceansdk/modules/message/sms.rb +74 -96
- data/lib/moceansdk/modules/message/verify_request.rb +83 -58
- data/lib/moceansdk/modules/message/verify_validate.rb +33 -37
- data/lib/moceansdk/modules/number_lookup/number_lookup.rb +34 -0
- data/lib/moceansdk/modules/response_factory.rb +50 -0
- data/lib/moceansdk/modules/transmitter.rb +112 -0
- data/lib/moceansdk/modules/voice/mc.rb +63 -0
- data/lib/moceansdk/modules/voice/mc_builder.rb +30 -0
- data/lib/moceansdk/modules/voice/mc_object/abstract_mc.rb +38 -0
- data/lib/moceansdk/modules/voice/mc_object/collect.rb +39 -0
- data/lib/moceansdk/modules/voice/mc_object/dial.rb +31 -0
- data/lib/moceansdk/modules/voice/mc_object/play.rb +31 -0
- data/lib/moceansdk/modules/voice/mc_object/record.rb +19 -0
- data/lib/moceansdk/modules/voice/mc_object/say.rb +43 -0
- data/lib/moceansdk/modules/voice/mc_object/sleep.rb +23 -0
- data/lib/moceansdk/modules/voice/voice.rb +84 -0
- data/lib/moceansdk/utils.rb +15 -0
- data/lib/moceansdk/version.rb +1 -1
- data/moceansdk.gemspec +13 -6
- metadata +97 -19
- data/lib/moceansdk/init.rb +0 -4
- data/lib/moceansdk/mocean.rb +0 -52
- data/lib/moceansdk/modules/abstract.rb +0 -142
@@ -0,0 +1,41 @@
|
|
1
|
+
module Moceansdk
|
2
|
+
module Modules
|
3
|
+
module Command
|
4
|
+
module McObject
|
5
|
+
|
6
|
+
class TgSendPhoto < AbstractMc
|
7
|
+
def action
|
8
|
+
'send-telegram'
|
9
|
+
end
|
10
|
+
|
11
|
+
def required_key
|
12
|
+
['from','to','content']
|
13
|
+
end
|
14
|
+
|
15
|
+
def from(from, contact_type = 'bot_username')
|
16
|
+
@params[:'from'] = {}
|
17
|
+
@params[:'from'][:'id'] = from
|
18
|
+
@params[:'from'][:'type'] = contact_type
|
19
|
+
return self
|
20
|
+
end
|
21
|
+
|
22
|
+
def to(to, contact_type = "chat_id")
|
23
|
+
@params[:'to'] = {}
|
24
|
+
@params[:'to'][:'id'] = to
|
25
|
+
@params[:'to'][:'type'] = contact_type
|
26
|
+
return self
|
27
|
+
end
|
28
|
+
|
29
|
+
def content(url,text)
|
30
|
+
@params[:'content'] = {}
|
31
|
+
@params[:'content'][:'rich_media_url'] = url
|
32
|
+
@params[:'content'][:'text'] = text
|
33
|
+
@params[:'content'][:'type'] = 'photo'
|
34
|
+
return self
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Moceansdk
|
2
|
+
module Modules
|
3
|
+
module Command
|
4
|
+
module McObject
|
5
|
+
|
6
|
+
class TgSendText < AbstractMc
|
7
|
+
def action
|
8
|
+
'send-telegram'
|
9
|
+
end
|
10
|
+
|
11
|
+
def required_key
|
12
|
+
['from','to','content']
|
13
|
+
end
|
14
|
+
|
15
|
+
def from(from, contact_type = 'bot_username')
|
16
|
+
@params[:'from'] = {}
|
17
|
+
@params[:'from'][:'id'] = from
|
18
|
+
@params[:'from'][:'type'] = contact_type
|
19
|
+
return self
|
20
|
+
end
|
21
|
+
|
22
|
+
def to(to, contact_type = "chat_id")
|
23
|
+
@params[:'to'] = {}
|
24
|
+
@params[:'to'][:'id'] = to
|
25
|
+
@params[:'to'][:'type'] = contact_type
|
26
|
+
return self
|
27
|
+
end
|
28
|
+
|
29
|
+
def content(text)
|
30
|
+
@params[:'content'] = {}
|
31
|
+
@params[:'content'][:'text'] = text
|
32
|
+
@params[:'content'][:'type'] = 'text'
|
33
|
+
return self
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Moceansdk
|
2
|
+
module Modules
|
3
|
+
module Command
|
4
|
+
module McObject
|
5
|
+
|
6
|
+
class TgSendVideo < AbstractMc
|
7
|
+
def action
|
8
|
+
'send-telegram'
|
9
|
+
end
|
10
|
+
|
11
|
+
def required_key
|
12
|
+
['from','to','content']
|
13
|
+
end
|
14
|
+
|
15
|
+
def from(from, contact_type = 'bot_username')
|
16
|
+
@params[:'from'] = {}
|
17
|
+
@params[:'from'][:'id'] = from
|
18
|
+
@params[:'from'][:'type'] = contact_type
|
19
|
+
return self
|
20
|
+
end
|
21
|
+
|
22
|
+
def to(to, contact_type = "chat_id")
|
23
|
+
@params[:'to'] = {}
|
24
|
+
@params[:'to'][:'id'] = to
|
25
|
+
@params[:'to'][:'type'] = contact_type
|
26
|
+
return self
|
27
|
+
end
|
28
|
+
|
29
|
+
def content(url,text)
|
30
|
+
@params[:'content'] = {}
|
31
|
+
@params[:'content'][:'rich_media_url'] = url
|
32
|
+
@params[:'content'][:'text'] = text
|
33
|
+
@params[:'content'][:'type'] = 'video'
|
34
|
+
return self
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -1,25 +1,30 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
1
|
+
module Moceansdk
|
2
|
+
module Modules
|
3
|
+
module Message
|
4
|
+
|
5
|
+
class MessageStatus < Moceansdk::Modules::AbstractClient
|
6
|
+
def initialize(obj_auth, transmitter)
|
7
|
+
super(obj_auth, transmitter)
|
8
|
+
@required_fields = ['mocean-api-key', 'mocean-api-secret', 'mocean-msgid']
|
9
|
+
end
|
10
|
+
|
11
|
+
def msgid=(param)
|
12
|
+
@params['mocean-msgid'] = param
|
13
|
+
end
|
14
|
+
|
15
|
+
def resp_format=(param)
|
16
|
+
@params['mocean-resp-format'] = param
|
17
|
+
end
|
18
|
+
|
19
|
+
def inquiry(params = {})
|
20
|
+
create(params)
|
21
|
+
create_final_params
|
22
|
+
required_field_set?
|
23
|
+
|
24
|
+
@transmitter.get('/report/message', @params)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
end
|
25
30
|
end
|
@@ -1,96 +1,74 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
return self
|
76
|
-
end
|
77
|
-
|
78
|
-
def create params = {}
|
79
|
-
reset
|
80
|
-
super(params)
|
81
|
-
return self
|
82
|
-
end
|
83
|
-
|
84
|
-
def send
|
85
|
-
if @flashSms == true
|
86
|
-
setMclass(1)
|
87
|
-
setAltDcs(1)
|
88
|
-
end
|
89
|
-
createFinalParams
|
90
|
-
isRequiredFieldsSet
|
91
|
-
response = Transmitter.new('/rest/1/sms','post',@params)
|
92
|
-
return response.getResponse()
|
93
|
-
end
|
94
|
-
|
95
|
-
|
96
|
-
end
|
1
|
+
module Moceansdk
|
2
|
+
module Modules
|
3
|
+
module Message
|
4
|
+
|
5
|
+
class Sms < AbstractClient
|
6
|
+
def initialize(obj_auth, transmitter)
|
7
|
+
super(obj_auth, transmitter)
|
8
|
+
@required_fields = ['mocean-api-key', 'mocean-api-secret', 'mocean-from', 'mocean-to', 'mocean-text']
|
9
|
+
end
|
10
|
+
|
11
|
+
def from=(param)
|
12
|
+
@params['mocean-from'] = param
|
13
|
+
end
|
14
|
+
|
15
|
+
def to=(param)
|
16
|
+
@params['mocean-to'] = param
|
17
|
+
end
|
18
|
+
|
19
|
+
def text=(param)
|
20
|
+
@params['mocean-text'] = param
|
21
|
+
end
|
22
|
+
|
23
|
+
def udh=(param)
|
24
|
+
@params['mocean-udh'] = param
|
25
|
+
end
|
26
|
+
|
27
|
+
def coding=(param)
|
28
|
+
@params['mocean-coding'] = param
|
29
|
+
end
|
30
|
+
|
31
|
+
def dlr_mask=(param)
|
32
|
+
@params['mocean-dlr-mask'] = param
|
33
|
+
end
|
34
|
+
|
35
|
+
def dlr_url=(param)
|
36
|
+
@params['mocean-dlr-url'] = param
|
37
|
+
end
|
38
|
+
|
39
|
+
def schedule=(param)
|
40
|
+
@params['mocean-schedule'] = param
|
41
|
+
end
|
42
|
+
|
43
|
+
def mclass=(param)
|
44
|
+
@params['mocean-mclass'] = param
|
45
|
+
end
|
46
|
+
|
47
|
+
def alt_dcs=(param)
|
48
|
+
@params['mocean-alt-dcs'] = param
|
49
|
+
end
|
50
|
+
|
51
|
+
def charset=(param)
|
52
|
+
@params['mocean-charset'] = param
|
53
|
+
end
|
54
|
+
|
55
|
+
def validity=(param)
|
56
|
+
@params['mocean-validity'] = param
|
57
|
+
end
|
58
|
+
|
59
|
+
def resp_format=(param)
|
60
|
+
@params['mocean-resp-format'] = param
|
61
|
+
end
|
62
|
+
|
63
|
+
def send(params = {})
|
64
|
+
create(params)
|
65
|
+
create_final_params
|
66
|
+
required_field_set?
|
67
|
+
|
68
|
+
@transmitter.post('/sms', @params)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -1,59 +1,84 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
1
|
+
module Moceansdk
|
2
|
+
module Modules
|
3
|
+
module Message
|
4
|
+
|
5
|
+
class VerifyRequest < Moceansdk::Modules::AbstractClient
|
6
|
+
attr_reader :channel, :is_resend
|
7
|
+
|
8
|
+
def initialize(obj_auth, transmitter)
|
9
|
+
super(obj_auth, transmitter)
|
10
|
+
@required_fields = ['mocean-api-key', 'mocean-api-secret', 'mocean-to', 'mocean-brand']
|
11
|
+
@channel = Channel::AUTO
|
12
|
+
@is_resend = false
|
13
|
+
end
|
14
|
+
|
15
|
+
def to=(param)
|
16
|
+
@params['mocean-to'] = param
|
17
|
+
end
|
18
|
+
|
19
|
+
def brand=(param)
|
20
|
+
@params['mocean-brand'] = param
|
21
|
+
end
|
22
|
+
|
23
|
+
def from=(param)
|
24
|
+
@params['mocean-from'] = param
|
25
|
+
end
|
26
|
+
|
27
|
+
def code_length=(param)
|
28
|
+
@params['mocean-code-length'] = param
|
29
|
+
end
|
30
|
+
|
31
|
+
def template=(param)
|
32
|
+
@params['mocean-template'] = param
|
33
|
+
end
|
34
|
+
|
35
|
+
def pin_validity=(param)
|
36
|
+
@params['mocean-pin-validity'] = param
|
37
|
+
end
|
38
|
+
|
39
|
+
def next_event_wait=(param)
|
40
|
+
@params['mocean-next-event-wait'] = param
|
41
|
+
end
|
42
|
+
|
43
|
+
def resp_format=(param)
|
44
|
+
@params['mocean-resp-format'] = param
|
45
|
+
end
|
46
|
+
|
47
|
+
def send_as(channel)
|
48
|
+
@channel = channel
|
49
|
+
self
|
50
|
+
end
|
51
|
+
|
52
|
+
def send(params = {})
|
53
|
+
create(params)
|
54
|
+
create_final_params
|
55
|
+
required_field_set?
|
56
|
+
|
57
|
+
verify_request_url = '/verify'
|
58
|
+
verify_request_url += if @is_resend
|
59
|
+
'/resend'
|
60
|
+
else
|
61
|
+
'/req'
|
62
|
+
end
|
63
|
+
|
64
|
+
if @channel == Channel::SMS
|
65
|
+
verify_request_url += '/sms'
|
66
|
+
elsif @channel == Channel::TELEGRAM
|
67
|
+
verify_request_url += '/telegram'
|
68
|
+
end
|
69
|
+
|
70
|
+
@transmitter.post(verify_request_url, @params)
|
71
|
+
end
|
72
|
+
|
73
|
+
def resend(params = {})
|
74
|
+
send_as Channel::SMS
|
75
|
+
@is_resend = true
|
76
|
+
@required_fields = ['mocean-api-key', 'mocean-api-secret', 'mocean-reqid']
|
77
|
+
|
78
|
+
send(params)
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
end
|
83
|
+
end
|
59
84
|
end
|