[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [xmlblaster] Newbie question: xlmblaster and php: how to get updates?
Eduard Martinez wrote:
Hello
I'm trying to implement an application wich sends messages asynchrolously
betwen a java application an several php clients. I took a look to the
php
demo, but I can't figure how to suscribe on a topic and specify
something to
get updates when there is a new message of the topic, like the java
client.
Is it possible? How can I do it?
Cheers,
Edu
Salute Edu,
i don't think that Cyrilles XmlRpc demo supports callbacks.
So you need to make your own implementation,
here are three approaches you could try:
1. Extend Cyrilles XmlRpc example with a XmlRpc-callback server,
there are many such implementations, see
http://www.xmlrpc.com/directory/1568/implementations
2. Access our xmlBlaster C library from PHP.
Like this you have tunneled callbacks, high performance, zlib compression
See
http://www.xmlblaster.org/xmlBlaster/doc/requirements/client.c.socket.html
and see how our C# example is doing this:
http://www.xmlblaster.org/xmlBlaster/doc/requirements/client.csharp.html
3. You can use Cyrilles XmlRpc PHP code and use blocking get() calls
(with timeouts):
You would subscribe with PHP but the clients callback queue has set
dispatcherActive=false
so the messages are collected on server side. Now you can use
synchronous get()
calls which block until messages are available
(see
xmlBlaster/src/java/org/xmlBlaster/client/XmlBlasterAccess.java:receive()
as a
code sample to use for PHP).
This approach is very simple but you need to use a dedicated thread in
PHP for the blocking get() call
(see also
http://www.xmlblaster.org/xmlBlaster/doc/requirements/engine.qos.queryspec.QueueQuery.html)
regards
Marcel