For loop, ping, file check, log
import datetime
import time
import os
import glob
import pyodbc
import smtplib
# Revolution Design Workflow 2016
COMPS = ['\\\\ws780',
'\\\\ws782',
'\\\\ws821',
'\\\\ws824',
'\\\\ws847',
'\\\\ws857',
'\\\\ws864',
'\\\\ws867',
'\\\\ws869',
'\\\\ws872',
'\\\\ws877',
'\\\\ws878',
'\\\\ws882',
'\\\\ws883'
]
rootC = '\\\\c$'
programFiles = '\\\\Program Files (x86)\\\\Revolution Design\\\\Workflow'
programData = '\\\\ProgramData\\\\Autodesk\\\\Revit\\\\Addins\\\\2016\\\\workFlow.addin'
logPath = 'D:\\\\Autodesk\\\\scripts\\\\RevolutionDesignWorkflow\\\\log.log'
for comp in COMPS:
compName = comp[2:]
response = os.system("ping -n 1 " + compName)
if response == 0:
print('Machine is online')
addinDir = os.path.isdir(comp + rootC +programFiles)
addinFile = os.path.exists(comp + rootC + programData)
with open(logPath, "a") as logger:
timestamp = ' Timestamp:{:%Y-%b-%d %H:%M:%S}'.format(datetime.datetime.now())
logger.write(compName + timestamp + '\n')
logger.write(str(addinDir) + '\n')
logger.write(str(addinFile) + '\n')
else:
print('Machine is not online')
with open(logPath, "a") as logger:
timestamp = ' Timestamp:{:%Y-%b-%d %H:%M:%S}'.format(datetime.datetime.now())
logger.write(compName + timestamp + ' not online' + '\n')