Skip to content

Commit 75a1acd

Browse files
committed
first commit
0 parents  commit 75a1acd

File tree

10 files changed

+900
-0
lines changed

10 files changed

+900
-0
lines changed

composer.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"name": "s00d/onlinesim-api",
3+
"description": "php onlinesim api client",
4+
"keywords": ["onlinesim", "api", "client"],
5+
"type": "library",
6+
"license": "MIT",
7+
"minimum-stability": "stable",
8+
"authors": [
9+
{
10+
"name": "s00d",
11+
"email": "Virus191288@gmail.com"
12+
}
13+
],
14+
"require": {
15+
"php": ">=5.5.9"
16+
},
17+
"autoload": {
18+
"psr-4": {
19+
"s00d\\OnlineSimApi\\": "src/"
20+
}
21+
}
22+
}

readme.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# GHR
2+
3+
[packagist](https://packagist.org/packages/s00d/onlinesim-api)
4+
5+
Api for onlinesim
6+
7+
## Installation
8+
9+
Require this package in your `composer.json` or install it by running:
10+
```
11+
composer require s00d/onlinesim-api
12+
```
13+
14+
## Basic Usage
15+
16+
```php
17+
use App\Classes\Onlinesim\OnlineSimApi;
18+
...
19+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
20+
```
21+
### Params
22+
23+
Name | Description
24+
| ----------------- | ------------ |
25+
apikey | your apikey from onlinesim.ru
26+
locale | locale ru or en
27+
dev_id | your dev_id, not require
28+
29+
### apis - balance
30+
```php
31+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
32+
var_dump($request->balance());
33+
```
34+
### apis - GetNumber
35+
```php
36+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
37+
$getter = $request->numbers();
38+
var_dump($getter->tariffs());
39+
$res = $getter->get('3223');
40+
var_dump($res);
41+
$res = $getter->state();
42+
// or
43+
$res = $getter->state($res['tzid']);
44+
var_dump($res);
45+
...
46+
$res = $getter->close($res['tzid']);
47+
48+
```
49+
50+
### apis - GetForward
51+
```php
52+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
53+
$getter = $request->forward();
54+
$res = $getter->get();
55+
var_dump($res);
56+
$res = $getter->state();
57+
// or
58+
$res = $getter->state($res['tzid']);
59+
var_dump($res);
60+
...
61+
$res = $getter->close($res['tzid']);
62+
```
63+
64+
### apis - GetProxy
65+
```php
66+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
67+
$getter = $request->proxy();
68+
$res = $getter->get();
69+
var_dump($res);
70+
$res = $getter->state();
71+
// or
72+
$res = $getter->state($res['tzid']);
73+
var_dump($res);
74+
```
75+
76+
### apis - GetRent
77+
```php
78+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
79+
$getter = $request->rent();
80+
var_dump($getter->tariffs());
81+
$res = $getter->get();
82+
var_dump($res);
83+
$res = $getter->state();
84+
// or
85+
$res = $getter->state($res['tzid']);
86+
var_dump($res);
87+
...
88+
$res = $getter->close($res['tzid']);
89+
```
90+
91+
### apis - GetFree
92+
```php
93+
$request = new OnlineSimApi('apikey', 'locale', 'dev_id');
94+
$getter = $request->free();
95+
var_dump($getter->getList());
96+
var_dump($getter->getPhoneList(7));
97+
var_dump($getter->getMessageList(11111));
98+
```
99+

src/Apis/GetForward.php

Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
<?php
2+
3+
namespace s00d\OnlineSimApi\Apis;
4+
5+
use s00d\OnlineSimApi\OnlineSimApi;
6+
use s00d\OnlineSimApi\RequestException;
7+
8+
class GetForward extends OnlineSimApi
9+
{
10+
11+
/**
12+
* https://onlinesim.ru/docs/api/ru#getforward
13+
* @param string $service - unlimited_sms|forward_without_sms
14+
* @param null|int $region - 77|78
15+
* @param array $forward_numbers
16+
* @param array $reject
17+
* @return mixed|null
18+
* @throws RequestException
19+
*/
20+
public function get($service = 'unlimited_sms', $region = null, $forward_numbers = [], $reject = []) {
21+
$data = [
22+
'service' => $service,
23+
'forward_numbers' => $forward_numbers,
24+
'reject' => $reject,
25+
];
26+
27+
if($region) {
28+
$data['country'] = $region;
29+
}
30+
return $this->request->send('getForward', $data, 'GET');
31+
}
32+
33+
/**
34+
* https://onlinesim.ru/docs/api/ru#getstate
35+
* @param null|int $tzid
36+
* @param int $message_to_code - 0|1
37+
* @param string $orderby - ASC|DESC
38+
* @param bool $msg_list
39+
* @param bool $clean
40+
* @return mixed|null
41+
* @throws RequestException
42+
*/
43+
public function state($tzid = null, $message_to_code = 1, $orderby = 'ASC', $msg_list = true, $clean = false) {
44+
$data = [
45+
'message_to_code' => $message_to_code,
46+
'orderby' => $orderby,
47+
'msg_list' => $msg_list?1:0,
48+
'clean' => $clean?1:0,
49+
'type' => 'forward',
50+
];
51+
if($tzid) {
52+
$data['country'] = $tzid;
53+
}
54+
$res = $this->request->send('getState', $data, 'GET');
55+
if($tzid && count($res) > 0) {
56+
return $res[0];
57+
}
58+
return $res;
59+
}
60+
61+
/**
62+
* https://onlinesim.ru/docs/api/ru#setoperationok
63+
* @param int $tzid
64+
* @param bool $ban
65+
* @return mixed|null
66+
* @throws RequestException
67+
*/
68+
public function close($tzid, $ban = false) {
69+
$data = [
70+
'tzid' => $tzid,
71+
'ban' => $ban?1:0,
72+
];
73+
74+
return $this->request->send('setOperationOk', $data, 'GET');
75+
}
76+
77+
/**
78+
* https://onlinesim.ru/docs/api/ru#setforwardstatusenable
79+
* @param int $tzid
80+
* @return mixed|null
81+
* @throws RequestException
82+
*/
83+
public function setEnable($tzid) {
84+
$data = [
85+
'tzid' => $tzid,
86+
];
87+
88+
return $this->request->send('setForwardStatusEnable', $data, 'GET');
89+
}
90+
91+
/**
92+
* https://onlinesim.ru/docs/api/ru#forwardinglist
93+
* @param int $tzid
94+
* @param int $page
95+
* @param string $sort
96+
* @return mixed|null
97+
* @throws RequestException
98+
*/
99+
public function forwardingList($tzid, $page = 1, $sort = 'ASC') {
100+
$data = [
101+
'id' => $tzid,
102+
'page' => $page,
103+
'sort' => $sort,
104+
];
105+
return $this->request->send('__FUNCTION__', $data, 'GET');
106+
}
107+
108+
/**
109+
* https://onlinesim.ru/docs/api/ru#forwardingsave
110+
* @param int $tzid
111+
* @param bool $auto
112+
* @param null|int $forward_number
113+
* @return mixed|null
114+
* @throws RequestException
115+
*/
116+
public function save($tzid, $auto = true, $forward_number = null) {
117+
$data = [
118+
'id' => $tzid,
119+
'auto' => $auto,
120+
];
121+
if($forward_number) {
122+
$data['forward_number'] = $forward_number;
123+
}
124+
125+
return $this->request->send('forwardingSave', $data, 'GET');
126+
}
127+
128+
/**
129+
* https://onlinesim.ru/docs/api/ru#forwardingremove
130+
* @param int $tzid
131+
* @return mixed|null
132+
* @throws RequestException
133+
*/
134+
public function remove($tzid) {
135+
$data = [
136+
'id' => $tzid,
137+
];
138+
139+
return $this->request->send('forwardingRemove', $data, 'GET');
140+
}
141+
142+
143+
144+
/**
145+
* https://onlinesim.ru/docs/api/ru#getcallnumberlist
146+
* @param int $number
147+
* @param int $count
148+
* @param int $page
149+
* @param string $order
150+
* @return mixed|null
151+
* @throws RequestException
152+
*/
153+
public function callList($number, $count = 10, $page = 1, $order = 'ASC') {
154+
$data = [
155+
'number' => $number,
156+
'count' => $count,
157+
'page' => $page,
158+
'order' => $order,
159+
];
160+
161+
return $this->request->send('getCallNumberList', $data, 'GET');
162+
}
163+
164+
/**
165+
* https://onlinesim.ru/docs/api/ru#getforwardpaymentslist
166+
* @param int $tzid
167+
* @return mixed|null
168+
* @throws RequestException
169+
*/
170+
public function getForwardPaymentsList($tzid) {
171+
$data = [
172+
'id' => $tzid,
173+
];
174+
175+
return $this->request->send(__FUNCTION__, $data, 'GET');
176+
}
177+
178+
}

src/Apis/GetFree.php

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
<?php
2+
3+
namespace s00d\OnlineSimApi\Apis;
4+
5+
use s00d\OnlineSimApi\OnlineSimApi;
6+
use s00d\OnlineSimApi\RequestException;
7+
8+
class GetFree extends OnlineSimApi
9+
{
10+
/**
11+
* https://onlinesim.ru/docs/api/ru#getfreecountrylist
12+
* @return mixed|null
13+
* @throws RequestException
14+
*/
15+
public function getList() {
16+
return $this->request->send('getFreeCountryList', [], 'GET');
17+
}
18+
19+
/**
20+
* https://onlinesim.ru/docs/api/ru#getfreephonelist
21+
* @param int $country
22+
* @return mixed|null
23+
* @throws RequestException
24+
*/
25+
public function getPhoneList($country = 7) {
26+
$data = [
27+
'country' => $country,
28+
];
29+
30+
return $this->request->send('getFreePhoneList', $data, 'GET');
31+
}
32+
33+
/**
34+
* https://onlinesim.ru/docs/api/ru#getfreephonelist
35+
* @param int $number
36+
* @param int $page
37+
* @return mixed|null
38+
* @throws RequestException
39+
*/
40+
public function getMessageList($number, $page = 1) {
41+
$data = [
42+
'phone' => $number,
43+
'page' => $page,
44+
];
45+
46+
return $this->request->send('getFreeMessageList', $data, 'GET');
47+
}
48+
}

0 commit comments

Comments
 (0)