In this section, we’ll walk through the code for a simple Conclude app. We’ll use the interactive app installer and app builder to create an app based on the ‘simple’ blueprint, similar to the steps in the quickstart guide.

Follow these steps to create the Hello, World! app:

  1. Create a channel called #hello, where you will install the app.
  2. Click Conclude Home > Apps > Install App to open the installer.
  3. Select the #hello channel and choose the ‘simple’ blueprint.
  4. Click Continue
  5. Change these fields (without the quotes):

    • App name: “hello”
    • Label: “Hello”
    • Description: “A hello world Conclude app”
    • Launch button: “Say Hi”
  6. Click Install

Launch the app by clicking its launch button in Conclude Home > Apps or by typing /c hello in Slack. It will create an activity with a subject and a description, which is useful for having single topic discussions in dedicated channels.

You can view the source code of an app by going to Conclude Home > Apps > hello > Settings and open the app’s settings. Click the source URL to view and edit the code in the external JSON editor.

{
  "type": "custom",
  "name": "hello",
  "label": "Hello",
  "description": "A hello world Conclude app",
  "owner": "@ymyname:U12K750D8",
  "members": "#mychannel:C432BE7CK",
  "alert": "#mychannel:C432BE7CK",
  "disable_severity": true,
  "attributes": [
    {
      "name": "title",
      "type": "string",
      "label": "Subject",
      "placeholder": "Enter subject here",
      "mandatory": true
    },
    {
      "name": "body",
      "type": "text",
      "label": "Details",
      "placeholder": "Enter details here"
    },
    {
      "name": "conclusion",
      "type": "text",
      "label": "Conclusion",
      "placeholder": "What is the conclusion?"
    }
  ],
  "launch_button": "Say Hi"
}

The code can be broken into three parts:

  1. Configuration: Settings that control the app behavior.
  2. Attributes: An array of data fields that hold information about an activity.
  3. Presentation: For customizing texts and messages.

Configuration

These settings control the behavior of the app:

  • type: custom means that the app may only be used by the members of #mychannel.
  • name: Each app should have a unique name, consisting of lower case letters, numbers and underscores.
  • label: A short text to describe the app.
  • description: A longer text that explains the purpose of the app.
  • owner: The default owner of the activity.
  • members: List of members to invite to new activities.
  • alert: Where to send alerts when activities are created, closed or reopened.
  • disable_severity: true means that the app should not support severity settings.

The configuration section describes these settings in greater detail.

The owner and members settings are two important roles of an app. They refer to a Slack user and a Slack channel respectively.

Important notice about Slack identifiers:
Conclude automatically inserts a :SlackID after user names, channel names and user group names. These native Slack identifiers will be overwritten each time an updated version of the app is saved. It is not possible to manually set a Slack identifier.

For example, if you type in

  "owner": "@myname:HACK"

then HACK will be replaced with the actual Slack identifier of that user. If Conclude cannot recognize the channel or user it inserts '???' instead of an identifier:

  "owner": "@bigfoot:???"

When writing code manually, the JSON editor will search and auto-complete Slack members and channels for you. You do not need to enter any Slack IDs as shown above. Conclude will add that automatically when you save the code.


Attributes

The attributes store information for an app. Attributes are implemented as a list of JSON objects (up to 32 attributes).

An attribute should always have a name, type and label. Two attributes may not have the same name.

Every app should at least have a “title” and a “conclusion” attribute.

Read more about attributes in the attributes section.


Presentation settings

This is the place to customize texts and messages for your workflow. In our Hello, World example we set the launch button label to “Say Hi” instead of the default “New Hello” button label.

Open the Conclude Home > Apps > [your app] > Settings and click the Presentation button to get a complete list of texts and messages, along with their default settings.

Tip for creating more engagement:
Use emojis to create more engagement. Try changing the launch button to ":mega:"!

Supercharge your team!

Bridge the collaboration gap with Conclude apps.

Quickstart