はじめに
SCCMのSMS_CollectionMemberClientBaselineStatusクラスを使用して、デバイスのオンライン状態をVBScriptから取得します。
以下の記事で使用している「Connect」Functionプロシージャを使用する前提で記載します。
デバイスコレクション内のデバイスのオンライン状態を取得する
- 実行行方法
set Connection = Connect("サーバー名","ユーザー名"."パスワード")
call SCCM_CollectionMemberClientBaselineStatus_Query(connection,CollectionID)
Sub SCCM_CollectionMemberClientBaselineStatus_Query(connection,CollectionID)
Set oResults = connection.ExecQuery("Select * from SMS_CollectionMemberClientBaselineStatus Where CollectionID='" & CollectionID &"' and baselinetype=1")
'Query WMI for SMS_CollectionMemberClientBaselineStatus
'baselinetype 1:実稼働 2:実稼働前
For Each oResourceID In oResults
Wscript.echo oResouceID.ResourceID & "," & oResouceID.Name & "," & oResouceID.CNIsOnline
Next
if err.number<>0 then
Wscript.echo "取得できませんでした"
Exit Sub
End If
If oResults.count = 0 then
Wscript.echo "クエリ結果は0件です"
End If
End Sub
このスクリプトでは、SCCM Configration Manager コンソールのデバイスに表示されるアイコンと同じ状態になります
デバイスはオンラインです | |
デバイスはオフラインです | |
オンライン状態は不明です | |
デバイスにクライアントがインストールされていません |
参考記事