Почему вы выбрали закрыть вопрос вместо признавать мои ответы? Вы спросили если принципиальная схема была по возможности и я дал вам множество ресурсов плюс мои собственные идеи на, то как вы smogли сделать им работу.
От вашего законченный примера, котор он смотрит как вы принял функции и случаи я упомянул и дал вам примеры справки и получил что-то работая.