def main(): if subprocess.check_output(['git', 'status', '--porcelain'], cwd=os.path.dirname(__file__) or '.') != b'': print('Working directory is not clean, refusing to start.') sys.exit(1) if os.path.isfile('UPDATE'): os.remove('UPDATE') if os.path.isfile('Instagram_run'): os.remove('Instagram_run') settings.version = subprocess.check_output([ 'git', 'show', '-s', '--format=format:%cd.%h', '--date=format:%Y%m%d' ], cwd=os.path.dirname(__file__) or '.', encoding='utf-8') settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log('Starting iBot') settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() while settings.running: if os.path.isfile('STOP'): os.remove('STOP') open('UPDATE', 'w').close() break time.sleep(1)
def main(): settings.init() settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log('Starting NewsGrabber') tools.create_dir(settings.dir_assigned_services) if not os.path.isfile(settings.target): settings.logger.log( "Please add one or more discovery rsync targets to file '{settings.target}'" .format(**locals()), 'ERROR') settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() time.sleep(30) settings.upload = service.Upload() settings.upload.daemon = True settings.upload.start() settings.run_services = service.RunServices() settings.run_services.daemon = True settings.run_services.start() while settings.running: time.sleep(1)
def main(): try: config = sys.argv[1] except: print 'I need a config file!' sys.exit(1) try: with open(config, 'r') as fptr: yml = yaml.load(fptr.read()) except Exception as e: print 'Could not load config.yaml because: {0}'.format(e) sys.exit(1) kwargs = {} kwargs['nick'] = yml['nick'] kwargs['server'] = yml['server'] kwargs['port'] = yml['port'] kwargs['user'] = yml['user'] kwargs['channel'] = yml['channel'] try: kwargs['rejoin'] = yml['rejoin'] except KeyError as e: kwargs['rejoin'] = False bot = irc.IRC(**kwargs) bot.connect() bot.run(blocking=True)
def main(): settings.init() settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log('Starting NewsGrabber') tools.create_dir(settings.dir_new_urllists) tools.create_dir(settings.dir_old_urllists) tools.create_dir(settings.dir_donefiles) tools.create_dir(settings.dir_ready) tools.create_dir(settings.dir_last_upload) tools.create_dir(settings.dir_dumped_url_data) if not os.path.isfile(settings.targets): settings.logger.log( "Please add one or more rsync targets to file '{settings.targets}'" .format(**locals()), 'ERROR') settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() time.sleep(30) settings.upload = upload.Upload() settings.upload.daemon = True settings.upload.start() settings.run_services = service.RunServices() settings.run_services.daemon = True settings.run_services.start() while settings.running: time.sleep(1)
def __init__(self, request): self.servername = 'smilebasic' self.nickname = '' self.password = '' self.realname = '' # TODO: use for server info self.joinedto = [] self.tojoin = [] self.channels = {} self.connected = False self.irc = irc.IRC(self.servername, request) self.irc.on_MODE = self.irc_on_MODE self.irc.on_WHO = self.irc_on_WHO self.irc.on_PASS = self.irc_on_PASS self.irc.on_NICK = self.irc_on_NICK self.irc.on_USER = self.irc_on_USER self.irc.on_JOIN = self.irc_on_JOIN self.irc.on_PART = self.irc_on_PART self.irc.on_PRIVMSG = self.irc_on_PRIVMSG self.sbs = sbs2.SBS2() self.sbs.debug_traceback = self.debug_traceback self.sbs.debug = self.debug self.sbs.on_message = self.sbs_on_message self.sbs.on_userList = self.sbs_on_userList self.sbs.on_response = self.sbs_on_response
def __init__(self, channel: str, secret: str, nickname: str): self.client = irc.IRC(channel, secret, nickname) self.client.sock.send( f"CAP REQ :twitch.tv/tags twitch.tv/commands twitch.tv/membership\r\n" .encode('utf-8')) #unused clear() print("============================") print(" " + nickname + " ONLINE") print("============================\n")
def main(): settings.init() settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log( 'Starting grabber {name}'.format(name=settings.irc_nick)) tools.create_dir(settings.dir_ready) tools.create_dir(settings.dir_new_lists) tools.create_dir(settings.dir_old_lists) if not os.path.isfile(settings.target_main): raise Exception( "Please add a rsync target to file '{settings.target_main}'.". format(**locals())) settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() time.sleep(30) settings.upload = upload.Upload() settings.upload.daemon = True settings.upload.start() settings.grab = grab.Grab() settings.grab.daemon = True settings.grab.start() while settings.running: # if not settings.logger.isAlive(): # print('The logger stopped running...') # settings.irc_bot.send('PRIVMSG', 'The logger stopped running...', # settings.irc_channel_bot) # settings.running = False # if not settings.irc_bot.isAlive(): # print('The IRC bot stopped running...') # settings.running = False # if not settings.upload.isAlive(): # print('The uploader stopped running...') # settings.irc_bot.send('PRIVMSG', 'The uploader stopped running...', # settings.irc_channel_bot) # settings.running = False # if not settings.grab.isAlive(): # print('The grabber stopped running...') # settings.irc_bot.send('PRIVMSG', 'The grabber stopped working...', # settings.irc_channel_bot) # settings.running = False time.sleep(1)
def main(): if os.path.isfile('UPDATE'): os.remove('UPDATE') settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log('Starting iBot') settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() while settings.running: if os.path.isfile('STOP'): os.remove('STOP') open('UPDATE', 'w').close() break time.sleep(1)
def main(): if os.path.isfile('UPDATE'): os.remove('UPDATE') # settings.init() settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log('Starting NewsGrabber') tools.create_dir(settings.dir_new_urllists) tools.create_dir(settings.dir_old_urllists) tools.create_dir(settings.dir_donefiles) tools.create_dir(settings.dir_ready) tools.create_dir(settings.dir_last_upload) tools.create_dir(settings.dir_dumped_url_data) if not os.path.isfile(settings.targets): settings.logger.log("Please add one or more rsync targets to file " \ "'{targets}'".format(targets=settings.targets), 'ERROR') if not os.path.isfile(settings.keys): settings.logger.log("Please add you keys by running 'add_keys.py'.", 'ERROR') settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() time.sleep(30) settings.upload = upload.Upload() settings.upload.daemon = True settings.upload.start() settings.run_services = service.RunServices() settings.run_services.daemon = True settings.run_services.start() while settings.running: if os.path.isfile('STOP'): os.remove('STOP') open('UPDATE', 'w').close() break time.sleep(1)
def main(): if os.path.isfile('UPDATE'): os.remove('UPDATE') if os.system('service rsync status') != 0: print('rsync not running; attempting to start') try: os.system('service rsync start') except OSError: print('failed to start rsync service') os.system('service rsync status') settings.init() settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log('Starting NewsGrabber') tools.create_dir(settings.dir_assigned_services) if not os.path.isfile(settings.target): settings.logger.log("Please add one or more discovery rsync targets to file '{target}'".format(target=settings.target), 'ERROR') settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() time.sleep(30) settings.upload = discoveryservice.Upload() settings.upload.daemon = True settings.upload.start() settings.run_services = discoveryservice.RunServices() settings.run_services.daemon = True settings.run_services.start() while settings.running: if os.path.isfile('STOP'): os.remove('STOP') open('UPDATE', 'w').close() break time.sleep(1)
def main(): if os.path.isfile('UPDATE'): os.remove('UPDATE') settings.init() settings.logger = log.Log(settings.log_file_name) settings.logger.daemon = True settings.logger.start() settings.logger.log( 'Starting grabber {name}'.format(name=settings.irc_nick)) tools.create_dir(settings.dir_ready) tools.create_dir(settings.dir_new_lists) tools.create_dir(settings.dir_old_lists) if not os.path.isfile(settings.target_main): raise Exception( "Please add a rsync target to file '{target_main}'.".format( target_main=settings.target_main)) settings.irc_bot = irc.IRC() settings.irc_bot.daemon = True settings.irc_bot.start() time.sleep(30) settings.upload = upload.Upload() settings.upload.daemon = True settings.upload.start() settings.grab = grab.Grab() settings.grab.daemon = True settings.grab.start() while settings.running: if os.path.isfile('STOP'): os.remove('STOP') open('UPDATE', 'w').close() break time.sleep(1)
import irc import workers import functions as func RESPONSE_TIME = 0.01 MSG_PER_MINUTE = 2 #################### IRC CONFIG #################### PORT = 6666 SERVER = "chat.freenode.net" CHANNEL = "#kaestChannels" BOTNICK = "FooBot" #################### IRC CONFIG #################### ################ IRC INITIALIZATION ################ IRC = irc.IRC() IRC.connect(SERVER, PORT, CHANNEL, BOTNICK) IRC.send(CHANNEL, f"{BOTNICK} logging on") ################ IRC INITIALIZATION ################ ################ Print Chat Connection Info ################ RESPONSE = "" while RESPONSE.find(f"JOIN {CHANNEL}") < 0: RESPONSE = IRC.get_response().rstrip() print(RESPONSE + "\n") ################ Print Chat Connection Info ################ ################ WORKER INITIALIZATION ################ MESSAGE_CACHE = [] # Initialize the autotracking message queue CLEANER = workers.MessageQueueCleaner(RESPONSE_TIME, MESSAGE_CACHE) TALKER_DICT = {} # Initialize talker dictionary
import sys import irc import telebot token = 'token_name' client_irc = irc.IRC() nick = 'Pons_IRC_Telegram' server = 'chat.freenode.net' channel = sys.argv[1] chat_id = -270350582 client_irc.connect(server, nick) client_irc.join(channel) client_teleg = telebot.TeleBot(token) @client_teleg.message_handler(content_types=["text"]) def send(message): client_irc.send(channel, message.text) client_teleg.polling()
import irc, os, comms os.system('clear') channel = "#mk-comms" server = "irc.freenode.net" nickname = "rpi-service" client = irc.IRC() client.connect(server, channel, nickname, "MK-COMMS Test Service") while True: open('public/list', 'w').write(str(os.listdir('public'))) cmd, user, fullmsg = comms.parsecmd(client.get_text()) if not cmd == None: if cmd == 'ping': client.send('pong') print('ping from ' + user + ' ponged.') elif cmd == 'pong': print('pong from ' + user + ' recieved.') elif cmd == 'send': if fullmsg.split(' ')[1] == nickname: sent_command = ' '.join(fullmsg.split(' ')[2:]) print('sending message from ' + user + ' to logs.') print(sent_command) elif cmd == 'post': sent_command = ' '.join(fullmsg.split(' ')[1:]) print('sending post from ' + user + ' to logs.') print(sent_command)
def initialize(): conn = irc.IRC() conn.connect(server, channel, port, nickname) aclist = baekjoon.get_aclist(boj_username) boardlist = snucsepl.get_boardlist() return conn, aclist, boardlist
import time import os import thread import cPickle from collections import defaultdict import reminder as rem import irc irc = irc.IRC('irc.synirc.net', 6667) try: f = open('reminder.pickle', 'r') ru = cPickle.load(f) except IOError: ru = defaultdict(list) bot = rem.RemBot(irc, ru) thread.start_new_thread(bot.run, ()) print ru fs = os.stat('reminder.py').st_mtime try: while 1: # watch for changes innit try: stat = os.stat('reminder.py').st_mtime except OSError: pass if stat != fs: print '### reloading'
def start(): console.clear() if HRAM.readTab('crash'): console.writeline( 'your microsystem computer has crashed. here is some info.') console.writeline(HRAM.readTab('crash_dump')) if HRAM.readTab('crash_fatal'): misc.delay(5000) console.writeline('resuming your session...') misc.delay(1000) else: HRAM.writeTab('crash', False) console.writeline('your computer will resume in 5 seconds.') misc.delay(5000) console.writeline('resuming your computer') misc.delay(1000) console.clear() console.writeline('welcome to microsystems.') console.writeline('') filesystem.changeCWD(HROM.readTab('rootdir') + '/home/') RAM = ram.ram() RAM.purge() RAM.writeTab('usefile_content', open(HROM.readTab('usefile')).read().split('\n')) RAM.writeTab( 'sudo_list', re.split(HROM.readTab('use_regexp'), RAM.readTab('usefile_content')[0]) + HROM.readTab('sudo_list')) RAM.writeTab( 'user_list', re.split(HROM.readTab('use_regexp'), RAM.readTab('usefile_content')[1]) + HROM.readTab('user_list')) RAM.writeTab( 'pass_list', re.split(HROM.readTab('use_regexp'), RAM.readTab('usefile_content')[2]) + HROM.readTab('pass_list')) RAM.writeTab('user_session_active', False) while HRAM.readTab('system_active'): if not (RAM.readTab('user_session_active')): while not (RAM.readTab('user_session_active')): console.writeline('please log in.') RAM.writeTab('user_name', console.readline(' username: '******'pass_word', console.readline(' password: '******'user_name') in RAM.readTab( 'user_list') + HROM.readTab('user_list'): if RAM.readTab('pass_word') == RAM.readTab('pass_list')[ RAM.readTab('user_list').index( RAM.readTab('user_name'))]: RAM.writeTab('user_session_active', True) # If user's sudo status is the string 'True' then they get sudo privs. RAM.writeTab( 'user_is_sudo', 'True' == RAM.readTab('sudo_list')[RAM.readTab( 'user_list').index(RAM.readTab('user_name'))]) console.clear() else: console.clear() console.writeline('error: password incorrect.') console.writeline('') client = irc.IRC() RAM.writeTab( 'irc_name', RAM.readTab('user_name') + '-' + HRAM.readTab('host_name')) client.connect(HROM.readTab('server'), HROM.readTab('channel'), RAM.readTab('irc_name'), "A Microsystems User") console.writeline('starting IRC listening daemon...') def ircListener(client): try: console.writeline('IRC listening daemon active.') while True: cmd, user, fullmsg = comms.parsecmd( client.get_text()) if not cmd == None: if cmd == 'ping': client.send('pong') elif cmd == 'pong': RAM.writeTab('ponged', user) elif cmd == 'post': sent_command = ' '.join( fullmsg.split(' ')[1:]) filesystem.appendFile( HROM.readTab('post_dest'), '[' + user + '] posted: ' + sent_command + '\n') elif cmd == 'send': if fullmsg.split(' ')[ 1] == RAM.readTab('irc_name'): sent_command = ' '.join( fullmsg.split(' ')[2:]) filesystem.appendFile( HROM.readTab('inbox_dest') + RAM.readTab('user_name') + '.inb', '[' + user + '] sent: ' + sent_command + '\n') elif cmd == 'give': if fullmsg.split(' ')[ 1] == RAM.readTab('irc_name'): sent_command = ' '.join( fullmsg.split(' ')[2:]) if sent_command == 'ack': RAM.writeTab('ack', True) else: RAM.writeTab( 'response', sent_command) if sent_command.split( ' ')[0] == 'file': comms.decode_file( sent_command.split(' ') [1], ' '.join( sent_command.split( ' ')[2:])) elif cmd == 'rqst': if fullmsg.split(' ')[ 1] == RAM.readTab('irc_name'): rqst_data = ' '.join( fullmsg.split(' ')[2:]) if rqst_data == 'ack': client.send('give ' + user + ' ack') elif rqst_data.split( ' ')[0] == 'get': if HRAM.readTab('server'): try: client.send( 'give ' + user + ' file ' + rqst_data.split( ' ')[1] + ' ' + comms.encode_file( 'public/' + rqst_data. split(' ')[1])) except: client.send( 'fail ' + user + ' 1:OBJECT_NOT_RECOGNIZED' ) else: client.send( 'fail ' + user + ' 2:SERVICE_CLOSED') else: client.send( 'fail ' + user + ' 0:RQST_NOT_RECOGNIZED') elif cmd == 'fail': if fullmsg.split(' ')[ 1] == RAM.readTab('irc_name'): sent_command = ' '.join( fullmsg.split(' ')[2:]) RAM.writeTab( 'failed_msg', sent_command) RAM.writeTab('failed_rqst', True) except Exception as e: console.writeline('\n\nIRC daemon died!') filesystem.dumpError(sys.exc_info()) console.writeline(str(e) + '\n') #ircListeningDaemon = threading.Thread(target=ircListener, args=([client]), daemon=True) #ircListeningDaemon.start() ircListeningDaemon = threading.Thread(target=ircListener, args=([client]), daemon=True) ircListeningDaemon.start() console.writeline('IRC listening daemon set up.') console.writeline('microsystems MK-COMMS system set up.\n') console.writeline( 'note: you may need to wait before your connection is complete.' ) console.writeline( 'to check if you are connected, try typing \'mk-ping\' until you get a response.\n' ) else: console.clear() console.writeline('error: invalid user.') console.writeline('') RAM.writeTab( 'user_input', console.readline( RAM.readTab('user_name') + '@' + HRAM.readTab('host_name') + ' ~ $ ')) if RAM.readTab('user_input') == 'restart': HRAM.writeTab('system_restart', True) HRAM.writeTab('system_active', False) elif RAM.readTab('user_input') == 'mk-serveron': if RAM.readTab('user_is_sudo'): HRAM.writeTab('server', True) console.writeline('server mode enabled.') else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'mk-ping': RAM.writeTab('ponged', '') client.send('ping') console.writeline('ping sent; listening for reply.') timer_start = time.time() while timer_start - time.time() > -1: if RAM.readTab('ponged') != '': console.writeline('user [' + RAM.readTab('ponged') + '] ponged.') RAM.writeTab('ponged', '') console.writeline('ping complete.\n') elif RAM.readTab('user_input').split(' ')[0] == 'mk-send': client.send('send ' + RAM.readTab('user_input').split(' ')[1] + ' ' + ' '.join(RAM.readTab('user_input').split(' ')[2:])) elif RAM.readTab('user_input').split(' ')[0] == 'mk-post': client.send('post ' + ' '.join(RAM.readTab('user_input').split(' ')[1:])) elif RAM.readTab('user_input').split(' ')[0] == 'mk-rqst': RAM.writeTab('ack', False) client.send('rqst ' + RAM.readTab('user_input').split(' ')[1] + ' ack') console.writeline('sending ack request..') timer_start = time.time() while timer_start - time.time() > -1: if RAM.readTab('ack'): break if RAM.readTab('ack'): console.writeline('ack request answered, continuing.') RAM.writeTab('response', '') RAM.writeTab('failed_rqst', False) client.send('rqst ' + RAM.readTab('user_input').split(' ')[1] + ' ' + ' '.join(RAM.readTab('user_input').split(' ')[2:])) timer_start = time.time() while timer_start - time.time() > -1: if '' != RAM.readTab('response'): console.writeline('got a response!') break elif RAM.readTab('failed_rqst'): console.writeline('request failed: ' + RAM.readTab('failed_msg')) break else: console.writeline('ack request ignored, aborting.') continue console.writeline('') elif RAM.readTab('user_input') == 'clear': console.clear() elif RAM.readTab('user_input').split(' ')[0] == 'del': if filesystem.removeFile(RAM.readTab('user_input').split(' ')[1]): console.writeline('file deleted successfully.') else: console.writeline('"' + RAM.readTab('user_input').split(' ')[1] + '" is not a valid file.') elif RAM.readTab('user_input') == 'ls': console.writeline('\nhere is the directory listing:') RAM.writeTab('tmp00', filesystem.listCWD()) for i in range(len(RAM.readTab('tmp00'))): console.writeline('> ' + RAM.readTab('tmp00')[i]) console.writeline('\n\nlisting complete\n') elif RAM.readTab('user_input')[:3] == 'cat': console.writeline( 'reading ' + RAM.readTab('user_input')[4:] + '...\n\n' + filesystem.readFile(RAM.readTab('user_input')[4:]) + '\n') elif RAM.readTab('user_input') == 'post': posts = open(HROM.readTab('post_dest')).read().split('\n') for i in range(len(posts)): console.writeline(posts[i]) elif RAM.readTab('user_input') == 'clearpost': open(HROM.readTab('post_dest'), 'w+').write('') console.writeline('cleared.') elif RAM.readTab('user_input') == 'inbox': inbox = open( HROM.readTab('inbox_dest') + RAM.readTab('user_name') + '.inb').read().split('\n') for i in range(len(inbox)): console.writeline(inbox[i]) elif RAM.readTab('user_input') == 'clearinbox': open( HROM.readTab('inbox_dest') + RAM.readTab('user_name') + '.inb', 'w+').write('') console.writeline('cleared.') elif RAM.readTab('user_input')[:3] == 'run': console.writeline('running ' + RAM.readTab('user_input')[4:] + '...\n') RAM.writeTab('last_exec', exec.runFile(RAM.readTab('user_input')[4:], RAM)) elif RAM.readTab('user_input') == 'shutdown': HRAM.writeTab('system_restart', False) HRAM.writeTab('system_active', False) elif RAM.readTab('user_input') == 'dumpram': if RAM.readTab('user_is_sudo'): console.writeline(RAM.dumpAll()) else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'dumphrom': if RAM.readTab('user_is_sudo'): console.writeline(HROM.dumpAll()) else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'dumphram': if RAM.readTab('user_is_sudo'): console.writeline(HRAM.dumpAll()) else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'dumperam': if RAM.readTab('user_is_sudo'): try: console.writeline(RAM.readTab('last_exec').dumpAll()) except: pass else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'logout': RAM.writeTab('user_session_active', False) console.clear() elif RAM.readTab('user_input') == 'purgeram': if RAM.readTab('user_is_sudo'): console.writeline(RAM.purge()) else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'fatalcrash': if RAM.readTab('user_is_sudo'): raise error.FatalTestException else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'crash': if RAM.readTab('user_is_sudo'): raise error.TestException else: console.writeline('\nyou are not a super-user.') elif RAM.readTab('user_input') == 'lastdump': if RAM.readTab('user_is_sudo'): console.writeline(open(HROM.readTab('dumpfile')).read()) else: console.writeline('\nyou are not a super-user.')
def closing(sig, frame): print("clossing !") irc.irc.send(("PART " + chan).encode("utf-8")) irc.irc.close() thread_chatReader.stop() thread_chatTimer.stop() sys.exit(0) def main(): irc.connect(server, chan, nick, passw) signal.signal(signal.SIGINT, closing) executions() chan = "#joleo007" server = "irc.chat.twitch.tv" nick = "agentsergentchef" passw = open("secretkey.txt", 'r').read() sleeptime = 10 irc = irc.IRC() thread_chatReader = readChat() thread_chatTimer = timerChat() if __name__ == "__main__": main()
def main(): # Parse config file config = models.config.Config("config.json") # Validate config if config.validateSelf() == False: print("config invalid! exiting...") exit() else: print("config valid, continue...") print("Getting twitch channel " + config.channelName + " data...\n") # Get twitch user data response = GetTwitchUser(config.channelName, config.clientID) # print(str(response) + "\n\n") userResponse = models.twitch.user.UsersResponse(response) user = userResponse.user print( "Twitch channel {} (login: {}, ID: {})\nView count: {}\nChannel type: {}\nDescription: {}" .format(userResponse.user.displayName, userResponse.user.name, userResponse.user.id, userResponse.user.viewCount, userResponse.user.type, userResponse.user.description)) # Get twitch user data from new api response = GetTwitchUserNew(userResponse.user.id, config.clientID) # print(str(response) + "\n\n") # Get twitch user stream data response = GetTwitchUserStream(userResponse.user.id, config.clientID) # print(str(response) + "\n\n") streamResponse = models.twitch.stream.StreamResponse(response) stream = streamResponse.stream if streamResponse.stream != None: print("Streaming {} with {} viewers for {} with average FPS of {}". format(streamResponse.stream.game, streamResponse.stream.viewers, streamResponse.stream.timedeltaSinceStart, streamResponse.stream.avgFPS)) else: print("Stream offline") print( "\n\n=====================================\nFinished initial data fetching!\n=====================================\n\n" ) print("Starting autoupdater of user data for channel {} every {} seconds". format(config.channelName, config.updateDataInterval)) autoupdateUserDataTimer = autoupdateUserData(config.updateDataInterval, config.clientID, config.channelName, user) print("Starting autoupdater of stream data for user {} every {} seconds". format(userResponse.user.displayName, config.updateDataInterval)) autoUpdateStreamDataTimer = autoupdateStreamData(config.updateDataInterval, config.clientID, userResponse.user.id, stream) print( "\n\n=====================================\nFinished starting autoupdaters!\n=====================================\n\n" ) # Connect to twitch chat irc chat = irc.IRC(config.chatToken, config.chatUsername, user, stream) chat.connect("irc.chat.twitch.tv", 6667) stdinControl(chat) autoupdateUserDataTimer.cancel() autoUpdateStreamDataTimer.cancel() print("TwitchBotPrime dies.") sys.exit(0)
# -*- coding: utf-8 -*- import irc, os, sys, time, platform, easygui from ctypes import c_int, WINFUNCTYPE, windll from ctypes.wintypes import HWND, LPCSTR, UINT masternick = '' cmdflag = False chanflag = True channel = input('Enter a channel to go to: ').strip() thebot = irc.IRC('MN1Bot', 'MN1Bot', 'MN1Bot') thebot.IRCJoin(channel) while True: mydat = str(thebot.IRCRecv(4096)) print(mydat) if 'PING' in mydat: print("PINGPONG") thebot.IRCSend('PONG') if 'PRIVMSG KickBot :sekritpass' in mydat: pmflag = True for i in range(0, len(mydat)): if mydat[i] == ':': continue if mydat[i] == ':': masternick = mydat[:i] thebot.IRCSend( 'PRIVMSG Marionumber1 :You are now the commander of me!') if masternick + ' PRIVMSG KickBot :$chanon' in mydat and pmflag: thebot.IRCChat('Marionumber1 has turned on channel commands') chanflag = True if masternick + ' PRIVMSG KickBot :$chanoff' in mydat and pmflag: