Ejemplo n.º 1
0
session_start();
include_once __DIR__ . '/../vendor/autoload.php';
use TelegramCliWrapper\TelegramCliWrapper;
use TelegramCliWrapper\TelegramCliHelper;
use TelegramCliWrapper\Storage\LocalFilesStorage;
use TelegramCliWrapper\Response;
use TelegramCliWrapper\Models\User;
if (!isset($_POST['phone'])) {
    return Response::error('phone parameter missed');
}
$phone = trim($_POST['phone']);
if (!preg_match("/^\\d{9,15}\$/", $phone)) {
    return Response::error('phone parameter does not seems a phone number');
}
$userStorage = new LocalFilesStorage('user');
$user = $userStorage->getById($phone);
if ($user) {
    return Response::error('phone exists already in this system');
}
$phoneRequested = isset($_SESSION['phone_requested']) ? json_decode($_SESSION['phone_requested'], true) : array();
if (isset($phoneRequested[$phone]) && intval(date("U")) < $phoneRequested[$phone]) {
    return Response::error('phone already requested, you must to wait 15 minutes');
}
$phoneRequested[$phone] = intval(date("U")) + 15 * 60 * 60;
$_SESSION['phone_requested'] = json_encode($phoneRequested);
$th = TelegramCliHelper::getInstance();
$t = new TelegramCliWrapper($th->getSocket(), $th->isDebug());
$user = User::createUser($phone, $phone, "");
$t->addContact($user);
// send message with code in order to validate phone
Ejemplo n.º 2
0
<?php

session_start();
include_once __DIR__ . '/../vendor/autoload.php';
use TelegramCliWrapper\TelegramCliWrapper;
use TelegramCliWrapper\TelegramCliHelper;
use TelegramCliWrapper\Storage\LocalFilesStorage;
use TelegramCliWrapper\Response;
use TelegramCliWrapper\Models\User;
use TelegramCliWrapper\Services\Weather\OpenWeatherApi;
use TelegramCliWrapper\Services\Media\MediaSelector;
use TelegramCliWrapper\Services\Joke\IcndbApi;
if (!isset($_SESSION['user'])) {
    return Response::error("illegal request");
}
$userStorage = new LocalFilesStorage('user');
$user = $userStorage->getById($_SESSION['user']);
if (!$user) {
    return Response::error("user does not exist");
}
$th = TelegramCliHelper::getInstance();
$t = new TelegramCliWrapper($th->getSocket(), $th->isDebug());
$messages = $t->getHistory($user->phone, 1);
if (count($messages) < 1) {
    return Response::error('no messages received');
}
$message = $messages[0];
if (intval($message->unread) != 1) {
    return Response::error("no unread messages");
}
$text = strtolower(trim($message->text));
Ejemplo n.º 3
0
<?php

session_start();
include_once __DIR__ . '/../vendor/autoload.php';
use TelegramCliWrapper\TelegramCliWrapper;
use TelegramCliWrapper\TelegramCliHelper;
use TelegramCliWrapper\Storage\LocalFilesStorage;
use TelegramCliWrapper\Response;
use TelegramCliWrapper\Models\User;
if (!isset($_SESSION['user'])) {
    return Response::error("illegal request");
}
$userStorage = new LocalFilesStorage('user');
$user = $userStorage->getById($_SESSION['user']);
if (!$user) {
    return Response::error("user does not exist");
}
if (!isset($_POST['text'])) {
    return Response::error("text parameter missing");
}
$th = TelegramCliHelper::getInstance();
$t = new TelegramCliWrapper($th->getSocket(), $th->isDebug());
$t->msg($user->phone, $_POST['text']);
return Response::ok();