1

I have being working with on-premise sharepoint 2013. and a lot of functionalities i have been doing were implemented inside Event Receivers when item added/updated.

Where inside Visual Studio 2012 Professional, i create the event receivers and using server-side object model SSOM i update certain fields, send API requests to external system , send emails, etc.

Now we are going to work with office 365 sharepoint, and as i know event receivers + serve-side object model are not available inside sharepoint online.

So let say i want to implement a scenario such as:- an item Priority will be set to "high" if the user who create the item is within the "Company Manager" security group.

Now inside SharePoint 2013 on-premise, i would create an event receiver using VS 2012, and using server-side object model will allow me to access the item fields , security groups , and then updates the item Priority field.
so inside sharepoint online what will be the appraoch i need to follow? which mimic Event Receivers & SSOM ?? Thanks

4

You have two options for this type of event handling when developing for SharePoint Online: Remote Events Receivers and WebHooks.

Remote Event Receivers are similar to Server-Side Event Receivers but instead of the event triggering a call to code running on the SharePoint Server, it triggers a call to an external web service. In that web service you can use the Client Object Model to interact with SharePoint. See Use remote event receivers in SharePoint for more information.

The other option we have is Webhooks which are more of an industry standard way of handling events with a web service. You register your endpoint as a handler for an event and then SharePoint will send a message to your endpoint when an event occurs. See Office Dev PnP Web Cast – Introducing SharePoint WebHooks for more information.

  • now i am starting learning about apps mainly to write remote event receivers. but generally speaking should the remote event receiver which get called when list item are create, updated, delete be created as SP-hosted app(add-in) or provider-hosted app(add-in)? or both will work? – john Gu Nov 19 '16 at 1:23
  • 1
    Remote event receivers are part of a web service that is hosted external to SharePoint. So, by definition, they are provider-hosted. If you add a remote event receiver to a SharePoint-hosted App, a new project gets added to your Visual Studio solution (this project contains the implementation of the remote event receiver) and your SharePoint-hosted App now becomes a hybrid app - part SharePoint-hosted and part provider-hosted. – Rob Windsor Nov 19 '16 at 2:11
  • so you mean i can have my remote event receiver as provider-hosted OR as hybrid ?? but can not have my remote event receiver as SP-hosted only ?? – john Gu Nov 19 '16 at 3:06
  • 1
    That is correct. You cannot have just a SharePoint-hosted app that has a remote event receiver. – Rob Windsor Nov 19 '16 at 3:20
  • 1
    I can't explain everything about remote event receivers in a comment. There are lots of resources to help you, a Google search for "sharepoint remote event receivers" should give you more than enough to get started. – Rob Windsor Nov 19 '16 at 3:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.