public ManageNetworksWindowViewModel() { if (Locator.Get <ISettings>().Networks.Any()) { this.SelectedNetwork = Locator.Get <ISettings>().Networks[0]; } }
public void Run() { //I had been using hardcoded user information in this file but since it's about to go up //on github i've hastily taken that out and put in this ugly Console based transaction string userName = "******"; string nickNames = "kerbcalc kerbcalc1 kerbcalc2"; string password = "******"; if (!File.Exists("password")) { FileStream fs = File.OpenWrite("password"); StreamWriter sw = new StreamWriter(fs); Console.WriteLine("enter password"); sw.WriteLine(Console.ReadLine()); sw.Close(); sw.Dispose(); } StreamReader sr = new StreamReader(File.OpenRead("password")); password = sr.ReadLine().Trim(); sr.Close(); sr.Dispose(); IrcNetworkInfo mynet = new IrcNetworkInfo("bleh"); mynet.AddServer("irc.freenode.net", 6667, password); IrcUser me = new IrcUser("A. Realname", userName, nickNames.Split(" ".ToCharArray())); mySession = new IrcSession(me, mynet, new MessageHandler(channel)); mySession.Connect(); if (mySession.Connected == true) { Console.WriteLine("Connected"); } else { Console.WriteLine("Connection Failed!!"); return; } mySession.JoinChannel(channel, null); while (true) { string bleh = Console.ReadLine(); HandleLocalInput(bleh); } }
private void AddNetworkMessageReceived(AddNetworkMessage message) { var info = new IrcNetworkInfo { HostName = message.Name, PortNumber = message.Port, Password = message.Password }; this.AddNetwork(info); if (!Locator.Get <ISettings>().Networks.Any(i => i.HostName == info.HostName)) { Locator.Get <ISettings>().Networks.Add(info); } }
public IrcNetworkViewModel(IrcNetworkInfo info) { this.NetworkInfo = info; var wrapper = Locator.Get <ITcpService>().GetWrapper(info); this.Network = new IrcNetwork(wrapper); this.Network.Client.Encoding = info.Encoding; this.Network.Client.IdentUserName = info.Nickname; this._logger = Locator.Get <IrcLogger>(); this._logger.Start(this.Network.Client); this._networkInfoViewModel = new IrcNetworkInformationViewModel(this.Network, this); this.Conversations = new ObservableCollection <IrcConversationViewModel>(); this.Conversations.Add(this._networkInfoViewModel); this.SelectedConversation = this._networkInfoViewModel; this.Network.Connected += Network_Connected; this.Network.Authenticated += Network_Authenticated; this.Network.ConnectionLost += Network_ConnectionLost; this.Network.ChannelDiscovered += Network_ChannelDiscovered; this.Network.UserDiscovered += Network_UserDiscovered; this.Network.ChannelListReceived += Network_ChannelListReceived; this.Network.InformationReceived += Network_InformationReceived; this.Network.ErrorReceived += Network_ErrorReceived; this.Network.NicknameCollision += Network_NicknameCollision; PropertyChangedEventManager.AddHandler(this.Network.CurrentUser, CurrentUser_NicknameChanged, o => o.Nickname); PropertyChangedEventManager.AddHandler(this.NetworkInfo, NetworkInfo_EncodingChanged, o => o.Encoding); Messenger.Register <ChangeEncodingMessage>(ChangeEncodingHandler, m => m.Network == this.Network); Messenger.Register <JoinChannelMessage>(JoinChannelHandler, m => m.Network == this.Network || m.Network == null && this.IsSelected); Messenger.Register <LeaveChannelMessage>(LeaveChannelHandler, m => m.Network == this.Network); Messenger.Register <GlobalMessageSentMessage>(GlobalMessageSentHandler, m => m.Network == this.Network); Messenger.Register <UserMessageSentMessage>(UserMessageSentHandler, m => m.Network == this.Network); Messenger.Register <ChannelMessageSentMessage>(ChannelMessageSentHandler, m => m.Network == this.Network); Messenger.Register <GlobalMessageReceivedMessage>(GlobalMessageReceivedHandler, m => m.Network == this.Network); Messenger.Register <UserMessageReceivedMessage>(UserMessageReceivedHandler, m => m.Network == this.Network); Messenger.Register <OpenPrivateConversationMessage>(OpenPrivateConversationHandler, m => m.Network == this.Network); Messenger.Register <ConversationEndMessage>(ConversationEndHandler, m => m.Network == this.Network); Messenger.Register <UnreadMessageReceivedMessage>(UnreadMessageReceivedHandler, m => m.Network == this.Network); }
public void AddNetwork(IrcNetworkInfo info) { if (info == null) { throw new ArgumentNullException("info"); } var existingNetwork = this._networks.FirstOrDefault(n => n.NetworkInfo.HostName == info.HostName); if (existingNetwork != null) { existingNetwork.Connect(); return; } var network = new IrcNetworkViewModel(info); this.Networks.Add(network); this.SelectedNetwork = network; network.Connect(); }
public TcpWrapper GetWrapper(IrcNetworkInfo info) { return(new SocketWrapper(info.HostName, info.PortNumber, info.UseSsl, info.AcceptInvalidCertificates)); }
public EditNetworkWindowViewModel(IrcNetworkInfo info) { this.NetworkInfo = info; this._title = Locator.Get <ITranslationService>().Translate("EditNetworkWindow", "EditNetworkTitle", this.NetworkInfo.FriendlyName); this.SetEncodings(); }