Irc Api

This project is abandoned.

Whether this project is out of date or its author marked it as abandoned, this project is no longer maintained.

If you wish to take this project over, please report it and state your intentions.

IrcApi

This is a plugin which acts as a bridge between Minecraft and Irc.
By itself this plugin does nothing, So you hook into it.
You can then use the plugin to control an Irc bot!

The bot's behavior must be dictated by you.

You could just use PircBot instead of this plugin, You will suffer some discomfort as its not easier but overall it will give you a slight performance boost.

But the benefit of this is that you can hook more then one plugin into the Irc bot.
As well as its a simple drag and drop and hooking some stuff into your plugin.

Update!

In IrcApi 4.0 you can now toggle delays between IRC and the bot.
Just use disableDelay(), enableDelay() and isDelay()

In IrcApi 3.0 it now supports multiple IRC servers and connections.

You need to make a new instance of the api per server. And a defining bot name each instance.
If you simply just want one bot in your plugin then you do not have to worry about a botname.

This uses PircBot which is a java IRC Api.
But this has been changed as to provide events and be useable by plugins.

Instead of a single plugin making the connection you can hook your plugins into this single API.

To use the IRC functions hook onto IrcApi.

Such as this
IrcApi irc = new IrcApi();

Or if you want to create another. You can simple just do this.
No limits.

IrcApi irc1 = new IrcApi("BotName");

Then you can easily use
irc.connect(ServerIp);

etc.

Its recommended you do this first however
irc.setName(MyName);
Else your bot will attempt to join the server as "PircBot"

All the API functions for PircBot are there.

The API docoments for using PircBot.
http://www.jibble.org/javadocs/pircbot/index.html

If a event is missing or needs extending, Don't try to use the native PircBot way to get your events.
You will have to modify the API itself to fire the events or ask me to add them.

Try not to link to PircBot itself as quite frankly instead of using the previous connection I'm fairly sure you will be making a new IRC client.
And it would be far better to use the PircBot API instead of my API if you plan to use your own IRC stuff.

Source is included inside the file.
Currently the Bukkit Events inside it are not all the events it can do. But its the majority of the ones you need.

This also features automatic coloring and formatting switching between IRC and MC.

To install this on your server just drag and drop into your plugins folder
Then hook your plugins into it.

A few IrcApi events

  • IrcJoinEvent - Fires when someone joins a channel
  • IrcMessageEvent - Fires when someone says something in a channel
  • IrcPrivateMessageEvent - Fires when someone messages you
  • IrcNoticeEvent - Fires when someone notices you
  • IrcActionEvent - Fires when someone does a action eg /me slaps everyone with a fish
  • IrcKickEvent - Fires when someone has been kicked from a channel (Possibly us)
  • IrcQuitEvent - Fires when someone quits the server. (Possibly us)

An example piece of code.


IrcApi irc = new IrcApi();
IrcApi irc1 = new IrcApi("lib");

public void onEnable() {
//register events
irc.setName("KingKong");
irc1.setName("library");
irc.connect("irc.myserver.com");
irc1.connect("irc.myserver.com");
irc.joinChannel("#AChannel");
irc1.joinChannel("#AChannel")
irc.sendMessage("#AChannel", "KingKong has entered the building!");
irc1.sendMessage("#AChannel", "This API is awesome KingKong!");
irc.sendMessage("libraryaddict", "Im private messaging you library!");
}

@EventHandler
public void onChat(IRCMessageEvent event) {
Bukkit.broadcastMessage("<" + event.getNick() + "> " + event.getMessage()); //Just broadcasted what they said as if they were ingame.
}

I apologize for the bad formatting however I am not used to this.
Bukkit dev's formatting is very strange to me.

If someone would like to help me or setup the page for me.
I would be very thankful.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of libraryaddict libraryaddict Apr 02, 2014 at 01:45 UTC - 0 likes

    BFAK:libraryaddict,75154,c9bc87ad599337d3271d3cb02958adc594ab27bb05cc09136881ff0723c8fcb4

  • Avatar of xDGaming xDGaming Apr 02, 2014 at 01:19 UTC - 0 likes

    I'm actually working on something called ExtremeAPI you don't mind me using your source code do you? It would really help me out! :)

    My Plugins:
    Super Cookie
    xDGaming Color List BFAK:90875995,5f50acf6a1f434966f8e03c5ae5d602339204d6db4c762e04566f26f1db3e6e3

  • Avatar of robertcarr22 robertcarr22 Nov 11, 2013 at 23:14 UTC - 0 likes

    @Libraryaddict The IrcQuitEvent doesn't seem to be working. Doesn't run when someone quits the IRC channel

  • Avatar of parisfuja parisfuja Jul 11, 2013 at 10:22 UTC - 0 likes

    HELLO LIBRARYADDICT

    If you like, I can setup the page for ya.. No probs.

    Popular join message plugin made by me - MOTDPlus BFAK:90704409,27665f2cff4ceda9ac46417635627463794efd6996d1f7bea0c6490737711a34

  • Avatar of libraryaddict libraryaddict Apr 06, 2013 at 21:09 UTC - 0 likes

    @Ikadmin: Go

    Whats wrong with it?

  • Avatar of Ikadmin Ikadmin Apr 06, 2013 at 13:52 UTC - 0 likes

    Update?

    hg1.ik-mc.net
  • Avatar of Ikadmin Ikadmin Dec 29, 2012 at 14:22 UTC - 0 likes

    I made my own listener, works great! Thanks :)

  • Avatar of libraryaddict libraryaddict Dec 09, 2012 at 17:12 UTC - 0 likes

    @Ikadmin: Go

    You will need to make a custom listener.
    But yes.

  • Avatar of Ikadmin Ikadmin Dec 09, 2012 at 13:32 UTC - 0 likes

    So, I can make it so vote rewards are said on more than 1 server at a time?

  • Avatar of libraryaddict libraryaddict Oct 16, 2012 at 23:55 UTC - 0 likes

    @zack6849: Go

    Irc quit event is when they quit?

Facts

Date created
Sep 19, 2012
Category
Last update
Nov 30, 2012
Development stage
Abandoned
Language
  • enUS
License
Public Domain
Downloads
3,206
Recent files

Authors