I want to make a unified “inbox” for messages from across multiple platforms, some of them are widely supported by all mejor chatbot services, like Facebook Messenger, others are more obscure like WhatsApp, but others are plain unsupported (like Steam Web Chat).
I’ve encountered several solutions that have some sort of “one-click” integration for the most popular messengers, but I can’t find one that will let you integrate third-party messengers (which ideally have an API to read/send messages at the very least) into a chatbot-like service. Is there such a thing out there?
PS: I don’t really care about fancy AI conversational support, I’d just like to receive all messages into, say, one webhook I can then act on, and also be able to reply to them.
3
Answers
What I would do is have a Node.js backend.
Direct every messaging integration to it and then direct that to API.AI.
So the flow would be like this:
API.ai doesn’t have an ‘integration pooling’ architecture, it treats each platform as a separate integration or conversation. Given that, you’ll have to build your own server side message pooling solution which plugs into all your 3rd party APIs, and then pools/queues messages across all streams before passing to API.ai, and with some messageID/tracking system on your server side solution to remember which 3rd party API to respond to with API.ai response. Something like this as an aggregate/pooling function should work:
There is a service called Message.io which does I believe what you want. They support the widest range of platforms.
Message.io sits between your bot and the messaging platforms, you receive messages in a standardized way from Message.io, and when sending messages out to users, it converts it to the appropriate format for the platform you’re responding to.