Start message programmatically
Manually trigger an in-app message by its ID.
<script setup lang="ts">
import { useScreeb } from "@screeb/sdk-vue";
const { messageStart } = useScreeb();
async function showMessage() {
await messageStart(
"<message-id>",
false,
{ // optional hidden fields
color: "green",
article_id: 42,
},
{ // optional hooks
version: "1.0.0",
onMessageShowed: (payload) => console.log("Message showed", payload),
},
"en" // optional language
);
}
</script>
<template>
<button @click="showMessage">Show message</button>
</template>
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
messageId | string | Yes | The message UUID from your Screeb workspace |
allowMultipleResponses | boolean | No | Allow the message to be shown multiple times (default: true) |
hiddenFields | PropertyRecord | No | Hidden fields to pass to the message |
hooks | HooksMessageStart | No | Callback hooks for message events |
language | string | No | Force a specific language (e.g. "en", "fr") |
Close message
Close the currently running message:
<script setup lang="ts">
import { useScreeb } from "@screeb/sdk-vue";
const { messageClose } = useScreeb();
</script>
<template>
<button @click="messageClose">Close message</button>
</template>