My team and I were able to build a pretty good chatbot with Watson two years ago. We used Google for speech-to-text, however, as we found IBM's to be behind in that area. We had to use a Node.js proxy with a couple libs to parse out some natural language features (like time)...but overall it worked pretty well. At the time, it was the only open system I knew of to write things like this. Today, of course, there's the Alexa API from Amazon and Microsoft's LUIS, which are probably vastly superior for this sort of thing.