def demo_reply_prompt_confirm(recent, itemTable, keyWordTable, eventTable,
                              sessionID=''):
    """
    10/04/09: called by demo_reply().
    modeled after dsh_django2.handle_staff_caller().
    """

    funcName = 'dsh_common_agi.demo_reply_prompt_confirm:'
    count = 0
    promptDir = dsh_common_config.lookup('DSH_PROMPT_DIR')
    demoPress1 = dsh_common_config.lookup('DSH_PROMPT_DEMO_PRESS1_SEND')
    demoPress1 = os.path.join(promptDir, demoPress1)
    timeOut1 = dsh_config.lookup('DSH_PROMPT_WAIT1')
    maxRetries = dsh_common_config.lookup2('STAFF_RETRIES')
    demoSending = dsh_common_config.lookup('DSH_PROMPT_DEMO_SENDING_IN8')
    demoSending = os.path.join(promptDir, demoSending)

    while True:
        count += 1

        if count > maxRetries:
            say_goodbye()
            return True

        choice = dsh_agi.get_digits(demoPress1, 1, timeOut=timeOut1)
        dsh_utils.db_print('%s the choice is: %s.' % (funcName, repr(choice)),
                           168)

        if choice == None or choice == '' or choice == '*':
            say_goodbye()
            return True

        if choice == '1':
            dsh_common_db.attempt_demo_reply_now(
                recent, itemTable, keyWordTable, eventTable,
                sessionID=sessionID)
            dsh_agi.say_it(demoSending)
            say_goodbye()
            return True

        continue

    return True
def make_dot_call_file(callee, sessionID=''):
    """
    10/04/10:
    called by dsh_common_db.attempt_demo_reply_now() and
    dsh_django2.dial_now().
    """

    now = datetime.datetime.now()
    wait = dsh_common_config.lookup2('DEMO_REPLY_DELAY')
    delta = datetime.timedelta(seconds=wait)
    callTime = now + delta
    success = dsh_django_utils.generate_dot_call_file(
        callee, callTime, None, dialNow=True, sessionID=sessionID)

    if success:
        response = dsh_utils.black_break_msg(
            'Calling %s @ %s...' % (callee.__unicode__(),
                                    callee.phone_number))
    else:
        response = dsh_utils.red_error_break_msg('Something wrong happened.')

    return (success, response)
def no_permission_reply():
    return dsh_common_config.lookup2('DSH_PERM_DENIED_URL')