# PRTG-UPSMAN # # HTTP Push Sensor zum Auslesen der UPSMAN Data CSV und Übergabe der Daten an PRTG # # 20170514 Ver1.0 FC Initiale Version param ( $URL = 'http://192.168.178.11:5050/upsman1?content=', $csvfile = 'C:\Program Files (x86)\UPS\upsman\UpsData.csv' ) write-host 'PRTGPush: USPMAN Start' set-psdebug -strict Write-host 'Loading CSV-File' $data=$null $data=(import-csv $csvfile)[-1]   if ($data) { } else { write-host 'No Data Found' } write-host 'preparing XML' #DATE : 05/14/2017 #TIME : 00:58:52 #INPUT VOLT : 237.30 #INPUT FREQUENCY Hz : N/A #INPUT CURRENT : N/A #INPUT POWER : N/A #OUTPUT VOLT : 237.30 #OUTPUT CURRENT : N/A #OUTPUT FREQUENCY Hz : 50.00 #OUTPUT LOAD : 20.00 #BATTERY VOLTAGE : 26.70 #BATTERY RUNTIME : 0 #TEMPERATURE C? : N/A #BATTERY CAPACITY : 100.00 #AUTONOMY TIME : 34.02 #BYPASS VOLTAGE : N/A #BYPASS CURRENT : N/A #BYPASS FREQUENCY Hz : N/A $prtgresult = ' Eingangsspannung '+$data.'INPUT VOLT'+' 1 Ausgangsspannung '+$data.'OUTPUT VOLT'+' 1 Ausgangslast '+$data.'OUTPUT LOAD '+' 1 Batteriespannung '+$data.'BATTERY VOLTAGE'+' 1 Batteriekapazität '+$data.'BATTERY CAPACITY '+' 1 Autonomiezeit '+$data.'AUTONOMY TIME'+' 1 ' #$prtgresult write-host 'Sending Data' $Answer=Invoke-Webrequest ` -method 'GET' ` -URI ($URL+$prtgresult) if ($answer.Statuscode -ne 200) { write-warning 'Request to PRTG failed' exit 1 } write-host 'PRTGPush: USPMAN End'