EventManager

(c) 2013-2014 http://ircanywhere.com

Author: Ricki Hastings

IRCAnywhere server/events.js

class EventManager.EventManager()

Constructor, does nothing

Returns:void
EventManager.channelEvents

A list of events relating to channels

EventManager._insert(client, message, type[, user, force])

Inserts an event into a backlog after all the checking has been done this api is private and EventManager.insertEvent should be used instead

Arguments:
  • client (object) – A valid client object
  • message (object) – A valid message object from irc-message
  • type (string) – Event type
  • [user] (object) – An optional user object
  • [force] (boolean) – An optional force boolean to force the event into the ‘*’ status window
Returns:

void

EventManager.insertEvent(client, message, type, cb)

Inserts an event into the backlog, takes a client and message object and a type Usually ‘privmsg’ or ‘join’ etc.

Arguments:
  • client (object) – A valid client object
  • message (object) – A valid message object from irc-message
  • type (string) – Event type
  • cb (function) – Callback function to be executed after insert
Returns:

void

EventManager.determineHighlight(client, message, type, ours)

Determine whether a message should be marked as a highlight or not for the specific IRC client. Currently this does not support anything other than looking at their nickname.

Arguments:
  • client (object) – A valid client object
  • message (object) – A valid message object from irc-message
  • type (string) – Event type
  • ours (boolean) – Whether this message comes from this client
Returns:

true or false

EventManager.getPrefix(client, user)

Gets the channel prefix for the irc client and the user object. A valid object returned is in the format of:

{prefix: '+', sort: 5};
Arguments:
  • client (object) – A valid client object
  • user (object) – A valid user object
Returns:

A valid prefix object

EventManager.getEventByType(type, network, userId)

Gets the most recent event from the database by its type.

Arguments:
  • type (string) – Event type
  • network (objectid) – Event network
  • userId (string) – Id of the user
Returns:

Promise that resolves to event.

EventManager.getUserPlayback(network, userId)

Gets the message playback for an IRC server user since he was last seen.

Arguments:
  • network (objectid) – Network to get playback from
  • userId (string) – Id of the user
Returns:

Promise that resolves to array of playback events.