3. Que pomo es Wave?
2 cosas con el mismo nombre
1. Una plataforma de comunicacion
Implementado como una extension de XMPP
Servidores federados interconectados
2. Un cliente de la plataforma
Lo que vive en http://wave.google.com
4. Que se puede hacer?
No esta demasiado "definido":
IM
mensajes cortitos, al toque
'conferencias' entre muchos usuarios
+ Email
mensajes mas largos
con attachments
+ Wiki / Google Docs
cada "Blip" tiene su historial de cambios
se pueden embeber "cositos" (Gadgets)
5.
6. Extensiones a Wave
Gadgets
Se embeben en la conversacion
Hechos en HTML+Javascript
Pueden interactuar con el Wave y sus participantes
Ej: mapas, slideshows, resultados de busquedas
Mantienen log de cambios (!)
Robots
Son participantes del Wave que hacen 'cosas'
lo mismo que un participante del Wave
Ej: syntax-highlight, integracion con sistemas propios
7. Robots de Wave
APIs en Python y Java
El API Python es terriblemente Javoso
Corren adentro de Google AppEngine
Escuchan eventos:
"Robot agregado al wave" WAVELET_SELF_ADDED
"Nuevo blip" BLIP_SUBMITTED
"Blip editado" BLIP_VERSION_CHANGED
"Nuevos
participante" WAVELET_PARTICIPANTS_CHANGED
(y tambien, proximamente, cron-eable)
Responden:
Agregan o editan contenido al Wave
Invitan otros participantes
Interactuan con otros sistemas, afuera de Wave
8. Status Wave: Lo bueno
tiene potencial grosso
el cliente es genial
la plataforma es emocionante
basado en estandares abiertos (XMPP)
la extension a XMPP es software libre
si se vuelve masivo va a ser -muy- util
en un tiempo, "lo malo" (proxima slide) deberia desaparecer
9. Status Wave: Lo Malo
Los APIs estan crudisimos
especialmente el de Python: van y vienen JSON con
joyitas como: "contributors":{"javaClass":"java.util.ArrayList", "list":["martin.
sarsale@googlewave.com"]}
Es todo muuuy beta
De golpe se rompe todo por culpa de ellos
De golpe, no anda nada, por culpa nuestra
Los robots solo corren en Google App Engine
No se puede probar local
hay que subir a GAE: codigo -> upload -> test (loop)
10. Un robot util
Sumavisos es un buscador de avisos clasificados (autos,
propiedades y empleos)
El usuario crea un Wave nuevo, invita al Robot
(sumavisos@appspot.com) y le pega el URL de una
busqueda en Sumavisos
El robot monitorea los resultados nuevos y los va
agregando en el Wave [en la v1.1 :)]
Los participantes del Wave van comentando los resultados,
marcando los avisos que les interesan, votandolos,
borrandolos, etc
11. Instrucciones
1. Hacer una busqueda en http://www.sumavisos.com.
ar/propiedades/ y copiar el URL del resultado
2. Invitar al robot (sumavisos@appspot.com) al Wave y decirle
el URL
3. El robot trae los resultados de la busqueda
4. Los participantes del Wave van comentan los resultados
12.
13. Instrucciones
1. Hacer una busqueda en http://www.sumavisos.com.
ar/propiedades/ y copiar el URL del resultado
2. Invitar al robot (sumavisos@appspot.com) al Wave y decirle
el URL
3. El robot trae los resultados de la busqueda
4. Los participantes del Wave van comentan los resultados
14.
15. Instrucciones
1. Hacer una busqueda en http://www.sumavisos.com.
ar/propiedades/ y copiar el URL del resultado
2. Invitar al robot (sumavisos@appspot.com) al Wave y decirle
el URL
3. El robot trae los resultados de la busqueda
4. Los participantes del Wave van comentan los resultados
16.
17. Instrucciones
1. Hacer una busqueda en http://www.sumavisos.com.
ar/propiedades/ y copiar el URL del resultado
2. Invitar al robot (sumavisos@appspot.com) al Wave y decirle
el URL
3. El robot trae los resultados de la busqueda
4. Los participantes del Wave comentan los resultados
19. Tips para desarrollar bots
SMS de activacion de Google AppEngine no llegan (a
Movistar por lo menos)
Form de Quejas :)
Los foros de Wave API son un buen lugar para confirmar
que 'no anda por culpa de GOOG' :)
Para formatear texto se usan "Annotations"
agregan pares de metadata (k-v) a un documento o
fragmento del documento:
link/manual
style/fontWeight
20. Tips para el API de Python
import logging es tu amigo
los logs quedan en GAE -> Logs
en cada cambio, cambiarle el numero de version al Robot
no dejar olvidados 'print' por el codigo, no tira errores pero
'no hace nada'
21. Robots en Google Wave
martin sarsale
martin@sumavisos.com
http://www.sumavisos.com
La presentacion esta aca:
http://tinyurl.com/waverobots