Tuesday, September 22, 2026

#1176 OIC Fusion AI Agent Studio Adapter

Introduction 

This is a feature introduced in the 26.07.2 release. 
Kudos to my esteemed colleague Madhav P. and team for getting this out so quickly.

With this adapter, we can invoke a Fusion AI Studio Agent. Let's check out one of the agents on offer, before leveraging the adapter to do so.

Fusion AI Studio - Agents

I access these via the Workflows option in Fusion AI Studio. I run the OOTB, Employee Onboarding agent -

My prompt - please provide the person numbers, names, email ids, projected start dates and manager names of all pending employees whose projected start date is 2026-09-17 

The agent response - 

Thank you for sharing the pending worker details. Here's a summary of the employees to be onboarded with the projected start date of 2026-09-17:

  1. Rahul Mehta | Email: rahul.mehta@acme.com | Manager: E10
  2. Olivia Thompson | Email: olivia.thompson@acme.com | Manager: E10
  3. FlorenceTest56 HumphreyTest56 | Email: 56jewelhumphrey@acme.com | Manager: E10
  4. Ananya Iyer | Email: ananya.iyer@acme.com | Manager: E10
  5. Michael Williams | Email: michael.williams@acme.com | Manager: E10
Please let me know if you need assistance with onboarding steps, document preparation, or any other details!

Let's try out the same, using the new adapter.

Create the Connection

Security is JWT based. The pre-requisites for this, e.g. confidential app setup etc. are documented in the adapter guide. Check it out here.

I add the required input, then test the connection -

I have based mine on a shared connection; now to the integration.

Create the Integration

This is an app driven integration with a REST Trigger.

Send message and Get task are two of the operations offered by the A2A protocol.

Send message does as it says - sends a single payload/instruction to the target agent. The operation returns immediately with either a direct message response or initial task metadata, e.g. task id, if the request requires background processing.

Get task - can be used for polling the status of a particular task.

We will use both of these in the integration.

Firstly, Send message to Employee Onboarding - 

I set role to user and map my request prompt to text.

For demo purposes, I add a WAIT of 20 secs.

Then I invoke the agent again, this time to GetTask

Source Field for mapping - 
Target field - 

Now all I need is to map the integration response; the source is - 

Let's run the integration - 

I provide the same request I used directly in Fusion AI Agent Studio.
The response - 

{
  "response" : "Thank you for sharing the pending worker details. Here's a summary of the employees to be onboarded with the projected start date of 2026-09-17:\n\n1. Rahul Mehta (Person Number: 7690), Email: rahul.mehta@acme.com, Manager: E10  \n2. Olivia Thompson (Person Number: 7691), Email: olivia.thompson@acme.com, Manager: E10  \n3. FlorenceTest56 HumphreyTest56 (Person Number: 7683), Email: 56jewelhumphrey@ACME.com, Manager: E10  \n4. Ananya Iyer (Person Number: 7693), Email: ananya.iyer@acme.com, Manager: E10  \n5. Michael Williams (Person Number: 7688), Email: michael.williams@acme.com, Manager: E10  \n\nLet me know if you need assistance with onboarding steps, documentation, or any other details!"
}

Summa Summarum

This adapter makes it so easy to interact with Fusion AI Agents. Those agents can also easily leverage OIC based MCP tools, making this a very compelling ecosystem for your AI agents.

Cerevisia Aestiva

Today's beer, or should I say ale, is from the UK. I've just spent a very exciting week there, working on Agentic AI projects with some of our top UK customers.

The ale comes from Sharps brewery, which is located in Cornwall. The name refers to a treacherous sandbank in the locality. Doom Bar has a taste, second to none; a compelling combination of hops and malts, that is almost fruity, but with a light bitter aftertaste. 

Try it out, next time you're in the UK; and, if you're UK based, try it out tonight! 
 











  





Thursday, September 17, 2026

#1175 - Omnichannel Communication with Infobip

 


Introduction

Infobip Omnichannel is a cloud-based communication platform that unifies multiple marketing and support channels—including SMS, WhatsApp, email, and RCS—into a single, continuous conversation flow. By linking these touchpoints to a central customer data platform, it allows businesses to track customer history and context in real time. This ensures that users never have to repeat themselves when switching between automated chatbots, human agents, or different messaging apps.

So how do we leverage such value-add from OIC? Here's a simple demo of using the OIC Infobip adapter to send WhatsApp messages from OIC.

OIC Infobip Adapter

The Infobip adapter is available for download on the Integration Store - 


The adapter is now available in your connections list -





Invoking Infobip Omnichannel




As you can see, I need an api key to configure the connection. This I get from the Omnichannel portal - 

I need to specify scopes - for this demo I will be leveraging WhatsApp from OIC. I will also be looking at mcp, so this is reflected in my choice of scopes -

Under Channels, I choose all of the WhatsApp options.


You can check out the infobip docs here.

Back to my connection configuration - 

Looks good!

Now to a simple integration that sends a WhatsApp message.

Check out the actions supported - 

I see the numbers available to me - 

These numbers have been made available to me by Infobip; normally your number(s) would appear here.

The next page shows templates, these could be templates you have created and registered with Meta. Imagine a template for an initial marketing message to your customers. The template will have placeholders to which you can assign relevant values.

You can check out the template creation docs here.

This is the target structure you will see in the OIC mapper -

My template is called loyalty_promo and just includes the some text, akin to Dear {{Name}} we're thankful to have you as our customer. As a token of our appreciation we'd like to offer you {{NN}} % off on your next purchase...


Infobip expects the following payload format for this specific invoke - 

{
  "messages": [
    {
      "from": "YourFromNr",
      "to": "{{DESTINATION}}",
      "content": {
        "templateName": "loyalty_promo",
        "templateData": {
          "body": {
            "placeholders": [yourName, your%discount]
          }
        },
        "language": "en"
      }
    }
  ]
}

So I do the required mappings and test -

I've externalized most of the values in a lookup.

Let's test, by offering Renate a discount of 30%.

I check my phone - 








 



 







 







Tuesday, September 15, 2026

#1174 - Processing large files in OIC

Introduction

This post is just a couple of notes, primarily for myself, but maybe of interest to others.
The use case is simple - 
  • list files in /inbox on OIC File Server
  • for each file -
    • invoke an async integration to write the file to an on-premise directory
This is implemented by a scheduled integration that uses the OIC File Server Native Action to list the files in /inbox. It then invokes an async integration for each file; it that does the following -
  • check file size
    • if >= 10MB
      • use the FTP adapter to get the file reference from OIC File Server
    • else
      • use the OIC File server native action to get the file reference from OIC File Server
  • file ref used as input to File Adapter - Write File - invoke

Test 1

The async integration is as follows -

Here I use the file server native action to get the file ref. I then map to target as follows - 

I run the test - 

Scheduled integration lists 2 files - 

Only 1 is written to my on-premise directory - 

I check out the activity stream for the largeFile processing - 

I amend the async flow as follows - 


I use the FTP adapter (download) operation to get the reference to the large file. Naturally, the FTP connection is to my OIC File Server.

I run the integration again - 

Note, in the mapper for LargeFileWrite I just map source fileRef to target FileRef, i.e. no encode to ref(decode to ref) logic. This logic is required for the other path though.

Net, net, we need to use the FTP adapter for files greater than 10MB.