public bool handleEventWithCallback(Message m) { if (this.state != NetEventIOClientState.Authenticated) { return(false); } OnMessageWithCallback listener = null; try { listener = this.messageListenersWithCallback[m.eventName]; } catch (Exception) { return(false); } if (listener == null) { return(false); } // emit event listener(this, new OnMessageEventArgs(m), (string messageToCallback) => { this.sendMessage(new Message(m.id, PacketType.S_sendCallbackForEvent, m.eventName, m.command, messageToCallback)); }); return(true); }
public bool on(string eventName, OnMessageWithCallback listenerWithCallback) { if (eventName.Contains(':') || eventName.Contains('$') || listenerWithCallback == null) { return(false); } try { return(this.messageListenersWithCallback.TryAdd(eventName, listenerWithCallback)); } catch (Exception) { return(false); } }