Add cross-network support to the watch module [$5] #310

Open
opened 2026-10-05 04:12:21 +02:00 by adam · 4 comments
Owner

Hi,
It'd be awesome if it was possible to get highlight notifications across networks.

E.g. I have my ZNC set up to connect to 5 networks and I'm only connected to my ZNC network A.
Then someone on network B could highlight me and I'd get a notification on my client that only is connected to network A, so I can know there's something going on and I can connect to network B.

There is a $5 open bounty on this issue. Add to the bounty at Bountysource.

Hi, It'd be awesome if it was possible to get highlight notifications across networks. E.g. I have my ZNC set up to connect to 5 networks and I'm only connected to my ZNC network A. Then someone on network B could highlight me and I'd get a notification on my client that only is connected to network A, so I can know there's something going on and I can connect to network B. ## <bountysource-plugin> There is a **[$5 open bounty](https://www.bountysource.com/issues/1442867-add-cross-network-support-to-the-watch-module?utm_campaign=plugin&utm_content=tracker%2F1759&utm_medium=issues&utm_source=github)** on this issue. Add to the bounty at [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F1759&utm_medium=issues&utm_source=github). </bountysource-plugin> <!-- github-sync-id:29745793 -->
Author
Owner

This would be very helpful and this would probably mean user level module which would also help a lot.

It seems like I am just putting exact same config to all network instances or forgetting it and wondering why they don't work and returning to those sometime long time later.

The example would also help as my ZNC is on 8 networks and with phone I am on 4 (both numbers include BitlBee) and it's not entirely impossible that someone says something on some other network that I should be aware of or reply to.

This would be very helpful and this would probably mean user level module which would also help a lot. It seems like I am just putting exact same config to all network instances or forgetting it and wondering why they don't work and returning to those sometime long time later. The example would also help as my ZNC is on 8 networks and with phone I am on 4 (both numbers include BitlBee) and it's not entirely impossible that someone says something on some other network that I should be aware of or reply to. <!-- github-comment-id:79287819 -->
Author
Owner

What is currently the best way to handle the following situation?

  • Two clients: WeeChat & Communi Sailfish
    • Communi Sailfish doesn't support highlighting on anything else than nick
  • 8 networks
  • Having alert for alternative nicks and specific words like !ops in addition to %nick% on specific channels?

I think this issue/user level *watch would make it easier and I think currently I would be forced to write rules to some text file and copy-paste it to all networks or to /allserv.

https://github.com/znc/znc/issues/965 would also be very helpful when phone is offline.

What is currently the best way to handle the following situation? - Two clients: WeeChat & Communi Sailfish - Communi Sailfish doesn't support highlighting on anything else than nick - 8 networks - Having alert for alternative nicks and specific words like `!ops` in addition to _%nick%_ on specific channels? I think this issue/user level *watch would make it easier and I think currently I would be forced to write rules to some text file and copy-paste it to all networks or to /allserv. https://github.com/znc/znc/issues/965 would also be very helpful when phone is offline. <!-- github-comment-id:116208061 -->
Author
Owner

This comment might be useless, but possibly shows the issue more clearly.

dumps

chatspike

2015-09-09 14:52:10+0300 < *watch> ---------------
2015-09-09 14:52:10+0300 < *watch> /msg *watch CLEAR
2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%*
2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ
2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *ops *!ops*
2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 2 #AceCoding
2015-09-09 14:52:10+0300 < *watch> ---------------

dereferenced

2015-09-09 14:52:10+0300 < *watch> ---------------
2015-09-09 14:52:10+0300 < *watch> /msg *watch CLEAR
2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%*
2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ
2015-09-09 14:52:10+0300 < *watch> ---------------

freenode

2015-09-09 14:52:10+0300 < *watch> /msg *watch CLEAR
2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%*
2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ
2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *ops *!ops*
2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 2 ##abgilpqt+ ##Mikaela #weechat-fi #akunapu #znc

oftc

2015-09-09 14:52:11+0300 < *watch> /msg *watch CLEAR
2015-09-09 14:52:11+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%*
2015-09-09 14:52:11+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ

pirateirc

2015-09-09 14:52:11+0300 < *watch> /msg *watch CLEAR
2015-09-09 14:52:11+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%*
2015-09-09 14:52:11+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ
2015-09-09 14:52:11+0300 < *watch> /msg *watch ADD *!*@* *ops *!ops*
2015-09-09 14:52:11+0300 < *watch> /msg *watch SETSOURCES 2 #aktivismi #kaakko #piraattipulue #uutiset #transpiraatit

the first rule as you might see is in all networks with /allserv, but the optimal case would be

/znc loadmod --type=user watch
/znc *watch add * *highlight *%nick%*
/znc *watch setsources 1 * !##Mikaela !NickServ !ChanServ !GroupServ
/znc *watch add * *ops *!ops*
/znc *watch setsources 2 #AceCoding ##abgilpqt+ ##Mikaela #weechat-fi #akunapu #znc #aktivismi #kaakko #piraattipulue #uutiset #transpiraatit

as those channels exist only in one network or I am not in the other networks I wouldn't have to do so much work in all networks.

This comment might be useless, but possibly shows the issue more clearly. # dumps ## chatspike ``` 2015-09-09 14:52:10+0300 < *watch> --------------- 2015-09-09 14:52:10+0300 < *watch> /msg *watch CLEAR 2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%* 2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ 2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *ops *!ops* 2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 2 #AceCoding 2015-09-09 14:52:10+0300 < *watch> --------------- ``` ## dereferenced ``` 2015-09-09 14:52:10+0300 < *watch> --------------- 2015-09-09 14:52:10+0300 < *watch> /msg *watch CLEAR 2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%* 2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ 2015-09-09 14:52:10+0300 < *watch> --------------- ``` ## freenode ``` 2015-09-09 14:52:10+0300 < *watch> /msg *watch CLEAR 2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%* 2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ 2015-09-09 14:52:10+0300 < *watch> /msg *watch ADD *!*@* *ops *!ops* 2015-09-09 14:52:10+0300 < *watch> /msg *watch SETSOURCES 2 ##abgilpqt+ ##Mikaela #weechat-fi #akunapu #znc ``` ## oftc ``` 2015-09-09 14:52:11+0300 < *watch> /msg *watch CLEAR 2015-09-09 14:52:11+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%* 2015-09-09 14:52:11+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ ``` ## pirateirc ``` 2015-09-09 14:52:11+0300 < *watch> /msg *watch CLEAR 2015-09-09 14:52:11+0300 < *watch> /msg *watch ADD *!*@* *highlight *%nick%* 2015-09-09 14:52:11+0300 < *watch> /msg *watch SETSOURCES 1 * !##Mikaela !NickServ !ChanServ !GroupServ 2015-09-09 14:52:11+0300 < *watch> /msg *watch ADD *!*@* *ops *!ops* 2015-09-09 14:52:11+0300 < *watch> /msg *watch SETSOURCES 2 #aktivismi #kaakko #piraattipulue #uutiset #transpiraatit ``` --- the first rule as you might see is in all networks with `/allserv`, but the optimal case would be ``` /znc loadmod --type=user watch /znc *watch add * *highlight *%nick%* /znc *watch setsources 1 * !##Mikaela !NickServ !ChanServ !GroupServ /znc *watch add * *ops *!ops* /znc *watch setsources 2 #AceCoding ##abgilpqt+ ##Mikaela #weechat-fi #akunapu #znc #aktivismi #kaakko #piraattipulue #uutiset #transpiraatit ``` as those channels exist only in one network or I am not in the other networks I wouldn't have to do so much work in all networks. <!-- github-comment-id:138887482 -->
Author
Owner

Looking from user side it wouldn't need small changes

2015-09-17 13:17:43+0300 < *highlight> -Euforia:#channel- Mikaela: blah!
2015-09-17 13:18:02+0300 < *highlight> <Euforia:#channel> Mikaela: blah!

would become

2015-09-17 13:17:43+0300 < *highlight> -freenode:Euforia:#channel- Mikaela: blah!
2015-09-17 13:18:02+0300 < *highlight> <freenode:Euforia:#channel> Mikaela: blah!

The only potential issue I see is having all watch notifications on all networks, but I wouldn't mind that so much, notify_connect has the same issue and I don't have problems with it either.

Looking from user side it wouldn't need small changes ``` 2015-09-17 13:17:43+0300 < *highlight> -Euforia:#channel- Mikaela: blah! 2015-09-17 13:18:02+0300 < *highlight> <Euforia:#channel> Mikaela: blah! ``` would become ``` 2015-09-17 13:17:43+0300 < *highlight> -freenode:Euforia:#channel- Mikaela: blah! 2015-09-17 13:18:02+0300 < *highlight> <freenode:Euforia:#channel> Mikaela: blah! ``` The only potential issue I see is having all watch notifications on all networks, but I wouldn't mind that so much, notify_connect has the same issue and I don't have problems with it either. <!-- github-comment-id:141037231 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/znc#310