157 lines
4.6 KiB
YAML
157 lines
4.6 KiB
YAML
|
---
|
||
|
about:
|
||
|
description: Nimbus Feature Manifest for Android
|
||
|
kotlin:
|
||
|
package: mozilla.components.service.nimbus
|
||
|
class: .messaging.FxNimbusMessaging
|
||
|
channels:
|
||
|
- release
|
||
|
- debug
|
||
|
features:
|
||
|
nimbus-system:
|
||
|
description: |
|
||
|
Configuration of the Nimbus System in Android.
|
||
|
variables:
|
||
|
refresh-interval-foreground:
|
||
|
description: |
|
||
|
The minimum interval in minutes between fetching experiment
|
||
|
recipes in the foreground.
|
||
|
type: Int
|
||
|
default: 60 # 1 hour
|
||
|
|
||
|
messaging:
|
||
|
description: |
|
||
|
The in-app messaging system.
|
||
|
|
||
|
allow-coenrollment: true
|
||
|
|
||
|
variables:
|
||
|
messages:
|
||
|
description: A growable collection of messages
|
||
|
type: Map<String, MessageData>
|
||
|
default: {}
|
||
|
|
||
|
triggers:
|
||
|
description: >
|
||
|
A collection of out the box trigger
|
||
|
expressions. Each entry maps to a
|
||
|
valid JEXL expression.
|
||
|
type: Map<String, String>
|
||
|
default: {}
|
||
|
styles:
|
||
|
description: >
|
||
|
A map of styles to configure message
|
||
|
appearance.
|
||
|
type: Map<String, StyleData>
|
||
|
default: {}
|
||
|
|
||
|
actions:
|
||
|
type: Map<String, String>
|
||
|
description: A growable map of action URLs.
|
||
|
default: {}
|
||
|
on-control:
|
||
|
type: ControlMessageBehavior
|
||
|
description: What should be displayed when a control message is selected.
|
||
|
default: show-next-message
|
||
|
notification-config:
|
||
|
description: Configuration of the notification worker for all notification messages.
|
||
|
type: NotificationConfig
|
||
|
default: {}
|
||
|
message-under-experiment:
|
||
|
description: Deprecated in favor of `MessageData#experiment`. This will be removed in future releases.
|
||
|
type: Option<String>
|
||
|
default: null
|
||
|
defaults:
|
||
|
|
||
|
objects:
|
||
|
MessageData:
|
||
|
description: >
|
||
|
An object to describe a message. It uses human
|
||
|
readable strings to describe the triggers, action and
|
||
|
style of the message as well as the text of the message
|
||
|
and call to action.
|
||
|
fields:
|
||
|
action:
|
||
|
type: Text
|
||
|
description: >
|
||
|
A URL of a page or a deeplink.
|
||
|
This may have substitution variables in.
|
||
|
# This should never be defaulted.
|
||
|
default: ""
|
||
|
title:
|
||
|
type: Option<Text>
|
||
|
description: "The title text displayed to the user"
|
||
|
default: null
|
||
|
text:
|
||
|
type: Text
|
||
|
description: "The message text displayed to the user"
|
||
|
# This should never be defaulted.
|
||
|
default: ""
|
||
|
is-control:
|
||
|
type: Boolean
|
||
|
description: "Indicates if this message is the control message, if true shouldn't be displayed"
|
||
|
default: false
|
||
|
experiment:
|
||
|
type: Option<String>
|
||
|
description: The slug of the experiment that this message came from.
|
||
|
default: null
|
||
|
button-label:
|
||
|
type: Option<Text>
|
||
|
description: >
|
||
|
The text on the button. If no text
|
||
|
is present, the whole message is clickable.
|
||
|
default: null
|
||
|
style:
|
||
|
type: String
|
||
|
description: >
|
||
|
The style as described in a
|
||
|
`StyleData` from the styles table.
|
||
|
default: DEFAULT
|
||
|
surface:
|
||
|
description:
|
||
|
The surface identifier for this message.
|
||
|
type: String
|
||
|
default: homescreen
|
||
|
trigger:
|
||
|
type: List<String>
|
||
|
description: >
|
||
|
A list of strings corresponding to
|
||
|
targeting expressions. The message will be
|
||
|
shown if all expressions `true`.
|
||
|
default: []
|
||
|
StyleData:
|
||
|
description: >
|
||
|
A group of properties (predominantly visual) to
|
||
|
describe the style of the message.
|
||
|
fields:
|
||
|
priority:
|
||
|
type: Int
|
||
|
description: >
|
||
|
The importance of this message.
|
||
|
0 is not very important, 100 is very important.
|
||
|
default: 50
|
||
|
max-display-count:
|
||
|
type: Int
|
||
|
description: >
|
||
|
How many sessions will this message be shown to the user
|
||
|
before it is expired.
|
||
|
default: 5
|
||
|
NotificationConfig:
|
||
|
description: Attributes controlling the global configuration of notification messages.
|
||
|
fields:
|
||
|
refresh-interval:
|
||
|
type: Int
|
||
|
description: >
|
||
|
How often, in minutes, the notification message worker will wake up and check for new
|
||
|
messages.
|
||
|
default: 240 # 4 hours
|
||
|
|
||
|
enums:
|
||
|
ControlMessageBehavior:
|
||
|
description: An enum to influence what should be displayed when a control message is selected.
|
||
|
variants:
|
||
|
show-next-message:
|
||
|
description: The next eligible message should be shown.
|
||
|
show-none:
|
||
|
description: The surface should show no message.
|