Apply v3.3 changes on various modules
This commit is contained in:
parent
dc52593953
commit
d58afa9419
5 changed files with 94 additions and 93 deletions
|
|
@ -7,11 +7,11 @@ from xml.dom.minidom import parseString
|
|||
from event import ModuleEvent
|
||||
from xmlparser.node import ModuleState
|
||||
|
||||
nemubotversion = 3.2
|
||||
nemubotversion = 3.3
|
||||
|
||||
def load(context):
|
||||
global DATAS
|
||||
DATAS.setIndex("name", "station")
|
||||
global DATAS
|
||||
DATAS.setIndex("name", "station")
|
||||
|
||||
# evt = ModuleEvent(station_available, "42706",
|
||||
# (lambda a, b: a != b), None, 60,
|
||||
|
|
@ -19,45 +19,45 @@ def load(context):
|
|||
# context.add_event(evt)
|
||||
|
||||
def help_tiny ():
|
||||
"""Line inserted in the response to the command !help"""
|
||||
return "Gets information about velib stations"
|
||||
"""Line inserted in the response to the command !help"""
|
||||
return "Gets information about velib stations"
|
||||
|
||||
def help_full ():
|
||||
return "!velib /number/ ...: gives available bikes and slots at the station /number/."
|
||||
return "!velib /number/ ...: gives available bikes and slots at the station /number/."
|
||||
|
||||
|
||||
def getPage (s, p):
|
||||
conn = http.client.HTTPConnection(s, timeout=10)
|
||||
try:
|
||||
conn.request("GET", p)
|
||||
except socket.gaierror:
|
||||
print ("[%s] impossible de récupérer la page %s."%(s, p))
|
||||
return None
|
||||
conn = http.client.HTTPConnection(s, timeout=10)
|
||||
try:
|
||||
conn.request("GET", p)
|
||||
except socket.gaierror:
|
||||
print ("[%s] impossible de récupérer la page %s."%(s, p))
|
||||
return None
|
||||
|
||||
res = conn.getresponse()
|
||||
data = res.read()
|
||||
res = conn.getresponse()
|
||||
data = res.read()
|
||||
|
||||
conn.close()
|
||||
return (res.status, data)
|
||||
conn.close()
|
||||
return (res.status, data)
|
||||
|
||||
def station_status(station):
|
||||
"""Gets available and free status of a given station"""
|
||||
(st, page) = getPage(CONF.getNode("server")["ip"], CONF.getNode("server")["url"] + station)
|
||||
if st == http.client.OK:
|
||||
response = parseString(page)
|
||||
available = response.documentElement.getElementsByTagName("available")
|
||||
if len(available) > 0:
|
||||
available = int(available[0].childNodes[0].nodeValue)
|
||||
"""Gets available and free status of a given station"""
|
||||
(st, page) = getPage(CONF.getNode("server")["ip"], CONF.getNode("server")["url"] + station)
|
||||
if st == http.client.OK:
|
||||
response = parseString(page)
|
||||
available = response.documentElement.getElementsByTagName("available")
|
||||
if len(available) > 0:
|
||||
available = int(available[0].childNodes[0].nodeValue)
|
||||
else:
|
||||
available = 0
|
||||
free = response.documentElement.getElementsByTagName("free")
|
||||
if len(free) > 0:
|
||||
free = int(free[0].childNodes[0].nodeValue)
|
||||
else:
|
||||
free = 0
|
||||
return (available, free)
|
||||
else:
|
||||
available = 0
|
||||
free = response.documentElement.getElementsByTagName("free")
|
||||
if len(free) > 0:
|
||||
free = int(free[0].childNodes[0].nodeValue)
|
||||
else:
|
||||
free = 0
|
||||
return (available, free)
|
||||
else:
|
||||
return (None, None)
|
||||
return (None, None)
|
||||
|
||||
def station_available(station):
|
||||
"""Gets available velib at a given velib station"""
|
||||
|
|
@ -86,12 +86,12 @@ def print_station_status(msg, station):
|
|||
def ask_stations(msg):
|
||||
"""Hook entry from !velib"""
|
||||
global DATAS
|
||||
if len(msg.cmd) > 5:
|
||||
if len(msg.cmds) > 5:
|
||||
return Response(msg.sender,
|
||||
"Demande-moi moins de stations à la fois.",
|
||||
msg.channel, nick=msg.nick)
|
||||
elif len(msg.cmd) > 1:
|
||||
for station in msg.cmd[1:]:
|
||||
elif len(msg.cmds) > 1:
|
||||
for station in msg.cmds[1:]:
|
||||
if re.match("^[0-9]{4,5}$", station):
|
||||
return print_station_status(msg, station)
|
||||
elif station in DATAS.index:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue