UCMA:与不在 AD 中的用户聊天

发布于 2024-11-05 14:10:33 字数 200 浏览 3 评论 0原文

客户希望为其应用程序网站启用聊天/即时通讯功能。他在内部使用 Lync Server 进行内部聊天。现在,他提出以下要求: 外部用户(不是AD用户)登录网站可以与公司内部的人员聊天。内部用户将通过其 lync 客户端接收这些消息。

实现这一目标的最佳方法是什么? 我想到了将消息从网络端委托给 lync 服务器来完成其余工作的机器人。但是我如何作为外部用户发送消息呢?

a customer wants enable a chat/instant messenger for his application webside. He is using Lync Server internally to Chat in-house. Now, he requires the following:
A external user (which will not be an AD user) logs into the webside is able to chat with a person inside the company. The internal user will receive those messages via his lync client.

What's the best way to achieve this?
i thought about bot that delegates messages from the webside to the lync server that does the rest. But how can i send a message as an external user?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

倾城花音 2024-11-12 14:10:33

解决此问题的常用方法是使用以下组件:

  1. 作为 ApplicationEndpoint 连接到内部 Lync 基础结构并管理与外部/内部用户的对话的机器人
  2. 通过 http 向外部用户公开方法的 Web 或 WCF 服务 - 这可能是内置于机器人中,或者可以是以某种方式与机器人通信的单独服务
  3. 用于呈现用户状态、允许点击呼叫、发起和显示对话等的 Web UI

例如,WCF 服务可以公开一个几个方法:

  1. GetPresence(targetSipUri) - 返回给定 uri 的状态值
  2. SendIM(targetSipUri, message) - 向给定 uri 发送 IM
  3. GetReplies() - 轮询任何响应

当您了解详细信息时,您可能需要更多方法 - 例如,生成一个对话令牌并将其传递可能是一个想法

Web UI 可以显示具有在线状态的联系人列表(GetPresence),然后允许用户单击状态联系人以启动新的对话窗口并发送初始消息 (SendIM),然后轮询服务以获取来自以下位置的任何回复联系人 (GetReplies) - 请注意,机器人必须在内部对回复进行排队,直到调用 GetReplies。

有些商业产品可能会满足您的需求 - 快速搜索 Lync webchat 应该会找到一些。另外,可能值得研究 Lync Web App,看看这是否适合您的客户

编辑:回答下面的评论 - 是的,您的内部用户将看到来自“我们的 Lync 机器人”的对话”。如果您不知道您的用户是谁(例如浏览购物网站的随机潜在客户),您可以从他们那里获取一些信息(名称、要讨论的产品等),并让机器人将其显示给内部用户,或者作为一部分IM 对话的内容,或作为对话窗口扩展中显示的对话上下文。

如果您的外部用户事先已知(例如注册客户),并且内部用户必须将对话视为来自他们,那么您将需要为每个对话创建一个 UserEndpoint - 但这将依赖于 AD 中的用户。

The usual way to approach this is with the following components:

  1. A bot that connects to the internal Lync infrastructure as an ApplicationEndpoint, and manages conversations with external/internal users
  2. A Web or WCF service that exposes methods over http to external users - this could be built into the bot, or could be a separate service that communicates with the bot in some way
  3. The web UI for presenting a users presence, allowing click-to-call, initiating and displaying a conversation etc

As an example, the WCF service could expose a few methods:

  1. GetPresence(targetSipUri) - returns a presence value for the given uri
  2. SendIM(targetSipUri, message) - sends an IM to the given uri
  3. GetReplies() - polls for any responses

When you get into the detail you might need more methods - e.g. it may be an idea to generate a conversation token and pass this around

The web UI could present a list of contacts with a presence status (GetPresence), then allow the user to click a presence contact to initiate a new conversation window and send the inital message (SendIM), then poll the service for any replies from the contact (GetReplies) - note, the bot will have to queue replies internally until GetReplies is called.

There are commercial products that might meet your needs - a quick search for Lync webchat should turn up a few. Also, it may be worth looking into the Lync Web App, to see if this works for your customer

Edit: In answer to the comment below - yes, your internal users will see a conversation from "Our Lync Bot". If you don't know who your users are (e.g. random potential customers browsing a shopping site), you can grab some info from them (name, product to discuss etc) and have the bot display this to the internal user, either as part of the IM conversation, or as conversation context displayed in a Conversation Window Extension.

If your external users are known in advance (e.g. registered customers), and the internal user MUST see the conversation as being from them, then you will need to create a UserEndpoint for each conversation - but this would rely on having the user in AD.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文