FST Graduate Research Topic


Research Topic: Multi-User and Mulit-Chatbot Online Chatroom
Suggested By: Maiga Chang
Last Update: March 19th, 2025

This research topic can only be taken by Project route student. This research topic include the following project development. The project outcome needs to be examined by pilot testing for usability and technology acceptance analysis (for Project students). 

Tasks of this project also include:


 


 


 


This project is now entering to its 2nd stage with the following main four tasks:


 





  • Revamping the existing web-based multi-user chatroom (i.e., the platform, see https://chat.vipresearch.ca/) with the implementation of Python-based WebSocket server.



  • Designing and developing search filters (e.g., date, period, user, word string/combinations, emotions, chatbot flag, etc.) and statistics (e.g., user/chatbot action sequences, interactions, frequencies, co-presenting, etc.).



  • Revamping the process and functions of designing and developing chatbot developer's and their chatbot registration function as well as service entry points (in PHP) for chatbot to access the platform and emulate human user's behaviours.



  • Implementing demo chatbots with the Python-based 5-Component Chatbot (i.e., communicating, listening, processing/filtering, saving/retrieving info from memory, and talking) framework -- review the short video at https://youtu.be/1HETR44cv34 to get some basic idea -- so future chatbot developers can adopt and extend.




 



NOTE: This project needs to implement a Websocket server in Python. Also, the browser-side open source JavaScript libraries like React JS can be considered to use. It is also recommended to consider RWD (Responsive Web Design) with proper CSS and JavaScript.


 


NOTE: When implement the chatbots (who can do anything through sending commands like a real user connecting to the websocket service via his/her browser and JavaScript), the project is expected to use Python as Python supports Natural Language Processing, Machine Learning, and Text Generation libraries. 


 


NOTE: The chatbot and the communication component are implemented in Python. 


 




For taking this topic, the student is better to have the following skills or knowledge:


 







  • Familiar with JSON, HTML, CSS, and AJAX. 





  • Familiar with PHP. 





  • Familiar with Python.





  • Familiar with Git commands.





  • Familiar with client-side (browswer side) JavaScript development WITHOUT the use of jQuery and other frameworks.





  • Familiar with using browswer side JavaScript to access a backend web page in PHP via AJAX and pass data in JSON format.





  • Familiar with mySQL/MariaDB and SQL commands.





  • Information collection, re-organization, summarization, and reports.





  • Using screen capture software and video editing software/tool to creating instructional video clips in mp4 format.





  • [Asset] Having experience in Network Socket and/or WebSocket programming.





  • [Asset] Having experience in using BitBucket/GitHub Repository. 





  • [Asset] Having experience in using Natural Language Processing library (NLTK) with Python.





  • [Asset] Having experience in developing Python standalone application (acts as startup daemons running via cron job in Ubuntu).