Я пытаюсь написать ircBot в Java для некоторой практики. Я использую код this в качестве базы. Я пытаюсь понять, как заставить его читать текст с моей консоли, чтобы я мог поговорить с людьми с ботом. Существует один цикл while, который принимает вход от ircсервера и выплевывает его на консоль и отвечает на PING. Я предполагаю, что у меня должен быть другой поток, который берет входные данные от пользователя, а затем использует тот же BufferedWriter, чтобы снова выплюнуть его на ircserver, но я не могу понять, что он понял. Любая помощь была бы потрясающей!Создание клиента irc в Java
ответ
В коде, к которому вы привязались, экземпляры «читателя» и «писателя» действительно подключены к соответственно входящим и исходящим концами двухстороннего сокета, установленного с IRC-сервером.
Таким образом, чтобы получить вход от Пользователя, вы действительно новый новый поток, который каким-то образом принимает команды от пользователя и действует на них. Самой базовой моделью, естественно, было бы использовать System.in для этого, предпочтительно обертывая ее так, чтобы вы могли извлекать целые линейные входы от пользователя и анализировать их как команду.
Чтобы прочитать целые строки из System.in вы могли бы сделать что-то вроде этого:
BufferedReader bin = new BufferedReader(new InputStreamReader(System.in));
String line;
while ((line = bin.readLine()) != null) {
// Do stuff
}
Вы также могли бы рассмотреть возможность использования одного из библиотек консоли, там для Java, как JLine
If вы действительно хотите сделать себе одолжение, я рекомендую (после его экстенсивно) переключиться на pircbot. Pircbot действительно замечательная библиотека и позволит вам запустить бокс IRC всего за несколько минут. Ознакомьтесь с некоторыми примерами на сайте, он очень прост в использовании.
Рекомендую против PircBot. У этого есть неудачный дизайн API, от которого ваше приложение будет быстро расти. Скорее JawaBot или PircBotX. –
- 1. Дизайн клиента C++ IRC
- 2. Выход клиента SSH через IRC
- 3. Улучшение IRC-клиента в Python
- 4. Создание очереди сообщений IRC
- 5. Java irc library
- 6. Команды Java IRC bot
- 7. Создание клиента веб-сервиса Java
- 8. Создание клиента веб-сервиса Java
- 9. Построение IRC-бота в Java
- 10. Программирование простого клиента IRC (Internet-Relay-Chat)
- 11. IRC-библиотека в C#
- 12. Дать блокирование обертки скручена-х IRC клиента
- 13. Обновление CQ TcpClient (для IRC-клиента)
- 14. Создание клиента-клиента в службе REST
- 15. IRC-клиент в python
- 16. Какая лучшая IRC-сеть для Java (#java)?
- 17. Создание твита irc bot (ошибка авторизации входа)
- 18. Создание системы примечаний для бота IRC
- 19. Создание клиента веб-сервиса Java из WSDL
- 20. Создание клиента веб-службы с Java
- 21. IRC-клиент в Python; не IRC Bot
- 22. Irc Server/Киви IRC вопросы
- 23. Создание клиента коннектора RMI
- 24. Как мне заставить IRC-клиента Tkinter непрерывно считывать данные с IRC-сервера?
- 25. Ошибка Создание WebService клиента
- 26. Создание клиента клиента клиент/сервер в C#
- 27. Создание входа в систему FTP-клиента В java
- 28. Предложения для реализации клиента IRC на веб-платформах
- 29. Есть ли способ игнорировать MOTD от клиента IRC?
- 30. Как создать простой браузер IRC-клиента на основе браузера?
Вы должны выслать код, который вы сделали до сих пор (только соответствующая часть) для PING/PONG –
Я не уверен, какую добрую практику вы хотите, и это не отвечает на вопрос, но ... если вы пытаясь написать бот irc, вы действительно должны взглянуть на использование http://www.jibble.org/pircbot.php или http://jerklib.sourceforge.net/ – whaley
Попробуйте ** [JawaBot 2.x] (http://code.google.com/p/jawabot/)** - подключаемое автономное приложение с IRC и веб-интерфейсом, целью которого является включение нескольких функций под одним ботом, сохраняя при этом структуру кода. ** Mavenized **. –