OutSystems - Integration With Google Services - NextStep 2012

46
Helping your business grow faster TP024V02 (09/03/2011) INTEGRATION WITH SERVICES

description

Google provides access to a wealth of worldwide information, making it globally available to everyone and every application. With such a wide array of services, it is attractive to use and integrate this content into enterprise applications. Come to this session and learn how to use OpenID for global authentication and how to extend the Agile Platform to integrate the Google Data API providing a natural path for getting the most of Google's publicly available services.

Transcript of OutSystems - Integration With Google Services - NextStep 2012

Helping your business grow faster

TP02

4V02

(09/0

3/201

1)

INTEGRATION  WITH  

SERVICES  

Helping your business grow faster

TP02

4V02

(09/0

3/201

1)

INTEGRATION WITH GOOGLE SERVICES [email protected], Engagement Manager

May, 11th 2012

INTEGRATION  WITH  

SERVICES  

INTEGRATION WITH GOOGLE SERVICES First things first

QUESTION: WHAT IS THE SINGLE MOST DIFFICULT ISSUE WHEN DEALING WITH GOOGLE R E L A T E D PRESENTATIONS?

INTEGRATION WITH GOOGLE SERVICES First things first

MULTICOLORED SENTENCES?

INTEGRATION WITH GOOGLE SERVICES First things first

NO, SORRY. TOO OBVIOUS!

(and I won’t do it again, by the way)

INTEGRATION WITH GOOGLE SERVICES First things first

IT’S DECIDING BETWEEN PRONOUNCING

GUGÂL or GÂGÂL

(no phonetics, sorry, just plain Portuguese)

INTEGRATION WITH GOOGLE SERVICES First things first

INTEGRATION WITH GOOGLE SERVICES First things first

AND THE WINNER IS

GUGÂL

INTEGRATION WITH GOOGLE SERVICES Google products and services

Best know products and services And  listen  to  the  correct  pronuncia1on  

INTEGRATION WITH GOOGLE SERVICES Google products and services

Best know products and services

INTEGRATION WITH GOOGLE SERVICES Google products and services

More products and services AdSense (earn revenue with ads) Analytics (web analytics)

Blogger (create a blog) Bookmarks (manage web links)

Calendar (organize your schedule)

Code Hosting (project hosting) Code Search (shutdown!)

Contacts (manage your contacts) Health (discontinued!)

Notebook (development stopped!) Webmaster Tools (improve site visibility)

INTEGRATION WITH GOOGLE SERVICES Google for Developers

APIs and Technologies

INTEGRATION WITH GOOGLE SERVICES Google Static Map

Easy start: Static Map

h2p://maps.googleapis.com/maps/api/sta1cmap  

INTEGRATION WITH GOOGLE SERVICES Google Static Map

Flow and Entities

INTEGRATION WITH GOOGLE SERVICES Google Static Map

ShowHotspots WebScreen

INTEGRATION WITH GOOGLE SERVICES Google Static Map

Preparation

Markers+"&markers=color:"+GetHotspots.List.Current.Color.Label+  "|label:"+GetHotspots.List.Current.Hotspot.Label+  "|"+GetHotspots.List.Current.Hotspot.GPS  

"h2p://maps.googleapis.com/maps/api/sta1cmap?size=400x400&maptype=roadmap"+  Markers+"&sensor=false"  

INTEGRATION WITH GOOGLE SERVICES Google Static Map

A few Hotspots

INTEGRATION WITH GOOGLE SERVICES Google Static Map

Hotspots Map

INTEGRATION WITH GOOGLE SERVICES Google Maps Component

Easy enough: Google Maps Component

h2p://www.outsystems.com/NetworkSolu1ons/ProjectDetail.aspx?ProjectId=105  

INTEGRATION WITH GOOGLE SERVICES Google Maps Component

Get an API Key

h2ps://code.google.com/apis/console  

INTEGRATION WITH GOOGLE SERVICES Google Maps Component

Reference GoogleMaps in your eSpace

INTEGRATION WITH GOOGLE SERVICES Google Maps Component

Drag the script and the map and configure them

INTEGRATION WITH GOOGLE SERVICES Google Maps Component

Run it

INTEGRATION WITH GOOGLE SERVICES Intermission

How Chrome was invented

INTEGRATION WITH GOOGLE SERVICES Google ID

Main course: Ingredients OpenID  is  an  open  standard  that  describes  how  users  can  be  authen1cated  in  a  decentralized  manner,  elimina1ng  the  need  for  services  to  provide  their  own  ad  hoc  systems  and  allowing  users  to  consolidate  their  digital  iden11es.  (source:  Wikipedia)    DotNetOpenAuth  is  a  well  established  open  source  library  that  bring  OpenID  capabili1es  to  the  MicrosoY  .NET  Framework.  (source:  h0p://www.dotnetopenauth.net/)    Integra:on  Studio  provides  proficient  soYware  developers  with  an  environment  that  empowers  their  ability  to  integrate  with  enterprise  systems  and  to  extend  the  exis1ng  func1onality  and  data  model  of  the  Agile  Pla^orm.  (source:  OutSystems)  

INTEGRATION WITH GOOGLE SERVICES Google ID

Login with Google ID User  accesses  the  applica1on  

Is  there  a  valid  Google  session?  

Login  with  the  user  or  con1nue  as  anonymous  

Yes;  use  the  e-­‐mail  to  locate  the  user  

No;  redirect  to  Google  login  page  and  come  back  aYerwards  

INTEGRATION WITH GOOGLE SERVICES Google ID

Google login page

INTEGRATION WITH GOOGLE SERVICES Google Data API

Google Data API: Authentication OAuth  is  an  open  standard  for  authoriza1on.  It  allows  users  to  share  their  private  resources  (e.g.  photos,  videos,  contact  lists)  stored  on  one  site  with  another  site  without  having  to  hand  out  their  creden1als,  typically  supplying  username  and  password  tokens  instead.    (source:  Wikipedia)    Authen:ca:ng  to  the  Calendar  service  To  request,  add,  or  delete  data,  your  client  applica1on  needs  an  authen1ca1on  token.  You  should  use  OAuth  as  your  applica1on's  authen1ca1on  method.  You  can  use  OAuth  directly  by  sending  raw  HTTP  requests,  or  you  can  have  Google's  client  libraries  handle  the  authen1ca1on  for  you.    (source:  Google  Calendar  API  Developer's  Guide)  

INTEGRATION WITH GOOGLE SERVICES Google Calendar Data API

Google Calendar Data API Calendar  API  feeds:  •   Calendar  •   Event  •   Comment  

Calendar  Resource  API;  manage  resources  such  as:  •   Conference  rooms  •   Projectors  •   Company  vehicles  

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

NOESIS m-meeting Mee1ng  management  system  that  allows  for  the  booking  of  appointments  and  resources.      Integrates  with                                                      and      Mul1language      Powered  by    

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Architecture

m-meeting

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Manage Rooms

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Manage Resources

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Reservations (month view)

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Creating the event User  clicks  the  Create  bu2on  

Get  event  components  like  loca1ons  and  par1cipants  

Do  whatever  processing  the  components  might  require  

Create  a  method  in  an  extension  that  accepts  all  the  components  

Move  everything  into  the  correct  Google.GData  structures  and  create  the  event    

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Google Calendar (day view)

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Creating an event (step 1)

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Creating an event (step 2)

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Creating an event (step 3)

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Google Calendar (month view)

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Microsoft Outlook Appointment

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Deleting an event

INTEGRATION WITH GOOGLE SERVICES NOESIS m-meeting

Microsoft Outlook Appointment

INTEGRATION WITH GOOGLE SERVICES Conclusion

Conclusion Sta:c  maps:  

•   write  an  URL  and  a  few  parameters  •   set  it  as  the  source  for  an  image  Widget  

OutSystems  Google  Maps  component:  •   get  the  API  key  •   reference  and  configure  the  component  •   control  Google  Maps  from  within  your  apps  

Google  Login  and  Calendar  API:  •   leverage  your  apps  with  Google  Services  •   a  li2le  more  work,  a  lot  more  func1onality  •   no  need  to  expose  your  apps  on  the  internet  

INTEGRATION WITH GOOGLE SERVICES Questions?

NOES

IS_n

ome-

docu

mento

Vx.x-

© 20

11 N

OESI

S PO

RTUG

AL

PORTO Rua Gonçalo Cristóvão, 347 Sala 204 4049-059 Porto Tel.: +351 22 400 47 13

LISBOA Av. Prof. Dr. Aníbal Cavaco Silva Edifício Ciência II, 13 - 2A/2B Tagus Park 2740-120 - Porto Salvo Tel.: +351 21 423 54 30 Fax.: +351 21 423 54 59 E-mail: [email protected] www.noesis.pt

CONTACT US