Custom messaging

Overview

Custom messaging lets administrators customize certain user-facing messages that Posit Connect displays throughout the UI. Messages are stored in the database, so changes take effect immediately, survive restarts, and stay in sync across all nodes of a high-availability installation without editing configuration files or reloading the service.

Previously, each of these messages was set through a separate server configuration setting (for example, Server.PublicWarning or Authentication.Notice), which required access to the configuration file and a service reload. Custom messaging consolidates these messages into a single admin page and removes the need to edit the configuration file.

Custom messaging is administered from System > Custom Messaging in the Connect UI. Only administrators can view or edit these messages. For step-by-step instructions on editing messages in the UI, see Custom Messaging in the Connect User Guide.

Supported messages

Markdown

Where noted below, Markdown is available for formatting messages.

You can customize the following messages from the Custom Messaging page:

Message Markdown? Where it appears Default
Authentication name No Provider name shown on the sign-in page Posit Connect
Authentication notice Yes Sign-in, sign-up, and account-completion pages (empty)
Logged-in warning Yes Shown at the top of the content list (empty)
Locked user No Shown when a locked user tries to sign in Your account has been locked. Please contact your administrator.
Insufficient privileges Yes Shown when a user requests an increased user role Are you sure you want to request **{privilege}** permissions on this server? This will contact the **{serverName}** administrator on your behalf to request these additional privileges.
Initialization error No Added to error message shown when interactive content fails to start Contact the author or review the logs for more information.
Public warning Yes Shown to signed-out visitors on Connect landing page (empty)

An empty default means no message is shared until you set a value.

Editing messages

  1. Go to System > Custom Messaging in the UI.
  2. Select the message you want to change from the list.
  3. Edit the message text. A live preview shows how the message will appear in context as you type, so you can review the change before it goes live.
  4. Click Save to apply your changes, or click Cancel to revert to the currently saved value.

To discard a customization, click Reset to default. Saving an empty value has the same effect. After a reset, Connect uses the deprecated configuration setting for that message if it has a value, and the built-in default otherwise.

Importing messages from the server configuration

The messages listed below were previously configured through the server configuration file. Those configuration settings are now deprecated – they are not removed, so any values you have already set continue to be used until they are imported.

When Connect starts, it imports any values set in the configuration file into the database, skipping messages that already have a saved value:

Message Imported from
Authentication name Authentication.Name
Authentication notice Authentication.Notice
Logged-in warning Server.LoggedInWarning
Initialization error Applications.InitializationErrorMessage
Public warning Server.PublicWarning

The Locked user and Insufficient privileges messages have no configuration setting.

The Public warning and Logged-in warning messages were stored as HTML snippets in the configuration file. During import, Connect converts these values to Markdown so they render correctly in the editor.

After Connect imports a message, the database is the source of truth for it, and further changes to its configuration setting have no effect. Posit recommends removing the deprecated settings from the configuration file after Connect imports them, and managing the messages from the Custom Messaging page instead. If you reset an imported message while its setting is still in the configuration file, Connect falls back to the configuration setting and imports it again on the next restart.