From a308a5425f6f7bed7fc15ba43d9bf3f1894083fa Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Sat, 27 Jul 2013 22:38:22 +0000 Subject: remove extra stuff --- (limited to 'pysamples/brain.py') diff --git a/pysamples/brain.py b/pysamples/brain.py deleted file mode 100644 index 33ee320..0000000 --- a/pysamples/brain.py +++ /dev/null @@ -1,111 +0,0 @@ -# A Turtle Block based on the Speak Activity interface to AIML -# Copyright 2012 Walter Bender, Sugar Labs -# -# Copyright (C) 2008 Sebastian Silva Fundacion FuenteLibre -# sebastian@fuentelibre.org -# -# Style and structure taken from Speak.activity Copyright (C) Joshua Minor -# -# HablarConSara.activity is free software: you can redistribute it -# and/or modify it under the terms of the GNU General Public -# License as published by the Free Software Foundation, either -# version 3 of the License, or (at your option) any later version. -# -# HablarConSara.activity is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public -# License along with HablarConSara.activity. If not, see -# . - - -def myblock(tw, text): - ''' Dialog with AIML library: Usage: Load this code into a Python - Block. Pass text as an argument and the robot's response will - be pushed to the stack. Use a Pop Block to pop the response - off the the stack.''' - - # The AIML library is bundled with the Speak activity - SPEAKPATHS = ['/home/olpc/Activities/Speak.activity', - '/home/liveuser/Activities/Speak.activity', - '/usr/share/sugar/activities/Speak.activity'] - import os - from gettext import gettext as _ - speakpath = None - for sp in SPEAKPATHS: - if os.path.exists(sp): - speakpath = sp - break - if speakpath is None: - tw.showlabel( - 'status', _('Please install the Speak Activity and try again.')) - return - import sys - sys.path.append(speakpath) - - import aiml - import voice - - BOTS = { - _('Spanish'): {'name': 'Sara', - 'brain': os.path.join(speakpath, 'bot', 'sara.brn'), - 'predicates': {'nombre_bot': 'Sara', - 'botmaster': 'La comunidad Azucar'}}, - _('English'): {'name': 'Alice', - 'brain': os.path.join(speakpath, 'bot', 'alice.brn'), - 'predicates': {'name': 'Alice', - 'master': 'The Sugar Community'}}} - - def get_mem_info(tag): - meminfo = file('/proc/meminfo').readlines() - return int([i for i in meminfo if i.startswith(tag)][0].split()[1]) - - # load Standard AIML set for restricted systems - if get_mem_info('MemTotal:') < 524288: - mem_free = get_mem_info('MemFree:') + get_mem_info('Cached:') - if mem_free < 102400: - BOTS[_('English')]['brain'] = None - else: - BOTS[_('English')]['brain'] = os.path.join(speakpath, 'bot', - 'alisochka.brn') - - def get_default_voice(): - default_voice = voice.defaultVoice() - if default_voice.friendlyname not in BOTS: - return voice.allVoices()[_('English')] - else: - return default_voice - - def brain_respond(kernel, text): - if kernel is not None: - text = kernel.respond(text) - if kernel is None or not text: - text = '' - tw.showlabel( - 'status', - _("Sorry, I can't understand what you are asking about.")) - return text - - def brain_load(kernel, voice): - brain = BOTS[voice.friendlyname] - kernel = aiml.Kernel() - - if brain['brain'] is None: - tw.showlabel( - 'status', _('Sorry, there is no free memory to load my brain. \ -Close other activities and try once more.')) - return kernel - - kernel.loadBrain(brain['brain']) - for name, value in brain['predicates'].items(): - kernel.setBotPredicate(name, value) - - return kernel - - if not hasattr(tw, 'aiml_kernel'): - tw.aiml_kernel = brain_load(tw, get_default_voice()) - response_text = brain_respond(tw.aiml_kernel, text) - tw.lc.heap.append(response_text) - return -- cgit v0.9.1