· 6 years ago · May 19, 2019, 04:08 AM
1<?php
2
3/*
4
5Ðеобходимо напиÑать php class, который будет принимать get-Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¸ отправлÑть другой get Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð² ÑоответÑтвии Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ð¼Ð¸ уÑловиÑми, а также делать необходимые проверки
6Ð”Ð»Ñ Ð¿Ñ€Ð¸ÐµÐ¼Ð° и отправки GET-запроÑов иÑпользовать https://github.com/guzzle/guzzle
7Ðеобходимо реализовать запиÑÑŒ информации о запроÑах в БД и вывод информации из базы данных.
8
9Ðеобходимо реализовать проÑтой роутинг:
10 1. https://api.sitename.ru/class.php?action=dashboard вывод информации о вÑех запроÑах (Ñтавках)
11 2. https://api.sitename.ru/class.php?action=request на данный маршрут будут отправлÑтьÑÑ Ð²Ñ…Ð¾Ð´Ð½Ð¾Ð¹ GET-запроÑ
12
13
14Формат входного GET-запроÑа Ñледующий:
15https://sitename.ru/class.php?action=request&request=signal&signal_from=названиеиÑточника&order_type=типордера&symbol=валютнаÑпара(например frxEURUSD)
16
17API binaryteam.ru Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð·Ð´ÐµÑÑŒ: https://docs.google.com/document/d/1BNQIC42N31q_DZx1fSLMCDYeGOB1cFAL3OAd1V8oDZ4/edit
18
19
20
21
22
23КлаÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ работать Ñ Ð¼Ð°ÑÑивом пользователей $users, который Ñодержит Ñледующую информацию:
24
25$users = array(
26 'aleksv' => array(
27 'username' => 'aleksv', // Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ
28 'user_status' => 'active', // ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (active или stopped)
29 'trading' => true, // разрешена Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ñ Ð¸Ð»Ð¸ нет
30 'type_account' => 'demo', // тип аккаунта Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ Ñтавки (demo или real)
31 'duration' => '3m', // продолжительноÑть (Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации Ñтавки)
32 'bet_amount' => (int)1, // Ð¿ÐµÑ€Ð²Ð¾Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ñумма Ñтавки в USD
33 'martingale' => true, // разрешено иÑпользовать мартингейл или нет на Ñледующий Ñигнал
34 'check_signal_currency' => true, // ПроверÑть Ñовпадение валюты Ñигнала (true || false)
35 'check_signal_from' => true, // ПроверÑть Ñовпадение иÑточника Ñигнала (true || false)
36 'check_signal_type' => true, // ПроверÑть Ñовпадение типа Ñигнала CALL или PUTT (true || false)
37 'trade_in_expiration' => false, // разрешено отправлÑть новый Ñигнал по одной и той-же валютной паре, еÑли Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации предыдущего контракта не вышло и результат не извеÑтен
38 'martingale_steps' => (int)2, // количеÑтво колен мартингейл
39 'apikey' => '2101823462323f9e97107f9c9481162d', // ключ binaryteam Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ Ñтавок
40 ),
41 'roman' => array(
42 'username' => 'roman',
43 'user_status' => 'stopped',
44 'trading' => true,
45 'type_account' => 'demo',
46 'duration' => '3m',
47 'bet_amount' => (int)1,
48 'martingale' => true,
49 'check_signal_currency' => true,
50 'check_signal_from' => true,
51 'check_signal_type' => true,
52 'trade_in_expiration' => false,
53 'martingale_steps' => (int)2,
54 'apikey' => '',
55 )
56);
57
58
59ПоÑле Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð²Ñ…Ð¾Ð´Ñщего GET-запроÑа необходимо Ñоздать объект клаÑÑа Request Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ð¼Ð¸ параметрами:
60
61$user = new Request ($params);
62
63и вызвать метод: $user->sendbet_api();
64
65### ПроверÑем, активен пользователь или нет, разрешена Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ñ Ð¸Ð»Ð¸ нет, еÑть ключ API или нет.
66 ЕÑли пользователь active, Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ñ true и еÑть APIKEY выполнÑем программу дальше
67
68### Далее проверÑем:
69
70
71
72 0. Сценарий первый: в базе данных нет еще никаких Ñтавок
73 -----------------------
74 Тогда, ÑохранÑем полученную информацию из входÑщего GET-запроÑа в БД, ÑеÑÑию, затем отправлÑем иÑходÑщий GET-Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° ÑÐµÑ€Ð²Ð¸Ñ https://api.binaryteam.ru/?request=signal&key=".$this->apikey."&type_account=".$this->type_account."&bet=".$this->signal_type."&symbol=".$this->symbol."&duration=".$this->duration."&amount=".$this->bet_amount , получаем $binaryteam_betid, ждем 5 Ñекунд, вызываем метод $user->bet_info($binaryteam_betid, $apikey) отправлÑем повторный Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° ÑÐµÑ€Ð²Ð¸Ñ binaryteam, получаем полную информацию по контракту $binaryteam_betid($contract_id) и ÑохранÑем(обновлÑем) информацию в БД по данному контракту.
75
76
77
78 1. Сценарий второй:
79 -----------------------
80 Ð’ базе данных еÑть Ñтавки Ñ Ñ‚Ð°ÐºÐ¾Ð¹-же валютной парой и таким-же полем signal_from как мы получили из входÑщего GET-запроÑа.
81 Ð”Ð»Ñ Ð²Ñех Ñтавок Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации закончилоÑÑŒ(нет активных контрактов) и поÑледнÑÑ Ñтавка "ВЫИГРÐЛР- result =1"
82
83 Тогда необходимо выполнить дейÑÑ‚Ð²Ð¸Ñ Ð¾Ð¿Ð¸Ñанные в - 0. Сценарий первый
84
85
86
87
88 2. Сценарий третий:
89 -----------------------
90 Ð’ базе данных еÑть Ñтавки Ñ Ñ‚Ð°ÐºÐ¾Ð¹-же валютной парой и таким-же полем signal_from как мы получили из входÑщего GET-запроÑа.
91 Ð”Ð»Ñ Ð²Ñех Ñтавок Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации закончилоÑÑŒ(нет активных контрактов) и поÑледнÑÑ Ñтавка "ПРОИГРÐЛР- result =2"
92
93 Тогда проверÑем $this->martingale и $this->martingale_steps. ЕÑли $this->martingale = false, тогда необходимо выполнить дейÑÑ‚Ð²Ð¸Ñ Ð¾Ð¿Ð¸Ñанные в - 0. Сценарий первый
94
95 ЕÑли ( $this->martingale = true && $this->martingale_steps >= 1 )? Тогда необходимо выполнить дейÑÑ‚Ð²Ð¸Ñ Ð¾Ð¿Ð¸Ñанные в - 0. Сценарий первый (Ñохранить информацию и открыть контракт удвоенной Ñтавкой: $this->bet_amount *2 Ñто на шаге 1(Ñохранить результат в ÑеÑÑию, каждый Ñледующий шаг, удваиваем предыдущий $this->bet_amount до тех пор, пока не закончатÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтво колен мартингейл). ЕÑли количеÑтво колен мартингейл закончилоÑÑŒ, Ñ‚.е мы прошли веÑÑŒ цикл колен, тогда необходимо выполнить дейÑÑ‚Ð²Ð¸Ñ Ð¾Ð¿Ð¸Ñанные в - 0. Сценарий первый (открыть обычную Ñтавку) и так до Ñледующего проигрыша.
96
97
98
99 3. Сценарий четвертый:
100 -----------------------
101 Ð’ базе данных ЕСТЬ! Ñтавка(поÑледнÑÑ Ñтавка) Ñ Ñ‚Ð°ÐºÐ¾Ð¹-же валютной парой и таким-же полем signal_from как мы получили из входÑщего GET-запроÑа.
102 Ð”Ð»Ñ Ñтавки Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации еще закончилоÑÑŒ (результат не извеÑтен), тогда проверÑем:
103
104 1. $this->trade_in_expiration
105
106 ЕÑли значение $this->trade_in_expiration === true(разрешено отправлÑть новыю Ñтавку, пока Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации не вышло), то ÑохранÑем полученную информацию из входÑщего GET-запроÑа в БД, ÑеÑÑию, затем отправлÑем иÑходÑщий GET-Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° ÑÐµÑ€Ð²Ð¸Ñ https://api.binaryteam.ru/?request=signal&key=".$this->apikey."&type_account=".$this->type_account."&bet=".$signal."&symbol=".$this->symbol."&duration=".$this->duration."&amount=".$this->bet_amount , получаем $binaryteam_betid, ждем 5 Ñекунд, вызываем метод $user->bet_info($binaryteam_betid, $apikey) отправлÑем повторный Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° ÑÐµÑ€Ð²Ð¸Ñ binaryteam, получаем полную информацию по контракту $binaryteam_betid($contract_id) и ÑохранÑем информацию в БД.
107
108 2. ЕÑли ($this->trade_in_expiration === false) - запрещено отправлÑть новыю Ñтавку, пока Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации не вышло, тогда ничего не делаем (проÑто игнорируем входÑщий GET-запроÑ)
109
110
111
112
113
114 Важный момент: Ð’Ñегда необходимо проверÑть ÑоответÑтвие иÑточника Ñигнала (signal_from) и валюты Ñигнала($this->symbol) из входÑщего GET-запроÑа Ñ Ð¿Ð¾Ñледней Ñтавкой в базе данных, Ñ Ñ‚Ð°ÐºÐ¸Ð¼ же иÑточником Ñигнала и такой-же валютной паре.
115 -----------------------
116 Ðа Ñтранице: https://api.sitename.ru/class.php?action=dashboard необходимо выводить информацию о вÑех запроÑах (Ñтавках), которые были отправлены на Ñервер binaryteam
117
118 ПроверÑть результат Ñтавки по контракту, каждые 5-10 Ñекунд, не долбить каждую Ñекунду Ñервер binaryteam запроÑами
119 ОбновлÑть результаты Ñтавок в таблице /class.php?action=dashboard каждые 5-10 Ñекунд (через ajax - без перезагрузки Ñтраницы)
120
121
122
123
124
125
126
127*/
128
129
130
131
132
133
134
135
136
137
138
139
140 ini_set('display_errors', 1);
141 ini_set('display_startup_errors', 1);
142 ini_set('error_reporting', E_ALL);
143
144 require_once("vendor/autoload.php");
145
146 $db_host = 'localhost';
147 $db_name = 'binarysignals';
148 $db_user = 'binarysignals';
149 $db_password = '9P1a5V2j';
150
151 // ПодключаемÑÑ Ðº Ñерверу БД
152 $mysqli = new mysqli($db_host, $db_user, $db_password, $db_name);
153 $mysqli->set_charset("utf8");
154 if (!$mysqli) { die ('Connection error: ' . mysql_error()); }
155
156 $users = array(
157 'aleksv' => array(
158 'username' => 'aleksv',
159 'user_status' => 'active',
160 'trading' => true,
161 'type_account' => 'demo',
162 'duration' => '3m',
163 'bet_amount' => (int)1,
164 'martingale' => true,
165 'check_signal_currency' => true,
166 'check_signal_from' => true,
167 'check_signal_type' => true,
168 'trade_in_expiration' => false,
169 'martingale_steps' => (int)2,
170 'apikey' => '2101823462323f9e97107f9c9481162d',
171 ),
172 'roman' => array(
173 'username' => 'roman',
174 'user_status' => 'stopped',
175 'trading' => true,
176 'type_account' => 'demo',
177 'duration' => '3m',
178 'bet_amount' => (int)1,
179 'martingale' => true,
180 'check_signal_currency' => true,
181 'check_signal_from' => true,
182 'check_signal_type' => true,
183 'trade_in_expiration' => false,
184 'martingale_steps' => (int)2,
185 'apikey' => '',
186 )
187 );
188
189
190class Request {
191
192 public $username; // Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ
193 public $user_status; // ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (active или stopped)
194 public $trading; // разрешена Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŽ или нет
195 public $type_account; // тип аккаунта Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ Ñтавки (demo или real)
196 public $duration; // продолжительноÑть (Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации Ñтавки)
197 public $bet_amount; // Ð¿ÐµÑ€Ð²Ð¾Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ñумма Ñтавки в USD
198 public $martingale; // разрешено иÑпользовать мартингейл или нет на Ñледующий Ñигнал
199 public $check_signal_currency; // ПроверÑть Ñовпадение валюты Ñигнала (true || false)
200 public $check_signal_from; // ПроверÑть Ñовпадение иÑточника Ñигнала (true || false)
201 public $check_signal_type; // ПроверÑть Ñовпадение типа Ñигнала CALL или PUTT (true || false)
202 public $martingale_steps; // количеÑтво колен мартингейл
203 public $trade_in_expiration; // разрешено отправлÑть новый Ñигнал по одной и той-же валютной паре, еÑли Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации предыдущего контракта не вышло и результат не извеÑтен
204 public $apikey; // ключ binaryteam Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ Ñтавок
205 public $response;
206 public $binaryteam_betid; // идентификатор Ñтавки в Json-ответе на Ð·Ð°Ð¿Ñ€Ð¾Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñтавки (signal)
207 public $contract_id; // идентификатор Ñтавки в ÑервиÑе binaryteam
208 public $symbol; // Ð’Ð°Ð»ÑŽÑ‚Ð½Ð°Ñ Ð¿Ð°Ñ€Ð°, например frxEURUSD или frxAUDCAD
209 public $order_type; // тип ордера ORDER_TYPE_SELL, ORDER_TYPE_SELL_LIMIT, ORDER_TYPE_BUY, ORDER_TYPE_BUY_LIMIT
210 public $signal_type; // Ñигнал Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ может быть только двух типов: PUT или CALL
211
212
213 public function index() {
214
215 echo "Ðто index";
216 /*
217
218 Получаем вÑе Ñтавки отправленные по API из БД и выводим в таблице на Ñтранице.
219 ПоÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ð²Ñ€ÐµÐ¼ÐµÐ½Ð¸ ÑкÑпирации, получаем результат Ñтавки и обновлÑем информацию в БД. При выводе Ñтавок в таблице, у тех Ñтавок, Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации не вышло должен работать таймер и отÑчитывать Ð²Ñ€ÐµÐ¼Ñ Ð´Ð¾ конца ÑкÑпирации (запроÑом через ajax к методу get_expiration_time каждую Ñекунду - метод опиÑать). Пример таблицы: http://skrinshoter.ru/s/090519/aNY8KwAC
220
221
222 */
223 }
224
225
226
227 public function __construct($params = null) {
228
229 if (!empty($params)) {
230 foreach($params as $key => $value)
231 {
232 $this->$key = $value;
233 }
234 }
235
236 }
237
238 public function sendbet_api() {
239
240 if ($this->user_status ==='active' && $this->trading === true && !empty($this->apikey)) {
241
242 /*
243 ПроверÑем, активен пользователь или нет, разрешена Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ñ Ð¸Ð»Ð¸ нет, еÑть ключ API или нет. ЕÑли пользователь active, Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ñ true и еÑть APIKEY выполнÑем программу дальше
244
245 */
246
247 // echo "<pre>";
248 // print_r($user);
249 // echo "</pre>";
250
251 isset($_GET['symbol']) ? $this->symbol = $_GET['symbol'] : $this->symbol = '';
252 isset($_GET['order_type'])? $this->order_type = $_GET['order_type'] : $this->order_type = '';
253
254 if ($this->order_type === 'ORDER_TYPE_SELL') {
255 $this->signal_type = 'PUT';
256 } else if ($this->order_type === 'ORDER_TYPE_SELL_LIMIT') {
257 $this->signal_type = 'PUT';
258 } else if ($this->order_type === 'ORDER_TYPE_BUY') {
259 $this->signal_type = 'CALL';
260 } else if ($this->order_type === 'ORDER_TYPE_BUY_LIMIT') {
261 $this->signal_type = 'CALL';
262 } else {
263 $this->signal_type = '';
264 }
265
266 // https://api.sitename.ru/class.php?action=request&request=signal&order_type=ORDER_TYPE_SELL&symbol=frxAUDCAD
267
268
269
270
271 /*
272
273 Что необходимо Ñделать перед отправкой Ñигнала:
274
275 1. Проверить 'trade_in_expiration' => false, // разрешено отправлÑть новый Ñигнал по одной и той-же валютной паре, еÑли Ð²Ñ€ÐµÐ¼Ñ ÑкÑпирации предыдущего контракта не вышло и результат не извеÑтен
276
277 */
278
279
280
281
282
283 $client = new \GuzzleHttp\Client();
284 $response = $client->request('GET', "https://api.binaryteam.ru/?request=signal&key=".$this->apikey."&type_account=".$this->type_account."&bet=".$this->signal_type."&symbol=".$this->symbol."&duration=".$this->duration."&amount=".$this->bet_amount);
285
286 //echo $response->getStatusCode(); # 200
287 //echo $response->getHeaderLine('content-type'); # 'application/json; charset=utf8'
288 $response_body = json_decode($response->getBody()->getContents(), true);
289
290 echo "<pre>";
291 print_r($response_body);
292 echo "</pre>";
293
294
295// Ответить в фейÑбук
296
297 }
298 }
299
300
301
302
303
304 public function bet_info($binaryteam_betid, $apikey) {
305
306
307 $client = new \GuzzleHttp\Client();
308 $response = $client->request('GET', "https://api.binaryteam.ru/?request=report&key=".$apikey."&id=".$binaryteam_betid);
309 echo $response->getStatusCode(); # 200
310 echo $response->getHeaderLine('content-type'); # 'application/json; charset=utf8'
311 echo $response->getBody(); # '{"id": 1420053, "name": "guzzle", ...}'
312 $response_body = json_decode($response->getBody()->getContents());
313
314
315 echo "<pre>";
316 print_r($response_body);
317 echo "</pre>";
318
319
320
321
322
323 $this->__gwt = $gwt[1];
324 $this->__tkn = $tkn[1];
325 $this->__group_id = $group_id[1];
326
327 if(!$form_id[1] or empty($form_id[1]) or !$id[1] or empty($id[1]))
328 {
329 return false;
330 }
331
332 return array('group_id' => $group_id[1], 'form_id' => $form_id[1], 'tkn' => $tkn[1], 'gwt' => $gwt[1], 'id' => $id[1]);
333 }
334
335 private function login() {
336
337 }
338
339 static function auth($username, $password) {
340
341 }
342
343
344
345
346}
347
348
349
350
351
352
353
354
355
356
357
358if ($_GET['action']) {
359 $info = new Request ();
360}
361
362
363
364
365
366
367
368
369
370switch($_GET['action']) {
371 case "install" :
372
373
374 $sql = "CREATE TABLE IF NOT EXISTS `signals_list` (
375 `id` int not null AUTO_INCREMENT,
376 `contract_id` int(30) not null,
377 `symbol` varchar(255) not null,
378 `bet` varchar(255) not null,
379 `is_signal` varchar(255) not null,
380 `time_start` varchar(255) not null,
381 `time_end` varchar(255) not null,
382 `quote_start` varchar(255) not null,
383 `quote_end` varchar(255) not null,
384 `amount` varchar(255) not null,
385 `duration` varchar(255) not null,
386 `payout` varchar(255) not null,
387 `payout_perc` varchar(255) not null,
388 `payment` varchar(255) not null,
389 `result` varchar(255) not null,
390 `result_code` varchar(255) not null,
391 `start` varchar(255) not null,
392 `timeout` varchar(255) not null,
393 `end` varchar(255) not null,
394 `user_id` int(30) not null,
395 `user_name` varchar(255) not null,
396 `signal_provider` varchar(255) not null,
397 `signal_id` varchar(255) not null,
398 `signal_name` varchar(255) not null,
399 `signal_from` varchar(255) not null,
400 `send_telegram` text not null,
401 `send_sms` text not null,
402 `bet_comment` text not null,
403 `timezone` varchar(255) not null,
404 PRIMARY KEY (id)
405 )
406 ";
407
408 $result = $mysqli->query($sql);
409 //print_r($result) ;
410 if ($result) {
411 // echo "Создание таблицы завершено";
412 //header('HTTP/1.1 200 OK');
413 //header('Location: http://'.$_SERVER['HTTP_HOST'].'class.php?action=install');
414 } else {
415 echo "Таблицу Ñоздать не удалоÑÑŒ";
416 }
417
418 // if ($mysqli->query("SHOW TABLES LIKE signals_list")) {
419 // echo "Таблица ÑущеÑтвует в БД";
420 // }
421
422 break;
423
424 case "request" :
425
426 isset($_GET['request']) ? $request = $_GET['request'] : $request = '';
427 if ($request === 'signal') {
428
429 foreach ( $users as $user ) {
430
431 $user = new Request ([
432 'username' => $user['username'],
433 'user_status' => $user['user_status'],
434 'trading' => $user['trading'],
435 'type_account' => $user['type_account'],
436 'duration' => $user['duration'],
437 'bet_amount' => $user['bet_amount'],
438 'martingale' => $user['martingale'],
439 'trade_in_expiration' => $user['trade_in_expiration'],
440 'martingale_steps' => $user['martingale_steps'],
441 'apikey' => $user['apikey'],
442 ]);
443
444 // echo "<pre>";
445 // print_r($user);
446 // echo "</pre>";
447
448 $user->sendbet_api();
449 }
450
451
452
453 }
454
455 break;
456
457 case "dashboard" :
458
459 $info->index();
460 break;
461
462 default :
463
464 $info->index();
465 break;
466}
467
468
469
470
471
472
473/*
474
475{"request":"report","params":{"key":"2101823462323f9e97107f9c9481162d","id":"15095069"},"answer":{"profile":"pro","contract_id":"46557536688","symbol":"frxEURUSD","bet":"PUT","is_signal":"0","time_start":"1557235424","time_end":"1557264224","quote_start":"1.11803","quote_end":"0","amount":"30","payout":"58.23","payout_perc":"94","payment":"58.23","result":"0","result_code":"702","real":{"amount":"0.50","currency":"USD","percent":"0","depo_start":"0.5","depo_min":"0.5","depo_max":"0.5"},"demo":{"amount":"15642.44","currency":"USD","percent":"0","depo_start":"15730.7","depo_min":"15642.4","depo_max":"15732.4"}},"time":{"start":"2019-05-07 18:10:15","timeout":0.02103,"end":"2019-05-07 15:10:15"}}
476
477
478
479
480
481stdClass Object
482(
483 [request] => report
484 [params] => stdClass Object
485 (
486 [key] => 2101823462323f9e97107f9c9481162d
487 [id] => 15095069
488 )
489
490 [answer] => stdClass Object
491 (
492 [profile] => pro
493 [contract_id] => 46557536688
494 [symbol] => frxEURUSD
495 [bet] => PUT
496 [is_signal] => 0
497 [time_start] => 1557235424
498 [time_end] => 1557264224
499 [quote_start] => 1.11803
500 [quote_end] => 0
501 [amount] => 30
502 [payout] => 58.23
503 [payout_perc] => 94
504 [payment] => 58.23
505 [result] => 0
506 [result_code] => 702
507 [real] => stdClass Object
508 (
509 [amount] => 0.50
510 [currency] => USD
511 [percent] => 0
512 [depo_start] => 0.5
513 [depo_min] => 0.5
514 [depo_max] => 0.5
515 )
516
517 [demo] => stdClass Object
518 (
519 [amount] => 15642.44
520 [currency] => USD
521 [percent] => 0
522 [depo_start] => 15730.7
523 [depo_min] => 15642.4
524 [depo_max] => 15732.4
525 )
526
527 )
528
529 [time] => stdClass Object
530 (
531 [start] => 2019-05-07 17:55:27
532 [timeout] => 0.0432
533 [end] => 2019-05-07 14:55:27
534 )
535
536)
537
538
539
540*/