これにアプローチする通常の方法は、次のコンポーネントを使用することです。
- ApplicationEndpoint として内部 Lync インフラストラクチャに接続し、外部/内部ユーザーとの会話を管理するボット
- http を介して外部ユーザーにメソッドを公開する Web または WCF サービス - これはボットに組み込むことも、何らかの方法でボットと通信する別のサービスにすることもできます。
- ユーザー プレゼンスの表示、クリック ツー コールの許可、会話の開始と表示などを行うための Web UI
例として、WCF サービスはいくつかのメソッドを公開できます。
GetPresence(targetSipUri)
- 指定された uri のプレゼンス値を返します
SendIM(targetSipUri, message)
- 指定された uri に IM を送信します
GetReplies()
- 応答のポーリング
詳細に入ると、より多くのメソッドが必要になる場合があります。たとえば、会話トークンを生成してこれを渡すことが考えられる場合があります。
Web UI は、連絡先のリストとプレゼンス ステータスを表示し ( GetPresence
)、ユーザーがプレゼンス連絡先をクリックして新しい会話ウィンドウを開始し、最初のメッセージを送信できるようにし ( SendIM
)、連絡先からの返信がないかサービスをポーリングします ( GetReplies
) - GetReplies が呼び出されるまで、ボットは返信を内部的にキューに入れる必要があることに注意してください。
あなたのニーズを満たす商用製品がありますLync webchat
。また、 Lync Web Appを調べて、これが顧客に役立つかどうかを確認することも価値があるかもしれません
編集:以下のコメントへの回答 - はい、内部ユーザーには「私たちの Lync ボット」からの会話が表示されます。ユーザーが誰であるかがわからない場合 (例: ショッピング サイトを閲覧しているランダムな潜在顧客)、ユーザーから情報 (名前、議論する製品など) を取得し、ボットにこれを内部ユーザーに表示させることができます。 IM 会話の、または会話ウィンドウ拡張機能に表示される会話コンテキストとして。
外部ユーザーが事前にわかっていて (登録済みの顧客など)、内部ユーザーが会話をそのユーザーからのものとして認識しなければならない場合、会話ごとに UserEndpoint を作成する必要がありますが、これはユーザーが AD にいることに依存します。