class Circed::Services::IRCService

Defined in:

circed/services/irc_service.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(user_repository : Repositories::UserRepository, channel_repository : Repositories::ChannelRepository, notification_service : NotificationService) #

[View source]

Instance Method Detail

def change_mode(client : Client, target : String, mode_string : String, mode_target : String | Nil = nil) : Bool #

Change channel or user modes with network sync


[View source]
def change_nickname(client : Client, new_nickname : String) : Bool #

Handle user nickname changes with network sync


[View source]
def join_channel(client : Client, channel_name : String, password : String | Nil = nil) : Bool #

User joins a channel with proper validation, notifications, and network sync


[View source]
def kick_user(client : Client, channel_name : String, target_nickname : String, reason : String | Nil = nil) : Bool #

Kick user from channel with network sync


[View source]
def part_channel(client : Client, channel_name : String, reason : String | Nil = nil) : Bool #

User parts from a channel with network sync


[View source]
def quit_user(client : Client, reason : String | Nil = nil) : Bool #

Handle user quit with network sync


[View source]
def route_message(sender : Client, target : String, message : String) : Bool #

Route messages to local or remote targets


[View source]
def sync_new_user(client : Client) : Bool #

Sync new user with network state


[View source]
def update_topic(client : Client, channel_name : String, topic : String) : Bool #

Set channel topic with validation and network sync


[View source]