Compare commits
2 Commits
273c4dead5
...
ccece73f92
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ccece73f92 | ||
|
|
e01bae2243 |
@@ -109,23 +109,44 @@ class GLPIAPI:
|
||||
}
|
||||
}
|
||||
uri = f"{self.Server}/apirest.php/Computer/"
|
||||
return requests.put(uri, headers=self.Headers, json=body)
|
||||
return requests.put(uri, headers=self.Headers, json=body)
|
||||
|
||||
def UpdateAirwatchLink(self, deviceid, airwatchlink):
|
||||
|
||||
body = {
|
||||
"input": {
|
||||
"id": deviceid,
|
||||
"appareilsurmagentafield": airwatchlink
|
||||
}
|
||||
}
|
||||
uri = f"{self.Server}/apirest.php/Computer/"
|
||||
return requests.put(uri, headers=self.Headers, json=body)
|
||||
uri = f"{self.Server}/apirest.php/PluginFieldsComputermdt"
|
||||
searchURI = f"{self.Server}/apirest.php/PluginFieldsComputermdt?range=0-999999999"
|
||||
result = requests.get(searchURI, headers=self.Headers)
|
||||
if(result.status_code == 200):
|
||||
result = result.json()
|
||||
fieldItem = None
|
||||
# searching for field item
|
||||
for entry in result:
|
||||
if str(entry["items_id"]) == deviceid:
|
||||
fieldItem = entry
|
||||
|
||||
if(fieldItem == None):
|
||||
body = {
|
||||
"input": {
|
||||
"items_id": deviceid,
|
||||
"itemtype": "Computer",
|
||||
"plugin_fields_containers_id": 4,
|
||||
"appareilsurmagentafield": airwatchlink
|
||||
}
|
||||
}
|
||||
return requests.post(uri, headers=self.Headers, json=body)
|
||||
else:
|
||||
body = {
|
||||
"input": {
|
||||
"id": fieldItem["id"],
|
||||
"appareilsurmagentafield": airwatchlink
|
||||
}
|
||||
}
|
||||
return requests.put(uri, headers=self.Headers, json=body)
|
||||
|
||||
def CreateInventoryForAirwatchDevice(self, device, deviceName, apps=None):
|
||||
platforms = {
|
||||
2:"Apple iOS",
|
||||
5:"Android",
|
||||
10:"Apple macOS",
|
||||
12:"Windows"
|
||||
}
|
||||
|
||||
|
||||
@@ -196,7 +196,7 @@ if(searchFilter != None):
|
||||
if(searchFilter == 'Id'):
|
||||
devices = [device for device in devices if getattr(device, "Id") == searchValue]
|
||||
else:
|
||||
devices = [device for device in devices if getattr(device, "searchFilter") == searchValue]
|
||||
devices = [device for device in devices if getattr(device, searchFilter) == searchValue]
|
||||
|
||||
for device in devices:
|
||||
if(device.EnrollmentStatus != 'Enrolled'):
|
||||
@@ -226,6 +226,7 @@ for device in devices:
|
||||
|
||||
inventory = glpiapi.CreateInventoryForAirwatchDevice(device, data["1"], apps)
|
||||
# Mise à jour du friendly name sur Airwatch
|
||||
print(device.PlatformId)
|
||||
platformName = inventory.operatingsystem["name"]
|
||||
osVersion = inventory.operatingsystem["version"]
|
||||
if(device.FriendlyName != f"{data['1']} {platformName} {osVersion} - {device.User}"):
|
||||
@@ -247,6 +248,7 @@ for device in devices:
|
||||
logger.info(f"Updating {deviceID} on GLPI")
|
||||
glpiapi.UpdateInventory(inventory.Json())
|
||||
|
||||
print(f"{data['70']} - {device.User}")
|
||||
if(data['70'] == None and device.User != settings["AIRWATCH"]["StagingUser"]):
|
||||
userID, userData, userCount = glpiapi.GetUser(device.User)
|
||||
if(userCount == 1):
|
||||
|
||||
Reference in New Issue
Block a user