Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
882,5 KB
Nội dung
ĐỒ ÁN CƠ SỞ ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN BÁO CÁO ĐỒ ÁN CƠ SỞ ĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH HỘI THOẠI CLIENTSERVER HOẠT ĐỘNG THEO GIAO THỨC TCP/IP Lớp : 18IT5 Sinh viên thực : Trần Duy Mai Dung Giảng viên hướng dẫn : TS Nguyễn Sĩ Thìn Đà Nẵng, tháng 12 năm 2020 Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ MỞ ĐẦU Những tiến to lớn công nghệ, đặc biệt công nghệ thông tin thập niên cuối kỷ 20 tạo bước ngoặt cho phát triển kinh tế xã hội tồn cầu Nhu cầu trao đổi thơng tin, liên lạc người ngày tăng cao Để đáp ứng nhu cầu đó, website, ứng dụng di động giúp người trao đổi, liên lạc trực tuyến xuất ngày nhiều Nhắc đến ứng dụng trao đổi thơng tin, liên lạc khơng thể không nhắc đến gã khổng lồ Messenger Facebook, Zalo Việt Nam, vô số ứng dụng khác thị trường Mỗi ứng dụng có điểm mạnh yếu riêng Chung quy lại, chức ứng dụng để gửi nhận tin nhắn văn bản, hình ảnh tệp đính kèm Một số ứng dụng có chức hội thoại, chí trị chuyện video Điểm mạnh ứng dụng trị chuyện trực tuyến tính tiện lợi, nhanh chóng tiết kiệm Chỉ cần có internet, thơng tin hay tệp liệu bạn gửi đến đâu, lúc với tốc độ nhanh Không cần tốn tiền gửi thư, gửi bưu phẩm, hay phải chờ hàng tháng trời để nhận thư phản hồi Hiện ứng dụng trò chuyện trực tuyến nhiều vô số kể, bên cạnh ứng dụng thành cơng khơng dụng chết bắt đầu hoạt động khơng thể cạnh tranh với ứng dụng mạnh mẽ trước Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ LỜI CẢM ƠN Trong lời báo cáo đồ án “nghiên cứu xây dựng chương trình hội thoại giao thức TCP/IP ” này, em muốn gửi lời cám ơn biết ơn chân thành tới tất người hổ trợ, giúp đỡ em kiến thức tinh thần trình thực đồ án Trước hết em xin chân thành cám ơn thầy Nguyễn Sĩ Thìn , Giảng viên Khoa Công nghệ Thông tin Truyền thông - Đại học Đà Nẵng, người trực tiếp hướng dẫn, nhẫn xét, giúp đỡ em suốt trình thực đồ án Xin chân thành cảm ơn ban giám hiệu nhà trường, thầy Khoa phịng ban nhà trường tạo điều kiện tốt cho em bạn khác suốt trình thực đồ án Cuối em xin gửi lời cảm ơn đến bạn bè, thầy cô giúp đỡ động viên em nhiều q trình hồn thành đồ án Do thời gian thực có hạn, kiến thức nhiều hạn chế nên đồ án thực chắc chắn khơng tránh khỏi thiếu sót định Em mong nhận ý kiến góp ý thầy cô giáo bạn để em có thêm kinh nghiệm tiếp tục hồn thiện đồ án Em xin chân thành cảm ơn! Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ NHẬN XÉT (Của giảng viên hướng dẫn) ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… Đà Nẵng, ngày … tháng … năm 20… Giảng viên hướng dẫn Nguyễn Sĩ Thìn Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ MỤC LỤC Chương 1: GIỚI THIỆU .7 1.1 Tổng quan: .7 1.1.1 Bối cảnh thực đề tài: .7 1.1.2 Vấn đề cần giải quyết: 1.1.3 Đề xuất nội dung thực hiện: 1.2 Phương pháp, kết quả: 1.2.1 Phương pháp: 1.2.2 Kết quả: Chương 2: NGHIÊN CỨU ĐỀ TÀI .9 2.1 Giới thiệu trò chuyện trực tuyến: 2.2 Một số ưu nhược điểm trò chuyện trực tuyến: 2.2.1 Ưu điểm: 2.2.2 Nhược điểm: 10 2.3 Một số ứng dụng trò chuyện trực tuyến tiêu biểu: 10 2.3.1 Facebook Messenger: 10 2.3.2 Zalo: 10 2.4 Tổng quan công nghệ mơ hình sử dụng dự án: 11 2.4.1 Java: .11 2.4.2 Socket.IO: .13 2.4.3 Giao thức TCP/IP: 15 Chương 3: 20 THỰC HIỆN DỰ ÁN VÀ KẾT QUẢ .20 3.1 Các ngôn ngữ công nghệ sử dụng cho dự án: 20 3.2 Các chức ứng dụng: 20 3.2.1 Các chức chính: 20 3.2.2 Hạn chế tồn tại: .20 3.3 Cách thức thực hiện: 20 a Server: 20 b Client: 21 c Xử lý đăng nhập: 21 d Xử lý đăng ký: 21 Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ e Gửi tin nhắn: 22 f Truyền file: 22 3.4 Kết quả: 22 ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 24 Đánh giá tổng quan dự án: 24 Hướng phát triển: .24 DANH MỤC THAM KHẢO 25 Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ Chương 1: GIỚI THIỆU 1.1 Tổng quan: 1.1.1 Bối cảnh thực đề tài: Trong q trình phát triển xã hội, cơng nghệ thông tin phát triển mạnh mẽ, ngày thâm nhập sâu, trở thành công cụ hỗ trợ đắc lực cho người lĩnh vực Nhu cầu liên lạc, trao đổi thông tin người với người ngày tăng cao cần thiết Dựa xu phát triển xã hội nhu cầu thiết thực người, ứng dựng trò chuyện trực tuyến đời 1.1.2 Vấn đề cần giải quyết: Để đáp ứng nhu cầu liên lạc trực tuyến, chạy theo xu hướng phát triển xã hội Một ứng dụng trò chuyện trực tuyến cần đáp ứng yêu cầu thiết yếu trò chuyện văn bản, trao đổi hình ảnh, tệp liệu, hay chí thực hội thoại giọng nói hay trị chuyện hình ảnh trực tuyến (video chat) Vấn đề thứ cần giải đảm bảo ứng dụng có đầy đủ chức cần thiết Một điều quan trọng bảo mật an tồn thơng tin liệu người dùng Vấn đề thứ hai tính ổn định bảo mật ứng dụng Hiện ứng dụng trị chuyện trực tuyến nhiều vơ số kể, bên cạnh ứng dụng thành cơng khơng dụng chết bắt đầu hoạt động khơng thể cạnh tranh với ứng dụng mạnh mẽ trước Vấn đề thứ ba khả marketing cạnh tranh ứng dụng 1.1.3 Đề xuất nội dung thực hiện: Thực khảo sát nghiên cứu thị trường, nhu cầu cung ứng mảng Nghiên cứu, tham khảo ứng dụng có, điểm mạnh yếu Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ Vì ứng dụng thành cơng thất bại Rút học từ người trước 1.2 Phương pháp, kết quả: 1.2.1 Phương pháp: Nghiên cứu thị trường, tham khảo ứng dụng có sẵn Tiếp thu điểm mạnh loại bỏ điểm yếu lựa chọn công nghệ tối ưu đại để bắt kịp xu phát triển không ngừng công nghệ Tiến hành phân tích thiết kế, rủi ro, tính khả thi bất khả thi công việc cần thực Sau phân tích, tiến hành thiết kế sở liệu, thiết kế giao diện bước hoàn thiện, ghép nối dự án thành sản phẩm hồn chỉnh Sau có sản phẩm hồn chỉnh, tiến hành thử nghiệm chỉnh sửa, cập nhật sai sót Cuối tổng kết đưa hướng phát triển tương lai 1.2.2 Kết quả: Nghiên cứu học hỏi từ ứng dụng bật Zalo, Messenger Nghiên cứu học tập công nghệ mới, áp dụng để phát triển ứng dụng Socket.IO Sau trình thực hiện, kết thu ứng dụng trò chuyện trực tuyến với chức năng: Trò chuyện văn hai cá nhân Trò chuyện văn nhóm gồm nhiều thành viên Truyền tệp hình ảnh hai cá nhân Truyền tệp hình ảnh nhóm gồm nhiều thành viên Hoạch định hướng phát triển tương lai Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ Chương 2: NGHIÊN CỨU ĐỀ TÀI 2.1 Giới thiệu trò chuyện trực tuyến: Trò chuyện trực tuyến (hay nhắn tin nhanh, tin nhắn tức khắc, chát – từ chat tiếng Anh, IM viết tắt Instant Messaging), dịch vụ cho phép hai người trở lên nói chuyện trực tuyến với qua mạng máy tính Mới IRC, nhắn tin nhanh trị chuyện mạng, phương pháp nói chuyện phổ biến Nhắn tin nhanh dễ dùng IRC, có nhiều tính hay, khả trị chuyện nhóm, dùng biểu tượng xúc cảm, truyền tập tin, tìm dịch vụ cấu hình dễ dàng liệt kê bạn bè Nhắn tin nhanh thúc đẩy phát triển Internet đầu thập niên 2000 Có nhiều cách để thực nhắn tin nhanh, thông qua dịch vụ IRC, hay dịch vụ Yahoo!, Microsoft, nhắn tin nhanh hỗ trợ nhiều giao thức khác Một số người dùng bị giới hạn sử dụng ứng dụng khách truy cập giao thức/mạng IM, MSN hay Yahoo! 2.2 Một số ưu nhược điểm trò chuyện trực tuyến: 2.2.1 Ưu điểm: Khá dễ dàng tiếp cận sử dụng Tính tiện dụng cao, có tể sử dụng lúc nơi thông qua internet Tốc độ truyền tải nhanh, truyền tải nhiều dạng liệu khác văn bản, âm thanh, hình ảnh… Trần Duy Mai Dung -18IT5 Trang ĐỒ ÁN CƠ SỞ Độ phổ biến rộng rãi Tích hợp cho nhiều tảng smartphone (Android, iOS) máy tính (Window, MacOS, Linux, Ubuntu) 2.2.2 Nhược điểm: Phụ thuộc vào internet Chưa đảm bảo tính bảo mật an tồn thơng tin sử dụng 2.3 Một số ứng dụng trò chuyện trực tuyến tiêu biểu: 2.3.1 Facebook Messenger: Facebook Messenger dịch vụ ứng dụng phần mềm tin nhắn tức thời chia sẻ giao tiếp ký tự giọng nói Được tích hợp ứng dụng chat Facebook xây dựng giao thức MQTT Messenger cho phép người dùng Facebook trò chuyện với bạn bè di động trang web Được tích hợp ứng dụng Chat (trò chuyện) Facebook xây dựng giao thức MQTT, Messenger cho phép người dùng Facebook trò chuyện với bạn bè di động trang web 2.3.2 Zalo: Zalo dịch vụ OTT (viết tắt over the top - thuật ngữ liệu cung cấp tảng Internet không nhà cung cấp mạng hay tổ chức can thiệp tới) Zalo lọt top ứng dụng nhiều người tải Cũng Facebook, Zalo cho phép người dùng nhắn tin, gọi điện trị chuyện bạn bè cách miễn phí đâu Đặc biệt ứng dụng người Việt tạo phát triển Vinagame Zalo từ kết hợp Zing Alo (câu thường nói nghe máy Việt Nam) Trần Duy Mai Dung -18IT5 Trang 10 ĐỒ ÁN CƠ SỞ Ứng dụng Zalo xuất thị trường vào 08/08/2012 đến tháng 12/2012 ứng dụng nhắn tin Việt bắt hoạt động ổn định dần phổ biến thị trường Việt Nam, hạ gục nhiều đối thủ đáng gờm trước 2.4 Tổng quan cơng nghệ mơ hình sử dụng dự án: 2.4.1 Java: a Java gì? Java (phiên âm Tiếng Việt: "Gia-va") ngơn ngữ lập trình hướng đối tượng (OOP) dựa lớp (class) Khác với phần lớn ngơn ngữ lập trình thơng thường, thay biên dịch mã nguồn thành mã máy thông dịch mã nguồn chạy, Java thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau môi trường thực thi (runtime environment) chạy Java khởi đầu James Gosling bạn đồng nghiệp Sun Microsystems năm 1991 Ban đầu ngôn ngữ gọi Oak (có nghĩa sồi; bên ngồi quan ơng Gosling có trồng nhiều loại này), họ dự định ngơn ngữ thay cho C++, tính giống Objective C Khơng nên lẫn lộn Java với JavaScript, hai ngơn ngữ giống tên loại cú pháp C Công ty Sun Microsystems giữ quyền phát triển Java thường xuyên Tháng 04/2011, công ty Sun Microsystems tiếp tục cho JDK 1.6.24 Java sử dụng chủ yếu môi trường NetBeans Oracle Java tạo với tiêu chí "Viết (code) lần, thực thi khắp nơi" ("Write Once, Run Anywhere" (WORA)) Chương trình phần mềm viết Java chạy tảng (platform) khác thông qua môi trường thực thi với điều kiện có mơi trường thực thi thích hợp hỗ trợ tảng Mơi trường thực thi Sun Microsystems hỗ trợ Sun Solaris, Linux, Mac OS, FreeBSD & Windows Ngoài ra, số công ty, tổ chức cá nhân khác phát triển môi trường thực thi Java Trần Duy Mai Dung -18IT5 Trang 11 ĐỒ ÁN CƠ SỞ cho hệ điều hành khác BEA, IBM, HP Trong đáng nói đến IBM Java Platform hỗ trợ Windows, Linux, AIX & z/OS b Đặc điểm Java: Hướng đối tượng: Trong ngơn ngữ lập trình Java, thứ Object Java mở rộng dựa mơ hình Object Đơn giản: Ngơn ngữ lập trình Java thiết kế để dễ học Nếu bạn hiểu khái niệm lập trình hướng đối tượng Java, bạn nắm bắt ngôn ngữ nhanh Nền tảng độc lập: Khác với ngơn ngữ lập trình khác (C, C++), ngơn ngữ lập trình Java biên dịch, khơng biên dịch sang máy tính cụ thể tảng nào, thay vào byte code độc lập với tảng Byte code phân phối web thông dịch Virtual Machine (JVM) tảng mà chạy Bảo mật: Với tính an tồn ngơn ngữ lập trình Java, cho phép phát triển hệ thống khơng có virus, giả mạo Các kỹ thuật xác thực dựa mã hóa cơng khai Portable: Là kiến trúc trung lập khơng phụ thuộc vào việc thực đặc điểm nói khía cạnh Portable ngơn ngữ lập trình Java Trình biên dịch Java viết ANSI C với ranh giới portable gọn gàng, subset POSIX (giao diện hệ điều hành linh động) Bạn hồn tồn mang byte code Java lên tảng Kiến trúc trung lập: Trình biên dịch ngơn ngữ lập trình Java tạo định dạng file object có kiến trúc trung lập, làm cho code sau biên dịch chạy nhiều vi xử lý, với diện Java runtime system Đa luồng: Với tính đa luồng ngơn ngữ lập trình Java, lập trình viết chương trình thực nhiều tác vụ đồng thời Tính Trần Duy Mai Dung -18IT5 Trang 12 ĐỒ ÁN CƠ SỞ độc đáo cho phép nhà phát triển xây dựng ứng dụng tương tác chạy trơn tru Mạnh mẽ: Ngơn ngữ lập trình Java nỗ lực loại trừ tình dễ bị lỗi cách nhấn mạnh chủ yếu kiểm tra lỗi thời gian biên dịch kiểm tra runtime c Ứng dụng Java: Ứng dụng Android Các ứng dụng web Java Các công cụ phần mềm Không gian nhúng Các công nghệ Big Data Trong lĩnh vực giao dịch chứng khoán Các ứng dụng khoa học d Khuyết điểm Java: Hiệu suất: Tốn nhiều nhớ ngôn ngữ biên dịch nguyên C C ++ hiết kế giao diện: Các giao diện mặc định thiết kế ứng dụng GUI viết Java sử dụng công cụ Swing đơn giản 2.4.2 Socket.IO: a Socket gì? Socket cơng nghệ Socket cách bạn tổ chức mơ hình client-server để bên ln tình trạng sẵn sàng trả lời bên ngược lại Để đảm bảo việc này, kết nối Client Server phải trạng thái “keepalive” phải ln xảy q trình đồng Client-Server Socket mang lại khả trả lời tức từ bên bên đưa kiện, thay phải thực thi lại loạt thủ tục kết nối phức tạp trước, ứng dụng bạn trở thành ứng dụng thời gian thực ví dụ: Trần Duy Mai Dung -18IT5 Trang 13 ĐỒ ÁN CƠ SỞ Yahoo Messenger, Skype v.v… ứng dụng xây dựng theo mơ hình Socket Trong lập trình web trước đây, việc xây dựng client-server theo mơ hình socket phải thơng qua phần mềm thứ Vì mơ hình socket khơng phù hợp với ngơn ngữ lập trình Server như: PHP, ASP.NET, JSP v.v… Các ngơn ngữ làm việc theo cách: Die connection Server trả lời Client xong Tuy nhiên, nhấn mạnh: Chúng ta làm web-socket với ngơn ngữ lập trình Chỉ có điều, với ngôn ngữ cũ, việc làm cần bạn phải am hiểu giao thức http, tcp; hiểu request header, v.v… Socket điểm cuối (end-point) liên kết truyền thông hai chiều (two-way communication) hai chương trình chạy mạng Các lớp Socket sử dụng để biểu diễn kết nối client server, ràng buộc với cổng port (thể số cụ thể) để tầng TCP (TCP Layer) định danh ứng dụng mà liệu gửi tới Lập trình socket lập trình cho phép người dùng kết nối máy tính truyền tải nhận liệu từ máy tính thơng qua mạng Hiểu đơn giản, socket thiết bị truyền thông hai chiều gửi nhận liệu từ máy khác c Cơ chế hoạt động socket.IO: Cơ chế hoạt động ứng dụng realtime thơng qua server để lắng nghe (listen) data truyền data máy client Vì cần cài khai báo sử dụng socketio phía server client Để lắng nghe data, ta sử dụng câu lệnh socket.on(), để phát liệu sử dụng lệnh socket.emit() Ví dụ, client gửi đoạn chat đi, phía server cần viết code để nhận liệu đoạn code truyền liệu chat đến server khác Trần Duy Mai Dung -18IT5 Trang 14 ĐỒ ÁN CƠ SỞ Đồng thời ở phía client cần viết code để gửi nhận liệu từ server Hình 01 Mơ hình hoạt động Socket.IO 2.4.3 Giao thức TCP/IP: a Tổng quan: TCP/IP giao thức cho phép kết nối hệ thống mạng không đồng với Ngày TCP/IP sử dụng rộng rãi mạng cục mạng toàn cầu TCP/IP xem giản lược mơ hình tham chiếu OSI với tầng sau: Tầng Liên Kết (Datalink Layer) Tầng Mạng (Internet Layer) Tầng Giao Vận (Transport Layer) Tầng Ứng Dụng (Application Layer) Trần Duy Mai Dung -18IT5 Trang 15 ĐỒ ÁN CƠ SỞ Hình 02 Các tầng giao thích TCP/IP Tầng liên kết: Tầng liên kết (cịn gọi tầng liên kết liệu hay tầng giao tiếp mạng) tầng thấp mơ hình TCP/IP, bao gồm thiết bị giao tiếp mạng chương trình cung cấp thơng tin cần thiết để hoạt động, truy nhập đường truyền vật lý qua thiết bị giao tiếp mạng Tầng Internet: Tầng Internet ( hay gọi tầng Mạng) xử lý q trình truyền gói tin mạng, giao thức tầng bao gồm : IP ( Internet Protocol) , ICMP ( Internet Control Message Protocol) , IGMP ( Internet Group Message Protocol ) Tầng giao vận: Tầng giao vận phụ trách luồng liệu trạm thực ứng dụng tầng trên, tầng có giao thức TCP ( Transmisson sControl Protocol) UDP ( User Datagram Protocol ) - TCP cung cấp luồng liệu tin cậy trạm, sử dụng chế chia nhỏ gói tin tầng thành gói tin có kích thước thích hợp cho tầng mạng bên dưới, báo nhận gói tin, đặt hạn chế thời gian timeout để đảm bảo bên nhận biết gói tin gửi Do tầng đảm bảo tính tin cậy nên tầng không cần quan tâm đến - UDP cung cấp dịch vụ đơn giản cho tầng ứng dụng Nó gửi liệu từ trạm tới trạm mà không đảm bảo gói tin đến tới đích Các chế đảm bảo độ tin cậy thực tầng tầng ứng dụng Trần Duy Mai Dung -18IT5 Trang 16 ĐỒ ÁN CƠ SỞ Tầng ứng dụng: Là tầng mơ hình TCP/IP bao gồm tiến trình ứng dụng cung cấp cho người sử dụng để truy cập mạng Có nhiều ứng dụng cung cấp tầng này, mà phổ biến Telnet: sử dụng việc truy cập mạng từ xa, FTP (File Transport Protocol) dịch vụ truyền tệp tin, Email: dịch vụ truyền thư tín điện tử, WWW (World Wide Web) b Phương thức hoạt động giao thức TCP/IP: Hình 03 Q trình đóng gói liệu TCP/IP Trần Duy Mai Dung -18IT5 Trang 17 ĐỒ ÁN CƠ SỞ Cũng tương tự mơ hình OSI, truyền liệu, trình tiến hành từ tầng xuống tầng dưới, qua tầng liệu thêm vào thông tin điều khiển gọi Header Khi nhận liệu trình xảy ngược lại, liệu truyền từ tầng lên qua tầng phần header tương ứng lấy đến tầng liệu khơng cịn phần header Hình 04 Cấu trúc liệu TCP/IP Hình cho ta thấy lược đồ liệu qua tầng Trong hình ta thấy tầng khác liệu mang thuật ngữ khác nhau: Trong tầng ứng dụng: liệu luồng gọi stream Trong tầng giao vận: đơn vị liệu mà TCP gửi xuống gọi TCP segment Trong tầng mạng, liệu mà IP gửi xuống tầng gọi IP Datagram Trong tầng liên kết, liệu truyền gọi frame Trần Duy Mai Dung -18IT5 Trang 18 ĐỒ ÁN CƠ SỞ Hình 05 ISO TCP/IP Sự khác TCP/IP với OSI: Tầng ứng dụng mơ hình TCP/IP bao gồm ln tầng mơ hình OSI Tầng giao vận mơ hình TCP/IP khơng phải ln đảm bảo độ tin cậy việc truyền tin tầng giao vận OSI mà cho phép thêm lựa chọn khác UDP Trần Duy Mai Dung -18IT5 Trang 19 ĐỒ ÁN CƠ SỞ Chương 3: THỰC HIỆN DỰ ÁN VÀ KẾT QUẢ 3.1 Các ngôn ngữ công nghệ sử dụng cho dự án: Java Eclipse PhpAdmin 3.2 Các chức ứng dụng: 3.2.1 Các chức chính: Đăng nhập, đăng ký Trò chuyện hai cá nhân Tạo trị chuyện nhóm Trị chuyện nhóm nhiều người Gửi biểu cảm 3.2.2 Hạn chế tồn tại: Các chức dừng lại mức bản, tồn số hạn chế định: Chưa có đăng nhập sử dụng tài khoản Google Facebook Chưa có tính kết bạn, tất người dùng hệ thống trị chuyện với Chưa có chức thay đổi màu chữ để tăng hiệu ứng Chưa có trị chuyện video Có tính nhận/gửi file người nhận không nhận 3.3 Cách thức thực hiện: Trần Duy Mai Dung -18IT5 Trang 20 ĐỒ ÁN CƠ SỞ a Server: Lắng nghe chấp nhận kết nối từ cổng 9999 Cho phép nhiều Client kết nối đến lúc Mỗi Client kết nối phải đăng nhập tên Chuỗi tên gửi lên Server Server kiểm tra xem tài khoản có tồn đăng nhập hay không Nếu thoả mãn kết nối, Server trả chuỗi cho phép Client đăng nhập b Client: Kết nối tới Server qua cổng 9999 Mỗi chuỗi yêu cầu gửi đến Server gắn thêm chuỗi kí tự vào đầu Dựa vào chuỗi kí tự đó, Server biết Client yêu cầu đáp ứng lại Client Nhập chuỗi từ bàn phím Gửi chuỗi tới Server Hiển thị chuỗi từ Server gửi đến Gửi thông điệp Chat đến thành viên có danh sách Gửi thơng báo đến nhiều người có mặt danh sách Cho phép trao đổi file với thông qua chức truyền file c Xử lý đăng nhập: Khi User yêu cầu đăng nhập hệ thống, Client gởi Username Password cho Server Server kiểm tra Username Password sở liệu (nếu có) cho phép đăng nhập Khi đăng nhập thành công, Server giao diện gồm danh sách phịng chat Sau User chọn phòng bất kỳ, tên User danh sách online Đồng Trần Duy Mai Dung -18IT5 Trang 21 ĐỒ ÁN CƠ SỞ thời gửi thông báo đến Users khác có đăng nhập vào phịng User Online d Xử lý đăng ký: Khi User yêu cầu đăng nhập hệ thống mà khơng có Username Password, có chức hỗ trợ đăng ký tài khoản, mật Khi nhập Username Password liệu thêm vào sở liệu Khi người dùng có Username Password để đăng nhập vào hệ thống e Gửi tin nhắn: Khi User đăng nhập chọn phịng chat bất kỳ, mở giao diện phịng để User trị chuyện với nhau, gửi hình ảnh, biểu cảm tin nhắn f Truyền file: Chức truyền file hỗ trợ User gửi file thơng qua chức tìm kiếm file hệ thống Khi chọn xong đường dẫn file, nhập tên người nhận User nhận thông báo nhận file hệ thống nơi để lưu file (chức làm phần lỗi) 3.4 Kết quả: 3.4.1 Giao diện: a Form trạng thái: Trần Duy Mai Dung -18IT5 Trang 22 ĐỒ ÁN CƠ SỞ Hình 01 Trạng thái server Ở đây, trạng thái user nhập vào để trò chuyện tạng thái dừng trò chuyện b Form đăng nhập: Hình 02 Form đăng nhập Sau đăng nhập, người dùng tự động thêm vào trạng thái chuyển vào trang chat Trần Duy Mai Dung -18IT5 Trang 23 ĐỒ ÁN CƠ SỞ c Giao diện chat: Hình 03 Trị chuyện hai người ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN Đánh giá tổng quan dự án: *Các vấn đề giải quyết: Đảm bảo ứng dụng có đầy đủ chức cần thiết Tính ổn định bảo mật ứng dụng Khả cạnh tranh marketing *Kết quả: Đăng nhập, đăng ký Trò chuyện hai cá nhân Tạo trị chuyện nhóm Trị chuyện nhóm nhiều người Truyền tệp hình ảnh (chưa hồn chỉnh) *Hạn chế: Chưa có đăng nhập sử dụng tài khoản Google Facebook Trần Duy Mai Dung -18IT5 Trang 24 ĐỒ ÁN CƠ SỞ Chưa có trị chuyện gọi video Hướng phát triển: Thêm chức trò chuyện video, cải tạo lại chức truyền file Xác định thời gian gửi Xử lý lỗi chặt chẽ trước đưa vầo sử dụng Mở rộng toán cho nhiều doanh nghiệp riêng biệt Linh hoạt kiện yêu cầu khách hàng Bổ sung nhiều báo cáo, thực tế Hoàn thiện chức phù hợp với thực tế hoạt động kinh doanh Hỗ trợ công việc liên quan đến kinh doanh DANH MỤC THAM KHẢO [1] ThS.Nguyễn Thanh Cẩm, Giáo trình lập trình mạng, Đại Học Đà Nẵng, Trường đại học công nghệ thông tin truyền thông Việt Hàn, Khoa công nghệ thông tin truyền thông [Java documentation] - https://www.java.com/en/ [Socket.io documentation] - https://socket.io/docs/ Trần Duy Mai Dung -18IT5 Trang 25