Your SlideShare is downloading. ×
0
Mes posts G+ aussi sur Twitter, une solution tout cloud : Mercure+
Google +, un contenu riche
Twitter, contenu pauvre
Google vers Twitter ? - Mes besoins <ul><ul><li>Usage perso Le but n'est pas d'ouvrir un service. </li></ul></ul><ul><ul><...
Des éléments de réponse... <ul><ul><li>Message twitter avec début + lien vers Google + </li></ul></ul><ul><ul><li>Tache dé...
Stratégie de diffusion ? <ul><li>Que faire de : </li></ul><ul><ul><li>Message court ? </li></ul></ul><ul><ul><li>Message a...
Stratégie de diffusion - mes choix <ul><ul><li>Régle du one-click  Pour accéder à une information l'utilisateur ne doit pa...
Mule iON
Integration Plateform As A Service 
Orchestration de services cloud <ul><ul><li>Basé sur Mule 3.1.x+ (= &quot;ESB léger&quot; / framework d'intégration) </li>...
Administration web
Logs - Live View
Prix et quota
Mule Studio  <ul><ul><li>En version beta ... </li></ul></ul><ul><ul><ul><li>Un Eclipse customisé </li></ul></ul></ul><ul><...
Mule Studio - Visualisation du flux
Mon projet démo - Mercure+ Mercure est le dieu du commerce, des voyageurs, des voleurs, des marchands, des médecins et   i...
Mon flux <ul><ul><li>Récupération des derniers Activities </li></ul></ul><ul><ul><li>Trouver les non publiés sur Twitter <...
Api Rest Google + - Activities List <ul><ul><li>Requête </li></ul></ul><ul><li>GET https://www.googleapis.com/plus/v1/peop...
Api Rest Goo.gl <ul><ul><li>Requête POST https://www.googleapis.com/urlshortener/v1/url Content-Type: application/json {&q...
Besoin de persistance <ul><ul><li>Quels sont les Activities à twitter ? </li></ul></ul><ul><ul><li>Cette activity a t-elle...
Mongo DB - Pourquoi ? <ul><ul><li>Connecteurs Mongo pour Mule </li></ul></ul><ul><ul><li>Driver présent dans le milestone ...
Exemple d'une entrée {      &quot;_id&quot;: {          &quot;$oid&quot;: &quot;4ea71ca515826403b2aa6d49&quot;      },    ...
MongoLab <ul><ul><li>Hébergeur cloud (gratuit dans la limite de 240 Mo) </li></ul></ul><ul><ul><li>Interface web d'adminis...
Les services cloud utilisés <ul><ul><li>Connecteurs http/https </li></ul></ul><ul><ul><ul><li>Api google plus + api key </...
Les apis Mule <ul><ul><li>Déclencheur Quartz </li></ul></ul><ul><ul><li>Transformeur json to object </li></ul></ul><ul><ul...
Ont aussi participé ... <ul><ul><li>Spring 3 </li></ul></ul><ul><ul><ul><li>Les composants mule peuvent êtres des beans sp...
Ce qui donne...
ou pour les xml lovers ...
Aller plus loin ? <ul><ul><li>Publication : </li></ul></ul><ul><ul><ul><li>Facebook (attention : il faut avoir une session...
Points négatifs <ul><ul><li>Mule Studio </li></ul></ul><ul><ul><ul><li>En version beta </li></ul></ul></ul><ul><ul><ul><li...
Live démos !!! <ul><ul><li>Mercure+ </li></ul></ul><ul><ul><li>Déploiement / live view des logs </li></ul></ul>
Les sources http://github.com/nfrancois/mercureplus-muleion
Upcoming SlideShare
Loading in...5
×

De Google+ à twitter en passant par le Cloud

289

Published on

Ma présentation au BOF de Sfeir du mois de décmbre

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
289
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "De Google+ à twitter en passant par le Cloud"

  1. 1. Mes posts G+ aussi sur Twitter, une solution tout cloud : Mercure+
  2. 2. Google +, un contenu riche
  3. 3. Twitter, contenu pauvre
  4. 4. Google vers Twitter ? - Mes besoins <ul><ul><li>Usage perso Le but n'est pas d'ouvrir un service. </li></ul></ul><ul><ul><li>Pas de perte de contenu </li></ul></ul><ul><ul><li>Attention aux messages longs et aux images. </li></ul></ul><ul><ul><li>Utilisable de partout  Pas de dépendance d'un plugin navigateur ou d'un application spécifique. </li></ul></ul><ul><ul><li>Réactivité peu importante. Le tweet n'est pas urgent, il peut attendre. </li></ul></ul><ul><ul><li>Ne coûte rien. Il ne s'agit pas d'un besoin vital. </li></ul></ul><ul><ul><li>Originalité. </li></ul></ul><ul><ul><li>Parce qu'il faut bien s'amuser :) </li></ul></ul>
  5. 5. Des éléments de réponse... <ul><ul><li>Message twitter avec début + lien vers Google + </li></ul></ul><ul><ul><li>Tache déclenchée régulièrement </li></ul></ul><ul><ul><li>&quot;Pilotée&quot; depuis le cloud. </li></ul></ul>
  6. 6. Stratégie de diffusion ? <ul><li>Que faire de : </li></ul><ul><ul><li>Message court ? </li></ul></ul><ul><ul><li>Message avec lien vers article ? </li></ul></ul><ul><ul><li>Message avec image/vidéo ? </li></ul></ul><ul><ul><li>Publication d'un album ? </li></ul></ul><ul><ul><li>Partage de partage de lien sans aucun commentaire ? </li></ul></ul>
  7. 7. Stratégie de diffusion - mes choix <ul><ul><li>Régle du one-click  Pour accéder à une information l'utilisateur ne doit pas faire plus d'un clic </li></ul></ul><ul><ul><li>Contenu type photos doit être linké quelque soit la taille du message Profitez de la plateforme Google+ </li></ul></ul><ul><ul><li>Shortenizer les urls du contenu Gagner un peu d'espace </li></ul></ul><ul><ul><li>Tout message trop long doit être linké </li></ul></ul>
  8. 8. Mule iON
  9. 9. Integration Plateform As A Service 
  10. 10. Orchestration de services cloud <ul><ul><li>Basé sur Mule 3.1.x+ (= &quot;ESB léger&quot; / framework d'intégration) </li></ul></ul><ul><ul><li>Intégrer facilement des services cloud Un cloud pour les contrôler tous (MongoDB, Sales Force, Twitter, ...) </li></ul></ul><ul><ul><li>Infrastructure sur Amazon D'après les logs... </li></ul></ul><ul><ul><li>Piloter un flux qui les utilise Opérations métiers propre à mon SI </li></ul></ul>
  11. 11. Administration web
  12. 12. Logs - Live View
  13. 13. Prix et quota
  14. 14. Mule Studio  <ul><ul><li>En version beta ... </li></ul></ul><ul><ul><ul><li>Un Eclipse customisé </li></ul></ul></ul><ul><ul><ul><li>De la vraie beta ! </li></ul></ul></ul><ul><ul><ul><li>Dernière version 1.0 milestone 5  </li></ul></ul></ul><ul><ul><li>Création de project Mule </li></ul></ul><ul><ul><li>Déploiement Équivalent  à ce retrouve avec GAE </li></ul></ul>
  15. 15. Mule Studio - Visualisation du flux
  16. 16. Mon projet démo - Mercure+ Mercure est le dieu du commerce, des voyageurs, des voleurs, des marchands, des médecins et il est également le messager des dieux . Il transporte les messages dans le cloud
  17. 17. Mon flux <ul><ul><li>Récupération des derniers Activities </li></ul></ul><ul><ul><li>Trouver les non publiés sur Twitter </li></ul></ul><ul><ul><li>Découper pour traitement unitaire </li></ul></ul><ul><ul><li>Créer message générique </li></ul></ul><ul><ul><li>Préparer le message spécial Twitter </li></ul></ul>
  18. 18. Api Rest Google + - Activities List <ul><ul><li>Requête </li></ul></ul><ul><li>GET https://www.googleapis.com/plus/v1/people/108189587050871927619/ activities/public?key= yourAPIKey </li></ul><ul><ul><li>Réponse </li></ul></ul><ul><li>{   &quot;kind&quot; : &quot;plus#activityFeed&quot; ,   &quot;nextPageToken&quot; : string ,   &quot;selfLink&quot; : string ,   &quot;nextLink&quot; : string ,   &quot;title&quot; : string ,   &quot;updated&quot; : datetime ,   &quot;id&quot; : string ,   &quot;items&quot; : [     activities Resource   ] } </li></ul>
  19. 19. Api Rest Goo.gl <ul><ul><li>Requête POST https://www.googleapis.com/urlshortener/v1/url Content-Type: application/json {&quot;longUrl&quot;: &quot;http://www.google.com/&quot;} </li></ul></ul><ul><ul><li>Réponse </li></ul></ul><ul><li>{ &quot;kind&quot;: &quot;urlshortener#url&quot;, &quot; id &quot;: &quot;http://goo.gl/fbsS&quot;, &quot; longUrl &quot;: &quot;http://www.google.com/&quot; } </li></ul>
  20. 20. Besoin de persistance <ul><ul><li>Quels sont les Activities à twitter ? </li></ul></ul><ul><ul><li>Cette activity a t-elle été modifiée ? </li></ul></ul><ul><ul><li>Combien de messages publiés ? </li></ul></ul>
  21. 21. Mongo DB - Pourquoi ? <ul><ul><li>Connecteurs Mongo pour Mule </li></ul></ul><ul><ul><li>Driver présent dans le milestone 3, disparue en milestone 5.... </li></ul></ul><ul><ul><li>Je connais pas (encore)  </li></ul></ul>
  22. 22. Exemple d'une entrée {     &quot;_id&quot;: {         &quot;$oid&quot;: &quot;4ea71ca515826403b2aa6d49&quot;     },     &quot;updated&quot;: &quot;2011-12-02T18:50:19.429Z&quot;,     &quot;size&quot;: 16 }
  23. 23. MongoLab <ul><ul><li>Hébergeur cloud (gratuit dans la limite de 240 Mo) </li></ul></ul><ul><ul><li>Interface web d'administration simple </li></ul></ul>
  24. 24. Les services cloud utilisés <ul><ul><li>Connecteurs http/https </li></ul></ul><ul><ul><ul><li>Api google plus + api key </li></ul></ul></ul><ul><ul><ul><li>Api goo.gl </li></ul></ul></ul><ul><ul><li>Connecteur Twitter </li></ul></ul><ul><ul><ul><li>Nécessite tokens personnel et applicatif </li></ul></ul></ul><ul><ul><li>Driver java pour MongoDB </li></ul></ul><ul><ul><ul><li>Hébergement non fourni par Mule iON </li></ul></ul></ul>
  25. 25. Les apis Mule <ul><ul><li>Déclencheur Quartz </li></ul></ul><ul><ul><li>Transformeur json to object </li></ul></ul><ul><ul><li>Mapping JSon avec Jackson </li></ul></ul><ul><ul><li>Splitter de listes </li></ul></ul><ul><ul><li>Traitement asynchrone </li></ul></ul>
  26. 26. Ont aussi participé ... <ul><ul><li>Spring 3 </li></ul></ul><ul><ul><ul><li>Les composants mule peuvent êtres des beans spring. </li></ul></ul></ul><ul><ul><ul><li>RestTemplate pour interroger goo.gl. </li></ul></ul></ul><ul><ul><li>Guava </li></ul></ul><ul><ul><ul><li>Filtrage des activities récente selon un Predicate. </li></ul></ul></ul><ul><ul><ul><li>Manipulation du contenu pour retrouver urls. </li></ul></ul></ul><ul><ul><li>JSoup </li></ul></ul><ul><ul><ul><li>Nettoyage de contenu html. </li></ul></ul></ul><ul><ul><li>JodaTime </li></ul></ul><ul><ul><ul><li>Date d'update des activites. </li></ul></ul></ul><ul><ul><li>Mapping perso des objets java </li></ul></ul><ul><ul><ul><li>  Utilisation Jodatime pour les dates (le DateTime de google provoquait des erreurs) </li></ul></ul></ul>
  27. 27. Ce qui donne...
  28. 28. ou pour les xml lovers ...
  29. 29. Aller plus loin ? <ul><ul><li>Publication : </li></ul></ul><ul><ul><ul><li>Facebook (attention : il faut avoir une session ouverte) </li></ul></ul></ul><ul><ul><ul><li>LinkedIn </li></ul></ul></ul><ul><ul><li>Statistique des activities </li></ul></ul><ul><ul><ul><li>Commentaires </li></ul></ul></ul><ul><ul><ul><li>Partages </li></ul></ul></ul><ul><ul><li>Fonctionnalité complémentaires </li></ul></ul><ul><ul><ul><li>Suivre les commentaires sur les activities partagées par d'autres </li></ul></ul></ul>
  30. 30. Points négatifs <ul><ul><li>Mule Studio </li></ul></ul><ul><ul><ul><li>En version beta </li></ul></ul></ul><ul><ul><ul><li>Divers problèmes avant la m5 (ajout de lib, visualisation du flux, ... ) </li></ul></ul></ul><ul><ul><li>Problème de plateforme ? </li></ul></ul><ul><ul><ul><li>jar(s) existant(s) dans Mule Studio qui semble absent déployé (JodaTime) </li></ul></ul></ul><ul><ul><li>Support </li></ul></ul><ul><ul><ul><li>Forum peu fréquenté </li></ul></ul></ul><ul><ul><li>Version gratuite </li></ul></ul><ul><ul><ul><li>Echéance de ma version au 29/02/12 ? </li></ul></ul></ul>
  31. 31. Live démos !!! <ul><ul><li>Mercure+ </li></ul></ul><ul><ul><li>Déploiement / live view des logs </li></ul></ul>
  32. 32. Les sources http://github.com/nfrancois/mercureplus-muleion
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×