melipayamak 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/branch.rb +117 -0
- data/lib/branchAsync.rb +119 -0
- data/lib/contacts.rb +58 -0
- data/lib/contactsAsync.rb +60 -0
- data/lib/melipayamakapi.rb +58 -0
- data/lib/rest.rb +77 -0
- data/lib/restAsync.rb +98 -0
- data/lib/soap.rb +275 -0
- data/lib/soapAsync.rb +323 -0
- data/lib/ticket.rb +58 -0
- data/lib/ticketAsync.rb +60 -0
- data/lib/users.rb +101 -0
- data/lib/usersAsync.rb +103 -0
- metadata +55 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 247cc1eb9c1d51c7a8462a662cb8a7d1821043da90b9c2a34a0a381043a81228
|
4
|
+
data.tar.gz: eb7c9948258e2b19078a611035ac53148183209aa64a473e9338046928574cc5
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 02d2cc5349324d82fe0fd2f20bc339e50f7caf7ad9fe24902a06b0b27c389b461a1b5726bef72b2aae79dab7451c12582acbd5605faef6044d419d4e3c0c4f06
|
7
|
+
data.tar.gz: 8d13b369ca0cde3b445bb1de77b4cda456eebecd612803f01f6c0473fd7648b2416f959db9360690f66833fe3ea9675b0730e44c8367e27b44a1b0d8947d56f7
|
data/lib/branch.rb
ADDED
@@ -0,0 +1,117 @@
|
|
1
|
+
require 'savon'
|
2
|
+
|
3
|
+
class Branch
|
4
|
+
def initialize(username, password)
|
5
|
+
@username = username
|
6
|
+
@password = password
|
7
|
+
@client = Savon.client(wsdl: "http://api.payamak-panel.com/post/Actions.asmx?wsdl")
|
8
|
+
end
|
9
|
+
def get_data
|
10
|
+
{
|
11
|
+
:username => @username,
|
12
|
+
:password => @password
|
13
|
+
}
|
14
|
+
end
|
15
|
+
def execute(method,data)
|
16
|
+
response = @client.call(method, message:data.merge(get_data))
|
17
|
+
response.body
|
18
|
+
end
|
19
|
+
def get(owner)
|
20
|
+
execute(:get_branchs,{
|
21
|
+
:owner => owner
|
22
|
+
})
|
23
|
+
end
|
24
|
+
def remove(branchId)
|
25
|
+
execute(:remove_branch,{
|
26
|
+
:branchId => branchId
|
27
|
+
})
|
28
|
+
end
|
29
|
+
def add(branchName, owner)
|
30
|
+
execute(:add_branch,{
|
31
|
+
:branchName => branchName,
|
32
|
+
:owner => owner
|
33
|
+
})
|
34
|
+
end
|
35
|
+
def add_number(mobileNumbers, branchId)
|
36
|
+
execute(:add_number,{
|
37
|
+
:mobileNumbers => mobileNumbers,
|
38
|
+
:branchId => branchId
|
39
|
+
})
|
40
|
+
end
|
41
|
+
def send_bulk(from, title, message, branch, dateToSend, requestCount, bulkType, rowFrom, rangeFrom, rangeTo)
|
42
|
+
execute(:add_bulk,{
|
43
|
+
:from => from,
|
44
|
+
:title => title,
|
45
|
+
:message => message,
|
46
|
+
:branch => branch,
|
47
|
+
:DateToSend => dateToSend,
|
48
|
+
:requestCount => requestCount,
|
49
|
+
:bulkType => bulkType,
|
50
|
+
:rowFrom => rowFrom,
|
51
|
+
:rangeFrom => rangeFrom,
|
52
|
+
:rangeTo => rangeTo
|
53
|
+
})
|
54
|
+
end
|
55
|
+
def send_bulk2(from, title, message, branch, dateToSend, requestCount, bulkType, rowFrom, rangeFrom, rangeTo)
|
56
|
+
execute(:add_bulk2,{
|
57
|
+
:from => from,
|
58
|
+
:title => title,
|
59
|
+
:message => message,
|
60
|
+
:branch => branch,
|
61
|
+
:DateToSend => dateToSend,
|
62
|
+
:requestCount => requestCount,
|
63
|
+
:bulkType => bulkType,
|
64
|
+
:rowFrom => rowFrom,
|
65
|
+
:rangeFrom => rangeFrom,
|
66
|
+
:rangeTo => rangeTo
|
67
|
+
})
|
68
|
+
end
|
69
|
+
def get_bulk_count(branch, rangeFrom, rangeTo)
|
70
|
+
execute(:get_bulk_count,{
|
71
|
+
:branch => branch,
|
72
|
+
:rangeFrom => rangeFrom,
|
73
|
+
:rangeTo => rangeTo
|
74
|
+
})
|
75
|
+
end
|
76
|
+
def get_bulk_receptions(bulkId, fromRows)
|
77
|
+
execute(:get_bulk_receptions,{
|
78
|
+
:bulkId => bulkId,
|
79
|
+
:fromRows => fromRows
|
80
|
+
})
|
81
|
+
end
|
82
|
+
def get_bulk_status(bulkId)
|
83
|
+
execute(:get_bulk_status,{
|
84
|
+
:bulkId => bulkId
|
85
|
+
})
|
86
|
+
end
|
87
|
+
def get_today_sent
|
88
|
+
execute(:get_today_sent,{})
|
89
|
+
end
|
90
|
+
def get_total_sent
|
91
|
+
execute(:get_total_sent,{})
|
92
|
+
end
|
93
|
+
def remove_bulk(bulkId)
|
94
|
+
execute(:remove_bulk,{
|
95
|
+
:bulkId => bulkId
|
96
|
+
})
|
97
|
+
end
|
98
|
+
def send_multiple_sms(to, from, text, isflash, udh)
|
99
|
+
data = {
|
100
|
+
:to => to,
|
101
|
+
:from => from,
|
102
|
+
:text => text,
|
103
|
+
:isflash => isflash,
|
104
|
+
:udh => udh
|
105
|
+
}
|
106
|
+
if from.kind_of?(Array)
|
107
|
+
execute(:send_multiple_sms2,data)
|
108
|
+
else
|
109
|
+
execute(:send_multiple_sms,data)
|
110
|
+
end
|
111
|
+
end
|
112
|
+
def update_bulk_delivery(bulkId)
|
113
|
+
execute(:update_bulk_delivery,{
|
114
|
+
:bulkId => bulkId
|
115
|
+
})
|
116
|
+
end
|
117
|
+
end
|
data/lib/branchAsync.rb
ADDED
@@ -0,0 +1,119 @@
|
|
1
|
+
require 'savon'
|
2
|
+
|
3
|
+
class BranchAsync
|
4
|
+
def initialize(username, password)
|
5
|
+
@username = username
|
6
|
+
@password = password
|
7
|
+
@client = Savon.client(wsdl: "http://api.payamak-panel.com/post/Actions.asmx?wsdl")
|
8
|
+
end
|
9
|
+
def get_data
|
10
|
+
{
|
11
|
+
:username => @username,
|
12
|
+
:password => @password
|
13
|
+
}
|
14
|
+
end
|
15
|
+
def execute(method,data)
|
16
|
+
response = nil
|
17
|
+
t = Thread.new{response = @client.call(method, message:data.merge(get_data))}
|
18
|
+
t.join
|
19
|
+
response.body
|
20
|
+
end
|
21
|
+
def get(owner)
|
22
|
+
execute(:get_branchs,{
|
23
|
+
:owner => owner
|
24
|
+
})
|
25
|
+
end
|
26
|
+
def remove(branchId)
|
27
|
+
execute(:remove_branch,{
|
28
|
+
:branchId => branchId
|
29
|
+
})
|
30
|
+
end
|
31
|
+
def add(branchName, owner)
|
32
|
+
execute(:add_branch,{
|
33
|
+
:branchName => branchName,
|
34
|
+
:owner => owner
|
35
|
+
})
|
36
|
+
end
|
37
|
+
def add_number(mobileNumbers, branchId)
|
38
|
+
execute(:add_number,{
|
39
|
+
:mobileNumbers => mobileNumbers,
|
40
|
+
:branchId => branchId
|
41
|
+
})
|
42
|
+
end
|
43
|
+
def send_bulk(from, title, message, branch, dateToSend, requestCount, bulkType, rowFrom, rangeFrom, rangeTo)
|
44
|
+
execute(:add_bulk,{
|
45
|
+
:from => from,
|
46
|
+
:title => title,
|
47
|
+
:message => message,
|
48
|
+
:branch => branch,
|
49
|
+
:DateToSend => dateToSend,
|
50
|
+
:requestCount => requestCount,
|
51
|
+
:bulkType => bulkType,
|
52
|
+
:rowFrom => rowFrom,
|
53
|
+
:rangeFrom => rangeFrom,
|
54
|
+
:rangeTo => rangeTo
|
55
|
+
})
|
56
|
+
end
|
57
|
+
def send_bulk2(from, title, message, branch, dateToSend, requestCount, bulkType, rowFrom, rangeFrom, rangeTo)
|
58
|
+
execute(:add_bulk2,{
|
59
|
+
:from => from,
|
60
|
+
:title => title,
|
61
|
+
:message => message,
|
62
|
+
:branch => branch,
|
63
|
+
:DateToSend => dateToSend,
|
64
|
+
:requestCount => requestCount,
|
65
|
+
:bulkType => bulkType,
|
66
|
+
:rowFrom => rowFrom,
|
67
|
+
:rangeFrom => rangeFrom,
|
68
|
+
:rangeTo => rangeTo
|
69
|
+
})
|
70
|
+
end
|
71
|
+
def get_bulk_count(branch, rangeFrom, rangeTo)
|
72
|
+
execute(:get_bulk_count,{
|
73
|
+
:branch => branch,
|
74
|
+
:rangeFrom => rangeFrom,
|
75
|
+
:rangeTo => rangeTo
|
76
|
+
})
|
77
|
+
end
|
78
|
+
def get_bulk_receptions(bulkId, fromRows)
|
79
|
+
execute(:get_bulk_receptions,{
|
80
|
+
:bulkId => bulkId,
|
81
|
+
:fromRows => fromRows
|
82
|
+
})
|
83
|
+
end
|
84
|
+
def get_bulk_status(bulkId)
|
85
|
+
execute(:get_bulk_status,{
|
86
|
+
:bulkId => bulkId
|
87
|
+
})
|
88
|
+
end
|
89
|
+
def get_today_sent
|
90
|
+
execute(:get_today_sent,{})
|
91
|
+
end
|
92
|
+
def get_total_sent
|
93
|
+
execute(:get_total_sent,{})
|
94
|
+
end
|
95
|
+
def remove_bulk(bulkId)
|
96
|
+
execute(:remove_bulk,{
|
97
|
+
:bulkId => bulkId
|
98
|
+
})
|
99
|
+
end
|
100
|
+
def send_multiple_sms(to, from, text, isflash, udh)
|
101
|
+
data = {
|
102
|
+
:to => to,
|
103
|
+
:from => from,
|
104
|
+
:text => text,
|
105
|
+
:isflash => isflash,
|
106
|
+
:udh => udh
|
107
|
+
}
|
108
|
+
if from.kind_of?(Array)
|
109
|
+
execute(:send_multiple_sms2,data)
|
110
|
+
else
|
111
|
+
execute(:send_multiple_sms,data)
|
112
|
+
end
|
113
|
+
end
|
114
|
+
def update_bulk_delivery(bulkId)
|
115
|
+
execute(:update_bulk_delivery,{
|
116
|
+
:bulkId => bulkId
|
117
|
+
})
|
118
|
+
end
|
119
|
+
end
|
data/lib/contacts.rb
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
require 'savon'
|
2
|
+
|
3
|
+
class Contacts
|
4
|
+
def initialize(username, password)
|
5
|
+
@username = username
|
6
|
+
@password = password
|
7
|
+
@client = Savon.client(wsdl: "http://api.payamak-panel.com/post/contacts.asmx?wsdl")
|
8
|
+
end
|
9
|
+
def get_data
|
10
|
+
{
|
11
|
+
:username => @username,
|
12
|
+
:password => @password
|
13
|
+
}
|
14
|
+
end
|
15
|
+
def execute(method,data)
|
16
|
+
response = @client.call(method, message:data.merge(get_data))
|
17
|
+
response.body
|
18
|
+
end
|
19
|
+
def add_group(groupName, descriptions, showToChilds)
|
20
|
+
execute(:add_group,{
|
21
|
+
:groupName => groupName,
|
22
|
+
:Descriptions => descriptions,
|
23
|
+
:showToChilds => showToChilds
|
24
|
+
})
|
25
|
+
end
|
26
|
+
def add(options)
|
27
|
+
execute(:add_contact,options)
|
28
|
+
end
|
29
|
+
def check_mobile_exist(mobileNumber)
|
30
|
+
execute(:check_mobile_exist_in_contact,{
|
31
|
+
:mobileNumber => mobileNumber
|
32
|
+
})
|
33
|
+
end
|
34
|
+
def get(groupId, keyword, from, count)
|
35
|
+
execute(:get_contacts,{
|
36
|
+
:groupId => groupId,
|
37
|
+
:keyword => keyword,
|
38
|
+
:from => from,
|
39
|
+
:count => count,
|
40
|
+
})
|
41
|
+
end
|
42
|
+
def get_groups
|
43
|
+
execute(:get_groups,{})
|
44
|
+
end
|
45
|
+
def change(options)
|
46
|
+
execute(:change_contact,options)
|
47
|
+
end
|
48
|
+
def remove(mobileNumber)
|
49
|
+
execute(:remove_contact,{
|
50
|
+
:mobileNumber => mobileNumber
|
51
|
+
})
|
52
|
+
end
|
53
|
+
def get_events(contactId)
|
54
|
+
execute(:get_contact_events,{
|
55
|
+
:contactId => contactId
|
56
|
+
})
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require 'savon'
|
2
|
+
|
3
|
+
class ContactsAsync
|
4
|
+
def initialize(username, password)
|
5
|
+
@username = username
|
6
|
+
@password = password
|
7
|
+
@client = Savon.client(wsdl: "http://api.payamak-panel.com/post/contacts.asmx?wsdl")
|
8
|
+
end
|
9
|
+
def get_data
|
10
|
+
{
|
11
|
+
:username => @username,
|
12
|
+
:password => @password
|
13
|
+
}
|
14
|
+
end
|
15
|
+
def execute(method,data)
|
16
|
+
response = nil
|
17
|
+
t = Thread.new{response = @client.call(method, message:data.merge(get_data))}
|
18
|
+
t.join
|
19
|
+
response.body
|
20
|
+
end
|
21
|
+
def add_group(groupName, descriptions, showToChilds)
|
22
|
+
execute(:add_group,{
|
23
|
+
:groupName => groupName,
|
24
|
+
:Descriptions => descriptions,
|
25
|
+
:showToChilds => showToChilds
|
26
|
+
})
|
27
|
+
end
|
28
|
+
def add(options)
|
29
|
+
execute(:add_contact,options)
|
30
|
+
end
|
31
|
+
def check_mobile_exist(mobileNumber)
|
32
|
+
execute(:check_mobile_exist_in_contact,{
|
33
|
+
:mobileNumber => mobileNumber
|
34
|
+
})
|
35
|
+
end
|
36
|
+
def get(groupId, keyword, from, count)
|
37
|
+
execute(:get_contacts,{
|
38
|
+
:groupId => groupId,
|
39
|
+
:keyword => keyword,
|
40
|
+
:from => from,
|
41
|
+
:count => count,
|
42
|
+
})
|
43
|
+
end
|
44
|
+
def get_groups
|
45
|
+
execute(:get_groups,{})
|
46
|
+
end
|
47
|
+
def change(options)
|
48
|
+
execute(:change_contact,options)
|
49
|
+
end
|
50
|
+
def remove(mobileNumber)
|
51
|
+
execute(:remove_contact,{
|
52
|
+
:mobileNumber => mobileNumber
|
53
|
+
})
|
54
|
+
end
|
55
|
+
def get_events(contactId)
|
56
|
+
execute(:get_contact_events,{
|
57
|
+
:contactId => contactId
|
58
|
+
})
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
require_relative "branch"
|
2
|
+
require_relative "branchAsync"
|
3
|
+
require_relative "contacts"
|
4
|
+
require_relative "contactsAsync"
|
5
|
+
require_relative "rest"
|
6
|
+
require_relative "restAsync"
|
7
|
+
require_relative "soap"
|
8
|
+
require_relative "soapAsync"
|
9
|
+
require_relative "ticket"
|
10
|
+
require_relative "ticketAsync"
|
11
|
+
require_relative "users"
|
12
|
+
require_relative "usersAsync"
|
13
|
+
|
14
|
+
class Melipayamakapi
|
15
|
+
def initialize(username, password)
|
16
|
+
@username = username
|
17
|
+
@password = password
|
18
|
+
end
|
19
|
+
def sms(method="rest", type="sync")
|
20
|
+
if method=="soap"
|
21
|
+
if type=="async"
|
22
|
+
SoapAsync.new(@username,@password)
|
23
|
+
else
|
24
|
+
Soap.new(@username,@password)
|
25
|
+
end
|
26
|
+
else
|
27
|
+
if type=="async"
|
28
|
+
RestAsync.new(@username,@password)
|
29
|
+
else
|
30
|
+
Rest.new(@username,@password)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
def branch
|
35
|
+
Branch.new(@username,@password)
|
36
|
+
end
|
37
|
+
def branchAsync
|
38
|
+
BranchAsync.new(@username,@password)
|
39
|
+
end
|
40
|
+
def contacts
|
41
|
+
Contacts.new(@username,@password)
|
42
|
+
end
|
43
|
+
def contactsAsync
|
44
|
+
ContactsAsync.new(@username,@password)
|
45
|
+
end
|
46
|
+
def ticket
|
47
|
+
Ticket.new(@username,@password)
|
48
|
+
end
|
49
|
+
def ticketAsync
|
50
|
+
TicketAsync.new(@username,@password)
|
51
|
+
end
|
52
|
+
def users
|
53
|
+
Users.new(@username,@password)
|
54
|
+
end
|
55
|
+
def usersAsync
|
56
|
+
UsersAsync.new(@username,@password)
|
57
|
+
end
|
58
|
+
end
|
data/lib/rest.rb
ADDED
@@ -0,0 +1,77 @@
|
|
1
|
+
require "http"
|
2
|
+
|
3
|
+
class Rest
|
4
|
+
@@path = "https://rest.payamak-panel.com/api/SendSMS/%s"
|
5
|
+
|
6
|
+
def initialize(username, password)
|
7
|
+
@username = username
|
8
|
+
@password = password
|
9
|
+
end
|
10
|
+
|
11
|
+
def get_data
|
12
|
+
{
|
13
|
+
:username => @username,
|
14
|
+
:password => @password
|
15
|
+
}
|
16
|
+
end
|
17
|
+
|
18
|
+
def request(url,params)
|
19
|
+
HTTP.post(url, :form => params).parse
|
20
|
+
end
|
21
|
+
|
22
|
+
def send(to,from,text,isFlash=false)
|
23
|
+
url = sprintf @@path,"SendSMS"
|
24
|
+
data = {
|
25
|
+
:to=>to,
|
26
|
+
:from=>from,
|
27
|
+
:text=>text,
|
28
|
+
:isFlash=>isFlash
|
29
|
+
}
|
30
|
+
request(url,data.merge(get_data))
|
31
|
+
end
|
32
|
+
|
33
|
+
def send_by_base_number(text, to, bodyId)
|
34
|
+
url = sprintf @@path,"BaseServiceNumber"
|
35
|
+
data = {
|
36
|
+
:text=>text,
|
37
|
+
:to=>to,
|
38
|
+
:bodyId=>bodyId
|
39
|
+
}
|
40
|
+
request(url,data.merge(get_data))
|
41
|
+
end
|
42
|
+
|
43
|
+
def is_delivered(recId)
|
44
|
+
url = sprintf @@path,"GetDeliveries2"
|
45
|
+
data = {
|
46
|
+
:recId=>recId,
|
47
|
+
}
|
48
|
+
request(url,data.merge(get_data))
|
49
|
+
end
|
50
|
+
|
51
|
+
def get_messages(location, index, count, from="")
|
52
|
+
url = sprintf @@path,"GetMessages"
|
53
|
+
data = {
|
54
|
+
:location=>location,
|
55
|
+
:index=> index,
|
56
|
+
:count=> count,
|
57
|
+
:from=> from
|
58
|
+
}
|
59
|
+
request(url,data.merge(get_data))
|
60
|
+
end
|
61
|
+
|
62
|
+
def get_credit
|
63
|
+
url = sprintf @@path,"GetCredit"
|
64
|
+
request(url,get_data)
|
65
|
+
end
|
66
|
+
|
67
|
+
def get_base_price
|
68
|
+
url = sprintf @@path,"GetBasePrice"
|
69
|
+
request(url,get_data)
|
70
|
+
end
|
71
|
+
|
72
|
+
def get_numbers
|
73
|
+
url = sprintf @@path,"GetUserNumbers"
|
74
|
+
request(url,get_data)
|
75
|
+
end
|
76
|
+
|
77
|
+
end
|