问题标签 [twisted.words]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
944 浏览

python - 使用 msn 协议运行 twisted.words 示例时出现问题

我目前正在尝试使用 Twisted 库专门扭曲的单词来尝试与 MSN 交互。但是,当我运行 twisted 提供的示例脚本时,我得到一个错误。具体来说,错误在这里http://i42.tinypic.com/wl945w.jpg。该脚本可以在这里http://twistedmatrix.com/projects/words/documentation/examples/msn_example.py找到。

平台是带有 Python 2.6 的 Vista

编辑:完整输出:

0 投票
1 回答
721 浏览

python - 在 Twisted Python 中 - 确保协议实例被完全释放

我有一个用 Twisted Python 编写的非常密集的聊天套接字服务器,我使用带有工厂的 internet.TCPServer 启动它,并且该工厂引用处理与客户端的所有通信的协议对象。

一旦客户端断开连接,我应该如何确保协议实例完全销毁自己?

我有一个名为 connectionLost 的函数,一旦客户端断开连接,它就会启动,我尝试在那里停止所有活动,但我怀疑一些反应器的东西(如 twisted.words 实例)会继续为过时的协议实例运行。

处理这个问题的最佳方法是什么?

谢谢!

0 投票
1 回答
706 浏览

python - 如何完全从原始 XML 创建 twisted.words.xish.domish.Element

我很惊讶 XML 基本对象 (twisted.words.xish.domish.Element) 不能完全由 XML 字符串创建。最相似的方式是:

但它会产生:

除了编写我自己的 IElement 实现之外,还有什么方法可以使用原始 XML?

0 投票
2 回答
966 浏览

python - 如何以正确的方式启动扭曲反应器?

我有一个 MyJabber 类,它初始化一个基本的 jabber 帐户,将传入的消息打印到标准输出 + 将它们放入队列中。

将客户端添加到反应器的代码是这样的:

它是这样调用的:

当我启动应用程序时,我看到了 addReactor 的“打印”,但之后就什么也没有了。我通过“tcpdump”看到有东西试图连接到“jabber.org”,但与 authd def 没有任何关系:

0 投票
1 回答
666 浏览

python - 扭曲的连接丢失事件

我使用 twisted.words.protocols.jabber.client.XMPPClientFactory 。您知道当连接丢失(例如 WiFi 连接断开)时如何回调函数吗?

谢谢您的帮助!

0 投票
3 回答
7959 浏览

python - 如何优雅地退出以 twistd 开头的应用程序?

我有一个 jabber 客户端,它正在读取其标准输入并发布 PubSub 消息。如果我在标准输入上得到 EOF,我想终止客户端。

我第一次尝试sys.exit(),但这会导致异常并且客户端不会退出。然后我做了一些搜索,发现我应该打电话reactor.stop(),但我无法完成这项工作。我的客户端中的以下代码:

结果是exceptions.AttributeError: 'module' object has no attribute 'stop'

我需要做什么才能让twistd 关闭我的应用程序并退出?

编辑 2

最初的问题是由一些符号链接弄乱了模块导入引起的。解决该问题后,我得到了一个新异常:

异常发生后,twistd 关闭。我认为这可能是由调用MyClient.loopin引起的MyClient.connectionInitialized。也许我需要把电话推迟到以后?

编辑

这是.tac我的客户的文件

我正在调用

这是 MyClient 的代码:

0 投票
1 回答
363 浏览

python - 在 WSGI 容器中使用扭曲的词

我在 wsgi 容器中运行 django。显然,我在我的 django 代码中避免了所有带有延迟的异步内容,因为根据文档,在 WSGI 应用程序中不允许使用扭曲的异步功能。

但是,我想在我的 WSGI 应用程序中使用 twisted.words 将请求发送到 jabber 服务器。这算作异步的东西还是我可以在我的应用程序中使用它?如果我向 WSGI 内的 xmpp 服务器发送twisted.words jabber 请求会发生什么?

此外,我还有一个更笼统的问题。有什么理由扭曲的 WSGI 容器是多线程的(它是多线程的吗?),因为众所周知,python 的 GIL 只会降低带有线程的脚本的整体性能。

感谢您的任何回复。

0 投票
1 回答
106 浏览

twisted - python Twisted 中的 XPATH 是否支持这种语法:“/message/body[.='test']”?

我正在开发一个 XMPP 测试工具,使用 Twisted xpath 来匹配 XMPP 消息。

假设我有一个消息节,例如:

如果我想匹配消息的正文文本值为“test”,那么对于标准 xpath 语法,它将是:

但是这种语法在 twisted 中不受支持。

我的问题是:有没有办法解决这个问题?或者这是不可能的?

提前致谢。

0 投票
1 回答
157 浏览

twisted - 如何在 twisted.words oscar (icq) 中将好友添加到好友列表

我有一个小型机器人在 ICQ 上与用户交流,它使用 Twisted.Words、Oscar 协议。我需要查看他们的在线状态,但这似乎只有在我的好友列表中有他们时才有可能。那么问题来了:

如何在 Twisted.Words Oscar 的好友列表中添加好友?

这很奇怪,但在 API 文档中似乎没有任何内容,而且我在 oscar.py 源代码中找不到任何好的线索。:\

0 投票
1 回答
36 浏览

python - 如何使用 Twisted IRCClient 获取用户的主机掩码

我正在尝试获取用户的主机掩码,以允许在我的 IRCClient 机器人中进行一些身份验证。但是,它似乎已从所有回复中删除?我试过“whois”,但它只给了我用户名和用户所在的频道,而不是主机掩码。

关于如何做到这一点的任何提示?