I can't set up the Facebook integration with IBM Watson Assistant. Callback URL 404 error - facebook

Following the instructions for adding Facebook Messenger integration to an IBM Watson Assistant (Watson Conversation chatbot) it all goes well until adding the callback url to the webhooks setting in the Facebook app messenger settings.
The URL returns a 404 error.
Has anyone seen a fix for this?

I have managed to find a fix for this. Basically although you can create a Watson Assistant service in any region (EU, USA, Asia etc etc) the integrations only work on services created in the USA region. I recreated the service in Dallas (which created a USA based callback URL) and the Facebook app accepted that url with no issues.
Note I have seen this behaviour with IBM Cloud Functions too. Calling cloud functions natively (which are extremely powerful) from Watson Assistant also requires the service to be USA based.

Related

IBM Watson Assistant: How to get json response into button options

I'm working on a flight reservation chatbot using Watson Assistant chatbot that connects to IBM Cloud SDK through Java API. My idea is to get the API results, from a client's flight search, and set the json response into different button options using Watson. The problem is that I'm not finding a way to do it, can someone help me?

IBM Watson Assistant: Multi-workspace for Facebook page?

We have integrated a Watson Assistant skill/workspace with Facebook page using Watson-provided integration approach from virtual Assistants tab.
We are able to get the response from single skill/workspace. Now we want to add another skill/workspace to the integration, but we are not able add it.
Please let us know how can we enable multiworkspace approach for FB integration using watson provided integrations.
At this time, you can only have one skill per assistant. You can swap existing skills using the tool.
If you are using the Watson Assistant API (V1 only) from an application, then you have access to multiple workspaces / skills. See the Botkit Middleware for Watson Assistant for an example of dynamically switching workspaces. It is based on the Watson SDKs.

Google plus API is shutdown. What to do in ionic 3 app?

I have an ionic v3 app and I have google plus login in it. I recently got a mail from google stating "Google+ API Shutdown"(refer here for more details). Google team has also said:
If you see API calls to people.get, these can be the result of using
the Google+ Sign-In feature in your application, which is now fully
deprecated and is being shut down. Developers should migrate from
the Google+ Sign-In feature to the more comprehensive Google Sign-in
authentication system.
You may see OAuth requests for plus.me, even
if your project is not requesting this scope directly. You only need
to remove such requests if your project is directly requesting this
scope.
I currently use'#ionic-native/google-plus' plugin.
Can someone let me know what should I do with the google plus API in case of an ionic v3 project ?
I've been told (secondhand) that although the plugin is named google-plus, it no longer uses the Google Plus APIs.

IBM watson chatbot for facebook messenger

I am trying to implement IBM Watson chatbot into facebook messenger. I am able to verify my webhook. Also, able to receive and send custom messages through facebook to my webhook.
The problem is that i can't receive messages from IBM Watson. IBM Watson is not able to detect my messages and provide appropriate response. Also, can't receive my welcome message from IBM Watson in facebook messenger when chat window is opened. The tutorial which I followed was on youtube and the link is https://www.youtube.com/watch?v=FdsjS7ZnPLw
Any suggestion would be a great help. Thanks.
The most common cause is not subscribing your webhook to a page after creating it.
The UI doesn't appear until you create your webhook in FB (It's been a year since I have had to do it, so it may have changed).
If that is set up, try connecting to your application layer in postman and make sure you are sending and receiving the right information.
Regarding Welcome message:
The Welcome node of your dialog is not processed by the Facebook Messenger integration. The welcome message is not displayed in the Facebook chat like it is in the "Try it out" pane or in the Preview Link integration web page. It is not triggered from here because nodes with the welcome special condition are skipped in dialog flows that are started by users. Facebook Messenger waits for the user to initiate the conversation. If you need to set default values for context variables at the start of your conversation, do not set them in the welcome node.
for more information check: Integrating IBM Watson Assistant with Facebook Messenger

How to integrate Facebook with Watson conversation

I can already connect my conversation to my Facebook page and the bot is working.
My Problem is that i couldn't find a single tutorial on how to make calls to a server that is owned by a company and has information about accounts and payments, for example when i type to the Chat-bot that i want to see a list of accounts, the chat-bot would reply with a list from that API; Or i can login to that server with my account by typing the account's name and password in the chat-bot. I just wanted to know if anyone knows how to do that or if its even possible or knows a tutorial that explains it. I also would prefer if the tutorial was detailed because i'm new to this field.
As #Felipe Paixao said, you need to develop an orchestrating application.
I've found one example that explains step-by-step how to use Watson Conversation with Facebook Messenger.
Requirements:
Facebook page
IBM Bluemix
A Facebook Developer Account
Source code.
Step - IBM Bluemix:
Create a SDK for Node.js application
Create a Watson Conversation service
Create your Workspace for Watson Conversation and build your Dialog
Configure the JS app and integrate it with the Watson Service Connections -> Connect Existent:
In your App created in IBM Bluemix, access the Tools and go to IDE Eclipse, and create a new file: app.js with this code.
Replace with your credentials the username and password
You can see your credentials inside Service Credentials, or going to your workspace and access:
Step - Facebook Developers:
Enter to facebook developers with your Facebook account
In the Dashboard select Create a New App and Select Messenger
Put the URL from your Bluemix (Now IBM Cloud) app and select the options marked: messages, message_deliveries, messaging_options e messaging_postbacks.
Now, return to our app to configure the app.js file with our new FB token autogenerated and deploy it.
Step Final
Test your chatbot: If you made everything OK, we will have your chatbot available on your Facebook page.
Obs.: For built your example, you can add the lines of code for call your API in the app.js using the http module, using the Advanced JSON in Watson Conversation and create one "action": "callApi", and recognize with your code for do something, like this example.
See the Official Reference that I used to build Facebook Messenger with Node.js SDK (Back-end) source code based on Priscila Parodi codes.
You need to develop an orchestrating application, that would be responsible to connect the IBM Watson Conversation with your desired Fronted, Facebook in this case, and the Backend systems. I imagine that you are using the automatic deploy to Facebook from the Conversation Tooling, this option would not resolve your need to access a Backend.
The image passed by #data_henrik shows exactly that.
In conversation, you can create context variables that will be used as triggers in the Orchestrator to let him know when you need to call a Backend service to provide an information and then write the response into the Conversation context.
About using the Chatbot to login into a system, passing a password, this isn't a safe option since all information typed would go to Watson Conversation log and any person with access to the tooling/api could see the passwords.