通知画面

Jamf Connect には、Automated Device Enrollment (自動デバイス登録) 時にプログレスバーやカスタマイズされたテキスト、画像を表示した通知画面を含めることができます。通知画面は、コマンドをコントロールファイルに書き込むスクリプトにより構成されます。その後、このスクリプトを Script Path (スクリプトパス) (ScriptPath) 設定により指定することができます。

Jamf Pro を使用している場合、Notify Screen Log Style (通知画面のログスタイル) (NotifyLogStyle) 設定を jamf に構成することで、Jamf Pro からのポリシーログを読み取ってユーザに表示するように通知画面を構成することもできます。

通知画面の有効化と構成

通知画面を構成するには、以下の手順に従ってください:

  1. 次のコマンドを実行することにより、notify メカニズムを loginwindow アプリケーションに追加します。
    /usr/local/bin/authchanger -reset -JamfConnect -Notify
  2. Notify スクリプトを作成します。notify スクリプトはコントロールファイルに echo コマンドを書き込みます。コントロールファイルは以下のファイルパスに格納されます: /Var/tmp/depnotify.log 以下のスクリプトはその一例です。
    #!/bin/bash
    #variables
    NOTIFY_LOG="/var/tmp/depnotify.log"
    GIVEN_NAME=Archie
    
    echo "STARTING RUN" >> $NOTIFY_LOG # プログレスバーの増分数を定義します
    echo "Command: Determinate: 6" >> $NOTIFY_LOG
     
    #1 - ユーザ名とアニメーション付き紹介ウィンドウ
    echo "Command: Image: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/com.apple.macbookpro-15-retina-touchid-silver.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: ようこそ、$GIVEN_NAME 様 " >> $NOTIFY_LOG
    echo "Command: MainText: お使いの Mac は現在登録されており、自動的に構成が行われます。」>> $NOTIFY_LOG
    echo "Status: 新しい Mac のためいに準備しています...」>> $NOTIFY_LOG
    sleep 10
     
    #2 - ローカルアカウントのシングルサインオンパスワードの設定
    echo "Command: Image: /Applications/Utilities/Keychain Access.app/Contents/Resources/AppIcon.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: 複数のパスワードを記憶したくない場合: \n $GIVEN_NAME 様 " >> $NOTIFY_LOG
    echo "Command: MainText: 弊社の各サービスにログインできる Single Sign-On サービスを提供しています。
    メールアドレスとアカウントパスワードを使用して、すべての必要なアプリケーションにサインインできます。">> $NOTIFY_LOG
    echo "Status: ネットワークパスワードと同期する Mac のアカウントパスワードを設定しています...」>> $NOTIFY_LOG
    sleep 10
     
    #3 - Self Service により Mac の利用が楽になります
    echo "Command: Image: /Applications/Self Service.app/Contents/Resources/AppIcon.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: Self Service により Mac の利用が楽になります" >> $NOTIFY_LOG
    echo "Command: MainText: Self Service では、その他のアプリケーション用に便利なブックマークとインストーラを利用できます。」>> $NOTIFY_LOG
    echo "Status: Jamf Self Service のインストール>> $NOTIFY_LOG
    sleep 10
     
    #4 - 初日に必要なものがすべて揃います
    ###Jamf Triggers
    echo "Command: Image: /System/Library/CoreServices/Install in Progress.app/Contents/Resources/Installer.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: 初日に必要なものをすべてインストールする。」>> $NOTIFY_LOG
    echo "Command: MainText: 今すぐ必要なすべての App がすでにインストールされています。設定が完了すると、Microsoft Office、Slack、Zoom はすべて準備され、使用可能です。Dock から App を起動してご利用ください」>> $NOTIFY_LOG
    echo "Status: Microsoft Office をインストールしています...」>> $NOTIFY_LOG
    /usr/local/bin/jamf policy -event "InstallOffice"
    sleep 5
     
    #5 - Finishing up
    echo "Command: Image: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ApplicationsFolderIcon.icns" >> $NOTIFY_LOG
    echo "Status: Slack をインストールしています...」>> $NOTIFY_LOG
    /usr/local/bin/jamf policy -event "InstallSlack"
    sleep 5
    echo "Status: 終了しています...We're almost ready for you, $GIVEN_NAME" >> $NOTIFY_LOG
    sleep 3
     
    ###クリーンアップ
    sleep 3
    echo "Command: Quit" >> $NOTIFY_LOG
    sleep 1
    rm -rf $NOTIFY_LOG
     
    #6 - ログインウィンドウのプロセスから通知画面を無効化する
    /usr/local/bin/authchanger -reset -JamfConnect
  3. お好みの構成方法で、Script Path (スクリプトパス) (RunScript) 設定を使用して、スクリプトにファイルパスを指定します。詳しくは、構成 を参照してください。

Notify スクリプトコマンド

一般的コマンド

通知画面を表示する際に一般的に使用されるコマンドを以下に示します。

Image:

このコマンドはデフォルトの notify イメージを指定パスのイメージと置換します。イメージは正しいサイズに自動的に調整されます。

例:

Command: Image: /tmp/logo.png

MainText:
このコマンドは、ユーザに対して表示されるメインテキストを変更します。
例:

Command: MainText: 新しい MacBook Pro の設定中です。しばらくお待ちください。

MainTextImage:

このコマンドはメインテキストを指定パスのカスタムアイコンで置換します。イメージは最大 660 x 105 ピクセルであり、それに合わせて比例して拡大縮小できます。

例:

Command: MainTextImage: /tmp/logo.png

MainTitle:

このコマンドは、ユーザに対して表示されるメインタイトルを変更します。

例:

Command: MainTitle: Welcome to your new MacBook Pro

インタラクティブコマンド

インタラクティブコマンドは、notify プロセス中のユーザインタラクションをカスタマイズするために使用されます。
Determinate:
このコマンドは、プログレスバーを「決定的」なものにし、スピニングバーを表示せずに手順を踏んで進展するように設定します。Notify プロセス中に使用する手順の数を指定する必要があります。設定すると、スクリプトの各ステータスのアップデートにより、バーの値がワンステージごとに増えます。
例:

Command: Determinate: 5

DeterminateManual:
このコマンドは、プログレスバーを決定的なものにし、ステージコマンドではなく手動により進展させるように設定します。Notify プロセス中に使用する手順の数を指定する必要があります。設定すると、DeterminateManualStep: コメントを使用してステータスバーを手動で進展させる必要があります。
例:

Command: DeterminateManual: 5

DeterminateManualStep:
DeterminateManual: モードの場合、このコマンドはワン手順または指定の間隔でプログレスバーを進展させます。以下の例では、プログレスバーを 2 つの手順で移動しています。
例:

Command: DeterminateManualStep: 2

DeterminateOff:
このコマンドは、プログレスバーの決定的状態を無効にします。既に発生した手順はプログレスバーで完了済みのまま残ります。これにより、進捗状態を失うことなく、決定的状態と非決定的状態の間で移動を行うことができます。
例:

Command: DeterminateOff:

DeterminateOffReset:
プログレスバーの決定的状態をオフにした後、ゼロにリセットする必要があります。
例:

Command: DeterminateOffReset:

Quit
このコマンドは notify プロセスを終了します。
例:

Command: Quit

コロンはこのコマンドには使用されません。
ユーザを表示するために、メッセージを指定することもできます。
例:

Command: Quit: この app をご使用いただきありがとうございます。

ステータスアップデートの通知

Notify プロセスでユーザをアップデートするために、echo Status: を使用できます。以下はステータスアップデートの例です。

echo Status: Jamf >>/var/tmp/depnotify.log をインストール中
注:

Determinate: コマンドが使用されている場合、プログレスバーの値はステータスアップデートごとに増えます。

Jamf Pro を使用している場合、Notify Screen Log Style (通知画面のログスタイル) (NotifyLogStyle) 設定を jamf に構成することで、Jamf Pro からのポリシーログを読み取ってユーザに表示するように通知画面を構成することもできます。

通知画面のエンドユーザ環境

以下の画面は、Automated Device Enrollment (自動デバイス登録) 時に通知画面を有効にした場合に想定されるエンドユーザ環境を示しています。

  1. ユーザ名とアニメーション付き紹介ウィンドウ
  2. ローカルアカウントの Single Sign-On パスワードの設定
  3. Self Service により Mac の利用が楽になります
  4. 初日に必要なものをすべてインストールしています
  5. 終了