ESIP Drupal Working Group Meeting
The Drupal Working Group will be meeting to talk about issues and opportunities for the coming year. We will be planning the year’s demos on the monthly calls, and beginning to plan for DrupalCon in Portland and for the ESIP Summer Meeting workshops.
We will also be looking at the new Drupal capabilities of the Federation and ESDS, and at the needs of ESIP Drupal developers and website maintainers.
ESIP Drupal contributor, David Bassendine will be talking about connecting Drupal to web services.
Here is a similar talk he gave at Drupal Camp Atlanta:
http://www.slideshare.net/DrupalcampAtlanta2012/talking-to-web-services-...
The Working Group will also hold elections for chair and vice chair/co-chair.
Established about a year ago
There will be a full Drupal workshop/lab at the summer meeting in NC
David Bassendine: will discuss connecting to services
David Bassendine
"Talking to Web Services: The outside world from Drupal"
background: ESIP since Sept '12, working on Bluedotlab start-up currently. Interested in intersection of Science & Society
"Web Services"
- open data online: volume growing
- E.g. World Bank data portal
Moving forward: 2-way communications in Drupal can feel daunting
Two demos: EOSDIS, ECHO API and AgileZen
Steps:
1. Is there a module that already? Usually not for earth sciences. (Bruce: we're pioneering how to connect to services coming out of agencies. Why important to share expertise) (other: Drupal is client-side service for the many web services out there)
Q: where search? Is there a clearinghouse?
A: Drupal.org, and there is an ESIP group where can talk to larger community
2. HTTP and REST: standardization of how we communcate
HTTP Comm.s: web browsing, request and response
In REST architecture, gives you information about your request. Other services may embed the information
3. API Documentation
URLs and path strutcure, JSON or XML
Agile Zen and ECHO both RESTful but differences in authentication, resources and data formats
4. Test in the browser
GET test (simple URL)
POSTer test (XHR Poster in Chrome)
Saves lots of time to run through these steps, making sure works the way its documented
DEMO
Can do request right in Chrome browser
A few different REST APIs with ECHO. Demo retrieving list data sets JSON format, default returns first 10
5. Plan the approach in Drupal
Diagram given to map approaches in Drupal to the API
Drupal services, REST service, any service (Drupal Core HTTP API)
Drupal Core HTTP: Drupal 7
ECHO: REST but requires XML
Flexible, but more code, less consistency, encoding/decoding
ECHO API: string query, sned, wrapper around Drupal HHTP request, get metadata about response and error handling, decode XML data packet from ECHO
REST API Query API: Drupal 6
less code, no XML support
Agile Zen API demo
Where next?
Triggers (hooks such as users, rules action book allowing configure a call to happen when certain criteria occur)
Internal (logging, queue job at certain intervals, job scheduler)
Export (views with data module)
Further reading resources (available in powerpoint)
Questions/comments
Bruce: In ESIP have the people both building services, and the user community. Opporunity to optimize, what recommendations can we give to the poeple building the services?
David: Consistency and good documentation across the board will be helpful, for instance using JSON. Makes it more user-friendly, and the main barrier to entry is documentation. Would be good to get feedback on how people are planning to use services in Drupal and what people need to do.
Q: as part of this group are we building modules?
A: we're supporting whatever people need to do for their projects. Rahul also has an award to program some modules with common benefit for NASA and could work with that group.
A: Working on module with ESRI to create/present maps