예제 #1
0
def getupdates() -> dict():
    """Ricevi gli ultimi aggiornamenti dal server di Telegram e restituisci l'ultimo messaggio non letto."""
    while True:
        parametri = {
            'offset': filemanager.readfile(
                "lastid.txt"),  # Update ID del messaggio da leggere
            'limit':
            1,  # Numero di messaggi da ricevere alla volta, lasciare 1
            'timeout':
            1500,  # Secondi da mantenere attiva la richiesta se non c'e' nessun messaggio
        }
        data = requests.get("https://api.telegram.org/bot" + telegramtoken +
                            "/getUpdates",
                            params=parametri)
        if data.status_code == 200:
            data = data.json()
            if data['ok']:
                if data['result']:
                    filemanager.writefile(
                        "lastid.txt", str(data['result'][0]['update_id'] + 1))
                    # Controlla che la risposta sia effettivamente un messaggio e non una notifica di servizio
                    if 'message' in data['result'][0]:
                        return data['result'][0]['message']
                    elif 'edited_message' in data['result'][0]:
                        tmp = {
                            "edit": True,
                            "edit_data": data['result'][0]['edited_message']
                        }
                        return tmp
        else:
            # Non vogliamo DDoSsare telegram, vero?
            time.sleep(2)
예제 #2
0
def getupdates() -> dict():
    """Ricevi gli ultimi aggiornamenti dal server di Telegram e restituisci l'ultimo messaggio non letto."""
    while True:
        parametri = {
            'offset': filemanager.readfile("lastid.txt"),  # Update ID del messaggio da leggere
            'limit': 1,  # Numero di messaggi da ricevere alla volta, lasciare 1
            'timeout': 1500,  # Secondi da mantenere attiva la richiesta se non c'e' nessun messaggio
        }
        data = requests.get("https://api.telegram.org/bot" + telegramtoken + "/getUpdates", params=parametri)
        if data.status_code == 200:
            data = data.json()
            if data['ok']:
                if data['result']:
                    filemanager.writefile("lastid.txt", str(data['result'][0]['update_id'] + 1))
                    # Controlla che la risposta sia effettivamente un messaggio e non una notifica di servizio
                    if 'message' in data['result'][0]:
                        return data['result'][0]['message']
                    elif 'edited_message' in data['result'][0]:
                        tmp = {
                            "edit": True,
                            "edit_data": data['result'][0]['edited_message']
                        }
                        return tmp
        else:
            # Non vogliamo DDoSsare telegram, vero?
            time.sleep(2)
예제 #3
0
파일: bot.py 프로젝트: Steffo99/royal-bot
def balurage():
    print("@" + username + ": /balurage")
    # Rispondi commentando l'E3.
    tosend = str()
    try:
        ragelevel = int(filemanager.readfile("ragelevel.txt"))
    except ValueError:
        ragelevel = 0
    ragelevel += 1
    filemanager.writefile("ragelevel.txt", str(ragelevel))
    for rage in range(0, ragelevel):
        tosend += "MADDEN "
    telegram.sendmessage(tosend, sentin, source)
예제 #4
0
def balurage():
    print("@" + username + ": /balurage")
    # Rispondi commentando l'E3.
    tosend = str()
    try:
        ragelevel = int(filemanager.readfile("ragelevel.txt"))
    except ValueError:
        ragelevel = 0
    ragelevel += 1
    filemanager.writefile("ragelevel.txt", str(ragelevel))
    for rage in range(0, ragelevel):
        tosend += "MADDEN "
    telegram.sendmessage(tosend, sentin, source)
예제 #5
0
def getupdates():
    """Ricevi gli ultimi aggiornamenti dal server di Telegram e restituisci l'ultimo messaggio non letto."""
    while True:
        parametri = {
            "offset": filemanager.readfile("lastid.txt"),  # Update ID del messaggio da leggere
            "limit": 1,  # Numero di messaggi da ricevere alla volta, lasciare 1
            "timeout": 1500,  # Secondi da mantenere attiva la richiesta se non c'e' nessun messaggio
        }
        data = requests.get("https://api.telegram.org/bot" + telegramtoken + "/getUpdates", params=parametri).json()
        if data["ok"]:
            if data["result"]:
                filemanager.writefile("lastid.txt", str(data["result"][0]["update_id"] + 1))
                # Controlla che la risposta sia effettivamente un messaggio e non una notifica di servizio
                if "message" in data["result"][0]:
                    return data["result"][0]["message"]
        time.sleep(5)
예제 #6
0
파일: bot.py 프로젝트: Steffo99/royal-bot
def diario():
    # Aggiungi una riga al diario Royal Games
    print("@" + username + ": /diario ")
    if len(cmd) > 1:
        if cmd[1].isprintable():
            cmd[1] = cmd[1].replace("\n", " ")
            fdiario = filemanager.readfile("diario.txt")
            fdiario += str(int(time.time())) + "|" + cmd[1] + "\n"
            filemanager.writefile("diario.txt", fdiario)
            telegram.sendmessage("Aggiunto al diario RYG.", sentin, source)
        else:
            telegram.sendmessage(chr(9888) + " Errore nella scrittura del messaggio.\n"
                                             "Il messaggio non è compatibile con il diario.\n"
                                             "Probabilmente contiene emoji o caratteri speciali non visualizzabili.",
                                 sentin, source)
    else:
        telegram.sendmessage(chr(9888) + " Non hai scritto niente sul diario!\n"
                                         "Sintassi corretta: /diario _quello che vuoi scrivere_",
                             sentin, source)
예제 #7
0
def diario():
    # Aggiungi una riga al diario Royal Games
    print("@" + username + ": /diario ")
    if len(cmd) > 1:
        if cmd[1].isprintable():
            cmd[1] = cmd[1].replace("\n", " ")
            fdiario = filemanager.readfile("diario.txt")
            fdiario += str(int(time.time())) + "|" + cmd[1] + "\n"
            filemanager.writefile("diario.txt", fdiario)
            telegram.sendmessage("Aggiunto al diario RYG.", sentin, source)
        else:
            telegram.sendmessage(
                chr(9888) + " Errore nella scrittura del messaggio.\n"
                "Il messaggio non è compatibile con il diario.\n"
                "Probabilmente contiene emoji o caratteri speciali non visualizzabili.",
                sentin, source)
    else:
        telegram.sendmessage(
            chr(9888) + " Non hai scritto niente sul diario!\n"
            "Sintassi corretta: /diario _quello che vuoi scrivere_", sentin,
            source)
예제 #8
0
def diario():
    # Aggiungi una riga al diario Royal Games
    print("@" + username + ": /diario ")
    cmd = text.split(" ", 1)
    if len(cmd) > 1:
        if cmd[1].isprintable():
            cmd[1] = cmd[1].replace("\n", " ")
            fdiario = filemanager.readfile("diario.txt")
            fdiario += str(int(time.time())) + "|" + cmd[1] + "\n"
            filemanager.writefile("diario.txt", fdiario)
            telegram.sendmessage("Aggiunto al diario RYG.", sentin, source)
        else:
            telegram.sendmessage(
                chr(9888) + " Errore nella scrittura del messaggio.\n"
                "Visto che non ho la minima idea delle assurdita che ho scritto qui, "
                "potresti provare a togliere le emoji.", sentin, source)
    else:
        telegram.sendmessage(
            chr(9888) + " Non hai scritto niente sul diario!\n"
            "Sintassi corretta: /diario _quello che vuoi scrivere_", sentin,
            source)
예제 #9
0
def main():
    twod_signal_manager = get_twod_signal_manager()
    interaction_manager = get_interaction_manager(
        *twod_signal_manager.get_interaction_data())

    for i, vec in enumerate(interaction_manager.interaction_matrix):
        for j, vec2 in enumerate(vec):
            if interaction_manager.interaction_matrix[i][j] == 4:
                print([i + 1, j + 1])

    interaction_manager.print_matrix()
    structure_minimiser = StructureMinimiser(interaction_manager)
    file_manager = FileManager()

    mol_string = file_manager.convert_numpy_to_mol_string(interaction_manager)
    filemanager.writefile('outfile.mol', mol_string)

    try:
        structure_minimiser.minimise_response()
    except KeyboardInterrupt:
        pass
    structure_minimiser.write_solution("solution.xyz")
    interaction_manager.print_matrix()
예제 #10
0
     print("@" + username + ": /risultati ")
     if incorso is not None:
         if incorso.chat == sentin:
             incorso.showresults()
     else:
         telegram.sendmessage(chr(9888) + " Non è in corso nessuna votazione!", sentin, source)
 elif text.startswith('/diario'):
     # Aggiungi una riga al diario Royal Games
     print("@" + username + ": /diario ")
     cmd = text.split(" ", 1)
     if len(cmd) > 1:
         if cmd[1].isprintable():
             cmd[1] = cmd[1].replace("\n", " ")
             diario = filemanager.readfile("diario.txt")
             diario += str(int(time.time())) + "|" + cmd[1] + "\n"
             filemanager.writefile("diario.txt", diario)
             telegram.sendmessage("Aggiunto al diario RYG.", sentin, source)
         else:
             telegram.sendmessage(chr(9888) + " Il messaggio non può essere scritto.\n"
                                  "Prova a togliere le emoji o boh?", sentin, source)
     else:
         telegram.sendmessage(chr(9888) + " Non hai scritto niente sul diario!\n"
                                          "Sintassi corretta: /diario _quello che vuoi scrivere_",
                              sentin, source)
 elif text.startswith('/leggi'):
     # Leggi dal diario Royal Games
     print("@" + username + ": /leggi")
     cmd = text.split(" ", 1)
     diario = filemanager.readfile("diario.txt")
     diario = diario.split('\n')
     text = str()
예제 #11
0
             incorso.showresults()
     else:
         telegram.sendmessage(
             chr(9888) + " Non è in corso nessuna votazione!",
             sentin, source)
 elif text.startswith('/diario'):
     # Aggiungi una riga al diario Royal Games
     print("@" + username + ": /diario ")
     cmd = text.split(" ", 1)
     if len(cmd) > 1:
         if cmd[1].isprintable():
             cmd[1] = cmd[1].replace("\n", " ")
             diario = filemanager.readfile("diario.txt")
             diario += str(int(
                 time.time())) + "|" + cmd[1] + "\n"
             filemanager.writefile("diario.txt", diario)
             telegram.sendmessage("Aggiunto al diario RYG.",
                                  sentin, source)
         else:
             telegram.sendmessage(
                 chr(9888) +
                 " Il messaggio non può essere scritto.\n"
                 "Prova a togliere le emoji o boh?", sentin,
                 source)
     else:
         telegram.sendmessage(
             chr(9888) + " Non hai scritto niente sul diario!\n"
             "Sintassi corretta: /diario _quello che vuoi scrivere_",
             sentin, source)
 elif text.startswith('/leggi'):
     # Leggi dal diario Royal Games