Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 16 su 16

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    se scrivi l'indirizzo nel browser, al massimo vedrai i messaggi di risposta del web service (sempre se fai le chiamate corrette passando i dati che servono)
    se vuoi interfacciare il bot con PHP, non credo che un web server ti sia necessario, anzi: il tuo codice php dovrà essere sempre in esecuzione senza i limiti di durata che in genere sono impostati su Apache e simili per gli script. In pratica, il tuo script lo devi lanciare da linea di comando se vuoi avere gli aggiornamenti in tempo reale dei messaggi ricevuti.

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    94
    Ciao, abbi pazienza, dato che sembri conoscere la materia potresti dirmi esattamente come fai tu? Un esempio vale più di 1000 parole.

    1) Creo il bot
    2) Scrivo il codice in un editor (l'IDLE di python nel mio caso)
    3) Poi? Come faccio ad eseguire il mio codice per affinché possa vederne i risultati sulla chat di telegram?

    Facendo eseguire il codice all'interprete python, questo, leggendo url + token viene messo in comunicazione con telegram?

    Quindi non serve alcun hosting per esercitarsi corretto? L'hosting servirà nel momento in cui il bot sarà finito affinché chiunque possa usarlo?

    Scusami per le ovvietà ma essendo un principiante devo capire alcune cose fondamentali.

    Tu i tuoi bot li hai creati con python? Usi qualche libreria o ti scrivi il codice da zero? Ho letto la guida di telepot su github ma non la trovo molto chiara (per chi nuovo ai bot) sembra che molte cose non le spieghi.

  3. #3
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    io ho scritto una mia libreria in Python, leggera e non completa di tutte le funzioni previste per i bot (al tempo non mi interessavano e per studio ho preferito fare tutto partendo dalla base). Librerie ce ne sono tante, alcune con buoni esempi per provare

    con Python, una volta che hai scritto il codice (usa un ciclo infinito, così sta in ascolto), lo metti in esecuzione e lui si collega a Telegram usando il metodo che tu specifichi nella chiamata all'API di Telegram

    l'hosting che supporti Python ti servirà nel momento in cui renderai pubblico il tuo bot, in modo che possa avere le risorse necessarie a gestire le richieste se saranno tante (il mio, ad esempio, gira su una raspberry pi in casa, ma non è pubblico)

    ti dico però una cosa: interfacciare le API di Telegram non è complicato ma neppure banale; devi effettuare delle chiamate web, sia GET sia POST, gestire le risposte e scrivere la logica del tuo bot. Quanto sei skillato per fare queste cose?

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    94
    Quote Originariamente inviata da clasku Visualizza il messaggio
    io ho scritto una mia libreria in Python, leggera e non completa di tutte le funzioni previste per i bot (al tempo non mi interessavano e per studio ho preferito fare tutto partendo dalla base). Librerie ce ne sono tante, alcune con buoni esempi per provare

    con Python, una volta che hai scritto il codice (usa un ciclo infinito, così sta in ascolto), lo metti in esecuzione e lui si collega a Telegram usando il metodo che tu specifichi nella chiamata all'API di Telegram

    l'hosting che supporti Python ti servirà nel momento in cui renderai pubblico il tuo bot, in modo che possa avere le risorse necessarie a gestire le richieste se saranno tante (il mio, ad esempio, gira su una raspberry pi in casa, ma non è pubblico)

    ti dico però una cosa: interfacciare le API di Telegram non è complicato ma neppure banale; devi effettuare delle chiamate web, sia GET sia POST, gestire le risposte e scrivere la logica del tuo bot. Quanto sei skillato per fare queste cose?
    Quanto sono skillato? Sono un principiante assoluto quindi le mie conoscenze sono praticamente inesistenti. Ma da qualche parte bisogna pure iniziare per imparare. Conosco un po' le basi di python, dove per basi intendo conoscere cosa è una stringa, una lista, un dizionario, una funzione, ovvero le prime cose che ti spiega un libro all'inizio. Avevo fatto un pò di pratica su codecademy.

    Con i bot sono un pò in difficoltà nel capire come iniziare. Per esempio, quando imparai le basi di html e css (avevo fatto uno stage in una web agency) di guide, tutorial, articoli, libri ecc... ne è pieno quindi imparare (le basi) non è stato cosi difficile (basta avere voglia). Per i bot, forse sono io, ma non sono riuscito a trovare uno straccio di guida che spieghi le cose dall'inizio e per bene in modo che anche i principianti possano comprendere.

    ti dico però una cosa: interfacciare le API di Telegram non è complicato ma neppure banale; devi effettuare delle chiamate web, sia GET sia POST, gestire le risposte e scrivere la logica del tuo bot. Quanto sei skillato per fare queste cose?

    Come fare queste cose è scritto nella documentazione ufficiale di telegram?

    Logicamente all'inizio mi limiterei a fare cose ultra basilari per capire le nozioni basi e se mai iniziassi a capirci di più passare a quello che avrei in mente.

    Ti dico quello che vorrei fare cosi mi dici se secondo te servirebbero conoscenze avanzate o no.
    Avevo pensato di creare un bot che permetta di fare dei semplicissimi ordini. Il bot dovrebbe mostrare le linee di prodotti disponibili dove l'interessato (cliente) possa inserire le quantità. Una volta inserito il tutto, il bot dovrebbe deviare l'ordine ad un altro account telegram (quello per esempio di chi gestisce gli ordini) affinché ne prenda visione.

    Quando dico semplici ordini non intendo che debba gestire pagamenti ma solo un modo di sostiuire gli ordini per telefono o per mail, tutto qui. L'interessato attraverso il bot vede i prodotti, sceglie le quantità e il responso arriva in chat ad un commerciale per esempio.

    Il tutto avrebbe lo scopo principale di permettermi di imparare qualcosa di concreto e fare esperienza con la programmazione e se poi ne uscisse qualcosa di realmente concreto che possa essere utilizzato tanto meglio.

    Partendo da un livello zero seconde te è fattibile?

  5. #5
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    siamo un po' off topic, dato che non si parla proprio di PHP, ma proviamo a fare ordine:
    • il bot vero e proprio dovrà gestire un ordine di un prodotto da parte di un cliente:
      1. mostrare il catalogo dei prodotti in una forma che sia usabile
      2. consentire di inserire la quantità

    già questa parte non è semplice, implica l'interfacciamento verso un servizio che esponga i dati del catalogo o direttamente verso un database
    inoltre, devi trovare la modalità corretta per mostrare a schermo i dati, parliamo di una chat non di un sito internet, con tutti i limiti che può avere (sinceramente, non so quanto telegram sia flessibile)
    una volta che hai trovato il modo per mostrare tutto a schermo, devi segnare la quantità e creare l'ordine, quindi nuovo interfacciamento verso un servizio o verso un database
    se noti ancora non abbiamo dialogato con le API di telegram

    • dialogo con le API telegram, prima di tutto per mostrare il catalogo al cliente e recepire gli ordini, poi per inviarne nota al commerciale:
      1. recupero della coda di messaggi
      2. interazione con il cliente
      3. invio conferma al cliente
      4. avviso al commerciale incaricato

    qui si tratta di chiamare le API, o usando librerie già pronte (quindi trovare la migliore per il tuo scopo) o scrivendo la tua personale (che comporta fare le chiamate web tramite moduli esterni - ad esempio, requests di python - usando i metodi e le proprietà definite da telegram, gestire i dati in risposta e gli eventuali errori).

    Sto tralasciando l'identificazione degli utenti e le loro autorizzazioni, che come immagini sono molto importanti per evitare di essere fregati dal simpaticone di turno.

    Secondo te, sinceramente, quello che ho scritto sopra quanto è complicato da progettare bene e realizzare, contando che poi deve essere anche sufficientemente flessibile e manutenibile nel tempo?

    Attenzione, non dico che non sia fattibile, anzi per un appassionato potrebbe essere molto sfidante e portare anche ad una crescita delle conoscenze, però stiamo parlando di:

    • database da creare/gestire/richiamare
    • web service da richiamare (telegram o catalogo già esistente)
    • gestione sicurezza e autorizzazioni.

    Da divertirsi ce ne sarebbe parecchio, ma non credo basti una conoscenza base di stringhe, dizionari, funzioni: pezzo per pezzo si fa, ma studiandoci e non copiando codice senza sapere quello che fa (di sicuro non è il tuo caso, ma credo sia necessario ribadirlo): qui serve conoscere anche il come funziona una chiamata web, come gestire un JSON di risposta, trovare i moduli e le librerie giusti, magari uscire dal procedurale e ragionare per oggetti (classi, metodi e proprietà).

    Non ti voglio scoraggiare, ci mancherebbe altro. Ti invito ad analizzare pezzo per pezzo e a fare con calma, senza fretta, studiando il codice che trovi online (se ne trova, puoi anche vedere le logiche di funzionamento delle librerie per i bot che si trovano online) e ragionandoci sopra.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2016
    Messaggi
    94
    Si hai ragione siamo un po' off topic quindi se i moderatori lo riterranno opportuno possono cancellare i messaggi oppure spostarli in una sezione più opportuna.

    Avendo tu una visione di insieme della materia giustamente mi hai fatto notare quanto sia articolato fare un bot del genere.
    Però rispetto alla tua giusta analisi la mia idea era fondamentalmente più elementare, mi spiego meglio:

    Non volevo un catalogo vero e proprio ma SOLO i nomi dei prodotti (es. pizza margherita, pizza 4 formaggi ecc..). Questo perché non si tratta di vendita al pubblico dove un utente deve poter vedere un'immagine del prodotto, una descrizione e cosi via. Le persone a cui sarebbe rivolto sanno già cosa sono i vari prodotti. Nella mia ignoranza questo forse dovrebbe già rendere un pelo meno difficile il bot o sbaglio?

    Si potrebbe immagazzinare i vari prodotti in una lista (che sia php, python, java o altro) e quando l'utente inserisce un comando nella chat (es. /lista prodotti) può vedere la lista come un normale messaggio di telegram senza interfaccia creata ad hoc. Per inserire le quantità pensavo una cosa semplice del tipo:

    Individuato il prodotto a cui si è interessati es. pizza margherita lanciando un comando inserire le quantità tramite una keyboard. Immagazzinare poi il numero nel codice il tutto magari sotto forma di dizionario (prodotto + numero inserito).

    Spedire questo ordine rudimentale (nome prodotto + quantità, nient'altro) ad un terzo utente che prenderà visione, una cosa di questo tipo come se fosse un normalissimo messaggio:

    pizza margherita 4 pz
    pizza prosciutto e funghi 2 pz
    pizza 4 stagioni 5 pz

    Ad ogni modo era solo la prima idea che mi era passata per la mente, principalmente per esercitarsi su qualcosa di concreto e non copiare i soliti esempi che si trovano in rete.

    Capisco però che pure cosi è fuori dalla mia portata al momento.

    Oggi ho creato un bot di prova e fatto le prime prove seguendo dei videotutorial su youtube (cercate bot telegram carmhack, sono in php qui on topic) facendo le chiamate /getMe, /getUpdates, /sendMessage. Essendo in php non sono riuscito a fare tutto, tipo estrapolare dati dal file json che viene restituito dal browser quando si effettuano tali chiamate che col php si fa con file_get_contents(url) non sono riuscito a farlo con python.

    Ti ringrazio per tutte le risposte e la disponibilità, studierò come mi hai consigliato le cose che mi servono. C'è anche un sezione python qui sul forum? almeno scriverò nella sezione giusta la prossima volta.

    Saluti.

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.