2012-02-22 102 views
1

我已经写在PHP(Debian的6.0)一个JAXL守护进程它位于并侦听进来的邮件,然后通过将有效载荷的API处理传入消息。 (听用户1 @服务器上的传入消息)JAXL XMPP守护进程来发送和收到消息

我遇到的麻烦是然后发回一条消息给用户。我现在的做法是启动另一个XMPP守护进程,发送消息,然后关闭守护进程。这样做的麻烦是,它正在启动另一个守护程序,使用JID user1 @ server发送到user2 @ server。当我关闭JAXL时,它也关闭了'监听'守护进程。

我认为当我发送消息时启动监听守护程序,但启动时间过长(1-2秒),我的应用程序无法真正承受等待时间。

没有人有任何想法如何,我可以通过使用侦听守护进程发送消息,以及解决这个问题,也许?

回答

1

只是任何人谁是有兴趣在此,我结束了编辑JAXL对UDP套接字监听守护进程运行时,如果数据对UDP套接字收到然后使用$ jaxl->的sendMessage(.. )并发送消息。然后,我编写了一个简单的函数,只要我想发送消息,就会将数据发送到此UDP套接字。

2

很高兴听到这样的进展。虽然从您的示例代码$jaxl->sendMessage()看来,您似乎正在使用JAXL v2.x.如果您对v2.x没有任何硬编码依赖性,我会认真地推荐您升级到JAXL v3.x

如果您正在使用3.x版现在有通过与XMPP守护进程在后台(IPC)运行的通信发送XMPP有效载荷的官方途径考虑您可以按照谷歌组线程Send a message via an existing active connection。你甚至可以用v3.x远程控制你的xmpp守护进程和更多。

+0

感谢您的评论,我相信你是谁写的JAXL一个?从我的最初研究看,这看起来非常有希望,我一定会考虑实施这个。 – 2012-07-23 10:25:38

+0

JAXL 3.x更多面向对象吗?这是另一个问题,我 - 它看起来就像是在PHP 4 – 2012-07-23 10:28:00

+0

写是直接从文档,我将引用“内部Jaxl一切,你将与互动将是一个对象,它会发出事件和回调,我们将能够在我们的定制加工和路由”应用搭上 - http://jaxl.readthedocs.org/en/latest/users/getting_started.html#library-structure – 2012-07-23 13:16:59