| 1 | #interface:port to bind to. (default "127.0.0.1:6667") |
| 2 | bind = "127.0.0.1:6667" |
| 3 | |
| 4 | #enable debug logging (default false) |
| 5 | debug = false |
| 6 | |
| 7 | #enable trace logging (default false) |
| 8 | trace = false |
| 9 | |
| 10 | #enable gops agent (https://github.com/google/gops) |
| 11 | #used to track down memory leaks/cpu profiling |
| 12 | #default false |
| 13 | gops = false |
| 14 | |
| 15 | #TLS interface:port to bind to. (e.g 127.0.0.1:6697) (deault "") |
| 16 | # |
| 17 | #TLSBind = "127.0.0.1:6697" |
| 18 | |
| 19 | #directory to look for key.pem and cert.pem. (default ".") |
| 20 | # |
| 21 | #TLSDir = "/etc/pki/tls/matterircd/" |
| 22 | |
| 23 | # Specify the full path for your key and cert |
| 24 | #TLSKey = "/etc/pki/tls/matterircd/key.pem" |
| 25 | #TLSCert = "/etc/pki/tls/matterircd/cer.pem" |
| 26 | |
| 27 | # Override handshake timeout (in seconds) |
| 28 | #HandshakeTimeout = 10 |
| 29 | # Override client timeout (in seconds) |
| 30 | #ClientTimeout = 10 |
| 31 | |
| 32 | #PasteBufferTimeout specifies the amount of time in milliseconds that |
| 33 | #messages get kept in matterircd internal buffer before being sent to |
| 34 | #mattermost or slack. |
| 35 | #Messages that will be received in this time will be concatenated together |
| 36 | #So this can be used to paste stuff like ansi-art or code. |
| 37 | #Default 0 (is disabled) |
| 38 | #Depending on how fast you type 2500 is a good number |
| 39 | PasteBufferTimeout = 2500 |
| 40 | |
| 41 | ################################## |
| 42 | ##### MATTERMOST EXAMPLE ######### |
| 43 | ################################## |
| 44 | [mattermost] |
| 45 | #specify default mattermost server/instance (default "") |
| 46 | # |
| 47 | #DefaultServer = "chat.mycompany.com" |
| 48 | |
| 49 | #specify default mattermost team (default "") |
| 50 | # |
| 51 | #DefaultTeam = "mycompany" |
| 52 | |
| 53 | #use http connection to mattermost (default false) |
| 54 | Insecure = false |
| 55 | |
| 56 | #an array of channels that only will be joined on IRC. JoinExlude and JoinInclude will not be checked |
| 57 | #regexp is supported |
| 58 | #If it's empty, it means all channels get joined (except those defined in JoinExclude) |
| 59 | #Messages that get sent to unjoined channels (but you're joined on mattermost) will |
| 60 | #get sent to the &messages channel. |
| 61 | #default "" |
| 62 | # |
| 63 | #JoinOnly = ["#onlythischannel"] |
| 64 | |
| 65 | #an array of channels that won't be joined on IRC. |
| 66 | #regexp is supported |
| 67 | #Messages that get sent to unjoined channels (but you're joined on mattermost) will |
| 68 | #get sent to the &messages channel. |
| 69 | #You can still /JOIN exclude channels. |
| 70 | #default "" |
| 71 | # |
| 72 | #JoinExclude = ["#town-square","#boringchannel","#.*marketing.*"] |
| 73 | |
| 74 | #an array of channels that will override the settings in JoinExclude |
| 75 | #regexp is supported |
| 76 | #If it's empty, it means all channels get joined (except those defined in JoinExclude) |
| 77 | #Messages that get sent to unjoined channels (but you're joined on mattermost) will |
| 78 | #get sent to the &messages channel. |
| 79 | #default "" |
| 80 | # |
| 81 | #JoinInclude = ["#devops","#myteam-marketing"] |
| 82 | |
| 83 | #PartFake: a bool that defines if you do a /LEAVE or /PART on IRC it will also |
| 84 | #actually leave the channel on mattermost. |
| 85 | #if false it actually leaves the channel on mattermost |
| 86 | #if true it removes the channel from irc, but you're still joined on mattermost, messages |
| 87 | #of this channel will be sent to &messages channel |
| 88 | #Default false |
| 89 | # |
| 90 | PartFake = true |
| 91 | |
| 92 | #only allow connection to specified mattermost server/instances. |
| 93 | #Array, default empty |
| 94 | # |
| 95 | #Restrict = ["chat.mycompany.com"] |
| 96 | |
| 97 | #skip verification of mattermost certificate chain and hostname (default false) |
| 98 | SkipTLSVerify = false |
| 99 | |
| 100 | #also add the main team prefix to the channel name #team/channel (default false) |
| 101 | PrefixMainTeam = false |
| 102 | |
| 103 | #Only mark a conversation as viewed when you reply to that conversation or |
| 104 | #channel. This prevents Mattermost from clearing mobile app notifications |
| 105 | #instantly. Note that this prevents you from always appearing as online |
| 106 | #(anti-idle support is turned off unless ForceAntiIdle) (default false) |
| 107 | DisableAutoView = false |
| 108 | # Force and enable anti-idle. Useful for when DisableAutoView. |
| 109 | # ForceAntiIdle = true |
| 110 | # AntiIdleChannel = "town-square" |
| 111 | # AntiIdleInterval = 60 |
| 112 | |
| 113 | # If users set a Nickname, matterircd could either choose that or the Username |
| 114 | # to display in the IRC client. The option PreferNickname controls that, the |
| 115 | # default being to show the Username. (default false) |
| 116 | PreferNickname = false |
| 117 | |
| 118 | # Disable showing parent post / replies |
| 119 | HideReplies = false |
| 120 | # Shorten replies to approximately this length |
| 121 | ShortenRepliesTo = 0 |
| 122 | # Enable Unicode. |
| 123 | Unicode = false |
| 124 | # Disable showing reactions |
| 125 | HideReactions = false |
| 126 | |
| 127 | #Only join direct/group messages when someone talks. This stops from cluttering your |
| 128 | #irc client with lots of windows. |
| 129 | #If set to true dm/group messages will be joined on startup and not only on talk in the channel. |
| 130 | JoinDM = false |
| 131 | |
| 132 | #This will add a number between 000 and fff to each message |
| 133 | #This number will be referenced when a message is edited/deleted/threaded/reaction |
| 134 | #For more information see prefixcontext.md |
| 135 | PrefixContext = false |
| 136 | # Same as PrefixContext but with the message context at the end. |
| 137 | SuffixContext = false |
| 138 | # If either PrefixContext or SuffixContext specify which thread ID to use. Default is the |
| 139 | # matterircd generated @@([0-9][a-f]){3}. Uncomment to use Mattermost's message/parent thread IDs instead. |
| 140 | #ThreadContext = "mattermost" |
| 141 | # Similar to the above, but also show the message post IDs in addition to the parent thread ID. |
| 142 | #ThreadContext = "mattermost+post" |
| 143 | #Show Context for multi-line messages and only show it at the end. |
| 144 | ShowContextMulti = false |
| 145 | |
| 146 | #This will show (mention yournick) after a message if it contains one of the words configured |
| 147 | #in your mattermost "word that trigger mentions" notifications. |
| 148 | ShowMentions = false |
| 149 | # Channel wide default mentions @channel, @all, and @here are shown as IRC NOTICEs. |
| 150 | # This disables that making them appear as normal PRIVMSGs. |
| 151 | #DisableDefaultMentions = true |
| 152 | |
| 153 | # Enable syntax highlighting for code blocks. |
| 154 | # Formatter and Style are passed through to the chroma v2 package. |
| 155 | # https://github.com/alecthomas/chroma/blob/master/formatters/tty_indexed.go#L262 |
| 156 | # terminal/terminal8 for 8-colors, terminal16, terminal256, terminal16m (16M true-colour). |
| 157 | # https://github.com/alecthomas/chroma/tree/master/styles |
| 158 | # These are different colour schemes/styles. E.g. pygments, emacs, autumn, etc. |
| 159 | SyntaxHighlighting = "terminal256:pygments" |
| 160 | |
| 161 | # Path to file to store last viewed information. This is useful for replying only |
| 162 | # the messages missed. |
| 163 | LastViewedSaveFile = "matterircd-lastsaved.db" |
| 164 | |
| 165 | ############################# |
| 166 | ##### SLACK EXAMPLE ######### |
| 167 | ############################# |
| 168 | [slack] |
| 169 | #deny specific users from connecting. |
| 170 | #As we only connect using tokens, this will first do a ccnnection to see what username the token is from. If this |
| 171 | #username is on the DenyUsers the user will be disconnected. |
| 172 | #Array, default empty |
| 173 | # |
| 174 | #DenyUsers = ["username"] |
| 175 | |
| 176 | #https://get.slack.help/hc/en-us/articles/212281468-Direct-messages-and-group-DMs |
| 177 | #Only join direct/group messages when someone talks. This stops from cluttering your |
| 178 | #irc client with lots of windows. |
| 179 | #If set to true dm/group messages will be joined on startup and not only on talk in the channel. |
| 180 | JoinDM = false |
| 181 | |
| 182 | #only allow connection to specific slack sites. (eg for myslack.slack.com just specify myslack) |
| 183 | #As we only connect using tokens, this will first do a ccnnection to see what team the token is from. If this |
| 184 | #team isn't in the Restrict list, the user will be disconnected. |
| 185 | #Array, default empty |
| 186 | # |
| 187 | #Restrict = ["myslack"] |
| 188 | |
| 189 | # This will add the slack DisplayName as prefix to every message if the DisplayName differs from the Username |
| 190 | # More info about username/displayname see https://api.slack.com/changelog/2017-09-the-one-about-usernames |
| 191 | # Default false |
| 192 | UseDisplayName = false |
| 193 | |
| 194 | #an array of channels that only will be joined on IRC. JoinExlude and JoinInclude will not be checked |
| 195 | #regexp is supported |
| 196 | #If it's empty, it means all channels get joined (except those defined in JoinExclude) |
| 197 | #Messages that get sent to unjoined channels (but you're joined on mattermost) will |
| 198 | #get sent to the &messages channel. |
| 199 | #default "" |
| 200 | # |
| 201 | #JoinOnly = ["#onlythischannel"] |
| 202 | |
| 203 | #an array of channels that won't be joined on IRC. |
| 204 | #regexp is supported |
| 205 | #Messages that get sent to unjoined channels (but you're joined on mattermost) will |
| 206 | #get sent to the &messages channel. |
| 207 | #You can still /JOIN exclude channels. |
| 208 | #default "" |
| 209 | # |
| 210 | #JoinExclude = ["#town-square","#boringchannel","#.*marketing.*"] |
| 211 | |
| 212 | #an array of channels that will override the settings in JoinExclude |
| 213 | #regexp is supported |
| 214 | #If it's empty, it means all channels get joined (except those defined in JoinExclude) |
| 215 | #Messages that get sent to unjoined channels (but you're joined on mattermost) will |
| 216 | #get sent to the &messages channel. |
| 217 | #default "" |
| 218 | # |
| 219 | #JoinInclude = ["#devops","#myteam-marketing"] |
| 220 | |
| 221 | #This will add a number between 000 and fff to each message |
| 222 | #This number will be referenced when a message is edited/deleted/threaded/reaction |
| 223 | PrefixContext = false |
| 224 | |
| 225 | |
| 226 | ############################# |
| 227 | ##### MASTODON EXAMPLE ###### |
| 228 | ############################# |
| 229 | [mastodon] |
| 230 | #Go to https://yourmastodonserver/settings/applications/new |
| 231 | #Use matterircd as application name (default read/write/follow scopes are ok) |
| 232 | #Click on submit |
| 233 | #After submitting it'll show you the Client Key (we call it clientID), |
| 234 | #the client secret and Your access token |
| 235 | # |
| 236 | #Fill those in below with your server |
| 237 | #Connect to matterircd and /msg mastodon login |
| 238 | # |
| 239 | #server="https://mastodon.social" |
| 240 | #clientID="clientidstring" |
| 241 | #clientSecret="clientsecretstring" |
| 242 | #accessToken="accesstokenstring" |