Hello friends,

We are working on a mechanism for replication of portions of gadget states
in different waves using robots. Basically, our robot responds to a
BLIP_SUBMITTED event on one wave and sends one or more
DOCUMENT_ELEMENT_MODIFY_ATTRS operations to one or more gadgets. We are
writing our robot in Clojure without any of the APIs by manually generating
the operation JSONs. Our robot is mostly working but we seem to be affected
by several possible bugs and since we don't have logs from within the Wave
server or the Robot Gateway it's making our debugging work somewhat
difficult. All of our work has been done by verifying through the App Engine
logs that the operations are being sent.

Questions:

1. We seem to have learned that if an operation in sent with illegal JSON
structure (for example sending null for operations.list instead of []) then
that robot stops working, or perhaps stops working in the context of the
wave it was trying to act on. Are we correct in this observation? Is there
some defined state of a certain robot not being allowed to operate on a
specific wave? When does this happen?

2. We think that if we send two distinct operations modifying the same
gadget the operation doesn't happen and perhaps also then puts the robot in
the "not working" mode (as described in issue 1). When we united the two
operations into one operation it seems to be working. Is it true that this
is the case or are we confusing several different issues into one?

3. As the complement of issue 2, we also have started to believe that you
can't send any two DOCUMENT_ELEMENT_MODIFY_ATTRS operations in one bundle,
even if it is to two different gadgets in different waves. When we sent only
one such operation and maintained the second one to be sent as a response to
the next DOCUMENT_CHANGED event it seemed like we got things to be working
(but other things kept not working). Are we correct in our guessy
observation?

3.1. This also may have to do with the fact that the two gadgets have the
same URL (in two different waves). Could this be the cause of some of our
problems?

4. We tried sending a DOCUMENT_ELEMENT_MODIFY_ATTRS operation with a null
value and it did not delete the key (we assumed it might work this way
because of the way submitDelta works in the gadget API). We also looked for
a different operation type that might remove a key but couldn't find one.
How can we delete a gadget key using a robot?

Thanks,
Avital and Ayal.

--
http://thewe.net

--

You received this message because you are subscribed to the Google Groups 
"Google Wave API" group.
To post to this group, send email to google-wave-...@googlegroups.com.
To unsubscribe from this group, send email to 
google-wave-api+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-wave-api?hl=.


Reply via email to