Office Communications Server

Office Communicator Web Access を使用して常に連絡を取れるようにする

Greg Stemp、Jean Ross

 

概要:

  • Communicator Web Access によって拡張される Office Communicator
  • Communicator Web Access の機能
  • Communicator Web Access の構成と要件に関する概要
  • Communicator Web Access に追加されるオフライン状態

前もってご了承いただきたいのですが、これからする話は、今までに書かれたどの話よりも悲しい話です。ですが、これは語られる必要のある話です。1 人の執筆者が 7 歳になったとき、両親は彼のために誕生日パーティを開くことにしました。先に進む前に言っておきましょう。この執筆者は病気になったことがありません。実を言うと、1999 年以降は、お腹を壊したことすらないのです。

頭痛ですか。ええ、確かに頭痛には毎日のように見舞われますが、マイクロソフトに勤務しているのだから仕方ありません。

ところが、7 歳の誕生日パーティが開かれる日、この哀れな少年は、目を覚ますと重い病気にかかっていました。パーティは午前中に開かれる予定だったので、もうキャンセルする時間もなく、子供たちは皆集まっていました。それどころか、子供たちはゲームをしたり、ホットドッグや誕生日ケーキを食べたりしていました。一方執筆者は、2 階のベッドに横たわったまま、あまりの具合の悪さにこのお祭り騒ぎを見に来ることさえできませんでした。起き上がれるようになった頃には、パーティは終わり、ケーキは食べられ、いくつかのプレゼントは (パーティのお客さんに遊んでもらうために) 開けられていました。

ああ、泣かないでください。涙を拭いて、鼻をかんで、それから先に進みましょう。

Office Communications Server についてよくご存知であれば、執筆者がこのずいぶん前の誕生日にどのようなことを感じたか、はっきりとおわかりになるでしょう。

何年前のことでしょうか。7 歳に戻るということは、ええと、16 年前ですね (おおよそですよ)。

ご存知だと思いますが、Office Communications Server はすばらしい製品であり、その功績の大部分は、インスタント メッセージングと "プレゼンス" 機能を提供するためにマイクロソフトからリリースされた Office Communicator によるものです (プレゼンスとは、オンラインであるかどうか、およびオンラインの場合は会話可能であるかどうかを他のユーザーに知らせる機能です)。Office Communicator が世界の歴史における最も優れた発明であると言っているわけではありません。いえ、違いますね。Office Communicator は世界の歴史における最も優れた発明です。それぐらいすばらしい製品です。

ただし、1 つ問題があります。

どのような問題かと言うと、たとえば、皆さんが出張中の営業担当者で、アイオワ州デモインにあるホテルに滞在しているとします。この場合、滞在している部屋から Office Communicator を使用できるでしょうか。もちろんできます。その部屋から仮想プライベート ネットワーク (VPN) 接続を確立できればの話ですが。また、Outer Mickmacklestan の現場を訪れていて、少し先のインターネット カフェからログオンするとします。この場合、そのカフェから Office Communicator を使用できるでしょうか。もちろんできます。ただし、インターネット カフェのコンピュータに Office Communicator がインストールされていて、そのコンピュータが社内ネットワークに接続されている必要があります。その確率はどれほどかわかりませんが、あまり高くないと思います。

また、次のようなシナリオについて考えてみましょう。7 歳の誕生日に、両親から Linux のコピーをもらったとします (うーん…ありがとうお父さんお母さん)。Linux を実行している場合、Office Communicator を使用できるでしょうか。たずねるまでもありませんね。

結局のところ、Office Communicator ほど優れた製品でも、単純にすべてのユーザーが使用できるわけではありません。社内ネットワークにアクセスできなければ、Office Communicator は使用できません。また、Linux を実行している場合や、企業がコンピュータを "ロックダウン" することを決定し、Web ブラウザや指定された 2、3 種類のアプリケーションに使用を制限した場合も、Office Communicator は使用できません。つまり、他の子供たちがインスタント メッセージを交換し、お互いのプレゼンスを確認し、Office Communicator のコピーがあれば送料が無料になる誕生日ケーキを食べているとき、2 階のベッドに横たわり、その声を耳にすることしかできません (送料が無料にならないコピーもあるかもしれませんが)。また、その状況でできることは何もないのです。

まあまあ、泣かないでください。また錆びてしまいますよ (ご参考までに、これは「オズの魔法使い」の台詞と掛けました)。いいですか、ちょっとした秘密をお教えします。これによっておそらく何かできるようになるでしょう。実は、ここで Microsoft Office Communicator Web Access 2007 R2 が登場します。

では、単なる製品以上の役割を果たす Microsoft Office Communicator Web Access 2007 R2 とは何でしょうか。これ以降は、単に Communicator Web Access と呼びます ("Communicator Web Access" でもまだ長くて言いにくいですが、一番良い "Microsoft Bob" はもう使われてしまっています)。一言で言えば、Communicator Web Access はちょっとした素敵なソフトウェアで、次のような Office Communicator の機能の多くが提供されます。

  • インスタント メッセージを送受信する機能。さらに良い点として、この機能を使用すると、組織内のユーザーとテキスト メッセージを交換できるだけでなく、Yahoo!、AOL、Windows Live などの一般的なインスタント メッセージング サービスのアカウントを持つユーザーともインスタント メッセージを交換できます。実は、この後説明するちょっとしたテクニックを使用すると、インスタント メッセージング アカウントやインスタント メッセージ ソフトウェアを一切持っていないユーザーともインスタント メッセージを交換できます。まるで魔法みたいですね。
  • プレゼンスを設定する (連絡可能、取り込み中、応答不可、一時退席中、退席中) 機能と他のユーザーのプレゼンスを確認する機能。あるユーザーにインスタント メッセージを送信し、そのユーザーがオフラインであるか丸一日講習会に参加していて返事をもらえないことよりも悪いことが存在するでしょうか (戦争、疫病、飢え、死、ですか。確かにそれらも悪いことですが、返事をもらえないことほど深刻ではないと思います)。Communicator Web Access を使用すれば、このような問題は起こりません。Communicator Web Access では、他のユーザーがオンラインであるかどうか、および連絡可能であるかどうかが一目でわかります (可能な連絡手段はインスタント メッセージまたは電話です。また、Communicator Web Access では電話会議も設定できます)。
  • "デスクトップを共有する" 機能。これはどういうことでしょうか。具体的に言えば、自分のコンピュータで発生する動作を、インスタント メッセージング セッションに参加しているすべてのユーザー (1 つのインスタント メッセージング セッションには 32 人ものユーザーが参加できます) が確認できるよう構成する機能です。すべてのユーザーに PowerPoint スライド ショーを見せたい場合、それも可能です。自分のデスクトップを共有し、スライド ショーを開始すれば、自分の画面上に表示されるスライド ショーをすべてのユーザーが見ることができます。また、これらのユーザーが Outer Mickmacklestan からアクセスしているかどうかや、アクセスに使用するコンピュータに Microsoft Office がインストールされているかどうかは問題ではありません。スライド ショーは公開者のコンピュータ上で実行され、他のユーザーはただ座ってそれを見ていればよいのです。
  • 自分のコンピュータを実際に他のユーザーに制御させたくない場合、この機能を使用します。Communicator Web Access では、自分のコンピュータ上で、他のユーザーが各自のマウスとキーボードを使用して、プログラムの実行とデータの入力を行うことを許可できます。

ここでも何か問題があるのでしょうか。もちろん、常にある問題が付きまといます。結局のところ、これらの機能は、サポートされている Web ブラウザ、およびインターネット接続という 2 つの条件を満たしていなければ使用できません。

まさかと思うかもしれませんが、そのとおりです。この 2 つの要件が唯一の問題です。実行しているオペレーティング システムは Microsoft Windows ですか。問題ありません。あとは Internet Explorer 6.0 Service Pack 2 以降があれば、Communicator Web Access を使用できます。Macintosh OS 10 を実行している場合も、Safari 1.3 以降または Firefox 3.0 以降があれば大丈夫です。Red Hat Linux を実行している場合は、Firefox 3.0 が必要です。このような要件を挙げたらきりがありません。

ですが、アイオワ州デモインにあるホテルの部屋や、Outer Mickmacklestan のインターネット カフェについてはどうでしょうか。問題ありません。先ほど言ったように、Communicator Web Access を使用するために必要なのは、インターネット接続のみです。インターネットに接続し、Web ブラウザを起動すれば、Communicator Web Access を使用できます。そして、インスタント メッセージを送信したり、連絡先のプレゼンスを確認したり、デスクトップを共有したりできるようになります。

fig01.gif

図 1 Communicator に表示された連絡先

そうでした、1 つおまけがあります。先ほどそれとなく言いましたが、Office Communicator と Communicator Web Access のどちらでも、連絡先を構成できます。連絡先とは、単によく連絡を取るユーザーのことです。Office Communicator または Communicator Web Access を起動すると、連絡先とそれらのプレゼンスがすぐに表示されます (図 1 参照)。

図に表示されている連絡先は、共同執筆者と彼自身の 2 人だけです。誕生日パーティの後、この執筆者はまったく優しさを受けることなく生きてきたようです。

ご覧のとおり、連絡先と連絡先リストによって、オンラインのユーザーとそうでないユーザーが一目でわかり、インスタント メッセージも簡単に送信できます。これを行うには、単純に連絡先の名前を右クリックし、[インスタント メッセージの送信] をクリックします。

これも優れた機能ですが、先ほど言ったおまけではありません。何がおまけかと言うと、Office Communicator と Communicator Web Access が連絡先リストを共有することです。今までは、本社に戻り、律儀に Office Communicator を使用して連絡先リストを作成していたのですか。それも良いでしょう。これからは、出張先でも Communicator Web Access を実行して連絡先リストにアクセスできます。その逆も可能です。

どうですか? 言ったとおり優れた機能でしょう。

もちろん、こう思うかもしれません。"うーん、わかりません。その、Outer Mickmacklestan のことです。Outer Mickmacklestan からログオンすると、セキュリティに関する問題が発生するのではないでしょうか"

信じられないかもしれませんが、答えはノーです。Communicator Web Access は、HTTPS と SSL 経由で実行するように構成できるので、これを行うことによって、すべてのインスタント メッセージング セッションを暗号化し、セキュリティで保護できます。

また、多くのインスタント メッセージには頭字語がよく使用されるので、そのままでも十分わかりにくいと言えます。たとえば、IBRB (すぐ戻ります) や 2G2BT (その話は出来すぎだ) などがあります。もちろん、不滅の BJJDI (ビリー ジョエルの車が来た) も。私たちの知っている限り、最後の頭字語が何を意味するかを知っている人は世界で 1 人もいません。おそらく Outer Mickmacklestan で使用されている表現なのでしょう。

Communicator Web Access を使用すれば、組織内のユーザーとインスタント メッセージを交換したり、Windows Live などの一般的なインスタント メッセージング サービスのアカウントを持つユーザーとインスタント メッセージを交換したりできることは納得がいきます。ですが、一体全体どうやって、インスタント メッセージ アカウントをまったく持たないユーザーとインスタント メッセージを交換できるというのでしょうか。

先ほど言ったように、これにはちょっとしたテクニックが必要です。ランダムに選択されたいずれかのユーザーにインスタント メッセージを送信することはできません。通常、セッション開始プロトコル (SIP) アカウントを持たないユーザーにインスタント メッセージを送信することはできません。これは、住所を持たない人に手紙を出そうとするようなものです。ただし、こちら側からセッションを開始し、次のような手順を実行すれば、SIP アカウントを持たないユーザーともインスタント メッセージを使用して会話できます。

  1. Communicator Web Access にログオンし、[Meet Now] (会話の開始) ボタンをクリックします。これにより、会話ウィンドウが開かれ、自分が唯一の参加者として表示されます (自分と会話する場合は、ここまでの手順を実行するだけでかまいません)。
  2. 会話ウィンドウで、[Invite] (招待) ボタンの横にある矢印をクリックし、[Invite Using E-mail] (電子メールによる招待) をクリックします。これにより、Communicator Web Access によって、次のようなメッセージが生成されます。
    Greg Stemp has invited you to a conversation using Microsoft Office Communicator Web Access. To join the conversation, click the following link: (Greg Stemp から、Microsoft Office Communicator Web Access を使用した会話への招待を受けました。会話に参加するには、次のリンクをクリックします)
    imdf.microsoft.com/Join?uri=sip%3Agstemp%40microsoft.com%3Bgruu%3Bopaque%3Dapp%3Aconf%3Afocus%3Aid%3AKK75ASPD6VCW6VA92NCMWB70641P7PGX&key=29FUUQUS9TED
  3. URL をコピーして電子メール メッセージに貼り付け、Communicator Web Access を実行できる任意のユーザーにそのメッセージを送信します。メッセージを受信したユーザーは、その URL を Web ブラウザに貼り付け、Communicator Web Access の [conference join] (会議への参加) ページにアクセスします。インスタント メッセージング アカウントやその他の SIP アカウントを持っていない場合でも、このページからインスタント メッセージング セッションに参加できます。

もちろん、次のように思うかもしれません。"それはいいとしても、本当の問題があるでしょう。たとえば、この Communicator Web Access の環境を設定および構成することがどの程度難しいかについて、なぜ説明してくれないのですか"

実は、これには相応の理由があります。この Communicator Web Access の環境を設定および構成することは、まったく難しくないわけではありません。まず、Active Directory フォレスト内のいずれかのコンピュータで、Office Communications Server 2007 R2 を実行する必要があります (ただし、これはまったく驚くようなことではありません。暮らしに何か良いものを取り入れたいのであれば、Active Directory フォレスト内のいずれかのコンピュータで Office Communications Server 2007 R2 を実行する必要があるのです)。また、64 ビット版の Windows Server 2003 または Windows Server 2008 を実行する、専用のコンピュータも必要です。

気になる方のために言っておくと、1 台の Communicator Web Access サーバーでは、数千セッションの同時接続を処理できます (正確な数字は多くの要因によって決まりますが、ここでは詳しく説明しません)。ユーザー数がこれを上回る場合はどうすればよいでしょうか。問題ありません。その場合は、ハードウェア ロード バランサを用意し、すべてのユーザーの処理に必要と思われる台数から成る、一連の Communicator Web Access サーバー群を構成します。

その後は、Communicator Web Access のインストールとライセンス認証を行うだけです。このプロセスには、実に数分しかかかりません (30 分を超えないことは確実です)。それが終わったら、次は 1 台または 2 台の仮想サーバーを作成します。

ここではそれほど技術的な話はしません。インターネット インフォメーション サービスの仮想サーバー (これがここで説明する "仮想サーバー" です) は、単にユーザーが Communicator Web Access へのログオンに使用する Web サイトとして機能します。仮想サーバーの作成は難しい作業ではなく、ウィザードのプロセスに従ってすべてのページを作成できます (ウィザードと言っても本物の魔法使いではなく、ソフトウェアのウィザードです)。ただしここでも、ほんのいくつかですが、考えることがあります。

そうですね、わかっています。考えることがあるとはだれも言いませんでしたね。少なくとも、ここまでは。

では、何について考える必要があるのでしょうか。1 つは、サイトで使用する接続プロトコルを決める必要があります。このプロトコルは、HTTPS とこれより安全性の低い HTTP のいずれかから選択します (ヒントは、それほど悩む必要はないということです)。また、認証メカニズムも選択する必要があります。Communicator Web Access では、統合 Windows パスワード認証やフォーム ベース認証など、組み込みの認証方法を使用できます (統合 Windows パスワード認証では、コンピュータへのログオンに使用したものと同じ資格情報を使用してログオンできます。フォーム ベース認証では、ユーザー名とパスワードを提供してログオンする必要があります)。また、カスタムの認証方法も使用できます (たとえば、スマート カードと PIN 番号を使用してログオンするよう要求できます)。Outlook Web Access と Microsoft Internet Security and Acceleration Server (ISA) 2006 を使用する場合は、シングル サインオン認証も使用できます。この場合、Outlook Web Access にログオンすれば、自動的に Communicator Web Access にもログオンしたことになります。

また、作成する各仮想サーバーを内部ユーザー (組織のファイアウォールの内側からログオンするユーザー) 用と外部ユーザー (組織のファイアウォールの外側からログオンするユーザー) 用のどちらにするかを決める必要があります。Communicator Web Access の認証では、ファイアウォールの内側からログオンするユーザーと外側からログオンするユーザーの扱いがやや異なります (ただし、ユーザーがログオンした後の動作はすべて同じです)。たとえば、内部ユーザーは、コンピュータへのログオンに使用したものと同じ資格情報を使用してログオンできます。これは、自動的に Communicator Web Access にログオンできることを意味します。ただし、外部ユーザーにはこの動作が適用されず、常にユーザー名とパスワードを提供することが求められます。

気になる方のために言っておくと、答えはこうです。そのとおり、これらの条件が意味するのは、内部ユーザーと外部ユーザーの両方が存在する場合、Communicator Web Access を実行するコンピュータが 2 台必要になることです。1 台は内部ユーザーの処理、もう 1 台は外部ユーザーの処理に使用します。複雑になってもかまわない場合は、1 台のコンピュータで内部用仮想サーバーと外部用仮想サーバーを兼ねることも可能ですが、セキュリティ上の理由から、このような構成は使用しないことを強くお勧めします。

fig02.gif

図 2 実際はオンラインでも、オフラインと表示するように状態を設定できます

確かにこの説明は、Communicator Web Access の構成に関する概要としては、やや大ざっぱです。ご想像のとおり、DNS レコードや証明書、Active Directory 関連のアクセス許可なども考慮する必要があります。ただし、Windows ドメインを管理した経験が少しでもあれば、どれもそれほど大変な作業ではありません。さらに、これらの作業は、「Communicator Web Access 2007 R2 の展開」というドキュメントでかなり詳しく説明されています。

今日の締めくくりに、皆さんに本当のことを正直に言う必要があります。先ほど誕生日パーティの話をしたときは、少し内容を出し惜しみしました。実は、この話は先ほどお伝えしたものよりも、もっと悲しい話です (一度にすべて話すには衝撃的すぎると思ったのです)。その年、幼い執筆者が誕生日に欲しがったものは 1 つだけです。それは、Communicator Web Access のプレゼンスをオフラインに設定する機能です。彼は両親に言いました。"そんな機能があったら最高だろうな。実際にはオンラインで、Communicator Web Access を使って作業し、メッセージを送受信することもできるけど、僕の状態を確認したユーザーは皆、僕がオフラインだと思うんだ。これこそ子供が一番喜ぶプレゼントだよ"

悲しいことに、この哀れな少年の願いがかなうことはありませんでした (両親は、その理由について、当時は Communicator Web Access のようなものがなかったからだと言っていました)。その日から、彼は他の子供たちにはこのような失望を経験させまいと心に決めました。その思いを胸に、システム管理者がオフライン状態を Communicator Web Access に追加して、この願いをかなえる手順を次に示します (図 2 参照)。

  • Communicator Web Access サーバーで、Regedit を起動し、HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Communicator キーに移動します。
  • EnableAppearOffline という新しい DWORD 値を作成し、値を 1 に設定します。

これで準備完了です。この Communicator Web Access サーバーにログオンするすべてのユーザーは、追加された状態オプションを使用できるようになります。

お母さん、お父さん。この記事を読めばわかるよね。僕の願いをかなえるのはそれほど難しいことではなかったでしょう。

話のついでですが、Communicator Web Access では、管理者がソフトウェアをカスタマイズするためのさまざまな方法が提供されます。たとえば、管理者は、コードを記述したり、プログラミング言語を学習したりする必要なく、次の操作を行うことができます。

  • Communicator Web Access のカスタム サインオン ページを作成します。
  • Communicator Web Access クライアントのウィンドウに一連のカスタム タブを追加します。
  • Communicator Web Access クライアントのメニューにカスタム メニューを追加します。
  • インスタント メッセージングの会話ウィンドウにユーザーへの通知を表示します。

どうですか。すばらしいでしょう。だまされたと思って、ユーザーが新しいインスタント メッセージング セッションを開始するたびに、会話ウィンドウに "Instant messaging provided by Fabrikam, Inc." (Fabrikam, Inc. からのインスタント メッセージです) という通知を表示する次の単純な VBScript スクリプトを試してみてください。

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & _
    strComputer & _
    "\root\default\rtccwa_repository")

Set colWMISettings = objWMIService.ExecQuery _
    ("Select * from MSFT_CWASiteSetting")

For Each objWMISetting in colWMISettings
    objWMISetting.UserNotice = & _
        "Instant messaging provided by Fabrikam, Inc."
    objWMISetting.Put_
Next

今月はこれで終わりです。想像がつくと思いますが、記事は出版日のかなり前に執筆する必要があります。今回の記事は 12 月に執筆しています。つまり、驚くべきことに、もうすぐ執筆者の誕生日です (来年プレゼントを送ってくださる皆さん、12 月 18 日ですからね)。彼は長年にわたるトラウマを乗り越え、今年は誕生日を祝ってもらうことができるでしょうか。次のように言っておきましょう。この執筆者の誕生日パーティが開かれる日など、絶対に来ません。

大方の予想に反して、Greg StempJean Ross は、マイクロソフトに勤務しています。