Apple端末:チェックインと接続
3. Apple端末のチェックインの仕組み
3-3. チェックイン要求が端末に届かない ==> 端末からチェックインがない
4-2. 構成プロファイルが「インストールの保留中」になる原因
5-1. 端末に「接続」させるには
1. 2種類のアクセス動作
iPhone、iPad、macOSコンピュータ(以下、Apple端末)とMobiControlサーバとの間では、(図2)に示したように、 送受するべき多くの種類のオブジェクトがあります。
Apple端末は、通常MobiControlサーバと接続していません。従って、時間が経つと、サーバ側/端末側の双方に、送信待ちのオブジェクトが滞留します。
Apple端末が、MobiControlサーバにアクセスする動作には、 チェックインと接続の2種類があります。 「チェックイン」と「接続」では、送受するオブジェクトの種類が異なります。(図1)
「チェックイン」と「接続」の送受の仕組みは、異なります。このページでは、その送受の仕組みを、説明します。 オブジェクトの送受が、うまくいかなかった場合の原因と対処方法について、ご理解ください。 「チェックイン」の実行主体は、MDMプロトコルです。MDMプロトコルは、OSの一部分としてバンドルされています。
「接続」の実行主体は、MobiControlエージェントです。MobiControlエージェントは、Appストアのアプリの1つであり、端末のMobiControl登録後にインストールします。 「チェックイン」では、送受が終わると、セッションは切断されます。 「接続」は、「接続」のための端末アプリを起動することで始まります。そのアプリを終了する、又は、端末がスリープ状態になると、セッションは切断します。
Apple端末以外の端末では、「チェックイン」も「接続」もMobiControlエージェントが、実行主体です。また、「接続」をしていないと、「チェックイン」はできません。2. Apple端末とMobiControlサーバとの間で送受されるオブジェクト
Apple端末とMobiControlサーバとの間で、送受されるオブジェクトを、(図2)に示しました。送受の仕組みによって、 これらのオブジェクトを、A類、B類、C類に分けてあります。
A類とB類は、「チェックイン」の時に送受され、C類は、「接続」の時に送受されます。(図2)
3. A類のオブジェクトが送受されるまで
APNsとチェックインの仕組み
端末宛に送信したいオブジェクトがあっても、MobiControlサーバからは、端末に向けての直接的なアクセスはしません。これはセキュリティ上の理由です。 そこで、端末側からアクセスさせることを、端末に要求する仕組みが、APNs(Apple Push Notification service)経由のチェックインです。 APNsは、Appleが運営するクラウドサービスです。(図3)
ルールとは何かについては、ルールを作成を参照ください。
(図3)で示されたオブジェクトの送受の仕組みについて、説明します。
(図4)
- ① MobiControlサーバは、各端末グループ単位で、更新スケジュールを内蔵しています。
MDMに登録したApple端末のMDMプロトコルは、APNsに、常時接続しています。(図3)のオブジェクトを送受するには、APNs経由で、チェックイン要求を端末に送ります。 チェックイン要求には、自動的に行われる「定期的なチェックイン要求」と、コンソールオペレータが関与する「非定期的なチェックイン要求」 の2種類があります。
②a 定期的なチェックイン要求
サーバの更新スケジュールの時刻になると、MobiControlサーバは、チェックインをするようにとの要求を、 APNs経由で、端末に送ります。
このチェックイン要求は自動で行われます。コンソールや端末での操作は不要です。 更新スケジュールの設定は、「更新スケジュールの設定」を参照ください。デフォルトでは 2時間間隔となっています。②b 非定期的なチェックイン要求
コンソールで、対象端末群を選んでから、チェックインボタンを押します。
(図5)
(図6)端末がAPNsと接続していれば、端末がロック中またはスリープ中でも、チェックイン要求は、端末に届きます。
チェックインでの伝送途中でも、コンソールでの端末一覧での、端末アイコンは、オフライン のままです。になるのは チェックインでなく「接続」のときです。
(図7)
チェックインのプロセスが終わると、端末はオフラインになります。(図4)の状態に戻ります。
- ③ チェックインをするようにとの要求を受けたMDMプロトコルは、MobiControlサーバにアクセスし、チェックイン(httpsコール)をします。
チェックインを受けると、MobiControlサーバと端末との間で、 送信待ちのデータやファイルが、直接、送受されます。
チェックインは、端末が、ロック中やスリープ中でも、実施されるので、オブジェクトの送受は、ロック中やスリープ中でも実施されます。3-1. サーバから端末へは、今すぐ送れる
- ルールの展開
ルールを作成したり、更新したりしたあとに、それをすぐに端末に展開したい場合は、 (図6)のチェックインボタンを押してください。3-2. 端末からサーバへは、更新スケジュール次第
3-3. チェックイン要求が端末に届かない ==> 端末からチェックインがない
(図8)(図5)と(図6)は、MobiControlサーバからのチェックイン要求が、端末に届いた例です。 しかし、残念ながら、そのチェックイン要求が、端末に届かない場合があります。 その根本的な理由は、常時接続しているはずの、端末からAPNsへの接続がオフラインになっている場合があります。 この場合は、端末からMobiControlサーバへのチェックインが実行されません。 (図8)の状態になる原因とその対処については、「D. 構成プロファイルを受信できなかった端末のログ」を参照ください。 更新スケジュールを、デフォルトの2時間間隔としておくと、(図5)による チェックインは2時間間隔で、行われます。 逆に言えば、2時間経過しても、チェックインをしてこない端末は、(図8)の状態になっていると、判断されます。
端末からのチェックインがない場合、A類のオブジェクトは、サーバ及び端末各々に、滞留します。 しかし、再びチェックインができるようになってからの、「定期的チェックイン要求」または、「非定期的チェックイン要求」 で、チェックインが再開したときに、送信されます。(図8)のような状態になった端末を、放置しておくことは、望ましくありません。 下記のページを参照して、永らくチェックインしてこない端末を見つけるようにしてください。4. B類のオブジェクトが送信されるまで
(図9)
B類のオブジェクトとは何かについては、次のリンク先のページを参照ください。
- 構成プロファイル
リモートビュー、リセット、初期化、OSアップデート強制など
- 端末への働きかけ
(図10)
構成プロファイルは、コンソールで、送信対象の端末群の割り当てをした直後に、チェックイン要求を、APNs経由で端末に送ります。 「端末への働きかけ」や、「macOSコンピュータへのスクリプト送信」は、コンソールで「OK」ボタンを押した直後に APNs経由で、チェックイン要求を端末に送ります。 端末がAPNsと常時接続していれば、端末がロック中またはスリープ中でも、チェックイン要求は、端末に届きます。
(図11)
チェックイン要求があれば、端末のMDMプロトコルは、MobiControlサーバにチェックイン(httpsコール)をします。 そして、B類のオブジェクトは、端末に直接送られます。 端末がロック中またはスリープ中でも、送られます。4-1. 端末がロック中の場合、構成プロファイルは、「インストールの保留」になる
(図12)
端末はロック中でも、構成プロファイルを受信しますが、それをインストールはしません。 構成プロファイルは、端末内で、保留されたままになります。
端末のロックを解除すれば、構成プロファイルは、自動的にインストールされます。4-2. 端末が、APNsと通信ができない場合、構成プロファイルは、サーバ内で「インストールの保留」になる
(図13)端末が、APNsと通信ができない場合、APNsは、端末に対しチェックイン要求を送れません。 端末は、MobiControlサーバに対しチェックインをしません。 MobiControlサーバは、チェックインがないと、構成プロファイルを送りません。
構成プロファイルは、(図14)のように、MobiControlサーバに滞留することになります。 もし、端末が、APNsとの通信を再開すると、次回のチェックインのときに、構成プロファイルは 端末に送られます。 構成プロファイルが、「インストールの保留中」になったとき、端末のステータスは、(図12)か(図14)のどちらかです。 「インストールの保留中」の構成プロファイルを抱えた端末のステータスが、(図12)か(図14)のどちらかを見分けるには、 「プロファイル "インストールの保留中"への対処」を参照ください。 また、端末が、APNsと通信ができなくなる原因と、その対処についても、 「構成プロファイルを受信できなかった端末のログ」を参照ください。 (図14)のような状態になった端末を、放置しておくことは、望ましくありません。 下記のページを参照して、永らくチェックインしてこない端末を見つけるようにしてください。(図14)
5. C類のオブジェクトを送る
端末からサーバに「接続」をする
(図15)
端末ユーザが、端末を、MobiControlサーバに「接続」させると、C類のオブジェクトを送信します。
- 端末のステータス情報(b)とは、次を指します。
コンソールの 「端末の詳細」タブを開くと、該当端末に関する多くのステータス情報が記されています。 「端末の詳細」タブに表示されているステータス情報の中で、上記の b、c、d、e以外は、 ステータス情報(a)です。ステータス情報(a)は、 (図5)または(図6)のチェックイン要求をしたときに、端末から送られてきます。
- 端末の地理的位置情報
- IPアドレス
- バッテリ空き容量
- 総メモリと書込可能なメモリ容量
- 脱獄(JailBreak)しているかどうか
- 通信費管理ルールに基づく使用データ量
- コンテンツライブラリー
MobiControl管理者が、サーバの「コンテンツライブラリ」に格納したファイルを、 端末ユーザは、任意にダウンロードし、閲覧できます。- ファイルの送受
MobiControlサーバから、端末のDocumentsフォルダにファイルを送ります。端末のMobiControlエージェントを起動し、項目「コンテンツライブラリ」 を開くと、そのファイルを、端末で開くことができます。
端末で、そのファイルを編集し、保存すると、Documentsフォルダに保存されます。 端末からのアップロードのファイル同期ルールを作成してあれば、次回の「接続」の時に、そのファイルがサーバに送られます。他の端末でそれをダウンロードして、 ファイルの共有ができます。- 端末画面のリモートビュー
コンソールに端末画面を表示できます。リモート表示 を参照ください。5-1. 端末からサーバに「接続」させる
iPhoneとiPadでの MobiControlエージェントによる接続は、端末ユーザの操作が必要です。次のいずれかを実行して貰います。端末で上記アプリを起動中は、「接続」状態が続きます。アプリを終了すれば、切断します。また、端末がスリープ状態になっても、切断します。 端末が接続状態だと、コンソールでの端末一覧で、端末アイコンは になります。 端末が、MobiControlサーバに「接続」をし、切断するまでは、(図16)のようにログに表示されます。
- をタップ して、MobiControlエージェントを起動する。
- コンソールから送ったメッセージを開く。 コンソールからメッセージを送信すると、端末画面にポップアップ表示されます。メッセージを開くと、MobiControlエージェントが起動します。
- SOTI Surfを起動する。SOTI Surfは、ブラウザです。
- SOTI Hubを起動する。SOTI Hubは、リポジトリサーバへアクセスするためのアプリです。
- SDK for iOSを組み込んだアプリを起動する。
(図16)
(図13)と見比べてください。ログ文章が異なります。
5-2. エージェントレス端末
C類のオブジェクトを、サーバに送るには、端末に、MobiControlエージェントをインストールしておきます。 Apple端末用のMobiControlエージェントは、Appストアにあります。 アプリカタログルールに、MobiControlエージェントを加えて、端末にインストールしておくようにしてください。 C類のオブジェクトを、サーバに送る必要がない場合は、 MobiControlエージェントをインストールする必要はありません。このような端末を、エージェントレス端末と呼びます。(図17)
コンソールの「端末の詳細」タブを開くと、(図12)のような表示があります。
「エージェントなし」の値が、「はい」となっている端末は、エージェントレス端末です。5-3. 端末の過去の位置を地図表示
端末が、「接続」している場合は、その現在の地理的位置を、コンソールで地図表示できます。 「接続」していない場合は、現在位置を表示できません。次善策として、直近の位置の表示します。 MobiControlエージェントは、フォアグラウンドで起動していなくても端末が移動するたびに、バックグラウンドで、 端末の地理的位置情報を収集し、端末内に保存しています。 そして、端末が「接続」をすると、MobiControlサーバにまとめて送信します。
端末の過去の位置は、次のスキームで、コンソールで地図表示されます。
(図18)
また、日時を指定して、Google Mapにその時刻の端末の位置を表示できます。「あの日、あの時」に、どこに居たかがわかります。 「接続」が、最近に行われていると、より最近の位置を地図表示できます。その為には、頻繁に「接続」させる工夫が必要です。 「5-1. 端末からサーバに「接続」させる」を参照ください。 端末ユーザが、「接続」を終了した後は、再び、端末内での位置収集を再開します。接続をしない限り、それらの位置情報はサーバに送られません。 端末が「接続」していれば、勿論、現在位置を地図表示できます。
オフラインの端末の最近の位置を地図表示するには、「Apple 端末の位置表示」を参照ください。