diff options
Diffstat (limited to 'examples/migrate_roster.py')
-rwxr-xr-x | examples/migrate_roster.py | 79 |
1 files changed, 33 insertions, 46 deletions
diff --git a/examples/migrate_roster.py b/examples/migrate_roster.py index 9f679523..d599b10c 100755 --- a/examples/migrate_roster.py +++ b/examples/migrate_roster.py @@ -1,68 +1,55 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # -*- coding: utf-8 -*- import sys import logging -import getpass -from optparse import OptionParser +from getpass import getpass +from argparse import ArgumentParser -import sleekxmpp - -# Python versions before 3.0 do not use UTF-8 encoding -# by default. To ensure that Unicode is handled properly -# throughout SleekXMPP, we will set the default encoding -# ourselves to UTF-8. -if sys.version_info < (3, 0): - from sleekxmpp.util.misc_ops import setdefaultencoding - setdefaultencoding('utf8') -else: - raw_input = input +import slixmpp # Setup the command line arguments. -optp = OptionParser() +parser = ArgumentParser() # Output verbosity options. -optp.add_option('-q', '--quiet', help='set logging to ERROR', - action='store_const', dest='loglevel', - const=logging.ERROR, default=logging.INFO) -optp.add_option('-d', '--debug', help='set logging to DEBUG', - action='store_const', dest='loglevel', - const=logging.DEBUG, default=logging.INFO) -optp.add_option('-v', '--verbose', help='set logging to COMM', - action='store_const', dest='loglevel', - const=5, default=logging.INFO) +parser.add_argument("-q", "--quiet", help="set logging to ERROR", + action="store_const", dest="loglevel", + const=logging.ERROR, default=logging.INFO) +parser.add_argument("-d", "--debug", help="set logging to DEBUG", + action="store_const", dest="loglevel", + const=logging.DEBUG, default=logging.INFO) # JID and password options. -optp.add_option("--oldjid", dest="old_jid", - help="JID of the old account") -optp.add_option("--oldpassword", dest="old_password", - help="password of the old account") +parser.add_argument("--oldjid", dest="old_jid", + help="JID of the old account") +parser.add_argument("--oldpassword", dest="old_password", + help="password of the old account") -optp.add_option("--newjid", dest="new_jid", - help="JID of the old account") -optp.add_option("--newpassword", dest="new_password", - help="password of the old account") +parser.add_argument("--newjid", dest="new_jid", + help="JID of the old account") +parser.add_argument("--newpassword", dest="new_password", + help="password of the old account") -opts, args = optp.parse_args() +args = parser.parse_args() # Setup logging. -logging.basicConfig(level=opts.loglevel, +logging.basicConfig(level=args.loglevel, format='%(levelname)-8s %(message)s') -if opts.old_jid is None: - opts.old_jid = raw_input("Old JID: ") -if opts.old_password is None: - opts.old_password = getpass.getpass("Old Password: ") +if args.old_jid is None: + args.old_jid = input("Old JID: ") +if args.old_password is None: + args.old_password = getpass("Old Password: ") -if opts.new_jid is None: - opts.new_jid = raw_input("New JID: ") -if opts.new_password is None: - opts.new_password = getpass.getpass("New Password: ") +if args.new_jid is None: + args.new_jid = input("New JID: ") +if args.new_password is None: + args.new_password = getpass("New Password: ") -old_xmpp = sleekxmpp.ClientXMPP(opts.old_jid, opts.old_password) +old_xmpp = slixmpp.ClientXMPP(args.old_jid, args.old_password) # If you are connecting to Facebook and wish to use the # X-FACEBOOK-PLATFORM authentication mechanism, you will need @@ -98,7 +85,7 @@ if not roster: print('No roster to migrate') sys.exit() -new_xmpp = sleekxmpp.ClientXMPP(opts.new_jid, opts.new_password) +new_xmpp = slixmpp.ClientXMPP(args.new_jid, args.new_password) def on_session2(event): new_xmpp.get_roster() new_xmpp.send_presence() @@ -116,5 +103,5 @@ def on_session2(event): new_xmpp.disconnect() new_xmpp.add_event_handler('session_start', on_session2) -if new_xmpp.connect(): - new_xmpp.process(block=True) +new_xmpp.connect() +new_xmpp.process() |