Inactive [CHAT] IRCTransport 0.13.0 - Minecraft Chat/IRC Integration[1.2.3-R0.2]

Discussion in 'Inactive/Unsupported Plugins' started by hef, Feb 4, 2011.

  1. Offline

    hef

    This Bukkit plugin replaces minecraft chat system with a connection to an IRC Server. All IRC Connections happen Bukkit server side, so either run your own IRC server, or make sure that you are allowed to use mutiple connections on the IRC server of your choice.
    Available settings:

    Put these in IRCTransport/plugin.yml file with appropriate values.

    Code:
    verbose: false
    suppress:
      initial_userlist: false
      initial_topic: false
    server:
      address: localhost
      port: 6667
      ssl:
        enabled: false
        trust: false
      nicksize: 16
      webirc_password: p@$$w0rd
    default:
      prefix: '[MC]'
      suffix:
      channels:
        - channel: '#minecraft'
    messages:
      chat-irc: '&9[&b${CHANNEL}&9] &3${NICK}: &f${MESSAGE}'
      quit: '&3${NICK} &fleft'
      private: '&2${NICK}&f to you: &f${MESSAGE}'
      part: '&3${NICK} &fleft'
      rename: '&3${OLDNICK} &fis now &3${NEWNICK}'
      kick: '&3${NICK} &ckicked by &3${OP}: &${REASON}'
      join: '&3${NICK} &fjoined &b${CHANNEL}'
      list: 'On &9[&b${CHANNEL}&9]: &3${LIST}'
      topic: '&9[&b${CHANNEL}&9] &3Topic: &f${TOPIC}'
      action: '* &3${NICK} &a${ACTION}'
    translations:
      hit the ground too hard: hit the ground
    
    The server address setting is mandatory. All other settings are optional.

    Normal Settings:

    Your config.yml will look a lot like this:
    Code:
    server:
      address: irc.example.com
    default:
      channels:
        - channel: '#minecraft'
    
    Available commands:

    Code:
    /join #channel [key]
    /leave #channel
    /channel #channel -- changes your active channel
    /msg user -- send a private message to a user
    /nick new_name  -- change your display name.
    /names -- shows users in your channel
    /me action to perform -- performs an irc action
    /topic -- get or set the channel topic
    /whois -- gets information about the nick
    
    Download
    Source
    Features:

    • Minecraft chat is replaced with an IRC session.
    • Private messaging works in game.
    • IRC channels are joinable in game.
    Changelog:
    Version 0.13.0
    • Leaving a channel sets another channel active.
    • Disabling IRC <-> Minecraft color code mapping (for now).
    • Added message customization support.
    • Added basic translation support.
    • Added trust all SSL option.
    • Fixed bog on player join.
    • Added WebIRC support.
    • Added Metrics
    Version 0.12.0
    • Works with Bukkit 1.1 (and 1.2)
    • Fixed bug in DeathMessage
    Version 0.11.2
    • Fixed /msg showing usage everytime.
    Version 0.11.1
    • Fixed nullUSERNAMEnull bug.
    Version 0.11
    • Fixed a potential reload bug
    • Changed from using server.properties to using IRCTransport/config.yml
    • Added /whois support.
    • Added nick persistance.
    Version 0.10
    • Added nickanme prefix and suffix options.
    • Fixed Automatic reconnect after plugin is disabled or server is stopped.
    • Added Error message for nick name already in use.
    • Fixed a null exception when the console tries to use irc commands.
    • Channel parts (leaving a channel) are now announced.
    • Channel kicks is now announced.
    • Added some handling for "Connection reset" errors.
    Version 0.9
    • Fixed PlayerJoinEvent/PlayerQuitEvent changes
    • Added channel key support.
    • Added auto join key support.
    • Made system messages yellow.
    Version 0.8
    • Actually fixed bug that 0.7 was supposed to fix.
    • Added irc.password and irc.port configuration options.
    Version 0.7
    • Fixed bug where IRC agent would reconnect after player disconnected.
    Version 0.6
    • Attempts to reconnect to IRC server on connection failure/disconnect.
    • Minecraft color to IRC color support in chat.
    • Color conversion code refactored.
    Version 0.5
    • Fixed a nickname change bug.
    • IRC color to minecraft color support in chat.
    • Removed TSLPC.
    • Channel topic support
    Version 0.4
    • Added /me support
    • Added /names support.
    • Added channel is invite only error message.
    • Changed output messages to use logging.
    • Fixed bug in nickname changing.
    Version 0.3
    • Renamed PlayerBot to IrcAgent.
    • Fixed join message detection.
    • Changed package name to hef.IRCTransport as per request.
    • Changed build system to Maven.
    Version 0.2
    • Player's name displays correctly when their name is changed.
    • Nick change notification added.
    • Nick already in use handling changed.
    • Active channel is switched on channel join.
    • Channel join messages.
    • Channel autojoin now a setting.
    Version 0.1
    • Basic irc features are functional in Minecraft.
     
    Bagels, someoneB, kvartz and 4 others like this.
  2. Offline

    hef

    yes.

    --edit--
    Version 0.11 uses a config.yml.
     
  3. Offline

    Nowan123

    awesome plugin!
    The only problem I have is that whenever someone logs in they get "nullUSERNAMEnull" as their name... kinda sucks, is there any way to fix?
    (connecting to Slashnet, btw, if that matters)

    ah, i figured it out, use /nick NICKNAME
    one bug though, instead of getting a return message from chanserv/nickserv, or even when i msg'd a friend, i kept getting "Example: /msg fdsasfds Nice build there!", i guess this is a bug in the syntax check

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 8, 2016
  4. Offline

    hef

    Sorry about that, update to 0.11.1 and delete IRCTransport.db.
     
  5. Offline

    Nowan123

    Awesome, that's a really quick fix! :D
     
  6. Offline

    hef

    Fortunately, this is just a cosmetic bug. The message is still sent. Still, Fixed in version 0.11.2.
    If you are not receiving private message, let me know, that is a bug I would need to look at more.

    I like to get on regression bugs quickly, especially ones I can easily reproduce.
     
  7. Offline

    WardenWolf

    Can't get prefixes or suffixes to work. 0.11.2.
    Code:
    # Config File for IRCTransport
    # See the website for more information
    verbose: false
    suppress:
      initial_userlist: false
      initial_topic: false
    server:
      address: CENSORED
      port: 6667
    default:
      channels:
      - prefix: EC_
      - suffix: EC_
      - channel: '#minecraft'
    No matter what I do, it just joins with my base playername.
     
  8. Offline

    hef

    Try this
    Code:
    # Config File for IRCTransport
    # See the website for more information
    verbose: false
    suppress:
      initial_userlist: false
      initial_topic: false
    server:
      address: CENSORED
      port: 6667
    default:
      prefix: EC_
      suffix: EC_
      channels:
        - channel: '#minecraft'
    Your syntax is a little off with the prefix/suffix entries.

    Perhaps this will help:
    Your config.yml would be interpreted like this:

    Code:
    default.channels = [{prefix: "EC_" }, {suffix: "EC_"}, {channel: "#minecraft"}]
    
    and what you want is this:

    Code:
    default.prefix = EC_
    default.suffix = EC_
    default.channels = [{channel: "#minecraft"}]
    
     
  9. Offline

    tehsu

    Any update on the WEBIRC?

    Also if anyone would like, I run a IRC network.
    Your welcome to have your Minecraft channel there if you would like, just PM me for the info. I will give you an eline so you can have unlimited users connect from one IP.
     
  10. Offline

    hef

    I pulled WEBIRC out of this release because it is still broken.

    Deatails:

    The WebIRC command needs to be sent after the connection is setup but before the nick is requested.
    The underlying IRC library (pircbot) initializes the connection and sets the nick in the the connect() call. The connect() method is marked "final", so I can't override it in my IrcAgent subclass. Java reflection doesn't help me either, because it cant change the "final"ness of a method.
     
  11. Offline

    FearGrump

    messed up faction chat.. :S
     
  12. Offline

    hef

    I'm assuming that faction chat is another plugin, do you have a link to it?
     
  13. Offline

    Ulrar

    Did you found the problem with pIRCbot ?
    I have the same issue.

    Code:
    12:54:23 [INFO] StormDelay [/xx:xx] logged in with entity id 1318 at ([world_the_end] 593.0425346717168, 63.0, -211.28367146152019)
    12:54:23 [INFO] *** Connected to server.
    12:54:23 [INFO] >>>NICK StormDelay
    12:54:23 [INFO] >>>USER StormDelay 8 * :PircBot 1.5.0 Java IRC Bot - www.jibble.org
    12:54:28 [GRAVE] The PircBot is already connected to an IRC server.  Disconnect first.
    java.io.IOException: The PircBot is already connected to an IRC server.  Disconnect first.
            at org.jibble.pircbot.PircBot.connect(PircBot.java:131)
            at org.jibble.pircbot.PircBot.reconnect(PircBot.java:248)
            at hef.IRCTransport.Connect.run(Connect.java:61)
            at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
            at java.lang.Thread.run(Thread.java:679)
    
    The IRC server is a unrealircd on a Gentoo, on port 6697 (SSL).
    I guess the problem is the SSL part, how can you specify that it need to connect in ssl ?
    I'll go try like in ZNC, with a + ..

    Okay, the problem is the SSL.
    I tried without it and it works fine.
    Can you add the support of SSL servers ?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 8, 2016
  14. Offline

    hef

    The underlying IRC library doesn't support SSL, so an ssl IRC connection won't work
     
  15. Offline

    Ulrar

    Talking about pircbot ?
    Code:
    bot.connect(hostname, port, new TrustingSSLSocketFactory());
    Never used it but, first google result, it does.
     
  16. Offline

    hef

    I can't be certain, but you appear to have found a pircbot modded to support SSL.

    Personally, I have been looking at pircbotx for ssl support in a future release.
     
  17. Offline

    Ulrar

    Ha, may be you'r right.
    Well, hope it'll be available some days, I don't like to have an IRC server without SSL running on my server (the CGU forbid it).
     
  18. Offline

    widardd

    great plugin, exactly what we were looking for. would it be possible to include all messages to be transported? such as deaths, or even from other plugins? (thinking about FoundBoxx)
     
  19. Offline

    dirkson

    I had sort of assumed that "Added nickname prefix and suffix options." meant that it now pulled prefix and suffix from individual players' permissions. These got me all excited, but turned out not to be the case.

    We could use this lovely plugin if only it had that functionality. Could I put in a feature request for it?

    Alternatively, plugins like ichat could provide this, if you could somehow hand over the formatting of messages to them.

    And so long as I'm requesting things - Suppressing the join/part messages would be handy. Our chat is spammy enough as-is :D

    Cheers,
    -Dirk
     
  20. Offline

    neXorianus

    Hey, using your Plugin for a few weeks now...
    but there are a few things i want to ask you for....
    1. is it possible to remove the channel prefix infront of the name? got a pretty long channel name, so it consumes a lot of space.
    2. is it possible to keep the ingame nicks as they are, but change them when they are send to irc, (from IRC to MC still with a Prefix)
      e.g. like this:
    Code:
    ((viewed in Minecraft))mc-player: some question?
    [irc] irc-chatter: some answer!
     ((viewed in IRC))
     [MC]mc-player: some question?
     irc-chatter: some answer!
    My server allready got pretty nice (permission based) nick name coloring (old mChat version) and I want to keep this in MC

    like those things too =))

    thanks in advance and for building this awesome Plugin!
    neX
     
  21. Offline

    Averus

    Hi,
    plugin are great, but cant find some web chat or web service to chain chat with my own IRC on web site,
    please help me some one to find chat script or service,
    tnx.
     
  22. Offline

    neXorianus

    try using mibbit.com to connect to your prefered server and channel. is also possible to integrate this into a selfmade website...
    or search for a sollution whithin your IRC-Server host (euirc.net has its own pjirc. very handy =) )
     
    Averus likes this.
  23. Offline

    Averus

    SEVERE] Error occurred while enabling IRCTransport v0.11.2 (Is it up to date?): Cannot store null
    java.lang.IllegalArgumentException: Cannot store null
    at org.bukkit.configuration.MemorySection.prepForStorage(MemorySection.java:526)
    at org.bukkit.configuration.MemorySection.set(MemorySection.java:189)
    at org.bukkit.configuration.file.YamlConfiguration.deserializeValues(YamlConfiguration.java:96)
    at org.bukkit.configuration.file.YamlConfiguration.deserializeValues(YamlConfiguration.java:93)
    at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:64)
    at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:143)
    at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:213)
    at org.bukkit.plugin.java.JavaPlugin.getConfig(JavaPlugin.java:127)
    at hef.IRCTransport.IRCTransport.onEnable(IRCTransport.java:96)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:170)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:957)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:280)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:171)
    at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:154)
    at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:297)
    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:284)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:152)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:348)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)


    using 1.8.1 server and 1337 buk
    help
     
  24. Offline

    hef

    Post your config.yml
     
  25. Offline

    Deleted user

    Anything I say in IRC isn't relayed to my minecraft server.
     
  26. Offline

    moose517

    how does this work as far as like prefixes and coloring of the names go?
     
  27. Offline

    hef

    Post your config.yml

    There is no name coloring support.
    Prefixes and suffixes are set in the config, and do correspond to groups.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 8, 2016
  28. Offline

    azzza95

    Is there any way you configure this so it doesn't conflict with the factions plugin?

    I have another question. Is it possible that you could make it so only ops can change their nick?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 8, 2016
  29. Offline

    zcleaver

    Please update to #1500+!?
     
    neXorianus likes this.
  30. Offline

    hef

    I'm going to need some details:
    What does the factions plugin do?
    Where is the factions plugin (link)?
    What is the nature of the conflict?
    What are the error messages generated by the conflict?
    I don't plan on doing much with permissions on commands, most rules can be enforced via the IRC server.

    Please test before requesting support, especially for a non-RB build of bukkit.

    For the most part, the bukkit api is forward compatible. Iv'e been running version 0.11.2 on 1559 without any problems.
    If there is a break against a dev version, I need specific details, like version numbers/build numbers, error messages and descriptions of features that don't work right.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 8, 2016
  31. Offline

    zcleaver

    Here is my error log:

    Code:
    2011-12-11 17:02:42 [INFO] This server is running Craftbukkit version git-Bukkit-1.8.1-R4-107-g57bd936-b1578jnks (MC: 1.0.1) (Implementing API version 1.0.0-R1-SNAPSHOT)
    2011-12-11 17:02:43 [INFO] DataSourcePool [IRCTransport] autoCommit[false] transIsolation[SERIALIZABLE] min[2] max[20]
    2011-12-11 17:02:43 [INFO] SubClassFactory parent ClassLoader [org.bukkit.plugin.java.PluginClassLoader]
    2011-12-11 17:02:44 [INFO] Entities enhanced[0] subclassed[1]
    2011-12-11 17:02:49 [INFO] IRCTransport v0.11.2 is enabled!
    
    What does that mean? Is it normal?
     

Share This Page