# IM Robot

###### Identifier:

org.eclipse.ecf.presence.bot.imRobot

###### Since:

1.0.0 milestone 6

###### Description:

This extension point allows implementers to define a im bot.

###### Configuration Markup:

<!ELEMENT extension (imRobot)+>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED

>

<!ELEMENT imRobot EMPTY>

<!ATTLIST imRobot

id CDATA #REQUIRED

containerFactoryName CDATA #REQUIRED

connectId CDATA #REQUIRED

name CDATA #IMPLIED

connectPassword CDATA #IMPLIED

>

The imrobot extension point.

- id - The required id for the im robot. This must be a unique value relative to all other im robots. For message handlers that are to use this robot, they must provide a imrobotid that matches this value.
- containerFactoryName - The required container factory name. This should be the container factory name for a given protocol. For example, for the built in ECF IRC provider the value is ecf.xmpp.smack.
- connectId - The connect ID for connecting to the given container. For example, for XMPP the expected ID syntax of the connect ID is

      username@host[:port]

      for example:  slewis@ecf.eclipse.org

- name - An optional name for the bot.
- connectPassword - An optional connect password. If a password is required to connect to the given container then an appropriate value must be provided.

###### Examples:

       <extension
             point="org.eclipse.ecf.presence.bot.imRobot">
          <imRobot
                connectID="slewis@ecf.eclipse.org"
                containerFactoryName="ecf.xmpp.smack"
                id="org.eclipse.ecf.presence.imbot.defaultbot"/>
          </imRobot>
       </extension>

Note that to have the imrobot receive im messages and process them, that the immessagehandler should also be defined using the id for the imrobot given above. For example:

       <extension
             point="org.eclipse.ecf.presence.bot.immessagehandler">
          <handler
                imrobotid="org.eclipse.ecf.presence.imbot.defaultbot"
                class="org.eclipse.ecf.presence.imbot.DefaultIMMessageHandler">
          </handler>
       </extension>

###### API Information:

See the API information for the immessagehandler.

###### Supplied Implementation:

No supplied implementation.

Copyright (c) 2007 IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html