I think I am lacking conceptual knowledge on this topic. I have searched all around and I have not really found anything specific.
I want to create a bot in telegram, and communicate that bot with Watson Assistant. So all the logic is done by Watson, and the messages that go to telegram from a user, go to Watson, and the responses go from Watson to Telegram. This is easy.
The "middleware" or orchestrator, as far as I've seen and only if you want one (no need to have this), is in node-red, or node.js.
But what if I want to do it in Python or Java? For example: Python if I want to implement a bit more of personal AI behind it, or Java if I want to use some parameters that the user sends to the bot, to do things (for example, buy a film in an api, or do something on a personal app).
I have seen libraries to create telegram bots, in Python and Java, but I really do not need this.
And the docs that IBM offers, as for what I have looked, are not useful to me on this topic.
So is this even possible? Am I doing a right insight on this, or am I complicating myself too much?
As long as it can be better understood, something similar to this. But instead of Twilio, Telegram, and instead of Node.js, Java or Python. Minute 8:30 gives a graphical insight of what I am thinking.
IBM provides several SDKs for the Watson services in the Watson Developer Cloud GitHub org. The Python SDK allows to write chatbot apps with Watson Assistant.
My Watson Conversation Tool is such a Python app that shows both the V1 and V2 APIs and demonstrates how to incorporate client side and server side actions.
The following diagram from the Watson Assistant docs shows the typical app architecture.
You would write an app that receives the Telegram messages, processes them, sends input on to Watson Assistant and channels the response back to Telegram. For reference, take a look at Botkit Middleware which, written in Node.js, does the job for several communication platforms.