using Content.Shared.Chat; using Robust.Server.Player; using Robust.Shared.Network; namespace Content.Server.Chat.Managers { public interface IChatManager { void Initialize(); /// /// Dispatch a server announcement to every connected player. /// /// /// Override the color of the message being sent. void DispatchServerAnnouncement(string message, Color? colorOverride = null); /// /// Station announcement to every player /// /// /// /// If the default 'PA' sound should be played. /// Override the color of the message being sent. void DispatchStationAnnouncement(string message, string sender = "CentComm", bool playDefaultSound = true, Color? colorOverride = null); void DispatchServerMessage(IPlayerSession player, string message); void TrySendOOCMessage(IPlayerSession player, string message, OOCChatType type); void SendHookOOC(string sender, string message); void SendAdminAnnouncement(string message); void ChatMessageToOne(ChatChannel channel, string message, string messageWrap, EntityUid source, bool hideChat, INetChannel client); void ChatMessageToMany(ChatChannel channel, string message, string messageWrap, EntityUid source, bool hideChat, List clients); void ChatMessageToAll(ChatChannel channel, string message, string messageWrap, Color? colorOverride = null); bool MessageCharacterLimit(IPlayerSession player, string message); } }