def main(argv): URL = "https://xx-csa.bbcollab.com" COMMAND = '' ALL = False AUTH = False SESSION = False RECORDING = False CONTEXT = False USER = False CLEANUP = False usageStr = "\nCollabRestDemo.py -t|--target <target root URL> -c|--command <command>\n" usageStr += "e.g CollabRestDemo.py -t www.collabserver.com -c authorize." if len(sys.argv) > 1: #there are command line arguments try: opts, args = getopt.getopt(argv,"ht:c:",["target=","command="]) except getopt.GetoptError: print (usageStr) sys.exit(2) for opt, arg in opts: if opt == '-h': print (usageStr) sys.exit() elif opt == '-d': print ("Deleting at end of run.") CLEANUP = True elif opt in ("-t", "--target"): URL = arg.lstrip() elif opt in ("-c", "--command"): COMMAND = arg else: COMMAND = "Run All" print ('[main] Target is:', URL) print ('[main] Command is:', COMMAND) else: print(usageStr) sys.exit(2) #Set up some booleans for processing flags and order of processing if "context" in COMMAND: print("[main] Run context command") CONTEXT = True elif "user" in COMMAND: print("[main] Run user command") USER = True elif "recording" in COMMAND: print("[main] Run recording command") RECORDING = True elif "session" in COMMAND: print("[main] Run session command") SESSION = True elif "authorize" in COMMAND: print("[main] Run authorization command") AUTH = True else: print("[main] Empty Command: Run All\n") ALL = True print ('\n[main] Acquiring auth token...\n') authorized_session = AuthToken(URL) authorized_session.setToken() print ('\n[main] Returned token: ' + authorized_session.getToken() + '\n') if not AUTH: #run commands in required order if running ALL if USER or ALL: user_object = Users(URL, authorized_session.getToken()) #process user command print("\n[main] Run user command: " + ('ALL' if ALL else COMMAND) + '...') user_object.getUsers(authorized_session.getToken()) user_object.createUser(authorized_session.getToken()) user_object.patchUser(authorized_session.getToken()) user_object.putUser(authorized_session.getToken()) user_object.getUser(authorized_session.getToken()) if SESSION or ALL: #process Sessions command print("\n[main] Run sessions command: " + ('ALL' if ALL else COMMAND) + '...') session_object = Sessions(URL, authorized_session.getToken()) session_object.getSessions(authorized_session.getToken()) session_object.createSession(authorized_session.getToken()) session_object.patchSession(authorized_session.getToken()) session_object.putSession(authorized_session.getToken()) session_object.getSession(authorized_session.getToken()) session_object.getInstances(authorized_session.getToken()) session_object.enrollModerator(user_object.getUserId(),authorized_session.getToken()) session_object.readModeratorUrl(authorized_session.getToken()) if RECORDING or ALL: #process Recordings command print("\n[main] Run recording_object command: " + ('ALL' if ALL else COMMAND) + '...') recording_object = Recordings(URL, authorized_session.getToken()) recording_object.getRecordings(authorized_session.getToken()) if CONTEXT or ALL: #process course command print("\n[main] Run Context command: " + ('ALL' if ALL else COMMAND) + '...') context_object = Contexts(URL, authorized_session.getToken()) context_object.getContexts(authorized_session.getToken()) #clean up if not using individual commands if ALL: print('\n[main] Completing Demo and deleting created objects...') #print ("[main] Deleting Session") session_object.deleteSession(authorized_session.getToken()) print ("[main] Deleting User") user_object.deleteUser(authorized_session.getToken()) else: print("\nRemember to delete created demo objects!") print("[main] Processing Complete")