- Gởi thông điệp Chat đến một thành viên nào đó có trong danh sách.
- Gởi một File bất kỳ một cách trực tuyến đến bất kỳ một thành viên nào đó hiện có mặt trong danh sách.
- Nhận một File từ một thành viên nào đó.
- Lưu lại File trạng thái khi cần để biết tất cả các hoạt động đã thực hiện trong thời gian nhất định.
- Tự động tạo File Log và cũng tự động lưu lại File này sau mỗi hoạt động của mình trong thời gian thực hiện.
- In ra danh sách những người đã đăng nhập được chấp nhận trong công ty.
19 trang |
Chia sẻ: vietpd | Lượt xem: 1617 | Lượt tải: 2
Bạn đang xem nội dung tài liệu Đồ án Xây dựng dịch vụ chat trên mạng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
ĐỒ ÁN TỐT NGHIỆP XÂY DỰNG DỊCH VỤ CHAT TRÊN MẠNG ĐỀ TÀI: GVHD: Ths Hồ Sỹ Bàng SVTH: Bùi Thị Thu Hiền GIỚI THIỆU Xuất phát từ nhu cầu ứng dụng thực tế ở đây em chọn đề tài ”Xây dựng dịch vụ Chat trên mạng”, dựa theo mô hình Client_Server và ngôn ngữ lập trình Java.Chương trình được chạy Demo tại công ty xăng dầu Phú Khánh. BK NỘI DUNG 2 1 3 4 5 6 Giới thiệu Một số kỹ thuật liên quan Nội dung chương trình. Xây dựng chương trình. Thiết kế chương trình. Hạn chế và hướng phát triển chương trình. GIỚI THIỆU MỤC ĐÍCH ĐỀ TÀI Mục đích của chương trình Company Chat là cung cấp một dịch vụ nhằm giúp đỡ những người quản lý của một công ty hoặc một tổ chức có thể nói chuyện trực tiếp,gởi thông báo hay trao đổi tài liệu với tất cả nhân viên của mình, hay cá nhân nhân viên nào đó một cách chính xác,tinh tế,nhanh chóng, đồng thời giảm được chi phí. BK MỘT SỐ KỸ THUẬT LIÊN QUAN Sử dụng mô hình mạng Client/Server, Giao thức TCP/IP. Cổng kết nối em dùng cổng 55 cho Company Chat, và 333 cho file. Sử dụng Socket và kỹ thuật multithread trong Java, và một số tính năng khác. Lựa chọn ngôn ngữ:Mỗi ngôn ngữ có các yêu cầu cấu trúc văn phạm riêng, Java cũng vậy. Java được xem là một ngôn ngữ lập trình ứng dụng cho mạng vì những đặc tính riêng biệt của chúng như đa hệ nền, đa luồng, bảo mật, hướng đối tượng, phân tán, ứng dụng web… BK Nội Dung chương trình 2 1 Nội dung thực hiện ở Server. Nội dung thực hiện ở Client. Nội dung chương trình ở Server - Cho phép hoặc không cho phép các thành viên Login vào hệ thống. - Giới hạn thời gian và số người tối đa được phép đăng nhập vào hệ thống. - Xem, thay đổi thông tin của chính mình. - Xem, thay đổi thông tin của bất kỳ thành viên nào có đăng nhập tham gia chương trình.. - Thêm mới một thành viên. - Xóa một hoặc nhiều thành viên. - Đổi phông chữ thể hiện. - Đổi màu cho phông chữ. - Đổi màu cho background thể hiện. - Cùng một lúc có thể gởi thông điệp Chat đến nhiều thành viên có trong danh sách. - Gởi một File bất kỳ một cách trực tuyến đến bất kỳ một thành viên nào đó hiện có mặt trong danh sách. - Nhận một File từ một thành viên nào đó. - Lưu lại File trạng thái khi cần để biết tất cả các hoạt động đã thực hiện trong thời gian nhất định. - Tự động tạo File Log và cũng tự động lưu lại File này sau mỗi hoạt động của mình trong thời gian thực hiện. - In ra danh sách những người đã đăng nhập được chấp nhận trong công ty. - Gởi thông báo đến một hoặc nhiều người hiện đang có mặt trong danh sách. - Gởi một hình ảnh vui biểu hiện cảm xúc trong khi gởi thông điệp. - Tìm kiếm một thành viên có trong danh sách những người đã tham gia hệ thống. - Thay đổi Password. Nội dung chương trình ở client. - Gởi thông điệp Chat đến một thành viên nào đó có trong danh sách. - Gởi một File bất kỳ một cách trực tuyến đến bất kỳ một thành viên nào đó hiện có mặt trong danh sách. - Nhận một File từ một thành viên nào đó. - Lưu lại File trạng thái khi cần để biết tất cả các hoạt động đã thực hiện trong thời gian nhất định. - Tự động tạo File Log và cũng tự động lưu lại File này sau mỗi hoạt động của mình trong thời gian thực hiện. - In ra danh sách những người đã đăng nhập được chấp nhận trong công ty. - Gởi thông báo đến một hoặc nhiều người hiện đang có mặt trong danh sách. - Gởi một hình ảnh vui biểu hiện cảm xúc trong khi gởi thông điệp. - Tìm kiếm một thành viên có trong danh sách những người đã tham gia hệ thống. - Xem thông tin của một thành viên bất kỳ. - Thay đổi Password. - Đổi phông chữ thể hiện. - Đổi màu cho phông chữ. - Đổi màu cho background thể hiện. Xây Dựng chương trình 2 1 BK Chương trình thực hiện ở Server. Chương trình thực hiện ở Client. Chương trình thực hiện ở Server + Chương trình sẽ được thực hiện tại máy Server, và chỉ có Admin mới có các đặc quyền sử dụng và Login vào hệ thống . + Chương trình này sẽ luôn luôn chờ đợi và lắng nghe tất cả các yêu cầu từ các máy Client gởi tới cổng private chat là 55 .Đoạn lệnh được thực hiện như sau: try{ ss= new ServerSocket(portchat); ............. do { Socket s = ss.accept(); ................... } while(true); }catch(IOException e){} Lúc này server sẽ cung cấp cho client một thread và thread này sẽ đặc quyền lắng nghe và trao đổi xử lý thông tin với các client khác... cho tới khi Client kết thúc phiên làm việc của mình hay đóng kết nối thì thread này cũng tự kết thúc và giải phóng khỏi chương trình. Để thực hiện được các chức năng đó thì vòng lặp vô tận trong lớp ServerPrivateThread.class đảm nhiệm công việc và lớp kế thừa của nó là ListenPrivate.class, lớp này có vai trò rất quan trọng và mọi sự việc xảy ra ở lớp ServerPrivatethread.class đều thông qua nó cả. Sau đây là đoạn mã mô tả cho hoạt động trên. public void run() { try { in= new DataInputStream(socket.getInputStream()); out=new DataOutputStream(socket.getOutputStream()); ………….. BK Chương trình thực hiện ở client. BK Chương trình bị hạn chế một số đặc quyền mà chỉ có Admin mới có. Một ưu điểm nữa là bạn có thể sử dụng chương trình trong bất kỳ trường hợp nào, bất kỳ môi trường nào hoặc trong bất kỳ máy vi tính nào, điều kiện là phải sử dụng chương trình ,tại đây người sử dụng sẽ thực hiện các công việc yêu cầu đến Server thông qua cổng kết nối là 55 , và Server sau khi nhận được yêu cầu sẽ xử lý và gởi trả lời về cho chương trình, để vào được hệ thống trước tiên người sử dụng phải là một thành viên của công ty, và được sự chấp nhận của những người quản lý (Admin) của hệ thống này. Admin sẽ cấp cho người sử dụng một account để đăng nhập, và tuỳ thuộc vào account này mà người sử dụng có quyền truy cập đến đâu trong hệ thống. Mô tả hoạt động này như sau. try{ in=new DataInputStream(socket.getInputStream()); out=new DataOutputStream(socket.getOutputStream()); }catch( IOException ie ) {} this.start(); } THIẾT KẾ HỆ THỐNG - Người sử dụng muốn vào được hệ thống của Company Chat phải thông qua Login đăng nhập Username và Password, sau đó sẽ được hệ thống kiểm tra, nếu thành công sẽ được tham gia vào hệ thống. Ngược lại sẽ bị lỗi. Và tuỳ thuộc vào mã đăng nhập, chức vụ liên quan mà người sử dụng được phép truy nhập đến đâu trong hệ thống. Chương trình thực hiện tại Server Giao diện đăng nhập vào hệ thống Thông tin về Server Khung thoại “Chat” BK Gởi File BK Hạn chế và hướng phát triển chương trình - Hạn chế. +Vì thời gian có hạn nên chương trình còn bị hạn chế nhiều về chức năng, tính thân thiện với người dùng, tính bảo mật. +Chương trình chỉ mới Demo được trên mạng Lan tại công ty xăng dầu Phú Khánh. - Hướng phát triển chương trình. + Có thể phát triển chương trình theo hướng phân tán bằng cách dùng RMI. + Phân chia phòng ban, thêm một số chức năng để tăng thêm sự thân thiện và dễ sử dụng cho người dùng. +Tạo sự bảo mật để chương trình có thể sử dụng bất kỳ nơi nào trực thuộc công ty. BK LỜI CẢM ƠN Xin cho em gởi những lời biết ơn chân thành nhất đến : Thầy Hồ Sỹ Bàng - người đã trực tiếp hướng dẫn, tận tình giúp đỡ và chia sẻ các kinh nghiệm quý báu cho em trong suốt quá trình làm đồ án. Công ty xăng dầu Phú Khánh đã tạo điều kiện tốt cho em thực hiện đồ án này.