Hello Tan,
As your question concerns adding complex functionality to Kentico and would require very in-depth explanations, I would strongly recommend that you consider our consulting services which would offer you much more detailed and hands-on support for this project.
You can find more information here: Consulting Overview
Your question is particularly well suited for the consulting service.
Best regards, Martin