Another month and another raft of great content. Lot of activity springing up around the new Oracle Hospitality Integration Platform (OHIP) with its new OIC Adapter.
Oracle Integration Cloud is rich in adaptors for technology and major SaaS services both Oracle (E.g., HCM, ERP, CX) and non Oracle (e.g., Salesforce, ServiceNow). But the more observant may have noticed a new addition to the list of Oracle industry (vertical) adaptors joining the Utilities vertical is a new adaptor for Hospitality.
OPERA, and it’s integration service OHIP have been developing to bring first of all its 3000+ APIs upto date as RESTFUL and self service enabled as the OPERA product becomes a SaaS delivered solution. Not to mention provide a good developer experience with Apiary and resources such as Postman collections (more about this here).
The latest step (from 21.4.2) has been to further the simplify the development process through the use of low code integration OIC provides. You can read some initial blogs about it here, and I’m sure there will be more to come.
Today the Adaptor just supports the Property Management System (PMS) that is for us uninitiated the system element handling the hotels core operations such as rooms, housekeeping and associated tasks – the heart of a hotel based business. Areas such as marketing, cruise ships, point of sale (PoS) etc fall out side of PMS and are not covered today.
Why OHIP and OIC
OHIP and OIC really comes into its own because it is very easy to wire the hotel management solution to common services such as ERP and HCM functions.
For example if you’re operating a group of hotels, then each hotel will use an OPERA instance, but the group may well make use of ERP Cloud for the overall accounting, taking the costs etc identified in the hotel operations via OPERA and then those figures are put into the group ERP to provide the overall financial controls and picture.
The OIC Adaptor builds on top of the OHIP APIs, as a result the same restrictions on invocations, security needs exist as going to the native API. Like all OIC integration development we need to establish a connection definition which needs the URL of you OHIP instance, plus the same credentials you would use for a rest connection.
|Article / Link||Author||Subject Matter||Connecting|
|Field Level Encryption with Oracle Integration and OCI Vault||Stan Tanev||OIC, Vault|
|Process Excel files with OIC + Oracle Functions||Stan Tanev||OIC||Excel|
|Setup Email Notifications with the Oracle Integration Cloud||Daniel Teixeira||OIC||OCI Email|
|Oracle Integration Cloud – Twilio Adapter for SMS and WhatsApp||Daniel Teixeira||OIC||Twilio|
|Visual Builder – A Crash Course by Shay Shmelzer||Shay Shmelzer||VBCS|
|Configuring OIC Notifications||Niall Commiskey||OIC||OCI Notifications|
|Leveraging Grafana for OIC Metrics||Niall Commiskey||OIC|
|Using OIC Logging Analytics for searching OIC Activity Stream log||Niall Commiskey||OIC||OCI Log Analytics|
|Surfacing OIC Design Time audit logs in OCI Logging Analytics||Niall Commiskey||OIC||OCI Log Analytics|
|Using OCI Logging for searching OIC Activity Stream Log||Niall Commiskey||OIC||OCI Log Analytics|
|OIC docs link for restricting access to OIC instances||Niall Commiskey||OIC|
|Create a fixed-length file in Oracle Integration||Ankur Jain||OIC|
Latest updates, lots about use of Streaming with OIC ….
|Article / Link||Author||Subject Matter||Connecting|
|Installing OIC Connectivity Agent on OCI Compute||Niall Commiskey||OIC||OCI|
|OIC Pub/Sub with OCI Streaming Part 1, Part 2, Part 3||Niall Commiskey||OIC||OCI Streaming|
|OCI Streaming — create producer/consumer use case using ATP, OIC and Kafka connect||Omid Izadkhasti||OIC||OCI Streaming, ATP, OKE|
|OIC and Oracle Hospitality – Creating a Reservation with multiple rates||Niall Commiskey||OIC||OHIP|
|OIC Integrating Oracle Hospitality and Oracle CPQ||Niall Commiskey||OIC||OHIP, CPQ|
|Aug 21 New Features – Zendesk Adapter||Niall Commiskey||OIC||Zendesk|
|Oracle Integration Cloud – An Assistant for Developers||Daniel Teixeira||OIC|
|Capture Salesforce Platform Events in Oracle Integration||Ankur Jain||OIC||Salesforce|
|Ways to download connectivity agent Oracle Integration||Ankur Jain||OIC|
|Build a cloud native ecosystem around Oracle Integration||Andrew Gregory||OIC|
Setting up calendar schedules that aren’t simply reoccurring, such as a specific date in a month like 28th or third Friday, become more of a challenge with the OIC Scheduler. The calendar works with the ical standard set by the IETF standard 2445. If you review the standard’s section 4.3.0, this describes the reoccurrence options, whilst able, not able to address these needs.
Reoccurring on specific dates can, in theory, be set. If you review section 4.3.4, you will see a date has the potential to be defined as a comma-separated list. So multiple dates for month-end can be provided as a list. Note, this is predicated on the calendar attribute supporting date-mday (DATE). The DTSTART and DTEND attributes accept DATE with no indication that the date-mday is not supported.
Specifying the dates explicitly overcomes the problems of national holidays. The downside is that you need to know when the list needs to be extended and, in the case of OIC, the means to edit the scheduler format safely.
NOTE: we have not tested whether the OIC scheduler is compliant with the use of date-mday at the time of writing.
Complex formulas for scheduling and more manageable scheduling..
There are several options for managing reoccurring events, such as month-end, year-end accounting, payroll and expenses payments etc.
In most options, we assume that we have a simple reoccurring schedule that triggers an integration that determines whether the trigger is legitimate. This could be as simple as daily. If valid, then invoking the main integration with the business process.
This approach makes it very easy to adjust and test. Whether there are any more future schedule dates can also be overcome by having an integration that queries the table for the next date being set. If not date set, then the generate relevant alerts using OCI native tools.
The schedule is triggered regularly, e.g. daily, and the scheduler trigger invokes an integration then looks up the DB to see if the date appears in the list. When the date appears, then the integration is executed. It would be straightforward to extend this to trigger different schedules.
If an algorithm can be described for when the month-end processes should be performed, we eliminate the need to manage a list of dates. There are some ways to implement a formula, and you have the option of trying to do it OIC, but using OCI Functions – the formula is coded in the language of your choice and then packaged and deployed. The Function is then invoked using a REST web service to confirm whether the process should run (more on how here).
Handling public and national holidays. Not all national holidays are locked into an algorithm, or the holiday is fairly complex. That said, there are several API sources available that can tell you these dates, for example, https://holidayapi.com; this makes things easier.
The beauty of this process is that the same Function could keep a company website up to date with the next run date. Be integrated into corporate notifications and so on. As a result, one point of truth.
Enhanced Automation (feature wish …)
Unfortunately, OIC doesn’t provide an API to add new schedules. We can’t simplify the integration logic until it does, which adds the next calculated date for the process to run as a one-off schedule.
iCal Resources (inc Tools)
- https://icalendar.org/validator.html – validates ical contents
- https://ical.marudot.com/ – tool for defining iCal entries
- https://www.textmagic.com/free-tools/rrule-generator – another iCal format generator
It appears to have been an unusually quiet month, but that could be a reflection of the OIC release cycle as we’ll probably hear about the next feature set updates late in July.
If you’ve attended an Oracle conference or just aware of the wider Oracle ecosystem, then you’ll know of the Oracle APEX community and probably one of the communities’ highly respected and much-loved contributors, Joel Kallman. Sadly, Joel has passed on, another victim of Covid19. Our thoughts go out to Joel’s family and the community who have lost someone they value so much.