def talker(args=None): # Handle arguments parser = argparse.ArgumentParser() parser.add_argument( '-config', type=str, default='/home/nick/GitHub/4d-agriculture/main_datapath/config.ini', help='Path to config file') args = parser.parse_args() # Create config.ini if it doesn't already exist if not os.path.exists(args.config): config.create_config_global(args.config) config.verify_config(args.config) # Create a new configparser parser = configparser.ConfigParser(interpolation=None) parser.read(args.config) # Create publisher node pub = rospy.Publisher('sample_points', String, queue_size=10) rospy.init_node('sample_gui', anonymous=False) # Create gui master = tk.Tk() gui.Main(master, parser, pub) # Run gui master.mainloop()
def main(): if len(sys.argv) < 2: print USAGE return -1 signal.signal(signal.SIGINT, signal_handler) # Verify config config.verify_config() # Init options try: opts, args = getopt.getopt( sys.argv[1:], "inl:sb", ["init", "non-interactive", "backup_log_dir", "skip-copy_binaries", "32bit-binary-test"], ) except getopt.GetoptError as e: print USAGE print e return -1 opt_init = False opt_backup_log_dir = None opt_skip_copy_binaries = False opt_32bit_binary_test = False opt_non_interactive = False for opt, arg in opts: if opt in ("-i", "--init"): opt_init = True elif opt in ("-l", "--backup_log_dir"): opt_backup_log_dir = arg elif opt in ("-s", "--skip-copy-binareis"): opt_skip_copy_binaries = True elif opt in ("-b", "--32bit-binary-test"): opt_32bit_binary_test = True elif opt in ("-n", "--non-interactive"): opt_non_interactive = True # Clean up test environment if cleanup_test_env(opt_skip_copy_binaries, opt_32bit_binary_test) != 0: print "Clean up test environment fail! Aborting..." return -1 # When -i flag is on, it exits after setting up a cluster. if opt_init is True: if default_cluster.initialize_starting_up_smr_before_redis(config.clusters[0], verbose=2) is not 0: util.log("failed setting up servers.") else: util.log("finished successfully setting up servers.") return 0 # Load test modules module_list = load_test_modules(opt_32bit_binary_test) print "module list : " print module_list # Run test return test_modules(module_list, opt_non_interactive, opt_backup_log_dir)
def main(): verify_config([ 'logging', 'logging.level', 'telegram', 'telegram.token', 'knightro', 'knightro.welcome', 'knightro.start', 'knightro.help', 'knightro.alert', 'knightro.about' ]) # Logging logging.basicConfig( format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=config['logging']['level']) # Initializations load_locations() # Create the updater and get the dispatcher updater = Updater(token=config['telegram']['token']) dispatcher = updater.dispatcher # Handlers dispatcher.add_handler(CommandHandler('start', command_start)) dispatcher.add_handler(CommandHandler('about', command_about)) dispatcher.add_handler(CommandHandler('help', command_help)) dispatcher.add_handler(CommandHandler('alert', command_alert)) dispatcher.add_handler( CommandHandler('garage', command_garage, pass_args=True)) dispatcher.add_handler( CommandHandler('whereis', command_whereis, pass_args=True)) dispatcher.add_handler( MessageHandler(callback=handle_new_chat_member, filters=Filters.status_update.new_chat_members)) dispatcher.add_error_handler(handle_error) # Start if config['telegram']['use_webhook']: verify_config([ 'telegram.webhook', 'telegram.webhook.host', 'telegram.webhook.internal_port', 'telegram.webhook.cert', 'telegram.webhook.key' ]) logging.info('Using webhook') updater.start_webhook( listen='127.0.0.1', port=config['telegram']['webhook']['internal_port'], url_path=config['telegram']['token']) updater.bot.set_webhook( url='https://' + config['telegram']['webhook']['host'] + \ '/' + config['telegram']['token'], certificate=open(config['telegram']['webhook']['cert'], 'rb') ) else: logging.info('Start polling') updater.start_polling() logging.info('Updater idling') updater.idle() logging.info('Exiting')
def main(): if len(sys.argv) < 2: print USAGE return -1 signal.signal( signal.SIGINT, signal_handler ) # Verify config config.verify_config() # Init options try: opts, args = getopt.getopt(sys.argv[1:], 'inl:sb', ['init', 'non-interactive', 'backup_log_dir', 'skip-copy_binaries', '32bit-binary-test']) except getopt.GetoptError as e: print USAGE print e return -1 opt_init = False opt_backup_log_dir = None opt_skip_copy_binaries = False opt_32bit_binary_test = False opt_non_interactive = False for opt, arg in opts: if opt in ("-i", '--init'): opt_init = True elif opt in ("-l", '--backup_log_dir'): opt_backup_log_dir = arg elif opt in ("-s", '--skip-copy-binareis'): opt_skip_copy_binaries = True elif opt in ("-b", '--32bit-binary-test'): opt_32bit_binary_test = True elif opt in ("-n", '--non-interactive'): opt_non_interactive = True # Clean up test environment if cleanup_test_env(opt_skip_copy_binaries, opt_32bit_binary_test) != 0: print 'Clean up test environment fail! Aborting...' return -1 # When -i flag is on, it exits after setting up a cluster. if opt_init is True: if default_cluster.initialize_starting_up_smr_before_redis( config.clusters[0], verbose=2 ) is None: util.log('failed setting up servers.') else: util.log('finished successfully setting up servers.' ) return 0 # Load test modules module_list = load_test_modules(opt_32bit_binary_test) print "module list : " print module_list # Run test return test_modules(module_list, opt_non_interactive, opt_backup_log_dir)
def main(args): # Parse config file config = parse_config(args.config_file) # verify the config file and get the Carbon Black Cloud Server list output_params, server_list = verify_config(config) # Store Forward. Attempt to send messages that have been saved due to a failure to reach the destination send_stored_data(output_params) logger.info("Found {0} Carbon Black Cloud Servers in config file".format( len(server_list))) # Iterate through our Carbon Black Cloud Server list for server in server_list: logger.info("Handling notifications for {0}".format( server.get('server_url'))) notification_logs = fetch_notification_logs( server, output_params['output_format'], output_params['policy_action_severity']) logger.info("Sending Notifications") send_new_data(output_params, notification_logs) logger.info("Done Sending Notifications") audit_logs = fetch_audit_logs(server, output_params['output_format']) logger.info("Sending Audit Logs") send_new_data(output_params, audit_logs) logger.info("Done Sending Audit Logs")
from config import config, verify_config from functools import wraps verify_config(['privileges', 'privileges.default']) MISSING_PERMISSION_MESSAGE = 'Sorry, that command requires the "{permission}" privilege.' def get_user_privilege(tg_user): priv = config['privileges'].get(str(tg_user.id)) if priv == None: priv = config['privileges']['default'] return priv def user_has_privilege(tg_user, privilege): priv = get_user_privilege(tg_user) if priv.get(privilege): return True else: return False def privileged_command(privilege): def deco(func): @wraps(func) def wrapper(*args, **kwargs): update = args[1] if user_has_privilege(update.message.from_user, privilege): return func(*args, **kwargs) else:
import json import logging from telegram import ChatAction from config import config, verify_config from util import get_relative_filename from util import send_action, logged_command verify_config( ['navigation', 'navigation.locations_file', 'navigation.map_link']) LOCATIONS_FILENAME = config['navigation']['locations_file'] locations = [] class Location: @staticmethod def search(text): text = text.lower().strip() keywords = text.split() #print('Searching locations for "{}"'.format(text)) bestScore = 0 bestLoc = None for loc in locations: score = 0 if loc.abbr == text: #print('Exact match via abbr') score += 200 elif loc.nameLower == text:
from math import floor import re import requests from operator import attrgetter from telegram import ChatAction from config import config, verify_config from util import send_action, logged_command from mwt import MWT verify_config([ 'parking', 'parking.url', 'parking.location_ids', 'parking.cache_time', 'navigation.map_link' ]) PARKING_URL = config['parking'][ 'url'] # http://secure.parking.ucf.edu/GarageCount/ LOCATION_IDS = config['parking']['location_ids'] MAP_LINK = config['navigation']['map_link'] class Garage(): def __init__(self, name, avail, total): self.name = name self.avail = avail self.total = total def __str__(self): return '{name}\t{percentFull}%\t{avail}/{total}'.format( name=self.name,