Only server-cycle on exact server matches (#3412)
This commit is contained in:
parent
d6952f675b
commit
cc104f1080
1 changed files with 10 additions and 3 deletions
|
@ -9,6 +9,7 @@ log = logging.getLogger(__name__)
|
||||||
import asyncio
|
import asyncio
|
||||||
from xml.etree import cElementTree as ET
|
from xml.etree import cElementTree as ET
|
||||||
|
|
||||||
|
from slixmpp import JID, InvalidJID
|
||||||
from slixmpp.exceptions import XMPPError
|
from slixmpp.exceptions import XMPPError
|
||||||
from slixmpp.xmlstream.xmlstream import NotConnectedError
|
from slixmpp.xmlstream.xmlstream import NotConnectedError
|
||||||
from slixmpp.xmlstream.stanzabase import StanzaBase
|
from slixmpp.xmlstream.stanzabase import StanzaBase
|
||||||
|
@ -632,12 +633,18 @@ class CommandCore:
|
||||||
def server_cycle(self, args):
|
def server_cycle(self, args):
|
||||||
"""
|
"""
|
||||||
Do a /cycle on each room of the given server.
|
Do a /cycle on each room of the given server.
|
||||||
If none, do it on the current tab
|
If none, do it on the server of the current tab
|
||||||
"""
|
"""
|
||||||
tab = self.core.tabs.current_tab
|
tab = self.core.tabs.current_tab
|
||||||
message = ""
|
message = ""
|
||||||
if args:
|
if args:
|
||||||
domain = args[0]
|
try:
|
||||||
|
domain = JID(args[0]).domain
|
||||||
|
except InvalidJID:
|
||||||
|
return self.core.information(
|
||||||
|
"Invalid server domain: %s" % args[0],
|
||||||
|
"Error"
|
||||||
|
)
|
||||||
if len(args) == 2:
|
if len(args) == 2:
|
||||||
message = args[1]
|
message = args[1]
|
||||||
else:
|
else:
|
||||||
|
@ -646,7 +653,7 @@ class CommandCore:
|
||||||
else:
|
else:
|
||||||
return self.core.information("No server specified", "Error")
|
return self.core.information("No server specified", "Error")
|
||||||
for tab in self.core.get_tabs(tabs.MucTab):
|
for tab in self.core.get_tabs(tabs.MucTab):
|
||||||
if tab.name.endswith(domain):
|
if JID(tab.name).domain == domain:
|
||||||
tab.leave_room(message)
|
tab.leave_room(message)
|
||||||
tab.join()
|
tab.join()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue