예제 #1
0
        public override void Execute()
        {
            Translation = Translator.GetTranslation(Message, LangParam);

            if (Translation.Message != Message && Translation.Message != "")
            {
                TelnetHelper.SendInChat(ExportChatType, Translation.Message);
            }

            Executed = true;
        }
예제 #2
0
        public void DisplayReceivedData(byte[] data, int dataLength)
        {
            for (int i = 0; i < dataLength; ++i)
            {
                byte dataByte = data[i];

                if (dataByte != 0)
                {
                    switch (dataByte)
                    {
                    case TelnetHelper.SB:
                        Console.Write("SB:   ");
                        break;

                    case TelnetHelper.SE:
                        Console.Write("SE:    ");
                        break;

                    case TelnetHelper.WILL:
                        Console.Write("WILL:  ");
                        break;

                    case TelnetHelper.WONT:
                        Console.Write("WON'T: ");
                        break;

                    case TelnetHelper.DO:
                        Console.Write("DO:    ");
                        break;

                    case TelnetHelper.DONT:
                        Console.Write("DON'T: ");
                        break;

                    case TelnetHelper.IAC:
                        Console.Write("\nIAC  ");
                        break;

                    case TelnetHelper.ESC:
                        Console.Write("\nESC: ");
                        break;

                    default:
                        Console.Write(TelnetHelper.GetOptionDescription(dataByte) + " ");
                        break;
                    }                     //dataByte.ToString("X")
                }
            }

            Logger.Log("");
        }
 private async Task UpdateTelnetAsync()
 {
     if (TelnetHelper.Connected)
     {
         LblTelnetStatus.Content = "Connected";
     }
     else if (OptionsManager.SendTranslationsFrom != TelnetGrant.Undefined)
     {
         LblTelnetStatus.Content = "Disconnected";
         await Task.Run(() => TelnetHelper.Connect());
     }
     else
     {
         LblTelnetStatus.Content = "Disabled";
     }
 }
예제 #4
0
            static void SaveLog(Log log)
            {
                Logs.AddLast(log);
                switch (log)
                {
                case Chat chat:
                    if (OptionsManager.IgnoreOwnMessages && chat.Name == OptionsManager.OwnUsername)
                    {
                        return;
                    }

                    Chats.Insert(0, chat);

                    if (chat.Translation.Message == chat.Message || chat.Translation.Message == "---")
                    {
                        return;
                    }

                    /* Send translation in chat over telnet if options allow it. */
                    switch (OptionsManager.SendTranslationsFrom)
                    {
                    case TelnetGrant.AllChat:
                        if (chat.ChatType == ChatType.Team)
                        {
                            return;
                        }
                        break;

                    case TelnetGrant.TeamChat:
                        if (chat.ChatType == ChatType.All)
                        {
                            return;
                        }
                        break;
                    }

                    TelnetHelper.SendChatTranslation(OptionsManager.SendTranslationsTo, chat);

                    break;

                case Command command:

                    /* Check options is command is allowed */
                    switch (OptionsManager.AllowCommandsFrom)
                    {
                    case TelnetGrant.Self:
                        if (command.Name != OptionsManager.OwnUsername)
                        {
                            return;
                        }
                        break;

                    case TelnetGrant.TeamChat:
                        if (command.ChatType == ChatType.All)
                        {
                            return;
                        }
                        break;

                    default:
                        return;
                    }

                    Commands.Insert(0, command);
                    break;
                }
            }
예제 #5
0
 public void InitApConfig(string ip, string user, string password, List <string> commandList)
 {
     TelnetHelper.SetAPConfig(ip, user, password, commandList);
 }
예제 #6
0
        public void Test2()
        {
            var th = new TelnetHelper("shk.ap.averydennison.net", 23, null);

            th.Process();
        }