1
0
Fork 0

Compare commits

...

3 Commits

2 changed files with 131 additions and 87 deletions

View File

@ -1,6 +1,12 @@
# parser_from_interneturok
Chat-robot Telegram for parsing homeworks by subject name, grade and number of the week
## Funny story of development
The customer of this project **refused to pay** the second half of the payment for the work and wanted to steal my code.<br>
<br>
I managed to delete all the code from the server, then i changed passwords on all **40 accounts** that were planned to be used in this chat-robot.<br>
Thus **i destroyed the entire mini-business** of this customer.
## Dependencies
1. [PHP 8.4](https://www.php.net/releases/8.4/en.php)
2. [Composer](https://getcomposer.org/) (php package manager)

View File

@ -70,6 +70,17 @@ final class interneturok extends core
*/
public const string USER = 'https://api-gw.interneturok.ru/api/v2/homeschool/current_user';
/**
* TARIFFS
*
* Method: GET
* Authrorization: Bearer
*
* @var const string TARIFFS The user tariffs API URL
*/
public const string TARIFFS = 'https://api-gw.interneturok.ru/api/v2/schedules/users/current/tariffs';
/**
* SCHEDULES
*
@ -472,10 +483,32 @@ final class interneturok extends core
// Initializing the user data
$user = json_decode((string) $response->getBody())?->data?->homeschool?->response?->user;
if ($user->grade + 1 === $grade) {
// Matched the account grade with the grade
if (!empty($user)) {
// Initialized the user data
// Initialiint the user identifier
// Initializing the request to the user data API
$request = new request(
'GET',
static::TARIFFS,
[
'Authorization' => "Bearer $this->token"
]
);
return $this->browser->sendAsync($request)
->then(function ($response) use ($grade, $week, $user) {
// Sended the request and received the response
// Initializing the tariffs data
$tariffs = json_decode((string) $response->getBody())?->data?->tariffs?->response;
foreach ($tariffs as $tariff) {
// Iterating over tariffs
if ($tariff->grade === $grade) {
// Matched the tariff grade with the target grade
// Initializing the user identifier
$identifier = $user?->id;
if (!empty($identifier)) {
@ -590,8 +623,13 @@ final class interneturok extends core
// Exit (fail)
return false;
}
}
}
// Exit (fail)
return false;
});
} else {
// Not matched the account grade with the grade
// Not initialized the user data
// Exit (fail)
return false;