Integrating Watson Assistant (formely conversation) with Telegram/Facebook - node.js

I am confused about how to integrate my Watson bot on messaging platforms such as Facebook messenger. To build that bot, I used the Watson Conversation service and also used Bluemix cloudfoundry node.js app to expose it on the web. It works very well, but I just can't integrate it to platforms without the use of a third-party platform like stamplay. I don't really want to use third-party platforms to integrate my bots.
Anyone have any ideas? Maybe I can host my own bots on my Bluemix cloud platform? I just don't know how.

You might want to use some facilitators for this, like Node-red or NGROK.
Use Node-red to Integrate Watson Conversation with facebook easily.
Use NGROK, Tanmay Bakshi teaches how to do that. Check this tutorial.
With Node-RED you can create functions, and have a lot of options for Business rules for your application.
Note: I've built some open source basic example to Integrate Watson Assistant with Telegram and Facebook using Node.js. You can follow the instructions or read the docs in the repositories.

This middleware plugin allows developers to easily integrate a Watson Conversation workspace with multiple social channels like Slack, Facebook, and Twilio. Customers can have simultaneous, independent conversations with a single workspace through different channels.
https://github.com/watson-developer-cloud/botkit-middleware

I created a starter application for this purpose. My example is for Slack and you easily use it by creating an slack API token.
The starter is implemented in node-red and you just need to insert your API token and the rest is deployed automatically. I used Watson Conversation and Natural Language Understanding.
One-Click-Deploy and more detailed description:
https://github.com/BenediktKrueger/SlackBot-Starter-on-Bluemix

Related

How to integrate dialogflow chatbot with Microsoft Teams?

I am a newbie to chatbots, and built one agent in dialogflow and written a node server to connect it with my custom UI. Now my next requirement is to integrate this bot with my Microsoft Teams Channel.
For what I have searched there seem to be similar steps being followed as with skype but those didn't make sense to me. Though I am not really clear about it, if anyone can give a step wise points to follow to do the same, it will be great help.
Also just to be clear, can someone confirm if it's really possible to integrate Google's dialogflow with Microsoft's Teams?
I don't know of any official instructions explaining how to connect a Dialogflow bot to Teams, but Skype and Teams both communicate through the Azure Bot Service using the Bot Framework protocol. When a Dialogflow bot connects to Skype what it's really connecting to is the Azure Bot Service, so you should be able to follow the same instructions for any ABS channel, Teams included.

Integrate Google Assistant to Facebook Messenger using Action Builder

In DialogFlow exists an option to integrate automatically to Messenger from Facebook. How can I do the same integration using Action Builder on Actions Console? Is it possible or a hybrid version is a better option to implement?
Thanks a lot!
No, there is no integration in actionbuilder to integrate with any platforms other than Google Assistant. Action builder is intended to improve development for actions for Google Assistant by bringing the conversation design part of development into the Actions Console.
If you want to develop for Messenger you are better off sticking with Dialogflow.

Whatsapp as a channel with Microsoft Bot Framework using Clickatell

Working with a customer who wants to use Microsoft Bot Framework and "Whatsapp" as a channel. Though Whatsapp has released its public business API, it is still in limited public preview and Microsoft Bot Framework understandably doesn't yet support it. As an alternate, we are planning to use "Clickatell" for whatsapp integration, where Bot Framework would call the Clickatell APIs and enable integration with Whatsapp. Has anyone worked on this scenario and can throw some light on any challenges? such as how this custom channel would work and how security etc would be handled in the non-standard channel (Whatsapp)
Thanks
If I understand this correctly – Microsoft/Azure Bot will allow the business to implement AI based bots specific to their business to interact with users on various channels, WhatsApp being one. This can be done today, and will have no bearing on any roadmap items. This is how Clickatell Touch integrates today.
If there is an expectation to enable a bot within the WhatsApp application to make the interactions “rich” (like in FB messenger), then that will be a discussion with WhatsApp directly.

Customise Azure bot framework in NodeJs using DirectLine JS

I am looking for a solution which has Customised Azure bot in website. I am not looking for an iFrame integration, As i have already explored. I need a solution which gives me an option to make UI changes in the bot window and invoke Live agent Chat window(Third party) from the existing Chatbot.
I tried these link below which dint help
https://github.com/Microsoft/BotFramework-WebChat
I understand exactly what you need.
It's true that the github url you pasted won't help but I know you'll get a lot of tips from the Direct Line and DirectLineJS documentation from the Advanced part.
You simply need a way to integrate to the Bot Framework from your existing UI system and hence using the Bot as just an Endpoint.
Your solution lies in the actual implementation methods for various channels that is supported by Bot Framework. Take Skype or Facebook for instance.
You need to study and configure WebHooks, Direct-Line Channels.
First: Use the Azure Portal to add a new website to your Bot in Channel property.
Secret Keys would be generated for you after then you can configure for version 1.1 or 3.0.
Check the Documentation here: https://learn.microsoft.com/bot-framework/rest-api/bot-framework-rest-direct-line-concepts
Now your site can be configured to talk to the Bot Framework via Web Clients and Sockets as API requests.
With these, you have the priviledge to use your own UI with the Bot Framework.

Using Bot Framework, all chat messages need to be proxied through Microsoft servers?

Until now I have developed bots using each platform API directly, so that communication takes place between my bot and the platform like this:
My Bot <----> Telegram/Slack servers
I would like to use BotBuilder SDK to simplify bot development and unify communication to multiple Bot platforms (Telegram, Slack, etc.).
However, it looks like using BotBuilder also implies using Microsoft servers as an intermediary relaying all chat messages between each platform and my bot:
My Bot <----> Microsoft servers <----> Telegram/Slack servers
Is it like this? Using BotBuilder SDK messages need to be proxied through Microsoft servers?
(I expected that the BotBuilder SDK library would directly provide the features of adapting message format (between the unified format and each platform/channel format) and communicating with each platform API, but it looks like this is really done by Microsoft servers.)
If this is really the case, which components would need to be reimplemented/overriden to be able to communicate directly with each platform REST API? The Bot Connector service? Is there any example available? Thanks

Resources