JacobIRC
Version 2.0
This version of the plugin is no longer supoported nor maintained! For the new version go to JacobIRC 2.0
What is it? Basically, it is an IRC plugin, that allows you to link your server's chat and some channel on some IRC server. And use server commands from IRC!
Usage od JacobIRC
It is very simple, just download the latest build and put it into your plugins folder, then reload server and edit config.yml file.
Configuration
#Nick of bot BotName: JacoBot #Channel name WITHOUT # ChannelName: example #IRC server (without port) IrcServer: irc.example.org #IRC server port (6667 is default value) IrcPort: 6667 #Password registered in NICKSERVICE RegisteredPassword: mypassword #Channel password ChannelPassword: channelpassword #Server encoding (experimental) Encoding: utf-8 #Specifies whether all messages from IRC are sended to the game. SendAllMessages: false #People that can send commands from IRC by !cmd (we recommend only registered nicks) IrcAdmins: - Nick1 - Nick2 AdminErrorMsg: Only admins can use commands UserConnectMsg: Player %p connected to server UserDisconnectMsg: Player %p disconnected from server #With this, ALL output from console will be sent to IRC - you can do something like remote console. Be careful! FullConsoleSync: false #Format of message from IRC to game MessageFormat: IRC - %s - %m #Format of message from game to IRC ChatFormat: Server - %s - %m
Explanation:
- BotName is nick of your JacobIRC bot (we recommend to register it using Nickserv)
- ChannelName is name of channel that will your bot join (without #!)
- IrcServer is server where it will connect without port (irc.freenode.net etc....)
- IrcPort is port of that server, default 6667
- RegisteredPassword is password you use to identify with NICKSERVICE (/msg NickServ identify password) : you must register your bot on IRC server by /msg nickserv register <email> <password> (may vary on various servers, but it's usually like this) - add # before this line if you are not using NICKSERV
- ChannelPassword is password of channel - add # before this line if the channel is not protected (we recommend to do so)
- Encoding is encoding of your server, you should keep utf-8
- IrcAdmins is field of user names, that can use !cmd anycommand from IRC (this allows you to control your server from IRC) there must be IRC nicks!
- AdminErrorMsg is message, that will be sent to users, who use !cmd and who don't have perm. for it
- UserConnectMsg is message, that will appear on IRC when player connects to the game, you can use %p for player name.
- UserDisconnectMsg is message for disconnecting, you can use %p as well
- SendAllMessages is option for disable sending all messages from IRC to game. If this is false, you must write "BOTNAME:" to start of any message to be sent to game.
- FullConsoleSync is option for full console synchronization with IRC - all output from console is sended to IRC.
- MessageFormat is a placeholder for messages going from IRC to game - use %s for sender nick and %m for message itself
- ChatFormat is a placeholder for messages going from game to IRC - symbols are same as in MessageFormat
Permissions
There are two commands:
- ircmd - permission JIRC.Ircmd
- ircusers - permission JIRC.Irclist
IRCMD allows using /ircmd COMMAND PARAMETERS to control IRC connection from game. Command must be in RAW IRC format, for example /ircmd KICK #channelname Nick Reason
IRCUSERS will give you list of users on IRC
Commands
- ingame: /ircmd RAW IRC COMMAND
- ingame: /irclist
- from irc: !cmd command
- from irc: !players
Commands after connect
Plugin will create commands.txt file on first run. You can add raw IRC commands, that will be sended after connecting and joining channel
Completely rewriting plugin, coming soon
Same problem here.
WARN at net.ondryaso.plugins.HermanIRC.HIMain.doCommands(HIMain.java:98)
I'm running build #3020 (MC 1.7.2-R0.3). Digging through the code, it's definitely getting hung on trying to make a new command.txt file. Hope it gets fixed soon. I loved using this plugin as an easier to access alternative over other bundled remote consoles.
it seems that for me, v. 3.5 works with bukkit 1.7.2.R0.2 but breaks on R0.3 why, i have no idea except it spams log with: [JacobIRC] Can't create file with after-IRC-join commands java.io.IOException: The system cannot find the path specified
bear in mind, it worked on 1.7.2 R0.2 and breaks with R0.3 (many other plugins break on that too and need separate update to work again.)
That happens either when just updating the plugin and leaving old configs there or deleting the old configs in which case plugin manages to create config.yml normally and gets stuck on commands.txt (supposedly?) Future will tell about coming 1.7.5 though
Even better news, the actual version is fully-1.7-compatible!
Good news for all users! 1.7.4 release is comming soon! And maybe a little surprise? ;)
@Folas1337
i agree with folas1337
@ondryaso
Oh yeah, I really need this until I do full console synching.
Thanks for all your effort :)
Can you add an in game/console command that attempts a reconnect to the server/channel as well as a config reload command? I never reload my server, because it doesn't work with many plugins and it just messes everything up, so I either restart or wait for my 12 hourly restart. Could you please do me these 2 favors? My bot didn't connect for some reason and I wanted to make him reconnect, but I wasn't able to do so unless I restarted :(
Edit: Oh, now I know what my problem is/was. I got my channel password secured now but there seems to be no way to let the bot connect to a password secured channel. Could you add something like "ChannelPassword:" after "ChannelName"? Would be really great.
@ondryaso
Sounds kick ass. :)
@LeakCraft
So I will add it as new file, where you can write commands that will be sended to server after plugin starts, yes?
@ondryaso
I'm talking about +k on channels, (/mode #channel +k channelpasswordkeyhere), and (/join #channel channelpasswordkeyhere). It'd only be a small modification to the configuration, and the actual plugins join command. It'd allow for better security, since anyone can quickly /join #channel and /nick when the person who has administrative access to the plugin is gone, and launch commands from the IRC before they're forced to change their nick name.
@LeakCraft
Password support for channel? Do you mean channel "lock"? No, it isn't purpose of this plugin, but some IRC servers can has support for password lock. Sorry for that thing with %p, fix released.
Could you add password support for the channel? Thanks. EDIT: When someone connects in IRC, I get this:
Why is it saying %p instead of LeakCraftPlayer?
@Folas1337
So, I have version 3.0 with the Full-Sync, colors (this can do... funny stuff :D) and some fixes, I'll add the command for playerlist and that messages :) It will be here in few days. Just, wait :P
@ondryaso
You lazzy ass! Just kidding, thank you for the reply and all the work you're putting into this. Until there is a ticket system, I'll add suggestions here.
One more I have is to give a message like "<nick> joined IRC" in game because people can't tell who came online and who's watching the chat but make it configurable as well because some people might want to stalk their server :>
@Folas1337
1) So, I will add it. 2) Colors are possible, they aren't in this version because I'm VERY LAZY :D, but I will add it. 3) Ticket system is Jacob's business ;)
@ondryaso
You could add that as a config-option. I'd really appreciate it. People have to make sure that their channel is 100% safe then, so you better add some IMPORTANT comments to the config when people want to enable it.
At the moment colors appear as §3§r§n which should turn into the color code of IRC if you could do that (I've seen other plugins doing that, so it should be possible).
Also don't forget to enable the ticket system or what's the matter that I don't see it anywhere?
@Folas1337
I can't do output from console, because i can't recognize answer to command that you write from IRC. I can make only "remote-console" by IRC, if you want.
OndryasO, Main developer
@JacobCZ
Support for chats/colors would be cool as well, also chat-modifying (in IRC) configs, so we're able to modify how messages from IRC appear in game and how in game messages appear in IRC.
You were asking for suggestions, now take em! :D
No place for tickets
(or I just can't seem them)
Thank you for this plugin. Set it up on Esper.net and it works fine. My bot's op and I am as well. I've set it so only registered/identified people are able to talk in the channel so people are not able to abuse my nickname (which was possible before, can't tell what the problem is/was). So now it works and I'm super glad because it's the only one I was able to set up on esper.net AND has commands (!cmd) enabled.
Another thing that I am missing really badly is that you do not get the output when using !cmd. Say I'm using "!cmd say Hi", it doesn't show the "Hi" the console said in the chat. I'd also like to be able to get the output of the console to my IRC chat, like if I use "!cmd list" or "!cmd whois <name>" it should give me the output (maybe through query so nobody except for me can see that, otherwise I'll make my channel more secure/not accessible to other people) from the console.
Thanks for reading all this and thanks for your plugin once again,
Folas
Feel free to comment and ask for anything! Please post bugs in Ticket system ;)