3. Accessing Data for Electric Power, Temperature, and Processor Utilization
Express5800/R120f-2E, T120f Maintenance Guide
218
Chapter 3 Appendix
Sub get2complement(raw, rv, bit)
Select Case bit
case 4:
If raw And &h8 Then
rv = 0 - ((&h10 - raw) and &h0f)
Else
rv = raw
End If
case 8:
If raw And &h80 Then
rv = 0 - ((&h100 - raw) and &h0ff)
Else
rv = raw
End If
case 10:
If raw And &h200 Then
rv = 0 - ((&h400 - raw) and &h3ff)
Else
rv = raw
End If
End Select
End Sub
Sub GetIDString(rv_ls, rv_ms, rc_ls, rc_ms)
Dim tmpMessage
Dim outsdridstringtype
oinparams.networkfunction = &ha
oinparams.lun = 0
oinparams.responderaddress = &h20
oinparams.command = &h23
oinparams.requestdata = array(rv_ls, rv_ms, rc_ls, rc_ms, 47, 1)
oinparams.requestdatasize = 6
set outsdridstringtype = oipmi.execmethod_("requestresponse",oinparams)
Dim outsdridstring
Dim idlength, j
idlength = outsdridstringtype.ResponseData(3) and 31
oinparams.networkfunction = &ha
oinparams.lun = 0
oinparams.responderaddress = &h20
oinparams.command = &h23
oinparams.requestdata = array(rv_ls, rv_ms, rc_ls, rc_ms, 48, idlength)
oinparams.requestdatasize = 6
set outsdridstring = oipmi.execmethod_("requestresponse",oinparams)
tmpMessage = " ID String = "
For j = 3 to id 2
tmpMessage = tmpMessage & Chr(outsdridstring.ResponseData(j))
Next
WScript.Echo tmpMessage
End Sub
'End Script
•
Execution example
C:¥VBS> cscript //nologo Sensor.vbs
•
Execution result
===========================================
ID String = Baseboard Temp4
Sensor Type = Temperature
Current Value = 45 degrees C
===========================================
ID String = FntPnl Amb Temp
Sensor Type = Temperature
Current Value = 27 degrees C
===========================================
ID String = CPU1_DIMM1 Temp
Sensor Type = Temperature
Current Value = 35 degrees C
===========================================
ID String = CPU1_DIMM2 Temp
Sensor Type = Temperature
Event Status: Unavailable
===========================================
Intake air temperature data is obtained from the sensor with an ID string that contains any of the following:
Amb
,
Ambient
, or
Front Panel
.
In the case of the sample above, the data is obtained from a sensor that contains
FntPnl Amb Temp
in its ID,
with a resulting intake air temperature of 27
°
C.