from .classroom_session import ClassroomSession
from .functions import get_function
from bson import ObjectId
[docs]
def main():
import time
session_id = '674ff0c87baecad6fd515719'
session = ClassroomSession(session_id)
session.clear_session()
input_str = ''
while input_str != 'quit':
count = 0
while True:
count += 1
if session.is_streaming():
print('is_streaming')
time.sleep(1)
continue
function_session = session.get_current_function()
if not function_session:
print('exit, the classroom session has ended')
exit(0)
function_id = str(function_session['_id'])
executor_name = function_session['call']
executor = get_function(executor_name)
value = function_session['value']
if executor_name != 'ReadScript':
from pprint import pprint
pprint(function_session)
continue_generate = executor.step(
value=value,
function_id=function_id,
classroom_session=session,
)
if not continue_generate:
break
if executor_name == 'ReadScript':
continue # set default to continue mode
input_str = input('User Input(Type Empty Message For Continue Mode): ')
if input_str.strip() and input_str != 'quit':
if executor_name == 'AskQuestion':
session.add_user_message(input_str, 'answer')
else:
session.add_user_message(input_str)
if __name__ == '__main__':
main()