Created
February 6, 2019 19:45
-
-
Save lindhe/7c8f504450e65abc42a29d31c5c05f1e to your computer and use it in GitHub Desktop.
teleirc config
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var config = {}; | |
module.exports = config; | |
///////////////////// | |
// General config // | |
///////////////////// | |
// verbosity of console output | |
// possible options from most to least verbose: | |
// silly, debug, verbose, info, warn, error | |
config.logLevel = 'error'; | |
// paste the bot API token you got from BotFather here: | |
config.tgToken = 'notmyrealtoken'; | |
// only relay IRC events present in array | |
// possible values include: | |
// message, notice, action, topic, join, part, kick, quit | |
config.relayIRCEvents = ['message', 'notice', 'action', 'topic', 'kick']; | |
// The maximum length of quoted message when a message is replied to in Telegram | |
// Set to 0 to disable showing replies | |
config.replySnippetLength = 80; | |
// enable HTTP server which hosts sent media files, links to files are | |
// forwarded to IRC | |
config.showMedia = false; | |
// Convert these media files to other types using the "convert" command. | |
// To be able to convert from WebP, install imagemagick and the dwebp tool | |
// (e.g. sudo apt install imagemagick webp) | |
config.mediaConversions = { | |
//'webp': 'png' | |
}; | |
// Add some randomness to url when relaying media | |
// Use 0 to disable | |
config.mediaRandomLength = 8; | |
// Age in seconds after which a Telegram message is not relayed, this prevents | |
// spamming the IRC channel if your bot was offline for a long time | |
config.maxMsgAge = 60; | |
// HTTP server port | |
config.httpPort = 9090; | |
// HTTP server location, URLs are generated from this | |
config.httpLocation = 'http://mydomain.com' + ':' + config.httpPort; | |
// Upload sent photos to Imgur, links to Imgur uploads are | |
// forwared to IRC | |
config.uploadToImgur = false; | |
// Imgur client id required for uploading photos to Imgur | |
config.imgurClientId = 'YOUR-CLIENT-ID'; | |
// Whether to allow sending messages to IRC without nick prefix | |
config.allowCommands = false; | |
////////////////// | |
// IRC config // | |
////////////////// | |
// Colorizes nicks | |
config.nickcolor = true; | |
// Nick color palette | |
config.palette = [ | |
'silver', 'navy', | |
'green', 'red', 'brown', | |
'purple', 'olive', | |
'teal', 'cyan', | |
'pink', 'blue' | |
]; | |
// If soloUse is true, send all messages without username preview, intented | |
// to use telegram as a limited IRC client. | |
config.soloUse = false; | |
// formatting of Telegram usernames on IRC. | |
// the following placeholders are available: | |
// | |
// - %firstName% (first name of sender) | |
// - %lastName% (last name of sender) | |
// - %username% (optional Telegram username of sender) | |
config.nameFormat = 'tg-%username%'; | |
// fallback format string for %username% if sender lacks username | |
config.usernameFallbackFormat = '%firstName% %lastName%'; | |
// Replace newline characters in Telegram messages with this string before | |
// relaying them to IRC, prevents flood from long messages. | |
// | |
// Tip: you can set this to \n if you want them as separate messages on IRC | |
config.replaceNewlines = ' … '; | |
config.ircNick = 'telegrambot'; | |
config.ircServer = '[censored to protect against bots].dtek.se'; | |
// array of commands to send to IRC server as soon as we're connected, | |
// example: config.ircPerformCmds = [ | |
// 'PRIVMSG Q@CServe.quakenet.org :AUTH <username> <password>' | |
// ] | |
config.ircPerformCmds = [ | |
'privmsg NICKSERV identify telegrambot thisisnotmyrealpassword', | |
'mode telegrambot +B' | |
]; | |
config.channels = [ | |
{ | |
ircChan: '#dtek', | |
tgGroup: 'dtek' | |
}, | |
{ | |
ircChan: '#dhack', | |
tgGroup: 'dhack' | |
} | |
]; | |
// see https://node-irc.readthedocs.org/en/latest/API.html#client for | |
// documentation | |
config.ircOptions = { | |
userName: 'telegrambot', | |
realName: 'Telegram IRC Bot', | |
port: 6697, | |
password: '', | |
localAddress: null, | |
showErrors: false, | |
autoRejoin: true, | |
autoConnect: true, | |
channels: [], // auto generated, do not touch | |
secure: true, | |
selfSigned: false, | |
certExpired: false, | |
floodProtection: true, | |
floodProtectionDelay: 1000, | |
sasl: false, | |
stripColors: true, | |
channelPrefixes: '&#!', | |
messageSplit: 512, | |
encoding: '' | |
}; | |
// the default hilight regexp will match lines containing the bot nick, or | |
// lines starting with '! ' | |
var regex = '^ *(?:' + config.ircNick + '[:,]?|!) +(.*\\S.*)$'; | |
config.hlRegexp = new RegExp(regex, 'i'); | |
// if there was a match, should we only show the parenthesized substring match? | |
// with the default regexp this would hide the bot nickname in messages when | |
// highlighted | |
config.hlOnlyShowMatch = false; | |
// put action messages (posted with /me in IRC) between '*' | |
config.emphasizeAction = true; | |
// a list of users to ignore | |
// and not relay to telegram | |
config.ircIgnoreList = [ | |
// 'user_or_bot_here' | |
]; | |
// list of regular expressions to test a message | |
// text with, any that match will mean the message won't relay | |
config.ircRegexFilters = [ | |
// /regexhere/, | |
]; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment