Okay
  Public Ticket #2728945
Amelia Integration
Closed

Comments

  • Pontus Wirsching started the conversation

    Hi,

    We're trying to create our own integration towards Amelia and are wondering where we start and where we can find any documentation for this.

    Thanks,

  • [deleted] replied

    Hi Pontus,

    thank you for the kind inquiry.

    Could you please provide more detail on what kind of integration you are having in mind, so that I can assist further.

    Thank you!

  • Pontus Wirsching replied

    We need the ability to programmatically add "Special Days" as we're syncing the available times from another system. We also need a hook before an appointment is added to also add it in our own system, if that fails we need to be able to interrupt the process in Amelia front-end and display a message to the user.

  • [deleted] replied

    Hi Pontus,

    thank you very much for clarifying!

    The Special Days currently need to be entered manually, unfortunately.

    Unfortunately we don't have hooks (action and filters) at the moment. What we have is a few JS hooks that is triggered depends on the view:

    window.beforeAddToCalendarLoaded()
    window.beforeBookingLoaded()
    window.beforeSearchLoaded()
    window.beforeSearchFiltered()
    window.afterSearchFiltered()
    window.beforeConfirmedBooking()
    window.beforeCatalogLoaded()
    window.afterSelectCatalogCategory(object_category)
    window.beforeCatalogCategoryLoaded(object_category)
    window.beforeCatalogServiceLoaded(object_category, object_service)
    window.afterSearchActivateService(object_appointment, object_serviceActive)
    window.afterSearchGoToSecondStep(object_appointment, object_serviceActive)
    window.afterBookingSelectDateAndTime(object_appointment, object_serviceId, object_providerId, object_locationId)
    window.afterBookingSelectService(object_appointment, object_serviceId, object_providerId, object_locationId)
    window.beforeConfirmBookingLoaded(object_appointment, object_service, object_provider, object_location)
    window.afterConfirmBooking(object_appointment, object_service, object_provider, object_location)

    JS files are modified (minimized) in public version of plugin (in our development environment is accessible), but unfortunately I can not send you our source code because that is the policy of our company.

    All those files that have extension .vue are compressed and minimized in JS files that is very hard and not recommended modifying. So in order to add some other features you can unminify the js and customize it.