Jump to: navigation, search

Difference between revisions of "IRC bot"

(Available Commands: Provide a link to the list of commands.)
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
An '''IRC bot''' named KOS-MOS has recently been created using the [[Eclipse Communication Framework]] project's [[Bot Framework]]. The bot sits in the [[IRC|Freenode IRC]] Eclipse channels and is intended to help make the lives of everyone in the channel a little easier by being able to access Bugzilla and provide helpful links that users often needs to go to such as the Eclipse platform's APIs.
+
An '''IRC bot''' named Arbalest has recently been created using the [[Eclipse Communication Framework]] project's [[Bot Framework]]. The bot sits in the [[IRC|Freenode IRC]] Eclipse channels and is intended to help make the lives of everyone in the channel a little easier by being able to access Bugzilla and provide helpful links that users often needs to go to such as the Eclipse platform's APIs.
  
 
For any questions, please contact '''rcjsuen''' on IRC.
 
For any questions, please contact '''rcjsuen''' on IRC.
  
 
==Status==
 
==Status==
The bot is hosted on ecf.eclipse.org. KOS-MOS is currently <font color="#00ff00">'''ONLINE'''</font>.
+
The bot is hosted by Nitin D, a committer on the Web Tools Platform.
  
 
===Channels===
 
===Channels===
 
KOS-MOS is set to autojoin the following channels on Freenode (irc.freenode.net):
 
KOS-MOS is set to autojoin the following channels on Freenode (irc.freenode.net):
*<nowiki>#</nowiki>easyeclipse
 
 
*<nowiki>#</nowiki>eclipse
 
*<nowiki>#</nowiki>eclipse
 
*<nowiki>#</nowiki>eclipse-bugs
 
*<nowiki>#</nowiki>eclipse-bugs
Line 15: Line 14:
 
*<nowiki>#</nowiki>eclipse-ecf
 
*<nowiki>#</nowiki>eclipse-ecf
 
*<nowiki>#</nowiki>eclipse-linux
 
*<nowiki>#</nowiki>eclipse-linux
 +
*<nowiki>#</nowiki>eclipse-orion
 
*<nowiki>#</nowiki>eclipse-modeling
 
*<nowiki>#</nowiki>eclipse-modeling
 
*<nowiki>#</nowiki>eclipse-soc
 
*<nowiki>#</nowiki>eclipse-soc
 +
*<nowiki>#</nowiki>eclipse-stp
 +
*<nowiki>#</nowiki>equinox-dev
 
*<nowiki>#</nowiki>higgins
 
*<nowiki>#</nowiki>higgins
 +
*<nowiki>#</nowiki>osgi
  
 
==Source Code==
 
==Source Code==
*Host: dev.eclipse.org
+
http://git.eclipse.org/c/ecf/org.eclipse.ecf.git/tree/applications/kosmos/bundles/org.eclipse.ecf.presence.bot.kosmos
*Repository Path: /cvsroot/technology
+
*User: anonymous
+
*Password not required
+
*Connection type: pserver
+
*Module: org.eclipse.ecf/applications/kosmos/plugins/org.eclipse.ecf.presence.bot.kosmos
+
*CVS Path: :pserver:anonymous@dev.eclipse.org:/cvsroot/technology
+
  
 
==Available Commands==
 
==Available Commands==
Please go [http://ecf.eclipse.org/~rcjsuen/messages.html here] for the currently available list of commands. If you have a better idea of formatting the output, please do not hesitate to file an [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=ECF enhancement request].
 
  
To prepend a user's name to the message that the bot will output, use '''~tell name about keyword''' or '''~tell name about command operand'''.
+
There are two types of commands that the bot can understand:
  
<!--
+
* Keyword-Based Messages: ~snippets, ~logs, ~deadlock
At the moment, the regular expression contained within the plug-in's plugin.xml is:
+
(~bug|~bug[0-9]+|~bug[0-9]+c[0-9]+|~[0-9]+|~[0-9]+c[0-9]+|~manage|~log|~logs|~about|~paste|~pastebin|~tell .*|~snippet|~snippets|~javadoc|~api|~plugin|~bot|~wtp|~php|~svn|~news|~newsgroup|~cmd|~commands|~help|~g .*|~wiki .*|~eh *|~source|~ecf|~tm|~deadlock|~keys)
+
  
To prepend a user's name to the message that the bot will output, use a syntax of '''~tell name about item'''.
+
* Commands With Operands: ~wiki IRC_FAQ, ~bug206528
  
If a valid http connection can be made to Bugzilla, the bot will output the bug's summary into its message, otherwise, it will fall back to simply providing a link to the bug.
+
To prepend a user's name to the message that the bot will output, use '''~tell name about message-keyword''' or '''~tell name about command operand'''.
 
+
Below is a list of all possible commands at the moment. This page will be updated as often as possible.
+
 
+
# ~bug
+
EclipseBugzilla = Eclipse Bugzilla - https://bugs.eclipse.org/bugs/
+
EclipseBugzilla_Reply = {0}: Eclipse Bugzilla - https://bugs.eclipse.org/bugs/
+
+
# ~bug[0-9]+|~[0-9]+
+
Bug = See bug {0} - {1}
+
Bug_Reply = {0}: See bug {1} - {2}
+
+
# ~bug[0-9]+c[0-9]+|~[0-9]+c[0-9]+
+
BugContent = Bug {0} - {1} - {2}
+
BugContent_Reply = {0}: Bug {1} - {2} - {3}
+
+
# ~manage
+
Manage = Manage your Eclipse environment - http://www-128.ibm.com/developerworks/opensource/library/os-ecl-manage/
+
Manage_Reply = {0}: Manage your Eclipse environment - http://www-128.ibm.com/developerworks/opensource/library/os-ecl-manage/
+
+
# ~log|~logs
+
Logs = Eclipse logs - http://wiki.eclipse.org/index.php/FAQ_Where_can_I_find_that_elusive_.log_file%3F - http://wiki.eclipse.org/index.php/IRC_FAQ#Where_are_Eclipse.27s_log_files_located_at.3F
+
Logs_Reply = {0}: Eclipse logs - http://wiki.eclipse.org/index.php/FAQ_Where_can_I_find_that_elusive_.log_file%3F - http://wiki.eclipse.org/index.php/IRC_FAQ#Where_are_Eclipse.27s_log_files_located_at.3F
+
+
# ~about|~bot
+
About = I am an IRC bot written by rcjsuen using the ECF bot framework. See http://wiki.eclipse.org/index.php/Bot_Framework
+
About_Reply = {0}: I am an IRC bot written by rcjsuen using the ECF bot framework. See http://wiki.eclipse.org/index.php/Bot_Framework
+
+
# ~paste|~pastebin
+
Pastebin = Please paste the relevant information to a pastebin - http://rafb.net/paste/ - http://pastebin.com - http://pastebin.ca
+
Pastebin_Reply = {0}: Please paste the relevant information to a pastebin - http://rafb.net/paste/ - http://pastebin.com - http://pastebin.ca
+
+
# ~snippet|~snippets
+
Snippets = SWT Snippets - http://www.eclipse.org/swt/snippets/
+
Snippets_Reply = {0}: SWT Snippets - http://www.eclipse.org/swt/snippets/
+
+
# ~javadoc|~api
+
Javadoc = The Eclipse Platform APIs are at - http://help.eclipse.org/help32/nftopic/org.eclipse.platform.doc.isv/reference/api/index.html
+
Javadoc_Reply = {0}: The Eclipse Platform APIs are at - http://help.eclipse.org/help32/nftopic/org.eclipse.platform.doc.isv/reference/api/index.html
+
+
# ~plugin
+
Plugins = Look for plug-ins at the Eclipse Plug-in Central (http://www.eclipseplugincentral.com/) and EclipsePlugins (http://eclipse-plugins.info)
+
Plugins_Reply = {0}: Look for plug-ins at the Eclipse Plug-in Central (http://www.eclipseplugincentral.com/) and EclipsePlugins (http://eclipse-plugins.info)
+
+
# ~wtp
+
Webtools = Check out Eclipse's Web Tools Platform - http://www.eclipse.org/wtp/
+
Webtools_Reply = {0}: Check out Eclipse's Web Tools Platform - http://www.eclipse.org/wtp/
+
+
# ~php
+
PHP = Take a look at PDT (http://www.eclipse.org/pdt/) or PHPEclipse (http://www.phpeclipse.de)
+
PHP_Reply = {0}: Take a look at PDT (http://www.eclipse.org/pdt/) or PHPEclipse (http://www.phpeclipse.de)
+
+
# ~svn
+
Subversion = For Subversion support, try Subclipse (http://subclipse.tigris.org/) or Subversive (http://www.polarion.org/index.php?page=overview&project=subversive)
+
Subversion_Reply = {0}: For Subversion support, try Subclipse (http://subclipse.tigris.org/) or Subversive (http://www.polarion.org/index.php?page=overview&project=subversive)
+
+
# ~news|~newsgroup
+
Newsgroup = Try asking for help on the newsgroups - http://www.eclipse.org/newsgroups/
+
Newsgroup_Reply = {0}: Try asking for help on the newsgroups - http://www.eclipse.org/newsgroups/
+
+
# ~news .*|~newsgroup .*
+
NewsgroupSearch = Newsgroup search URL - http://www.eclipse.org/search/search.cgi?q={0}&cmd=Search%21&form=extended&wf=574a74&ps=10&m=all&t=5&ul=%2Fnewslists%2Fnews.{1}&wm=wrd&t=News&t=Mail
+
NewsgroupSearch_Reply = {0}: Newsgroup search URL - http://www.eclipse.org/search/search.cgi?q={1}&cmd=Search%21&form=extended&wf=574a74&ps=10&m=all&t=5&ul=%2Fnewslists%2Fnews.{2}&wm=wrd&t=News&t=Mail
+
+
# ~cmd|~commands|~help
+
Help = For a list of the available commands that I provide, see http://wiki.eclipse.org/index.php/IRC_bot
+
Help_Reply = {0}: For a list of the available commands that I provide, see http://wiki.eclipse.org/index.php/IRC_bot
+
+
# ~g .*
+
Google = Try googling - http://google.com/search?q={0}
+
Google_Reply = {0}: Try googling - http://google.com/search?q={1}
+
+
# ~wiki .*
+
Wiki = Check out this wiki article - http://wiki.eclipse.org/index.php/{0}
+
Wiki_Reply = {0}: Check out this wiki article - http://wiki.eclipse.org/index.php/{1}
+
+
# ~eh .*
+
EclipseHelp = Check out the fine manual - http://help.eclipse.org/help32/advanced/searchView.jsp?&searchWord={0}
+
EclipseHelp_Reply = {0}: Check out the fine manual - http://help.eclipse.org/help32/advanced/searchView.jsp?searchWord={1}
+
+
# ~source
+
Source = My source code can be found at :pserver:anonymous@ecf1.osuosl.org:/ecf under the plugins/org.eclipse.ecf.presence.bot.kosmos module.
+
Source_Reply = {0}: My source code can be found at :pserver:anonymous@ecf1.osuosl.org:/ecf under the plugins/org.eclipse.ecf.presence.bot.kosmos module.
+
+
# ~ecf
+
ECF = Take a look at the Eclipse Communication Framework - http://www.eclipse.org/ecf/
+
ECF_Reply = {0}: Take a look at the Eclipse Communication Framework - http://www.eclipse.org/ecf/
+
+
# ~tm
+
TM = Check out Eclipse's Target Management project - http://www.eclipse.org/dsdp/tm/
+
TM_Reply = {0}: Check out Eclipse's Target Management project - http://www.eclipse.org/dsdp/tm/
+
+
# ~deadlock
+
Deadlock = In a deadlock? http://wiki.eclipse.org/index.php/How_to_report_a_deadlock
+
Deadlock_Reply = {0}: In a deadlock? http://wiki.eclipse.org/index.php/How_to_report_a_deadlock
+
+
# ~keys
+
Keys = For a list of available keybindings press Ctrl + Shift + l - http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/wrkAdv_keyBindings_accelSet.htm
+
Keys_Reply = {0}: For a list of available keybindings press Ctrl + Shift + l - http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/wrkAdv_keyBindings_accelSet.htm
+
-->
+
  
 
==Feature Requests==
 
==Feature Requests==
Line 157: Line 52:
 
**~wtp-home
 
**~wtp-home
 
**~dsdp-wiki
 
**~dsdp-wiki
 +
 +
See also: [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=%5Bbot%5D&classification=Technology&product=ECF&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Importance&field0-0-0=noop&type0-0-0=noop&value0-0-0= Open Bugs], [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=%5Bbot%5D&classification=Technology&product=ECF&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Importance&field0-0-0=noop&type0-0-0=noop&value0-0-0= Closed Bugs].

Revision as of 13:23, 25 February 2011

An IRC bot named Arbalest has recently been created using the Eclipse Communication Framework project's Bot Framework. The bot sits in the Freenode IRC Eclipse channels and is intended to help make the lives of everyone in the channel a little easier by being able to access Bugzilla and provide helpful links that users often needs to go to such as the Eclipse platform's APIs.

For any questions, please contact rcjsuen on IRC.

Status

The bot is hosted by Nitin D, a committer on the Web Tools Platform.

Channels

KOS-MOS is set to autojoin the following channels on Freenode (irc.freenode.net):

  • #eclipse
  • #eclipse-bugs
  • #eclipse-de
  • #eclipse-dev
  • #eclipse-ecf
  • #eclipse-linux
  • #eclipse-orion
  • #eclipse-modeling
  • #eclipse-soc
  • #eclipse-stp
  • #equinox-dev
  • #higgins
  • #osgi

Source Code

http://git.eclipse.org/c/ecf/org.eclipse.ecf.git/tree/applications/kosmos/bundles/org.eclipse.ecf.presence.bot.kosmos

Available Commands

There are two types of commands that the bot can understand:

  • Keyword-Based Messages: ~snippets, ~logs, ~deadlock
  • Commands With Operands: ~wiki IRC_FAQ, ~bug206528

To prepend a user's name to the message that the bot will output, use ~tell name about message-keyword or ~tell name about command operand.

Feature Requests

Please add all feature requests for the bot in Bugzilla.

Some older requests (without open bugs) include:

  • IRC session logging and control...e.g. ~startlogging, ~stoplogging, ~sendlog
  • Execute commands only if sender user has permission to do so
  • Commands for project build: start build, run tests. Restricted by channel and user.
  • ~newsgroup eclipse.tools.emf genmodel generation (support querying newsgroup for relevant threads bug 182606)
  • Would like to see a set of commands supported for every project (solved by bug 201751) ...e.g.
    • ~ecf-javadocs
    • ~wtp-home
    • ~dsdp-wiki

See also: Open Bugs, Closed Bugs.