Skip to content

Instantly share code, notes, and snippets.

@nsadeh
Created August 8, 2020 23:30
Show Gist options
  • Save nsadeh/85fffeb1d7708e24ff5755cbfb45b249 to your computer and use it in GitHub Desktop.
Save nsadeh/85fffeb1d7708e24ff5755cbfb45b249 to your computer and use it in GitHub Desktop.
import akka.actor.typed.ActorRef
object CoreChatEvents {
import WebSocketsEvents._
sealed trait CoreChatEvent
final case class UserMessage(message: String, phoneNumber: String) extends CoreChatEvent
final case class SMSMessage(sender: String, message: String) extends CoreChatEvent
final case class Connected(websocket: ActorRef[WebSocketsEvent]) extends CoreChatEvent
final case object Disconnected extends CoreChatEvent
final case class Failed(ex: Throwable) extends CoreChatEvent
}
object WebSocketsEvents {
sealed trait WebSocketsEvent
final case class MessageToUser(phoneNumber: String, message: String) extends WebSocketsEvent
final case object Complete extends WebSocketsEvent
final case class Failure(ex: Throwable) extends WebSocketsEvent
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment