Blog

Release announcements, helpful tips, and community discussion

9.3.2

Cerb (9.3.2) is a maintenance update released on July 11, 2019. It includes 25 minor features and fixes from community feedback covering the 9.3 update. You can follow these instructions to upgrade.

  • [Bots/Behaviors/Events/UX] When creating bot behaviors, the usability of the event chooser has been improved. Events are now organized into logical categories (e.g. Chat Interactions, Dashboards) as submenus, rather than being organized by event name. This makes it much easier to find the event you’re looking for.

  • [Bots/Behaviors/Actions/UX] When editing bot behaviors, the usability of the actions menu has been greatly improved. Global actions are now grouped together in a ‘(Global)’ submenu, leaving only the event-specific actions at the top-level of the menu. Many events only have a handful of pertinent actions (some only have one), and this change makes it much easier to find them.

  • [Bots/Behaviors] The ‘Create comment’ action is now available in all bot behaviors.

  • [Bots/Behaviors] The ‘Create notification’ action is now available in all bot behaviors.

  • [Bots/Behaviors] The ‘Create task’ action is now available in all bot behaviors.

  • [Bots/Behaviors] The ‘Create ticket’ action is now available in all bot behaviors.

  • [Bots/Behaviors] The ‘Send email’ action is now available in all bot behaviors.

  • [Bots/Behaviors] The ‘Set links’ action is now available in all bot behaviors.

  • [Bots/Behaviors] The ‘Add watchers’ action is now available in all bot behaviors.

  • [Docs/Bots/Events] Added docs generation for bot events and actions. Added metadata to all bot events to document actions and their parameters (types, notes, etc). Marked several events and actions as deprecated to encourage the use of newer concepts.

  • [Workspaces/Data Queries/Cache] Fixed a caching issue on data query based widgets. The cache was removing some meta information from the query results, and returning errors like “The data should be in ‘timeseries’ format” until the cache expired.

  • [Packages] Fixed an issue with importing packages that contained a multi-selection chooser prompt. Thanks to @beatbesmer for the report.

  • [Bots/Behaviors] Fixed an incredibly vexing bug in bot behaviors. When multiple behaviors are on the same event (e.g. Record changed), and one of the earlier behaviors uses the ‘Exit’ action, then subsequent behaviors would only run one action (no matter its depth in the decision tree) before also exiting early. The behaviors shared a dictionary, and the ‘exit’ flag was not being reset between them. Thanks to Miguel Nunez for the report.

  • [Security/Dashboards] On profile and workspace dashboards, widgets of type ‘HTML/JS’ now automatically escape all placeholders for display as HTML. Previously this was the responsibility of the widget author, which could easily be overlooked. The escaping can be disabled on a per-case basis with the |raw filter. Thanks to Kyle Swank for the report.

  • [Records/Tickets] Added a participant_ids field to tickets in the records API. This accepts a comma-separated list of email address IDs to add as participants to the ticket. Any ID prefixed with - (minus) will be removed as a participant. Additions and deletions can be mixed in a single request (e.g. participant_ids:"1,-2,3").

  • [Records/Links] In the records API, the ‘links’ field can now also unlink records when doing an update/upsert. To remove a link, prefix it with a (-) minus. For example: links:['-ticket:123']

  • [Bots/Mail] On the ‘Before message sent by worker’ behaviors, the custom fields of a composed message are now available as ‘Sent message’ placeholders in conditions and actions. [#680]

  • [Worklists/Export/UX] When exporting records from a worklist, the selected export fields will now be remembered per worker per record type. This saves the hassle of having to repeatedly adjust the default export fields. In a near-future feature update we can extend this to per worker per worklist. [#420]

  • [Records/Attachments] In the records API, the attach field on attachment records can now unattach files when doing an update/upsert. To unattach a file, prefix it with a (-) minus. For example: attach:['-task:321']

  • [Bots/Behaviors/Simulator] Fixed an issue with the behavior simulator that prevented non-variable placeholders from being changed.

  • [Workspaces/Pages] Fixed an issue with workspace pages where an error was logged when a worker wasn’t a member of any roles, or lacked menu preferences.

  • [Platform/Mail/UX] When sending a message with an invalid From: address, more explanatory errors are now returned by the mail service.

  • [Bot Scripting] In bot scripting, the |context_name() filter now works with record type aliases (e.g. ticket) as well as fully qualified extension IDs (e.g. cerberusweb.contexts.ticket).

  • [Bot Scripting] In bot scripting, the |context_name() filter can now return the extension ID of the record type. This is useful when normalizing a mix of record type aliases and extension IDs.

  • [SSO/Connected Services/OpenID] When using OpenID Connect for SSO, fixed an issue when the token isn’t signed with a key ID (kid) from the JWKS (JSON Web Key Set). In these cases the first key from the list is used.