Add requests checking
This commit is contained in:
		
							parent
							
								
									e848a938df
								
							
						
					
					
						commit
						b32d38338b
					
				
							
								
								
									
										2
									
								
								dist/vdiclient.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/vdiclient.json
									
									
									
									
										vendored
									
									
								
							@ -1,6 +1,6 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
	"upgrade_guid" : "46cbad92-353e-4b28-9bee-83950991dad8",
 | 
						"upgrade_guid" : "46cbad92-353e-4b28-9bee-83950991dad8",
 | 
				
			||||||
	"version" : "1.2.02",
 | 
						"version" : "1.2.03",
 | 
				
			||||||
	"product_name" : "VDI Client",
 | 
						"product_name" : "VDI Client",
 | 
				
			||||||
	"manufacturer" : "Josh Patten",
 | 
						"manufacturer" : "Josh Patten",
 | 
				
			||||||
	"name" : "VDI Client",
 | 
						"name" : "VDI Client",
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										63
									
								
								vdiclient.py
									
									
									
									
									
								
							
							
						
						
									
										63
									
								
								vdiclient.py
									
									
									
									
									
								
							@ -210,6 +210,9 @@ def getvms(listonly = False):
 | 
				
			|||||||
	except proxmoxer.core.ResourceException as e:
 | 
						except proxmoxer.core.ResourceException as e:
 | 
				
			||||||
		win_popup_button(f"Unable to display list of VMs:\n {e!r}", 'OK')
 | 
							win_popup_button(f"Unable to display list of VMs:\n {e!r}", 'OK')
 | 
				
			||||||
		return False
 | 
							return False
 | 
				
			||||||
 | 
						except requests.exceptions.ConnectionError as e:
 | 
				
			||||||
 | 
							print(f"Encountered error when querying proxmox: {e!r}")
 | 
				
			||||||
 | 
							return False
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def setvmlayout(vms):
 | 
					def setvmlayout(vms):
 | 
				
			||||||
	layout = []
 | 
						layout = []
 | 
				
			||||||
@ -221,7 +224,6 @@ def setvmlayout(vms):
 | 
				
			|||||||
	layoutcolumn = []
 | 
						layoutcolumn = []
 | 
				
			||||||
	for vm in vms:
 | 
						for vm in vms:
 | 
				
			||||||
		if not vm["status"] == "unknown":
 | 
							if not vm["status"] == "unknown":
 | 
				
			||||||
			print(vm)
 | 
					 | 
				
			||||||
			vmkeyname = f'-VM|{vm["vmid"]}-'
 | 
								vmkeyname = f'-VM|{vm["vmid"]}-'
 | 
				
			||||||
			connkeyname = f'-CONN|{vm["vmid"]}-'
 | 
								connkeyname = f'-CONN|{vm["vmid"]}-'
 | 
				
			||||||
			resetkeyname = f'-RESET|{vm["vmid"]}-'
 | 
								resetkeyname = f'-RESET|{vm["vmid"]}-'
 | 
				
			||||||
@ -521,35 +523,38 @@ def showvms():
 | 
				
			|||||||
		if (datetime.now() - timer).total_seconds() > 5:
 | 
							if (datetime.now() - timer).total_seconds() > 5:
 | 
				
			||||||
			timer = datetime.now()
 | 
								timer = datetime.now()
 | 
				
			||||||
			newvmlist = getvms(listonly = True)
 | 
								newvmlist = getvms(listonly = True)
 | 
				
			||||||
			if vmlist != newvmlist:
 | 
								if newvmlist:
 | 
				
			||||||
				vmlist = newvmlist.copy()
 | 
									if vmlist != newvmlist:
 | 
				
			||||||
				vms = getvms()
 | 
										vmlist = newvmlist.copy()
 | 
				
			||||||
				layout = setvmlayout(vms)
 | 
										vms = getvms()
 | 
				
			||||||
				window.close()
 | 
										if vms:
 | 
				
			||||||
				if G.icon:
 | 
											layout = setvmlayout(vms)
 | 
				
			||||||
					window = sg.Window(G.title, layout, return_keyboard_events=True, finalize=True, resizable=False, no_titlebar=G.kiosk, size=(G.width, G.height), icon=G.icon)
 | 
											window.close()
 | 
				
			||||||
				else:
 | 
											if G.icon:
 | 
				
			||||||
					window = sg.Window(G.title, layout, return_keyboard_events=True,finalize=True, resizable=False, no_titlebar=G.kiosk, size=(G.width, G.height))
 | 
												window = sg.Window(G.title, layout, return_keyboard_events=True, finalize=True, resizable=False, no_titlebar=G.kiosk, size=(G.width, G.height), icon=G.icon)
 | 
				
			||||||
				window.bring_to_front()
 | 
					 | 
				
			||||||
			else: # Refresh existing vm status
 | 
					 | 
				
			||||||
				newvms = getvms()
 | 
					 | 
				
			||||||
				for vm in newvms:
 | 
					 | 
				
			||||||
					vmkeyname = f'-VM|{vm["vmid"]}-'
 | 
					 | 
				
			||||||
					connkeyname = f'-CONN|{vm["vmid"]}-'
 | 
					 | 
				
			||||||
					state = 'stopped'
 | 
					 | 
				
			||||||
					if vm['status'] == 'running':
 | 
					 | 
				
			||||||
						if 'lock' in vm:
 | 
					 | 
				
			||||||
							state = vm['lock']
 | 
					 | 
				
			||||||
							if state in ('suspending', 'suspended'):
 | 
					 | 
				
			||||||
								window[connkeyname].update(disabled=True)
 | 
					 | 
				
			||||||
								if state == 'suspended':
 | 
					 | 
				
			||||||
									state = 'starting'
 | 
					 | 
				
			||||||
						else:
 | 
											else:
 | 
				
			||||||
							state = vm['status']
 | 
												window = sg.Window(G.title, layout, return_keyboard_events=True,finalize=True, resizable=False, no_titlebar=G.kiosk, size=(G.width, G.height))
 | 
				
			||||||
							window[connkeyname].update(disabled=False)
 | 
										window.bring_to_front()
 | 
				
			||||||
					else:
 | 
									else: # Refresh existing vm status
 | 
				
			||||||
						window[connkeyname].update(disabled=False)
 | 
										newvms = getvms()
 | 
				
			||||||
					window[vmkeyname].update(f"State: {state}")
 | 
										if newvms:
 | 
				
			||||||
 | 
											for vm in newvms:
 | 
				
			||||||
 | 
												vmkeyname = f'-VM|{vm["vmid"]}-'
 | 
				
			||||||
 | 
												connkeyname = f'-CONN|{vm["vmid"]}-'
 | 
				
			||||||
 | 
												state = 'stopped'
 | 
				
			||||||
 | 
												if vm['status'] == 'running':
 | 
				
			||||||
 | 
													if 'lock' in vm:
 | 
				
			||||||
 | 
														state = vm['lock']
 | 
				
			||||||
 | 
														if state in ('suspending', 'suspended'):
 | 
				
			||||||
 | 
															window[connkeyname].update(disabled=True)
 | 
				
			||||||
 | 
															if state == 'suspended':
 | 
				
			||||||
 | 
																state = 'starting'
 | 
				
			||||||
 | 
													else:
 | 
				
			||||||
 | 
														state = vm['status']
 | 
				
			||||||
 | 
														window[connkeyname].update(disabled=False)
 | 
				
			||||||
 | 
												else:
 | 
				
			||||||
 | 
													window[connkeyname].update(disabled=False)
 | 
				
			||||||
 | 
												window[vmkeyname].update(f"State: {state}")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		event, values = window.read(timeout = 1000)
 | 
							event, values = window.read(timeout = 1000)
 | 
				
			||||||
		if event in ('Logout', None):
 | 
							if event in ('Logout', None):
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user