Creating interactions Via CLI

Creating  or removing Interactions can now be done outside the CMS via the BMP CLI.

Create interaction

blinkm bmp create interaction <name> --type<type> --remote

Using the create interaction function will create a local version of the interaction on your computer.

ParameterDescriptionOptions
name
The name of the interaction
 
type
The interaction type
"madl" (default), or "message"
--remote  
Will create the interaction locally and 

on the BMP as a place holder

 

Create Interaction

Created Interactions will not appear on the BMP until deployed,except for --remote which will add a place holder on the BMP

 

Create interaction Examples

Here is an example of the BMP CLI workflow on a sample answerSpace called "myanswerSpace"

The local file

First we will pull the empty answerSpace down from the BMP.

blinkm bmp pull

Here is the view from the BMP CMS, no interactions are yet created.

Now we are ready to start creating interactions.

blinkm bmp create interaction default

Once the interaction has been created you will notice the newly created files in your local project.

As the interaction type was left blank, the interaction "default" was create as a madl type

Lets now create a "message" interaction using the – type option

blinkm bmp create interaction message --type message

Now lets create an interaction using the --remote option

blinkm bmp create interaction myinteraction --remote

Once the interaction has been created you will notice the newly created files in your local project.

--remote

Note because we used --remote an empty interaction place holder now shows in the BMP CMS.

This method is ideal when wanting to reserve a unique name when developers are using both CMS and CLI at the same time.

Lets now deploy the interactions to the BMP

blinkm bmp deploy


Editing interaction files

In every interaction directory is a file called <interaction name>.json 

This file contains most of your interactions settings.

The example "default.json" code
{
  "allow_mobi": "yes",
  "config": {
    "all": {
      "type": "madl code"
    },
    "default": {
      "display": "hide",
      "displayName": "default",
      "madl": {
        "$file": "default.madl.php"
      }
    }
  },
  "id": "100654",
  "name": "default",
  "registered_only": "allow all",
  "restricted": "no",
  "status": "active",
  "tags": null
}

Many items within this file can be modified to change the interactions behaviour.

Below is a list of items you can modify safely.

ItemDescriptionCMS LabelOptions
displayHidden items are not displayed in lists but are otherwise still accessibleDisplayhide / show
displayNameCaption or title to display to usersDisplay Name 
statusInactive items are hidden and treated as though they do not existStatusactive / inactive