17 Replies Latest reply on May 20, 2014 4:50 PM by tone

    Extending Events Functionality?


      Hi Community,


      Currently, the events module addresses calendar-related use cases - when is this meeting, when is that BBQ, etc.


      However, when it comes to use cases that call for no tolerance for double-booking, such as "No dude, you have an non-important BBQ to attend, so you can't schedule that mandatory meeting in that time slot. You gotta remove the BBQ appointment first," there seems to be no functionality for that. There also seems to be no functionality for setting alerts when double-booking happens or is attempted, understandably.


      So here are a couple of questions:


      Is there a way to cleverly implement a double-book block using current Jive Cloud functionality?


      If not, I'm trying to think of various Jive Cloud extension methods that can do this (tiles, apps, etc., that can access events extension points, if they exist?), but before I start barking up the wrong trees, any thoughts from the Developer community?



        • Re: Extending Events Functionality?
          Ryan Rutan

          This is a good question, and the problem with implementing this with Jive today (IMO), is that the Events construct does not have the notion of preserving a person's preferences for "hold this as blocked" or "this is more important than that" ... it is exactly as you mentioned, it reserves a blocked set of time and makes sure the person knows about that commitment.


          If you were flexible on some of the requirements, you could do something along the lines of ... allow the event to occur but then use something like a WebHook to scan for conflicting meetings and perform the appropriate business logic.  For example, in a specific place, you could make an add-on configuration that says ... do not allow overlapping meetings, or other business rules.  Then listen in that group for new events, and check their dates/times and perhaps even tags or other data to determine if you should perform that logic.  Once you determine the conflicts, you could perform corrective action and notify the group via a status update or the new event creator(s) that there is a conflict and that they should change.  Basically this solution relies on your ability to trap and detect the conflict and your ability to articulate business rules for the desired behavior.


          That being said, calendar management is a slippery slope and if you start going down that domain, it's usually best to bring in a real calendar solution to manage this type of stuff.  As such, things like Google Calendar or other cloud calendaring solutions could be brought in to help with the business logic and all you would need to do is wire up the WebHooks to sync the two systems and interactions.


          Does any of that help?

          1 person found this helpful
            • Re: Extending Events Functionality?

              Thanks for sharing your thoughts!


              Actually, those kinds of proposed solutions were exactly what I was hoping for. They both sound like great ideas.


              While syncing with 3rd party solutions sounds like the practical option, writing business logic sounds like it could be pretty powerful if done right (as well as serve as a good Jive programming workout session).


              Anyway, I guess the next step would be to get smart on Webhooks.


              Thanks again!



            • Re: Extending Events Functionality?

              Are events supported by the API?  I was thinking it may be a good way to create some recurring events, but I went looking and couldn't find an event object..


              Sorry, slightly off topic from your original question, although it does fit under the extending events heading…