moceansdk 0.1.6 → 1.1.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.
- 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
|