diff --git a/src/main/kotlin/com/wire/broadcastapp/BroadcastService.kt b/src/main/kotlin/com/wire/broadcastapp/BroadcastService.kt index 05d6fbb..5311c2d 100644 --- a/src/main/kotlin/com/wire/broadcastapp/BroadcastService.kt +++ b/src/main/kotlin/com/wire/broadcastapp/BroadcastService.kt @@ -9,7 +9,7 @@ class BroadcastService(private val repository: Repository) { private lateinit var manager: WireApplicationManager companion object { - private const val COMMAND_PREFIX = "/broadcast" + const val COMMAND_PREFIX = "/broadcast" private val NOT_AUTHORIZED = """ ⛔ You’re not authorized to send broadcasts. Only approved broadcasters can use the `$COMMAND_PREFIX` command. diff --git a/src/main/kotlin/com/wire/broadcastapp/EventsHandler.kt b/src/main/kotlin/com/wire/broadcastapp/EventsHandler.kt index 69b1784..802db3e 100644 --- a/src/main/kotlin/com/wire/broadcastapp/EventsHandler.kt +++ b/src/main/kotlin/com/wire/broadcastapp/EventsHandler.kt @@ -1,7 +1,10 @@ package com.wire.broadcastapp +import com.wire.broadcastapp.BroadcastService.Companion.COMMAND_PREFIX import com.wire.broadcastapp.dao.Repository import com.wire.sdk.WireEventsHandlerSuspending +import com.wire.sdk.model.ConversationData +import com.wire.sdk.model.ConversationMember import com.wire.sdk.model.WireMessage class EventsHandler : WireEventsHandlerSuspending() { @@ -12,4 +15,24 @@ class EventsHandler : WireEventsHandlerSuspending() { override suspend fun onTextMessageReceived(wireMessage: WireMessage.Text) { broadcast.handleMessage(wireMessage) } + + override suspend fun onAppAddedToConversation( + conversation: ConversationData, + members: List + ) { + val welcomeMessage = WireMessage.Text.create( + conversationId = conversation.id, + text = WELCOME_TEXT + ) + + manager.sendMessage(welcomeMessage) + } + + private companion object { + const val WELCOME_TEXT = + "👋 Hi, I'm the Broadcast App. Thanks for adding me to the conversation.\n" + + "You can use me to message multiple conversations simultaneously.\n" + + "I'm here to help make everyday work a little easier.\n" + + "Use the `$COMMAND_PREFIX ` command to get started." + } }