![]() ![]() Have you implemented a DSL to solve a problem you faced, or are you thinking of doing likewise? Share your experience or questions in the comments below. Creating a homegrown DSL to reduce complexity makes it a breeze to extend Cassava to future distribution channels in a structured manner. delete ( key ) _ -> content end |> prune ( data, remainder ) end defp prune ( content, _, ), do : content Summary get ( key ) |> case do value when value in -> content |> Keyword. channel |> render ( data ) |> prune ( data ) defp prune ( content, data, ) do data |> Map. A second pass sets the visibility of each block based on the underlying data itself. ![]() ]Ī two-step rendering process follows in which the first pass involves a complete rendering of the template. Here is an example of a typical block structure in Cassava. Messages are specified as JSON and published to workspaces via the Web API. The framework provides several block elements for the creation of rich interactive layouts. Slack introduced Block Kit in 2019 to streamline composing messages for delivery by Bots. On day 1, I approached Cassava’s Slack integration with a Domain-Specific language (DSL) in mind. I elaborated on the rendering engine in the article but skipped the details of the templating semantics, which is the subject of this topic. The gist of the article is that Cassava uses a rendering engine to generate content specific to a distribution channel via the protocol pattern. Webex Meetings Start, schedule or join Webex video meetings from Slack. ClickUp Manage tasks, create new tasks, attach Slack messages to tasks, and create tasks from Slack messages. I highly recommend you review the earlier article on Using the Protocol Pattern in Elixir to render Templates, as it sets the foundation for today’s discussion. Notion The connected workspace for your docs, projects, and knowledge. When you have messages that need to be converted into tasks, this integration can connect your tools. Its never been so easy to generate tasks from your messages. Today I will discuss how we are leveraging our initial architectural implementation for Slack to support the latest integration with Microsoft Teams. Once active, it will automatically create a Microsoft To-Do task with details from a new message posted in a specified Slack channel. Cassava was designed from the outset to publish Experiences to multiple distribution channels. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |