Aiuto per rendere un Bot Telegram Privato

PieRC

Nuovo Utente
13 Giu 2021
1
0
1
Ciao a tutti, mi sto cimentando nel creare un Bot per Telegram scrivendo il codice in PHP.
Solo che adesso mi trovo davanti ad un problema che non riesco a risolvere, vorrei creare un Bot Telegram privato conoscendo i numero ID di chi può interagirvi, quindi con accesso non consentito a ID che io non conosco.

Potete aiutarmi?

Vi sposto una base di codice da cui ho iniziato, molto banale ma finchè non risolvo questo problema non potrò andare avanti:

PHP:
<?php

  $botToken = "tokenBotXXXXXXXX";
  $website = "https://api.telegram.org/bot" . $botToken;

  $update = file_get_contents('php://input');
  $update = json_decode($update, TRUE);


  $chatId = $update['message']['from']['id'];
  $nome = $update['message']['from']['first_name'];
  $text = $update['message']['text'];


  sendMessage($chatId,"Ciao <b>$nome</b>, come stai?");

 
  function sendMessage($chatId,$text)
  {
    $url = $GLOBALS[website]."/sendMessage?chat_id=$chatId&parse_mode=HTML&text=" . urlencode($text);
    file_get_contents($url);
  }



?>

Grazie per qualsiasi consiglio in merito.
 

odino

Nuovo Utente
9 Ago 2021
3
0
1
quando salvi i dati :
Codice:
// Se è un comando valido, estraiamo il messaggio contenuto in esso.
 $message = isset($update['message']) ? $update['message'] : "";
 
 $messageId = isset($message['message_id']) ? $message['message_id'] : ""; // è il numero di identificazione univoco del messaggio di chat
 $GLOBALS['chatId'] = isset($message['chat']['id']) ? $message['chat']['id'] : ""; // è l'id univoco dell'utente che ha inviato il messaggio
 $firstname = isset($message['chat']['first_name']) ? $message['chat']['first_name'] : ""; // Nome dell'utente ( se presente )
 $lastname = isset($message['chat']['last_name']) ? $message['chat']['last_name'] : ""; // Cognome dell'utente ( se presente )
 $username = isset($message['chat']['username']) ? $message['chat']['username'] : $firstname; // Soprannome dell'utente ( se presente )
 $date = isset($message['date']) ? $message['date'] : ""; // è la data in cui è stato inviato il messaggio.

Puoi fare un controllo estraendo uno dei campi :
Codice:
$username = $message['chat']['username'] 
$chatId = $message['chat']['id']
e controllando se l'utente o il suo id è presente in un array da te definito... tipo così :
Codice:
$allowed_username = ['Pinko', 'Pallino', 'Gianna']; // dati di fantasia
$allowed_id = [234234234234, 7656756756, 5675555]; // dati di fantasia

 // Controllo se l'utente è autorizzato e meno ad usare questo bot.
 // Se non lo è lo avverto ed esco ignorando qualsiasi comando o messaggio.
//controllo per la l'id dell'utente univoco. 
if ( !in_array($chatId, $GLOBALS['allowed']) ) {
   snd_msg($chatId, "@".$username." : Access Denied!\n This is a Private BOT...\nSorry!\n");
   return;
 }
// io preferisco il metodo sopra ma si può anche semplicemente controllare
// per l'username dell'utente. NB : può non essere presente! per questo preferisco il check 
// mediante il suo ID assegnato da Telegram.
if ( !in_array($username, $GLOBALS['allowed']) ) {
   snd_msg($chatId, "@".$username." : Access Denied!\n This is a Private BOT...\nSorry!\n");
   return;
 }
 
Discussioni simili
Autore Titolo Forum Risposte Data
E Aiuto per query PHP 8
I aiuto urgente per thunderbird Posta Elettronica 0
I aiuto per outlook Posta Elettronica 0
T aiuto per trasformare un quiz fatto in JS in un quiz in JQUERY jQuery 0
M Fullcalendar in Codeigniter, un aiuto per la chiamata $ajax ? jQuery 0
A Aiuto per pagina php PHP 0
T cercasi aiuto per file d1 (open-edge db) Database 0
L Aiuto per programma web php/mySQL PHP 2
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
T Aiuto per php7 e mysqli PHP 3
T mysql tutorial per importare tabelle access in mysql aiuto MySQL 2
wildcity9 aiuto per sbloccare account instagram bannati Social Media Marketing 0
A Aiuto per configurare il banner di Iubenda su un sito in html HTML e CSS 0
S [PHP] Aiuto creazione form php per completamento modello word PHP 1
Z [HTML] aiuto per visualizzazione su tablet Offerte e Richieste di Lavoro e/o Collaborazione 6
W [PHP] Un aiuto per il mio primo "Multithread" PHP 0
G Vuoi fare successo? Abbiamo bisogno di aiuto per un app! Offerte e Richieste di Lavoro e/o Collaborazione 1
K [javascript] Aiuto per programma subnetting Javascript 0
F ciao, sono ferro e ho bisogno di aiuto per problemi con la mail di alice.it Presentati al Forum 1
L [PHP] aiuto per installazione mrbs PHP 0
1 Aiuto per nuovo sito SEO e Posizionamento 4
K Server per sito di annunci: aiuto nella scelta Hosting 4
P [Javascript] Aiuto per recupero variabili da script Javascript 10
P [PHP] Aiuto per gestione file CSV PHP 24
A scambio lavoro per aiuto con android Sviluppo app per Android 0
A aiuto per un codice... PHP 1
ecosito Aiuto con la traduzione in italiano per capire come installare questo JavaScript jQuery 0
StelladelSud Cerco aiuto per una demo Offerte e Richieste di Lavoro e/o Collaborazione 3
G Piccolo aiuto per php mail PHP 2
G aiuto per semplice menu onclick HTML e CSS 6
F aiuto per funzionamento sito responsive e form contatti HTML e CSS 29
A AIUTO per impostazione doppia cifra in tabella HTML e CSS 6
G Passaggio variabili tra pagine- Aiuto per maturità 2015 PHP 3
G Passaggio variabili tra pagine- Aiuto per maturità 2015 PHP 0
A Aiuto per Flash player Flash 0
J Aiuto per localstorage con jquery/js/json Javascript 4
M Cerco aiuto per una modifica di un codice Javascript 2
A Aiuto per ordine cronologico lista file all'interno di una cartella protetta PHP 2
G Aiuto! Studente cerca aiuto per un codice PHP PHP 1
S Aiuto per 2 codifiche java Java 4
G Aiuto per creare chat stile Facebook Javascript 7
Sevenjeak Aiuto e consigli su adattamento sito per dispositivi mobile HTML e CSS 2
S aiuto per script PHP/OOP PHP 2
J Aiuto per un sitema di upload per un progetto PHP 0
K Aiuto per sito Discussioni Varie 0
D Richiesta aiuto siti per indirizzamento forum HTML e CSS 1
M Aiuto per una libreria per generare grafici PHP 1
B Saluti ed aiuto per pagina web html HTML e CSS 11
I Aiuto per modificare gruppo buddypress WordPress 0
N Aiuto per html HTML e CSS 2

Discussioni simili