如何在 google talk 中使用 wokkel:(error twisted.words.protocols.jabber.sasl.SASLNoAcceptableMechanism)

Posted

技术标签:

【中文标题】如何在 google talk 中使用 wokkel:(error twisted.words.protocols.jabber.sasl.SASLNoAcceptableMechanism)【英文标题】:How to use wokkel with google talk: (error twisted.words.protocols.jabber.sasl.SASLNoAcceptableMechanism) 【发布时间】:2012-03-30 02:52:38 【问题描述】:

我尝试了here 给出的答案。查了问题here,发现有什么说明这完全没救了here

我已经尝试升级我的 openssl (macports) 并尝试安装 pyopenssl (macports)。虽然我之前在 macports 上遇到过问题,但我在 xmpppy 和 slimxmpp 上已经取得了成功。因此,我不得不怀疑 wokkel 和 google talk 之间是否存在某种不兼容(如第三个链接中所建议的那样)。这对我来说似乎很奇怪,因为 google talk 是(据我所知)一种非常流行的交流媒介。

我的问题很简单,自 2008 年以来,是否有人成功让 wokkel 使用 google talk,如果是,如何?

这就是我所拥有的:

from twisted.words.xish import domish
from wokkel.xmppim import MessageProtocol, AvailablePresence

class EchoBotProtocol(MessageProtocol):
  def connectionMade(self):
      print "Connected!"

      # send initial presence
      self.send(AvailablePresence())

  def connectionLost(self, reason):
      print "Disconnected!"

  def onMessage(self, msg):
      print str(msg)

      if msg["type"] == 'chat' and hasattr(msg, "body"):
          reply = domish.Element((None, "message"))
          reply["to"] = msg["from"]
          reply["from"] = msg["to"]
          reply["type"] = 'chat'
          reply.addElement("body", content="echo: " + str(msg.body))

          self.send(reply)

from twisted.application import service
from twisted.words.protocols.jabber import jid
from wokkel.client import XMPPClient

application = service.Application("echobot")

xmppclient = XMPPClient(jid.internJID("someuser@example.com/echobot"), "pass")
xmppclient.logTraffic = False
echobot = EchoBotProtocol()
echobot.setHandlerParent(xmppclient)
xmppclient.setServiceParent(application)

【问题讨论】:

好吧,好吧,我会粘贴一些代码。 当你尝试运行这个时你看到了什么? 【参考方案1】:

我可以通过安装 pyOpenSSL 解决这个问题。

【讨论】:

以上是关于如何在 google talk 中使用 wokkel:(error twisted.words.protocols.jabber.sasl.SASLNoAcceptableMechanism)的主要内容,如果未能解决你的问题,请参考以下文章

如何链接 IRC 和 Google Talk?

Google Talk 如何跨设备复制消息?

Google API:通过 Google Talk 通知日历条目更改

如何使用 smack API 从 Google Talk 获取我的个人资料图片?

Google Talk 是如何工作的?

从 Android 以编程方式更改 Google Talk 在线状态