与 Google App Engine 连接的即时 XMPP 客户端

On-the-fly XMPP client to connect with Google App Engine

查看 App Engine 的 XMPP 文档 https://cloud.google.com/appengine/docs/go/xmpp/

似乎 Google 只提供了一个 客户端 来托管在 appengine 上,而不是 XMPP 服务器本身。为此,需要使用不同的主机(例如 GTalk)

  1. 我理解正确吗?
  2. 如果是,这是否意味着如果我想要即时的基于会话的客户端,我必须托管我自己的 xmpp 服务器(ejabbered)?
  3. 如果这也是真的 - 那么 ejabbered 中是否有一种机制用于轻量级基于会话的客户端? (即许多要快速创建和销毁 - 只需要在会话期间响应出席请求,永远不会再次使用)
  4. 是否有稳定的、可扩展的主机可以为我做这件事,这样我就不必担心 ejabbered 服务器出现故障(无论它是托管在 AWS、GCE 等上。AppEngine 的美妙之处所以我从来不用担心这个)

谢谢!

解决您的问题:

  1. 我理解正确吗?

您以前必须使用 Google Talk XMPP 服务,但我想,是的,现在您需要部署自己的服务器。

  1. 如果是,这是否意味着如果我想要即时的基于会话的客户端,我必须托管我自己的 xmpp 服务器(ejabbered)?

不确定 "on-the-fly" 会话是什么意思,但是是的,看来您需要自己的服务器。

  1. 如果这也是真的 - 那么 ejabbered 中是否有一种机制用于基于会话的轻量级客户端? (即许多要快速创建和销毁 - 只需要在会话期间响应出席请求,永远不会再次使用)

不确定你的意思。 XMPP 是一种连接协议。这意味着会话链接到打开 TCP 连接。也就是说,ejabberd SaaS 允许在您丢失连接(专为移动设备设计)时保持会话一段时间。您可以简单地重新连接到它。 顺便说一句:在 XMPP 中,您不需要 "respond to presence request"。这是相反的:你的存在被广播到你的联系人(花名册)

  1. 是否有稳定的、可扩展的主机可以为我做这件事,这样我就不必担心 ejabbered 服务器出现故障(无论它是托管在 AWS、GCE 等上。AppEngine 的美妙之处所以我从来不用担心这个)

使用 ejabberd 最简单(也可以说是最便宜)的方法是使用 ejabberd SaaS,由 ejabberd 的开发人员 ProcessOne 管理(我是 ejabberd 的开发人员和 ProcessOne 的创始人)。