Introduction and goal
I'm interested to develop (possibly in Ruby language) Conversational Commerce Chat Apps .
A Dialog System Engine ?
Specifically I want to implement a dialog system engine, a natural language server middleware to be used by business applications to achive specific deterministic business actions (online shopping: submit orders, booking: submit a reservation, supply any service) from bots running inside chat instant messaging platforms as http://www.Telegram.org (through Bot APIs, see my project ) or team-working chat as http://www.slack.com, or whatever IM system supply bot APis (maybe soon: Messenger/Whatsapp, Google Chat, etc. etc. ).
API.ai / WIT.ai approach
I'm studying now these two similar dialog system cloud / proprietary engines: http://api.ai and http://wit.ai (see interesting introductive articles by Patrick Cantazariti:  and my notes about excellent API.ai: ).
These platforms have a pretty similar approach (that someone call euristic/pragmatic systems, or dialog scripts systems), where a conversational application (called agent in api.ai terminology, or app in wit.ai case) is modeled as a set of intents acting on entities in certain domains, letting you to collect actionable data and so implementing a conversation that collect data to action what I call a deterministic goal (e.g. submitting an ecommerce order, reserve a room on a hotel, etc. etc.).
I feel that above approach to model a conversation (dialog modeled as domains/entities/intents/contexts/actionable data) is a good compromise between:
a vast/complex "Artificial Intelligence" dialog engine that have to understand "any" natural language user sentence (e.g. the fact-totum user "assistant" approach a la Facebook "M", Apple Siri", etc.),
and an hard-coded approach, as I done with my modest experimental project "dialogs" , where I modeled a conversation as a composition of dialogs, where each dialog is a sort of finite state machine.
API.ai and WIT.ai have a great web interface to build-up easyly dialogs but i see a big problem: to model by example an ecommerce workflow, there is a need to define users entities where the personal data of the application and the users have to be "ingestioned"/stored on the proprietary cloud system (e.g. API.ai); that's a data privacy problem; in my opinion is bad that final business application and personal user data are maintained on a single (proprietary) cloud system.
A possible desiderata is to have a open-source software, to be instanstiated on private servers to maintains data private. All in all that "Dialog System" platform have to be as a database (DBMS): let's consider Postgresql/REDIS as great example of open software service platform paradigma: each developer install his own database server instance where store his private data.
Having something like API.ai as open-software could help also to SHARE dialog agent interchange format dialog scripts, maybe achieving a common standard (text files easy to download/upload).
The Main Question
- There is something similar to API.ai but open-source ? If not:
- There is any interest to build up now a community to create similar project ?
Any suggestion/comment/answer welcome.
 my microblog
 BOTServer on github
 ((dialogs)) on github
 Five Simple Ways to Build Artificial Intelligence in 2016
 How to Build Your Own AI Assistant Using Api.ai
 Customizing Your Api.ai Assistant with Intent and Context
 Telegram Bot API
 Welcome to Slack API
 What are contexts and how are they used?
 API.ai vs Sirius ?