Hi there,
We are using silent booking to book events into the SRM booking manager. Recently, we have been having issues where an event will not book in SRM at the requested time. After it fails to book, manual booking will also not work and there is no error message present, simply nothing happens.
The only way to resolve this is by deleting anything any surrounding bookings of this event on the same resource and then booking again. On occasion, we do have back-to-back events with a buffer between the two of 5 seconds between the end time of the first event and the start time of the second event. Is it possible that this may be causing issues?
Thank you in advance,
Tyler
Hi Jorge,
From what we can tell this is not an overbooking issue. We already have logging enabled for our silent booking and there are no error messages present when the event attempts to book, simply nothing happens. In addition to error logging, we are checking the availability of a resource by using the GetReservationsFromContext() method and checking the start and end time of the booking we want to make to ensure that the slot is available before even attempting to book. If the resource was not available in the given time then the silent booking would simply not book.
In addition to this, when this issue occurs we are prevented from doing manual bookings as well. Manual bookings in SRM is our backup solution we use when we have a scheduling issue, and manual booking doesn't work either. Again, nothing happens when we try a manual booking and our manual booking script is the same script that comes standard in DataMiner created by Skyline.
Thank you,
Tyler
I should clarify that when the silent booking checks ahead of time when a time slot is not available this is logged in our protocol. These errors on not present in this scenario.
I need to understand a bit better your solution to be able to help, does your solution calls the method BookingManager.(Try)CreateNewBooking?
If so you still don’t have any log when you say nothing happens?
Would it be possible to check what you pass along to that method when you have the issue?
Apologies, I was able to resolve the issue that was happening in a meeting with a couple of the DM engineers. It turns out that one of the built in SRM library methods was not reading availability correctly and was throwing an error when there was in fact space in SRM for a booking. This was causing certain bookings to not book when there was available space.
To resolve this I have instead opted to create my own method that checks availability based on a different set of logic which was approved by DM engineers. This has since resolved the issue after being implemented in the script in production with no booking issues since this was applied.
Hi Tyler,
If deleting bookings that use the same resource fixes the issue it seems to indicate that there is overbooking of a resource at some point, though to further debug we will need more information.
On your silent booking script if you use method BookingManager.CreateNewBooking you should receive an exception with more details, if you can post the stack trace would help us to point out the root cause. If you use method BookingManager.TryCreateNewBooking you need to have logging enabled on that booking manager, then you will need to search for the correct log file (search by time is the easiest way) in the windows folder.
I see that this question has been inactive for some time. If you still need help with this, could you answer Jorge’s questions below? Or if you have found the solution in the meantime, could you select the answer to indicate that this question is resolved, or post how you managed to solve this, for the reference of other users?