https://wave.google.com/a/wavesandbox.com/#restored:wave:wavesandbox.com!w%252BmO3w_w9KA

[CLOSED] Office Hours: December 10, 2009


Welcome to API office hours!

*Please top post your question or comment about the robot, gadget, or embed
API to make sure we see it. You can do so by replying to this blip.*

*A transcript of this wave will be made publicly available. If you don't
want to appear in the transcript, delete your blip after getting a response.
Be careful not to remove neighboring blips.*

*And don't add robots to this wave!*



Reply
Edit
Dec 9
Pontus Leitzler:

To get this kind of more on-topic :).. Austin talked about some new features
for active robots in the group. Have any more info about what will be
possible to do with it? I know you can't give a ETA but it would be nice
with some more hints about features ;)
Reply
Edit
Dec 9
Pamela Fox:

Basically, you can perform operations at any time, without having to be
triggered by an event. What specific ability are you looking for?
Reply
Edit
Dec 9
Pontus Leitzler:

Well as I see it now kind of everything is triggered using events (in
AppEngine) or cronjobs that triggers events. How does this active thing
work?
Reply
Edit
Dec 9
Pamela Fox:

The robot cron mechanism doesn't really work now. (It's quite flaky). With
this API, you could use normal App Engine cron jobs.

You authenticate your robot using Oauth, and after storing the oauth info,
you are allowed to perform operations.
Reply
Edit
Dec 9
Pontus Leitzler:

Ah, sweet, kind of a external API then. Speaking about OAuth, I asked for a
more.. user firendly documentation (or examples) of how to use OAuth a few
office hour's ago. Know anything about it there are new examples coming up
too? I find it a bit complicated to get it working (for google docs in this
case).
Reply
Edit
Dec 9
Pamela Fox:

Are you trying to authenticate a user to their gdocs account in a gadget
popup or such?
Reply
Edit
Dec 9
Pontus Leitzler:

No I want a robot on app engine to access my private calendar (only my own)
without having to put my username & password in plain text in the source
files.
Reply
Edit
Dec 9
Pamela Fox:

Ah, I see, so ClientLogin is out. Let me see if there's some sample code out
there that does that. Java/Python?
Reply
Edit
Dec 9
Pontus Leitzler:

Java
Reply
Edit
Dec 9
Pamela Fox:

Looking-- Did you already checkout the Oauth Java sample in the SDK?
Reply
Edit
Dec 9
Pontus Leitzler:

Hm, I've been reading a few pages but I guess my understanding is a bit..
lacking.. I don't know if I've read the specific SDK samples. I've started
out with the access Calendar using GData "guide" but I can't connect those
to the generic "using OAuth" guide.. Hm..
Reply
Edit
Dec 9
Pamela Fox:

I have to admit, I usually take the ClientLogin route as it's a bit easier,
but there are a few Oauth/Authsub samples-

AuthSub:

http://code.google.com/p/googleappengine/source/browse/#svn/trunk/java/demos/contactsapi/src/com/google/appengine/demos/contactsapi


My colleague says AuthSub would be simpler, and that sample looks easier to
look through than the other one, so maybe you would be better taking a look
@ that.
Reply
Edit
Dec 9
Pontus Leitzler:

Oh thanks.. I'll check it out :)
Reply
Edit
Dec 9
Pamela Fox:

I'm guessing you'll want to adapt that so that there's an admin interface
for just grabbing and storing your token, and you can either hardcode the
token or store it in your datastore.


Colleague also recommends this article:
http://code.google.com/apis/analytics/docs/gdata/gdataAppEngine.html
Reply
Edit
Dec 9
Pontus Leitzler:

Yeah, I'll give it some time when I'm not at work ;).. When we are a bit off
topic already. There are a few different feeds to access in calendar
(default, allcalendars, owncalendars). Are there any documentation on all
those and the difference? I only see them in different samples and so far
I've had to do the trial-and-error coding :)

Reply
Edit
Dec 9
Pamela Fox:

http://code.google.com/apis/calendar/data/2.0/reference.html#Calendar_feeds

That link looks like the thing I was looking for! Thanks a bunch, give
him/her a hug from me!
Reply
Edit
Dec 9
Pamela Fox:

Nick is quite huggable, will let him know.
Reply
Edit
Dec 9
Vikram Dhillon:

I can help out with documentation but one question where should it go to ?
Is there a page for community based docs.
Reply
Edit
Dec 9
Pamela Fox:

There's no formal place. You could post a link to a wave in the group, write
blog posts, etc.
Reply
Edit
Dec 9
Guoqian Jiang:

Pamela, we mentioned DataBlip idea in this group. We assume to map external
data structure e.g. a tree strucutre into wave blips and have a UI layer to
access the data in some way. Is it possible? What do you think?
Reply
Edit
Dec 9
Pamela Fox:

Ah yes, that was a good discussion.

You could store some XML in a datadocument, and use a robot/gadget
combination to visualize that. Would that work?
Reply
Edit
Dec 9
Guoqian Jiang:

Is there a link or document about the schema of the xml data document?
Reply
Edit
Dec 9
Pamela Fox:

We expose the data documents in the API as simply a key/value has map, where
each of those is strings. But you could make some XML, serialize it, and
store it in a doc. I think the question is whether you need some
collaboration on that data. Remind me of the use case again?
Reply
Edit
Dec 9
Guoqian Jiang:

Yes, we need collaboration of that data. The use case is to collaboratively
curate a tree structure
Reply
Edit
Dec 9
Pamela Fox:

Okay, and what was the reason for not storing it in gadget state?
(Security?)
Reply
Edit
Dec 9
Guoqian Jiang:

I think the core question is how to fully leverage the built-in wave feature
to resolve the conflicts.
Reply
Edit
Dec 9
Pamela Fox:

Well, so, what do you want to happen if, for example, 2 people move the same
node at the same time?
Reply
Edit
Dec 9
Guoqian Jiang:

Yes, that is a typical use case. What I want to say is that the UI layer
code may not need worry about the potential conflicts if we get the data
mapped to blips.
Reply
Edit
Dec 9
Pamela Fox:

The thing is that Wave isn't going to resolve conflicts on structural data -
it's good at merging insert/delete operations on text from humans, but you
don't want it to do insert/delete on data structure attributes. What I
suggest, however, is figuring out how to split up your data into the parts
that you want people to be able to modify independently, and create keys in
the data structure that map to those. For example, a tree structure might
be:

treeitem-ID1234-title

treeitem-ID1234-parent

treeitem-ID1234-color

treeitem-ID4567-title

...

Then, people can change each of those attributes separately, and not run
into eachother. If two people try to modify the color at the same time, the
last change would be the one that counted. Or, you could track when each
change was made, and take that persons change. (If doing that, you should do
a map with participant name in the key).
Reply
Edit
Dec 9
Guoqian Jiang:

Thanks. This is very helpful.
Reply
Edit
Dec 9
Pamela Fox:

Sure. This might be how the mind map gadget stores its state. I haven't
looked at it's code, but I would recommend you check it out.
Reply
Edit
Dec 9
Douglas Linder:

you might be able to use a private wavelet to get wave to resolve this for
you.
Reply
Edit
Dec 9
Pamela Fox:

How so?
Reply
Edit
Dec 9
Douglas Linder:

Vaguely; push the tree structure into blips and make a robot post blips as
you get changes in the gadget, then back propogate the blip structure that
results into the gadget.


... although, I guess you'd need multiple robots to duplicate the multiple
users.
Reply
Edit
Dec 9
Pamela Fox:

I see- you're using blips as basically keys in a hash map. I think you would
be better off using data documents or gadget state, as blips are a bit
heavyweight.
Reply
Edit
Dec 9
Douglas Linder:

True; just saying, you probably could do it that way...
Reply
Edit
Dec 9
Pamela Fox:

Robots can't actually create private wavelets right now, by the way. In the
future, it would be possible.
Reply
Edit
Dec 9
Douglas Linder:

oh. ^_^! well, woops. Ignore me then.

Reply
Edit
Dec 9
Pamela Fox:

FYI, for both of you, here are instructions on storing data docs, if you
want to do it with a robot instead of a gadget:

http://wave-api-faq.appspot.com/#datadocs
Reply
Edit
Dec 9
Guoqian Jiang:

Thanks, another quesiton is about adding meta data for a blip. I can see
wave support Tags in wave level. Does this work in lower level?

Asking this is because users may want to make some queries against blips.
Reply
Edit
Dec 9
Pamela Fox:

We don't actually expose tags in the API yet, but it sounds like you want
per-blip tags?
Reply
Edit
Dec 9
Guoqian Jiang:

Just ask the possibility. I think its good to have this kind of
functionality.
Reply
Edit
Dec 9
Pamela Fox:

There apparently has been some discussion of having per-blip tags in the
Wave data model. In the time-being, you could use a gadget to have users set
tags in a blip (or a robot, I suppose).
Reply
Edit
Dec 9
Guoqian Jiang:

I think I would like to see the per-blip tags in the wave data model in the
future.
Reply
Edit
Dec 9
Pamela Fox:

Okay, I would suggest joining the wave-protocol group and discussing it
there.
Reply
Edit
Dec 9
Alexandro Jimenez:

Coming in a little late, but just real quick, I recently saw this screen
shot of the Extension Installer for Tweety, and David Byttow was the one
that had created that wave, I was just wondering if the Extension Installer
Reply
Edit
Dec 9
Pontus Leitzler:

Good morning (at least here), nice to see familiar faces ^^
Reply
Edit
Dec 9
Alexandro Jimenez:

yeah faces :D getting really late over here
for Tweety was the same as on the Google Wave Resources page, so:
http://google-wave-resources.googlecode.com/svn/trunk/samples/extensions/robots/java/tweety/war/_wave/extension.xml
or
if it was stored in the app engine itself?
Reply
Edit
Dec 9
Pamela Fox:

It seems to be in both places:
http://tweety-wave.appspot.com/_wave/extension.xml
Reply
Edit
Dec 9
Alexandro Jimenez:

Great that one is much shorter, just fyi, it doesn't have a picture on the
Extension Installer any more, and it's also lacking who the owner is, but no
biggie, might be that bug that is not letting the robots be showing the
contact info
Reply
Edit
Dec 9
Pamela Fox:

I think it's using an older version of our installer format. I'll ask author
to upgrade.
Reply
Edit
Dec 9
Alexandro Jimenez:

great thanks :D
Reply
Edit
Dec 9
Alexandro Jimenez:

Just another simple one, are the robots on the Preview video going to be
working soon, like Rosy Etta (where doesn't respond) Bloggy (which doesn't
seem to work like it shows on the preview), and well I think that's all the
ones I remember
Reply
Edit
Dec 9
Pamela Fox:

Rosy is still under development. Bloggy was using an annotation that is no
longer supported. It didn't actually output to Blogger, by the way, so not
quite as useful as you might think. But maybe we'll find time to upgrade it
Reply
Edit
Dec 9
Alexandro Jimenez:

Alright, just wanted to know if there would be some updates, great job
really! I understand there isn't time to update some things, but it really
shows the effort when you see a nice list of bugs that have been fixed :D
Reply
Edit
Dec 9
Pamela Fox:

We're attempting to prioritize fixes. Thanks for giving us feedback.
Reply
Edit
Dec 9
Vikram Dhillon:

Hi all, how's everyone doing
Reply
Edit
Dec 9
Pamela Fox:

Good. :)
Reply
Edit
Dec 9
Vikram Dhillon:

Pamela, for some reason i don't have a wave account on the preview servers
why is that
Reply
Edit
Dec 9
Pamela Fox:

Did you sign up?
Reply
Edit
Dec 9
Vikram Dhillon:

It says my account hasn't been activated
Reply
Edit
Dec 9
Vikram Dhillon:

Yup "Your Google Account has not yet been activated for Google Wave."
Reply
Edit
Dec 9
Pontus Leitzler:

Morning ^^.. I had the same message before I got the invite too. Might be
something like that?
Reply
Edit
Dec 9
Pamela Fox:

The help articles I see about that error mention problems with having
multiple Google accounts or a Google apps account. Have you tried all your
accounts?
Reply
Edit
Dec 9
Vikram Dhillon:

I only have one gmail account and no google apps account
Reply
Edit
Dec 9
Pamela Fox:

Did you click on the invite email?
Reply
Edit
Dec 9
Vikram Dhillon:

See that's the main problem I never got one, I check all waves and couldn't
find it
Reply
Edit
Dec 9
Pamela Fox:

So, you signed up to receive one with your gmail account?
Reply
Edit
Dec 9
Vikram Dhillon:

Yes :) I got the invite in my gmail account


Reply
Edit
Dec 9
Pamela Fox:

What happens when you click the link in your invite?
Reply
Edit
Dec 9
Vikram Dhillon:

It takes me to the sandbox sigin page
Reply
Edit
Dec 9
Pamela Fox:

That's the sandbox invite, which is unrelated. You need to request Google
Wave Preview access separately, and you'll get a separate invite.
Reply
Edit
Dec 9
Vikram Dhillon:

ahh, thanks :) so what should I do to get the preview access
Reply
Edit
Dec 9
Pamela Fox:

Go to wave.google.com. There should be a link here.


Reply
Edit
Dec 9
Vikram Dhillon:

Thanks you are awesome :)
Reply
Edit
Dec 9
Pontus Leitzler:

What's your email? I have a few invites to spare on the preview server so I
can give you one. Still takes a few days before you get the invite since
it's "nominations".
Reply
Edit
Dec 9
Pontus Leitzler:

Sent :)
Reply
Edit
Dec 9
Vikram Dhillon:

I should have recieved the invite in my email right
Reply
Edit
Dec 9
Cookie Monster:

There can be a delay... "they have a lot of stamps to lick". :) It may not
be received immediately, as they stagger even those invites that people
issue to you.
Reply
Edit
Dec 9
Vikram Dhillon:

alright thanks for the info :)
Reply
Edit
Dec 9
Pontus Leitzler:

The other friends I've invited had their mail in about 1-4 days.
Reply
Edit
Dec 9
Vikram Dhillon:

Thanks, you guys are all awesome :)
Reply
Edit
Dec 9
Guoqian Jiang:

Hello, Pamela and everyone,
Reply
Edit
Dec 9
James Purser:

Hrmm right now, I'm talking in about 4 waves each connected to a stream at a
real world conf, so that's a plus. However I still can't add my fedone
account to this wave properly so that's a minus. About average I think

--

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


Reply via email to