How do I make my Chatbot to ONLY answer from 6pm to 8am - IBM Watson - chatbot

I've made a chatbot in IBM Watson with the graphic tools (not coding so far), but there's no option to make it have a schedule. Would you guide me using the basic plan?

Create a top node called input and under If assistant recognizes
Add now().before('18:00:00') and now().after('8:00:00') - Time is in 24 hour format
Assistant responds --> Text --> We are Open only between 6 PM and 8 AM everyday
Then assistant should --> Skip user input
Add another node called welcome and under welcome
Assistant responds --> Text --> Welcome, how can I help?
Check the Expression language documentation to understand more about the use of now()
Once done, click Try it to see the chatbot to respond only between the times mentioned

Related

Integrating Dialogflow with an already existing project on actions on Google

First of all, thanks for taking the time to read through our issue.
So, we have a Dialogflow project connected to an already existing google project. When we try to test our skills on google by the Integrations tab, it displays an error 'Precondition check failed' without any more information, even though it still updates and uses our Dialogflow intents as it should.
The problem comes when we update anything on the actions console or try to make an alpha deploy of our skill. The moment we change anything, it comes back to the default configuration with the message 'Start building your action by defining the main invocation.' on the main invocation.
We have no clue how to handle this problem or if we have to configure something special on either of the systems to make it work. Any ideas are welcome.
If you want to integrate the Google Assistant with Dialoflow, I strongly recommend you check the new development Google Assistant's platform with a built-in conversation builder, here. Furthermore, there is a quick start guide and conversational actions guide.
As I mentioned in the first comment, you need to have appropriate permissions to create an interaction within Dialogflow, you can check the pre-defined roles here. In addition, since you are starting with Dialogflow, I would advise you to start with the available quick-starts and the setup tutorial, which explains how to begin using Dialogflow.

How to extent sample project for IBM Watson Assistant to display more than text answers?

I am currently testing the IBM Watson Assistant and one of its Node.js sample projects. I have configured options like (options, images, connect to agent and pause) in Watson Assistant. In the sample app, those options are not shown in the chat window. Why? How can I add them to the bot?
From a quick look at the source in https://github.com/IBM/watson-banking-chatbot/blob/master/public/js/conversation.js#L90 it seems that the code only prints out text. See the IBM Watson Assistant response types for how options, images and more are encoded.
It seems you would need to extend the code in how to compose the actual output based on detected response options.

How to keep Google Assistant Behavior but also trigger IFTTT

I know you can make custom Google Assistant triggers that will invoke IFTTT. But I want to make a custom trigger that will do something but /also/ keep the default Google Assistant behavior. Is there a way to do this?
Description of my actual goal: I speak German as much as possible at home with my daughter. But there are times where I don't know a word, so I can say "OK Google, what is $word in German?" and it will speak it to me. This is very useful.
Then I manually add that word to my vocabulary list to study it.
I would like to write my own Python/Node microservice that will receive the word and generate flashcards (do a lookup on Linguee for sample sentences, for example) in my study program automatically.
But I would also like to keep the Google Assistant behavior that reads the translation back to me on my phone.
So is there a way to accomplish this? Basically instead of having a trigger invoke Google Assistant, I'd like it to do that and also do a second behavior (issue a POST request to a custom URL).
Thank you.

Rich message chatbot in Web Demo using API.AI

I am creating a chatbot for my website, I want to add clickable images, links, buttons in chatbot using Web demo in APIAI. How Can I achieve this?
You can't achieve it using Web demo. As name says it is only demo where you may test flow of your dialog - if api really can transform your language into intent ;) So good to share with your friends and ask them for feedback and maybe improve your feed data - not for a rich client in production.
You may build you own client using their javascript sdk for example - https://github.com/dialogflow/dialogflow-javascript-client. If you know html, css and basis of javascript you should be good to go.
There are many platforms that help you to add rich messages to your chatbot with simple steps.
Following are the platforms where you can build your chatbot with rich messages.
Dialogflow
Kompose
Amazon Lex
IBM Whatson
Kompose will help you in building a rich message chatbot without coding knowledge, it is a GUI platform where you will have to just click on buttons, link buttons, images to add the rich messages.
Once you are ready with the chatbot, copy the install script available in the Kommunicate install section and paste it into your website HTML page to add the chatbot to your website.

How can I integrate Bluemix Conversation and Speech-To-Text and Text-To-Speech

I would like to use the Bluemix Conversation sample application
and add speech input and output to it. There are other sample applications for Bluemix TTS and STT available.
What are options to integrate these 3 functions and which of them are recommended for beginners?
There are no immediate plans to provide a 'simple' sample app which demonstrates combining Watson STT (Speech to Text), Conversation, and TTS (Text to Speech). Longer term it is definitely on the radar.
In the immediate term, to get an idea as to how to do this, please take a look at the car-dashboard app code:
https://github.com/watson-developer-cloud/car-dashboard/blob/master/ui/index.html#L85
https://github.com/watson-developer-cloud/car-dashboard/tree/master/ui/ibm
https://github.com/watson-developer-cloud/car-dashboard/tree/master/speech
https://github.com/watson-developer-cloud/car-dashboard/blob/master/ui/ibm/stream_speech_to_text.js#L34
The car dashboard app uses the IBM Watson Speech JS SDK:
https://github.com/watson-developer-cloud/speech-javascript-sdk
Hopefully this helps.
This is an old question, but IBM Watson is still evolving so this may be a more up-to-date answer.
You have 2 options.
You can simply have your app submit an HTTP REST request (either GET or POST) by following this tutorial
Or you can leverage a language-specific SDK.
If you're using nodejs, then check out this example.
For java, see this example.
Edit
Here's an example git project I created to integrate text-to-speech to the conversation-simple sample app: conversation-simple-with-text-to-speech
Here's the specific commit where the integration was added: commit 3564aeb
I did something along these lines with the Dialog service demo app and the Speech JS SDK a few months ago:
http://speech-dialog.mybluemix.net/
Full code is on github but almost all of the changes were in this commit.
Note that it was built on an older beta of the SDK. You can get the latest release from github releases or npm (for use with webpack/browserify/etc.) and there are lots of examples.