0
Open Source: topics<br />
Drupal & Sharepoint: <br />anintegration story<br />byStefaanPonnet, Fusebox<br />Speaker<br />
Publishing Sharepoint content<br />on your Drupal site<br />Stefaan Ponnet<br />
<ul><li>Sharepoint primer
Use cases forDrupalintegration
Sharepoint module : concepts
Demo
Status
Furtherwork</li></ul>Agenda<br />
Quick overview of Sharepointcomponents<br />Sharepoint primer<br />
Sharepoint primer<br />Components of a Sharepoint system<br />
Sharepoint terminology<br />FarmSPFarm<br />Site Collections<br />Site collection<br />SPSite<br />Root Site<br />Site SPW...
Interacting with Sharepoint components<br /><ul><li>Server Object Model
Client Object Model
.NET
JavaScript
Silverlight
WebServices
REST
WCF
SOAP
CMIS</li></ul>Sharepoint Interoperability<br />
<ul><li>Web Services
More coverage
Client Object Model
Site, navigation
security services
Upcoming SlideShare
Loading in...5
×

Stefaan Ponnet, Fusebox

1,064

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,064
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Stefaan Ponnet, Fusebox"

  1. 1. Open Source: topics<br />
  2. 2. Drupal & Sharepoint: <br />anintegration story<br />byStefaanPonnet, Fusebox<br />Speaker<br />
  3. 3. Publishing Sharepoint content<br />on your Drupal site<br />Stefaan Ponnet<br />
  4. 4. <ul><li>Sharepoint primer
  5. 5. Use cases forDrupalintegration
  6. 6. Sharepoint module : concepts
  7. 7. Demo
  8. 8. Status
  9. 9. Furtherwork</li></ul>Agenda<br />
  10. 10. Quick overview of Sharepointcomponents<br />Sharepoint primer<br />
  11. 11. Sharepoint primer<br />Components of a Sharepoint system<br />
  12. 12. Sharepoint terminology<br />FarmSPFarm<br />Site Collections<br />Site collection<br />SPSite<br />Root Site<br />Site SPWeb<br />Sub sites<br />Web ApplicationsSPWebApplication<br />Lists<br />Document Library - SPDocumentLibrary<br />List - SPList<br />Field 1 Field 2 Field 3<br />Field 1 Field 2 Field 3<br />Item 1<br />Item 2<br />Item 3<br />Item 4<br />Item -SPListItem<br />File 1<br />File 2<br />File 3<br />File 4<br />File – SPFile<br />Folder - SPFolder<br />
  13. 13. Interacting with Sharepoint components<br /><ul><li>Server Object Model
  14. 14. Client Object Model
  15. 15. .NET
  16. 16. JavaScript
  17. 17. Silverlight
  18. 18. WebServices
  19. 19. REST
  20. 20. WCF
  21. 21. SOAP
  22. 22. CMIS</li></ul>Sharepoint Interoperability<br />
  23. 23. <ul><li>Web Services
  24. 24. More coverage
  25. 25. Client Object Model
  26. 26. Site, navigation
  27. 27. security services
  28. 28. Very flexible and straightforward
  29. 29. REST
  30. 30. Easiest to use
  31. 31. For fixed list schema</li></ul>Clientside<br />Integrating with SharePoint not running on SharePoint Server<br />
  32. 32. Sharepoint as a document platform :<br /><ul><li>Document authoring / collaboration
  33. 33. Metadata
  34. 34. Workflow
  35. 35. Versioning
  36. 36. Enterprise search</li></ul>Drupal as a content publishing platform<br />- Intranet / website<br />Use case for a Drupal integration<br />
  37. 37. Main Goals :<br /><ul><li>Consume Sharepoint content in Drupal
  38. 38. Insert / update Sharepoint content from Drupal
  39. 39. Leverage Sharepoint Search in a Drupal site</li></ul>Sharepoint module : concepts<br />
  40. 40. RESTful interfaces:<br /><ul><li>Item == resource
  41. 41. Uniform interface
  42. 42. Low barrier
  43. 43. Interoperability
  44. 44. Advanced operations</li></ul>SP Data services possible approaches<br />
  45. 45. SP Data services : REST<br />
  46. 46. RESTful interfaces:<br /><ul><li>Item == resource
  47. 47. Uniform interface
  48. 48. Low barrier
  49. 49. Interoperability
  50. 50. Advanced operations</li></ul>SP Data services : REST<br />
  51. 51. SP Data services : REST<br /><ul><li>Operations map to HTTP verbs
  52. 52. Retrieve items/lists  GET
  53. 53. Create new item  POST
  54. 54. Update an item  PUT or MERGE
  55. 55. Delete an item  DELETE
  56. 56. These apply to links (lookups) as well
  57. 57. SharePoint rules apply during updates
  58. 58. Validation, access control, etc.</li></li></ul><li>SP Data services : REST<br /> Might be worth exploring !<br />
  59. 59. Client Object Model:<br /><ul><li>Only available for .NET</li></ul>SP Data services possible approaches<br />
  60. 60. Webservices:<br /><ul><li>Interoperability
  61. 61. Advanced operations</li></ul>SP Data services possible approaches<br />
  62. 62. * http://server:5966/_vti_adm/Admin.asmx - Administrative methods (creating and deleting sites)<br />* http://server/_vti_bin/Alerts.asmx - Methods for working with alerts<br />* http://server/_vti_bin/DspSts.asmx - Methods for retrieving schemas and data<br />* http://server/_vti_bin/DWS.asmx - Methods for working with Document Workspaces<br />* http://server/_vti_bin/Forms.asmx - Methods for working with user interface forms<br />* http://server/_vti_bin/Imaging.asmx - Methods for working with picture libraries<br />* http://server/_vti_bin/Lists.asmx - Methods for working with lists<br />* http://server/_vti_bin/SiteData.asmx - Methods used by Windows SharePoint Portal Server<br />* http://server/_vti_bin/Sites.asmx - Contains a single method to retrieve site templates<br />* http://server/_vti_bin/UserGroup.asmx - Methods for working with users and groups<br />* http://server/_vti_bin/versions.asmx - Methods for working with file versions<br />* http://server/_vti_bin/Views.asmx - Methods for working with views of lists<br />SP Webservices overview<br />
  63. 63. To access this Web service , use this endpoint :<br />http://<site>/_vti_bin/Lists.asmx <br />http://msdn.microsoft.com/en-us/library/websvclists.lists.aspx<br />More relevant methods:<br />GetListItems <br />Returns information about items in the list based on the specified query.<br />UpdateListItems<br />Adds, deletes, or updates the specified items in a list on the current site.<br />Lists Web Service<br />
  64. 64. <ul><li>Drupal 7 module
  65. 65. API functions for accessing SP webservices
  66. 66. Search tab for Sharepoint content
  67. 67. Feeds integration for
  68. 68. Field mapping
  69. 69. Managing import of data to nodes/taxonomy
  70. 70. Views plugin
  71. 71. Use Views module to display SP content</li></ul>Sharepoint module : components<br />
  72. 72. <ul><li>Work in progress
  73. 73. Proof-of-concept code
  74. 74. 3 days of code sprint
  75. 75. Search , Import etc. Works on SP 2010
  76. 76. Released on drupal.org
  77. 77. http://drupal.org/project/sharepoint</li></ul>Sharepoint module : current status<br />
  78. 78. <ul><li>Provide standard CCK type for Sharepoint content ( ListItem )
  79. 79. Verify compatibility with Sharepoint 2007
  80. 80. Backport to D6
  81. 81. File download proxy
  82. 82. Caching imported documents
  83. 83. Offloadig bandwidth to Drupal</li></ul>Sharepoint module : Further Work<br />
  84. 84. <ul><li>Look into CMIS integration
  85. 85. Content management Interoperability Services
  86. 86. http://drupal.org/project/cmis
  87. 87. Bi-directional synchronisation
  88. 88. Explore JavaScript web service API for Sharepoint
  89. 89. http://darrenjohnstone.net/downloads</li></ul>Sharepoint module : Further Work<br />
  90. 90. <ul><li>Solve the firewall dilemma</li></ul>Sharepoint module : Further Work<br />Drupal webserver<br />?<br />Sharepointserver<br />
  91. 91. <ul><li>Push content through WebPart ?</li></ul>Sharepoint module : Further Work<br />Drupal webserver<br />Content push<br />Sharepointserver<br />Drupal webpart<br />
  92. 92. <ul><li>Stefaan Ponnet – Virtual Consulting Labs
  93. 93. stefaan@virtualconsultinglabs.com
  94. 94. Thanksto the followingpeopleto make thispossible
  95. 95. Fabian Sörqvist , Greg Dunlap @ NodeOne
  96. 96. Denis Heliszkowski , Michaela Kraft @ Microsoft
  97. 97. Kristof Van Tomme @ Pronovix</li></ul>Q & A<br />
  1. A particular slide catching your eye?

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

×