Добро пожаловать

Для полноценного пользования форумом и общения с его участниками, пройдите регистрацию ниже
Регистрация

> Как вывести сообщение с выбором курса в telegram bot?

Тема в разделе "WEB-Хостинг", создана пользователем Dmitriy, 16 мар 2017.

  1. Dmitriy

    Dmitriy Пользователь

    12
    0
    25
    Здравствуйте.Нужно чтобы при написании телеграм боту команды /raspisanie вылетало сообщение выберите группу.А после того как user выбрал группу вылетало ее расписание.Как можно реализовать это?

    PHP:
    <?
    foreach(
    $dbh->query("SELECT DISTINCT(`kurs`) FROM `rasp` ORDER BY `kurs`") as $value) {
      echo 
    '
      <div class="mdl-tabs__panel" id="tab'
    .$value[0].'"> <div class="demo-grid-1_1 mdl-grid">';

    $day = (date('G') > 17) ? date('l'strtotime(' +1 day')) : date('l');

      foreach(
    $dbh->query("SELECT * FROM `rasp` WHERE `kurs` = '{$value[0]}' AND `day_of_week` = '{$day}' AND `evening` = false") as $value2) {
        echo 
    '

        <div class="win" id="win-'
    .$value2['id'].'" style="display:none;">
       <div class="overlay"></div>
          <div class="visible">
            <h2>Предметы</h2>
            <div class="content">
            '
    .$value2['text'].'
            </div>
            <button class="mdl-button mdl-js-button mdl-button--raised mdl-button--accent" data-upgraded=",MaterialButton" type="button" onClick="getElementById(\'win-'
    .$value2['id'].'\').style.display=\'none\';">закрыть</button>
        </div>
    </div>
        <div class="mdl-cell mdl-cell--2-col mdl-cell--5-col-phone"><button onClick="getElementById(\'win-'
    .$value2['id'].'\').removeAttribute(\'style\');" class="mdl-button mdl-js-button mdl-button--raised" data-upgraded=",MaterialButton">'.$value2['grup'].'</button></div>
        '
    ;
      }
      echo 
    '</div></div>
      '
    ;
    }
    ?>
    PHP:
    <?php
    /**
    * URL-адрес бота и его маркер.
    */
    $access_token 'ВАШ_МАРКЕР';
    $api 'https://api.telegram.org/bot' $access_token;
    /**
    * Зададим основные переменные.
    */
    $output json_decode(file_get_contents('php://input'), TRUE); // Получим то, что передано скрипту ботом в POST-сообщении и распарсим
    $chat_id $output['message']['chat']['id']; // Выделим идентификатор чата
    $first_name $output['message']['chat']['first_name']; // Выделим имя собеседника
    $message $output['message']['text']; // Выделим сообщение собеседника
    /**
    * Получим команды от пользователя.
    * Переведём их для удобства в нижний регистр
    */
    switch(strtolower_ru($message)) {
      case (
    'привет'):
      case (
    '/hello'):
        
    sendMessage($chat_id'Привет, '$first_name '! ' $emoji['preload'] );
        break;
      case (
    '/start'):
        break;
      default:
        
    sendMessage($chat_id'Неизвестная команда!' );
        break;
    }
    /**
    * Функция отправки сообщения в чат sendMessage().
    */
    function sendMessage($chat_id$message) {
      
    file_get_contents($GLOBALS['api'] . '/sendMessage?chat_id=' $chat_id '&text=' urlencode($message));
    }
    /**
    * Функция перевода символов в нижний регистр, учитывающая кириллицу
    */
    function strtolower_ru($text) {
    $alfavitlover = array('ё','й','ц','у','к','е','н','г''ш','щ','з','х','ъ','ф','ы','в''а','п','р','о','л','д','ж','э''я','ч','с','м','и','т','ь','б','ю');
    $alfavitupper = array('Ё','Й','Ц','У','К','Е','Н','Г''Ш','Щ','З','Х','Ъ','Ф','Ы','В''А','П','Р','О','Л','Д','Ж','Э''Я','Ч','С','М','И','Т','Ь','Б','Ю');
    return 
    str_replace($alfavitupper,$alfavitlover,strtolower($text));
    }
    Структура таблицы бд:
    [​IMG]