Suppose you’re staff in a support channel which isn’t very frequented by other users, and you want Textual to make a sound and show a notification (i.e. trigger a highlight) whenever someone joins that support channel.
As of today (Oct 14th 2016), Textual lacks such a feature. The chat filter can trigger some actions when certain things happen, like user joins channel #foo, but notifications/highlights are no selectable action there.
So I came up with a workaround, kind of an ugly hack, but it does the job. Here’s how it works:
Textual has a hidden command called
/fakerawdata, which – surprise – fakes raw data. This means it will fake incoming raw IRC traffic and make Textual act accordingly. We will use it to create a fake message by the joining user that contains our nickname, so a highlight will be triggered.
- Go to Help -> Advanced and check Enable developer mode – without this, the /fakerawdata command does not work
- Go to Preferences -> Add-Ons -> Chat Filter and click the + in the lower left to create a new filter
- on the Filter tab, give the filter a name (example: watch joins on #foo), then copy paste this into the Filter Action field:
/fakerawdata :%_senderHostmask_% PRIVMSG %_channelName_% :%_localNickname_%, I joined! (fake message)
It should look like this:
- on the Channels tab, select Specific Items and select the channel(s) you want to watch for joins in the list that opens
- on the Events tab, make sure only User joined channel is selected
- The last three tabs Sender, Notes and Advanced are completely empty
Whenever someone joins your channel now, it will look like they immediately highlight you:
I know, it’s not perfect, but as I said, it does the job. And one day we might get a “highlight” filter action so this workaround is no longer needed, the feature was already requested.