2015-04-24 09:18:49 +02:00
|
|
|
module.exports = (robot) ->
|
2015-04-24 12:02:14 +02:00
|
|
|
robot.respond /ricorda(?:ti)? (?:che )?(.+) ([=è]|sono) (.+)/i, (res) ->
|
2015-04-24 09:18:49 +02:00
|
|
|
mem = robot.brain.get('memoria') or {}
|
2015-04-24 12:02:14 +02:00
|
|
|
name = res.match[1].toLowerCase(); definition = res.match[3]
|
|
|
|
r = if res.match[2] is 'sono' then 'fossero' else 'fosse'
|
2015-04-24 09:18:49 +02:00
|
|
|
if mem[name]?
|
2015-04-24 12:02:14 +02:00
|
|
|
res.send 'pensavo che '+name+' '+r+' '+mem[name]+'. Mi ricorderò che invece è '+definition
|
2015-04-24 09:18:49 +02:00
|
|
|
else
|
2015-04-24 12:02:14 +02:00
|
|
|
res.send 'non sapevo che '+name+' '+r+' '+definition+'. Me lo ricorderò'
|
2015-04-24 09:18:49 +02:00
|
|
|
mem[name] = definition
|
|
|
|
robot.brain.set 'memoria', mem
|
2015-04-24 10:58:29 +02:00
|
|
|
robot.respond /dimentica(?:ti)? (.+)/i, (res) ->
|
|
|
|
mem = robot.brain.get('memoria') or {}
|
2015-04-24 11:26:28 +02:00
|
|
|
m = res.match[1].toLowerCase()
|
|
|
|
if mem[m]?
|
2015-04-24 10:58:29 +02:00
|
|
|
res.send 'cancellazione neuronale in corso...'
|
2015-04-24 11:26:28 +02:00
|
|
|
delete mem[m]
|
2015-04-24 10:58:29 +02:00
|
|
|
robot.brain.set 'memoria', mem # necessary?
|
|
|
|
else res.send 'non so cosa sia'
|
2015-04-24 12:02:14 +02:00
|
|
|
robot.respond /(?:che )?((?:(?:(?:(?:cos|qual)\'è)|chi (?:sono|è)?))|(?:quali|cosa) sono) (.+)(?:\?)?/i, (res) ->
|
2015-04-24 09:18:49 +02:00
|
|
|
mem = robot.brain.get('memoria') or {}
|
2015-04-24 12:02:14 +02:00
|
|
|
arg = (res.match[2] or res.match[1]).toLowerCase()
|
|
|
|
verbo = res.match[1].toLowerCase().split(/[' ]/i)
|
|
|
|
verbo = verbo[verbo.length-1]
|
|
|
|
if mem[arg]
|
|
|
|
res.send arg+' '+verbo+' '+mem[arg]
|
2015-04-24 09:18:49 +02:00
|
|
|
else res.send 'boh'
|
|
|
|
robot.respond /memoria/i, (res) ->
|
|
|
|
m = JSON.stringify robot.brain.get 'memoria'
|
|
|
|
if m isnt 'null'
|
|
|
|
res.send m
|
|
|
|
else res.send 'non so niente...'
|