I am trying to integrate Microsoft Bot Framework with WhatsApp.
I already have existing bots (skype and webchat) that talk to the bot service and was trying to create a new channel for communication.
How can I construct this new channel?
I already have APIs in place that can send an receive messages from WhatsApp, I plan to hook my bot service when I receive a message from a user, but I can't figure out how to use my bot service as it accepts an a class Activity
.
There are a two possibilities to connect a bot to additional channels, using a custom adapter and using the DirectLine API.
My preference would be to use an adapter, since you will have a direct connection to the WhatsApp service which offers a lot of flexibility. However in some scenarios you could benefit from using a proxy service connected to the Direct Line.
In the end, you could use any provider you like, as long as they offer an API. For example providers like Twilio, RingCentral, InfoBip, LivePerson.
My recommended approach: Custom Adapter
Currently the following adapters for WhatsApp are available in the BotBuilderCommunity.
Examples of how to build a custom adapter can be found on the BotBuilderCommunity. (C#, Javascript)
Alternative approach: Proxy service connected to DirectLine
Example of how to build a proxy service can be found here: C#, Javascript.