Interaction Subcommand

Interactions

After running mrcli setup you can start adding Interactions. An Interaction can be as simple as an email thread between an account team and a customer, a detailed customer interview or even documentation about a competitor. Additional Interactions can be added, updated, or removed; essentially, interaction is an mrcli sub-command that affords users Create, Read, Update and Delete capabilities. Each of the major functions for mrcli interaction are described in this document.

Notice

Some of the command line options and switches may not yet be implemented; therefore, if a switch or option is not yet implemented the CLI will inform the user and then exit.

Help

Prints the usage for the interaction sub-command and exits.

Command(s) run

  • mrcli interaction --help

Screenshot with output

interactions_help

List interaction objects

Print out one or more Interaction to the command line or an alternative output mechanism like a CSV file. Filtering can be applied to find Interactions with specific attributes.

List all interaction objects in a table format

This is the default output when running mrcli i or mrcli interaction which prints a text table to STDOUT.

Command(s) run

  • mrcli i
  • mrcli interaction

Screenshot with output

interactions_table

List all interaction objects in JSON format

Output a list of company objects in properly formatted JSON to STDOUT which can be viewed, redirected to a file, or piped to another command.

Command(s) run

  • mrcli i --output=json
  • mrcli interaction --output=json

Screenshot with output

interactions_json

List all interaction objects and output to a CSV or XLSX

Interaction data can be output in either a CSV or XLSX files to enable consumption in common tools like Microsoft Excel. The resulting files will be stored in $HOME/Documents directory as Mr_Interactions.csv or Mr_Interactions.xlsx depending on your intended output.

Command(s) run

  • mrcli i --output=csv
  • mrcli i --output=xls

Screenshot of commands being run

interactions_csv

Screenshot of CSV imported into MacOS numbers

interactions_numbers

Filter interaction outputs

The CLI offers the ability to filter outputs by almost any interaction attribute. This is manifest by two switches on the interaction sub-command one specific to finding Interactions by name, --find_by_name and the other by an arbitrary attribute, --find_by_x. Note all output format options, like JSON, CSV, etc., are available when the outputs are filtered. Finally, only exact matches are supported, meaning if you want to search for a interaction using any attribute you have to fully provide the attribute's value (i.e., "The" would not match "The 7 Strategic Phases of the Product Planning Process" , but "The 7 Strategic Phases of the Product Planning Process" would).

Filter in a interaction by name

To zero in on a specific interaction using the find by name switch is provided.

Command(s) run

  • mrcli i --find_by_name="The 7 Strategic Phases of the Product Planning Process"

Screenshot with output

interactions_filter_by_name

Filter an interaction by attribute

Find a specific interaction by a particular attribute in the example below the switch filters on the attribute city.

Command(s) run

  • mrcli i --find_by_x='{"city": "Santa Barbara"}'

Screenshot with output

interactions_filter_by_x

Update an interaction attribute

To update an interaction attribute the --update switch is provided. A properly formatted JSON stanza is supplied to the --update switch that specifies the name of the interaction to update, the key to update, and finally the value of the key to update.

Command(s) run

  • mrcli c --update='{"name": "Atlassian Corp", "key": "company_type", "value": "Public"}'

Screencast with output

Notice: Only the markdown version rendered through the GitHub web interface will display the screencast. If you're viewing these files through the GitHub Page Version the link below will just show up as text.

https://github.com/mediumroast/mediumroast_js/assets/10818650/e11256e7-28ca-47d5-b131-58a2036671a6

Delete an interaction

Remove a company and associated interactions if in the repository. There is a confirmation prompt which defaults to yes. Note that the exact company name is needed to proceed with a deletion.

Command(s) run

  • mrcli i --delete="Atlassian Corp"

Screenshot with output

interactions_delete

Add an interaction

A command line prompt based wizard steps the user through a semi-automated process process to define an interaction. The user is asked to verify the steps taken before the interaction(s) is committed to the repository.

Command(s) run

  • mrcli i --add_wizard

Screencast with output

Notice: Only the markdown version rendered through the GitHub web interface will display the screencast. If you're viewing these files through the GitHub Page Version the link below will just show up as text.

https://github.com/mediumroast/mediumroast_js/assets/10818650/0b28db90-d6ba-4224-a9ae-4c301c2b9614

Report on an interaction

Produce a MS Word document report on an interaction. The report includes a dashboard with interaction metadata, interaction abstract, and proto-requirements. The report is stored in the $HOME/Documents directory as <interaction_name>.docx.

Optionally, if the --package switch is used the report is zipped and stored in the $HOME/Documents directory as <interaction_name>.zip including the interaction content.

Command(s) run

  • mrcli i --report="Atlassian Corp"
  • mrcli i --report="Atlassian Corp" --package

Screenshot of the report dashboard

Screenshot 2024-09-04 at 8 30 25 PM