ディスクの問題をチャットボットで改善する
開始するために、一般的なチャットボットの使用事例に関する以下のNQLの例を確認してください。
従業員に基本的なトラブルシューティングを提供するために、従業員デバイスに関するNexthinkデータを活用して、基本的なデバイス情報を取得し、ディスク問題を修正するための修復を開始します。
前提条件
Nexthinkとあなたのチャットボットを統合する前に、以下の項目が揃っていることを確認してください。
Nexthinkライセンス
管理者権限
API技術を用いたユーザー-チャットボット間の対話の設計
従業員とチャットボット間の対話の標準化された手順を設計し、各ステップで使用するAPI技術を定義します。 以下の表はこの例の対話ステップを示しています。
ステップ 1: 通信の認証
API資格情報を構成し、APIを介してトークンを収集します。
ステップ 2: デバイスの識別
NQL APIを使用して、チャットボットがusername
に基づいてデバイスを識別できるようにします。 または、Data Exporterを使用します。
ステップ 3: デバイスの診断
NQL API(またはData Exporter)を使用して、デバイスのパフォーマンスデータを取得し、Get Startup ImpactおよびGet Battery Statusのリモートアクションの出力を取得します。
ステップ 4: 問題の解決
Remote Action APIを使用して、ユーザーのデバイスでDisk Cleanupリモートアクションを実行します。
ステップ 5: 修正後のフォローアップ
NQL APIを利用して修復の状況と詳細を取得し、修復結果をユーザーに知らせます。
テクノロジーの選択は、現在Nexthink機能をどのように使用しているか、およびライセンスで利用可能な制限によって決まります。 Nexthink Infinityのしきい値と制限の概要ドキュメントページを参照して詳しい情報を取得し、API制限などについて確認してください。
Nexthinkで
NexthinkのwebインターフェースでAPI機能を設定します。 Nexthinkは、一覧にある順序に従うことを推奨しており、いくつかの機能は相互に依存しています。 それでも、異なるソリューションの間を自分の好みに応じてナビゲートする柔軟性があります。
データ収集リモートアクションの設定
Nexthink Libraryから以下のリモートアクションをインストールしてください:
Get Startup Impact 
Get Battery Status
実行を毎日行うようにスケジュールします。 詳細についてはリモートアクションの管理を参照してください
このステップを完了した後、次のステップで使用するために、両方のリモートアクションのNQL IDを保存してください。
NQL ID:
get_startup_impact_windows
get_battery_status
修復用リモートアクションの設定
Nexthink LibraryからDisk Cleanupリモートアクションをインストールします。 すでにインストールされている場合は、それをコピーして次のように構成します:
リモートアクションのトリガーとしてAPIを選択します。
デフォルトの入力パラメーターの値をチャットボットのニーズに合わせて設定します。 以下のDisk Cleanupリモートアクションの入力パラメーター表を参照してください。
Disk Cleanupリモートアクションの入力パラメーター
DiskCleanupCampaignId
キャンペーンを表示したい場合は、ライブラリキャンペーンdisk_cleanup_invoke
を使用します。
キャンペーンの確認ポップアップを表示したくない場合は、値 00000000-0000-0000-0000-000000000000 を入力してください。
CleanupCompletedCampaignId
キャンペーンを表示したい場合は、ライブラリキャンペーンdisk_cleanup_completed
を使用します。
キャンペーン通知ポップアップを表示したくない場合は、値 00000000-0000-0000-0000-000000000000 を入力してください。
RemoveFilesNotModifiedInDays
ライブラリのデフォルト値 (7)
MaximumDelayInSeconds
ライブラリのデフォルト値 (30)
CleanupLevel
クリーンアップレベル(軽度か深度)を選択します。
このフィールドはキャンペーンを使用せず、従業員がクリーンアップレベルの選択に関与する場合にのみ機能します。 そうでなければ、従業員の選択が優先されます。
このステップが完了したら、次のステップで使用するためにリモートアクションのNQL IDを保存してください。
NQL ID: disk_cleanup
NQL APIクエリの作成
設計されたシナリオに基づいて、3つのNQL APIクエリを作成する必要があります:
ユーザーの
username
に基づいてデバイスを取得する(ステージ1: デバイスの識別)。現在のトピックについての診断を行うためにデバイスデータを取得する(ステージ2: デバイスの診断)。
リモートアクションのステータスと結果を取得する(ステージ4: 修正後のフォローアップ)。
各NQL APIクエリの詳細を参照してください。
このステップが完了したら、次のステップで使用するためにすべてのNQL APIクエリのNQL IDを保存してください。
NQL ID:
#get_device_basic_infos
#diagnose_device_bad_health
#get_remote_action_result
API資格情報の作成
チャットボットとの安全な通信を確立するために、NexthinkのwebインターフェースでAPI資格情報を作成します。 PermissionsセクションでRemote Actions APIとNQL APIを選択します。 詳細についてはAPI資格情報を参照してください。
このステップを完了したら、Nexthink webインターフェースで資格情報を作成する際に取得したClient IDおよびClient Secretを保存してください。
チャットボットのサービスレイヤーで
Nexthink内で必要なAPI機能をすべて構成したら、チャットボットのサービスレイヤー内でAPIコールを実装に移ることができます。 以下のステップはユーザー-チャットボット間の対話設計を反映しています。
ステップ 1: 通信の認証
以下のAPIコールを実行する前に、有効な認証トークンを取得する必要があります。 有効なOAuthトークンを取得する方法については、Nexthink Nexthink Developerドキュメントをご参照ください。
ステップ 2: デバイスの識別 
従業員(ユーザー) 「デバイスに問題があります」
デバイスを識別するために、以前に作成した#get_device_basic_infos
NQL APIクエリを使用します(参照:ユーザーのusername
に基づいてデバイスを取得する)。
ステップ 3: デバイスの診断
(チャットボット) 「以下のデバイスを見つけましたが、どのデバイスに問題がありますか?」
(1) ラップトップ XN1231242-2142 (Lenovo)
(2) ラップトップ XCX124231-1231 (Apple)
従業員(ユーザー) 「1」
デバイス情報を取得するために、以前に作成した#diagnose_device_bad_health
NQL APIクエリを使用します(参照: 現在のトピックについての診断を行うためにデバイスデータを取得する)。
前のステップからの入力
ステップ 2: デバイスの識別 でデバイス名を取得しました。
ステップ4:問題の修正
(チャットボット) 「ありがとうございます。デバイスには約2GBの空きディスクスペースしか残っていないことがわかりました。」
「不要なファイルを削除して速度低下を防ぐことができます。」
「実行してもよろしいでしょうか?」
社員(ユーザー) 「はい」
リモートアクションAPIを使用して、前のステップで設定したディスククリーンアップのリモートアクションを実行し、問題を修正します(参照:リモートアクションの修正設定)。
前のステップからの入力
#diagnose_device_bad_health
NQL API(またはデータエクスポート)を通じてステップ3:デバイスの診断でcollector.uid
を取得しました。
ステップ5:修正のフォローアップ
(チャットボット) 「修正を開始しました。 短い時間で終わるはずです。」
以前に作成した#get_remote_action_result
NQL API クエリを使用して、リモートアクションのステータスと結果を取得します。
(参照:リモートアクションのステータスと結果を取得する)。
Nexthinkは、APIでリモートアクションをトリガーしてから1分以上経ってからリモートアクションの結果を取得するよう推奨しています。
前のステップからの入力
リモートアクションAPIコールを通じてステップ4:問題の修正でrequest_id
を取得しました。
会話を終了します
このステップで取得したリモートアクションの status
と output
を表示します。
(チャットボット) 「すべて完了しました - 1.3GBのスペースを解放しました。」 他にお手伝いできることはありますか?」
Nexthink Flow を使用してチャットボット統合を設定する
お使いの会社が Nexthink Flow を購入している場合、前のセクションで説明したすべての診断と修正を実行し、チャットボットや他のサードパーティソリューションでロジックをプログラミングせずに、ワークフロー内で完全にプロセスを編成するワークフローを設定できます。
APIを呼び出してリアルタイムのフィードバックを提供するために コネクタ と サービスAPI Thinklets を使用します。
特定のサードパーティAPIが再開するまで待機するために APIリスナー Thinklet を使用します。
Flow API でワークフローをトリガーします。
詳細については、ワークフロー のドキュメントページを参照してください。
事前構築されたコンテンツ
チャットボット統合を開始するのに役立つ、典型的なチャットボット会話で使用できるトピックの例を見つけてください。 各トピックには以下が含まれます:
必須データ収集リモートアクション。 本セクションで紹介されるすべてのリモートアクションは、Nexthinkライブラリで利用可能であり、事前に設定する必要があります:
データ収集リモートアクションには、トリガータイプ スケジュール がアクティブであり、必要な頻度に応じて、収集スケジュールを毎時または毎日に設定する必要があります。
修正リモートアクションには、トリガータイプ API がアクティブである必要があります。 詳細については、リモートアクションの管理 ドキュメントを参照してください。
診断NQLクエリ。
診断クエリの結果を解釈するためのロジック。
各診断に対する可能な修正。
デバイス名を事前に特定しておくことを前提に、エンドツーエンドの使用例と同様のフローを使用して例を実装できます。
一般的なクエリ
エンドツーエンドの使用例で示されているように、すべての使用例で役立つ2つの基本的なタスクを実行するために一般的なクエリを設定する必要があります:
ユーザーのデバイスを取得する
クエリID:#get_device_basic_infos - ユーザー名
に基づいての一致
別の方法での使用に合わせて、where句| where user.name == $username
を調整できます。例を以下に示します:
ユーザーのUPNを知っている場合:
| where user.upn == $upn
(UPNをCollectorレベルでアクティブ化する必要があります)ユーザーのメールアドレスを知っている場合:
| where user.ad.email_address == $email
(Azure ADコネクタをアクティブ化し、メールフィールドを同期する必要があります)デバイス名を知っている場合:
| where device.name == $device_name
7日間以外の期間にユーザーがアクティブだったデバイスを考慮したい場合、タイムフレームを調整してください。
Nexthinkテナントの最大データ保持期間である30日間まで、past 7d
の両方の句を希望の時間枠に置き換えてください。
修正リモートアクションのステータスと出力を取得します
クエリID:#get_remote_action_result
Microsoft Outlookの問題
従業員にMicrosoft Outlookの不具合を引き起こす問題を診断する。
プラットフォーム
Microsoft Windows
データ収集リモートアクション
データ収集リモートアクションをスケジュール:
Microsoft Outlookをオンラインにする
Microsoft Outlookプラグインのクラッシュ詳細を取得します
NQLクエリ
クエリID: #diagnose_outlook_issues
修正リスト
IF
remote_action.get_outlook_online_windows.execution.outputs.IsOnline
="No"
andremote_action.get_outlook_online_windows.execution.status
="success"
THEN リモートアクション修復を実行 Outlookオンラインに設定IF
remote_action.get_outlook_plugin_crash_details_windows.execution.outputs.CrashedPluginList
!="["-"]"
THEN リモートアクション修復を実行 Outlookプラグインを設定IF
device.boot.days_since_last_full_boot
>10
THEN 従業員にマシンの再起動を推奨。IF
outdated_office_packages
="1"
THEN Run remediation remote action Repair Office 365付加的な一般的修正: リモートアクション修復を実行 Outlook OSTの問題を修復
Microsoft OneDriveの問題
Microsoft OneDriveに関連する問題を診断し、システムが問題を検出したときにOneDriveを修復します。
プラットフォーム
Microsoft Windows
データ収集リモートアクション
データ収集リモートアクションのスケジュール:
OneDriveのステータスを取得
NQLクエリ
クエリID: #diagnose_onedrive_issues
修正リスト
IF
remote_action.get_onedrive_status.execution.outputs.OneDriveStatus
が次のいずれかを含んでいる場合:OneDrive はインストールされていません
OneDrive はインストールされていますが実行されていません
OneDrive 環境変数が存在しません
OneDrive フォルダーが存在しません
THEN リモートアクション修復を実行 OneDrive を修復
遅いPCの問題
エンドポイントの遅さを引き起こす典型的な問題の幅広い範囲を診断します。
プラットフォーム
Microsoft Windows
データ収集リモートアクション
データ収集リモートアクションのスケジュール:
GPO起動インパクトを取得
起動インパクトを取得
NQLクエリ
クエリID: #diagnose_slow_pc_issues
修正リスト
IF
device.boot.days_since_last_full_boot
>10
THEN 従業員にマシンの再起動を推奨。IF
free_space_GB
<=6
THEN リモートアクション修復を実行 ディスククリーンアップIF
remote_action.get_startup_impact_windows.execution.outputs.HighImpactCount
> 0 THEN リモートアクション修復を実行 スタートアップメニューからのアプリケーションの無効化remote_action.get_startup_impact_windows.execution.outputs.HighImpactApplications
の値を使用して高影響アプリケーションを無効にするIF
remote_action.get_gpo_startup_impact_windows.execution.outputs.UserGpoAppliedTimeInSeconds
+remote_action.get_gpo_startup_impact_windows.execution.outputs.UserGpoDCDiscoveryInSeconds
> 10 THEN リモートアクション修復を実行 グループポリシー設定を更新IF
outdated_office_packages
="1"
THEN Run remediation remote action Repair Office 365
関連トピック
Last updated