+
Skip to content

Lightweight and distributed Yetibot instances per service #155

@kaffein

Description

@kaffein

A (crazy) idea popped into my mind while thinking about the way we interact with Yetibot from the main channel. I did not have the time to dive into the technical details but I thought it would be cool to just share it here for fun :)

At the moment when we talk to Yetibot, we have to use a prefix (defined in the configuration file config.edn) and then we type the command like so :

!aws s3 ls my-bucket-url-here

What if instead, we use the lingua franca of the chat platform. In particular, I am thinking about the use of @ for mentioning a user from the main channel, user here would be our Yetibot instance. We would then have a connected Yetibot instance identified as aws responding to the command :

@aws s3 ls my-bucket-url-here

In terms of User Experience, I think it can be cool. But here is the real idea, and to some extent a consequence of the first idea above.

If we elaborate on this interaction idea, instead of having a single instance of Yetibot, we would then have multiple more lightweight Yetibot instances, each responsible for only one specific service or feature (github, aws, twitter etc.). Yetibot would then become a kind of framework/template providing a layer of abstraction on top of the underlying platform (as is already the case with Yetibot.core) allowing contributors to focus on implementing only the core logic of their service.

These are just some ideas and again I did not really dive into the technical feasibility given the current implementation. But one concern that is obvious to me is that composing commands/services as we have it now would not be possible since we would then have totally distributed processes (some kind of messaging maybe ?).

That was it :) ...
Thanks

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载