Robo Comm RuleBaseo d Scheduling for Communication Systems
Robo. Comm: Rule-Baseo d Scheduling for Communication Systems CSCI 6838. 2 Research Project and Seminar Team #7 Instructor: Dr. Kwok-Bun Yue Mentor: Mr. Dilhar De Silva 1
Content n n n Team Members Project Overview Software Architecture JBoss Rules Use Case Implementation Conclusion 2
Team member Name Responsibility Thanh Doan Team Lead Dung Nguyen JBoss rules Tuan Le GUI Hung Tran GUI & Database 3
Project Overview Presented by Hung Tran n n Build on top of previous team work Rewrite UI using Zimbra open source Ajax framework 4
Project Overview Presented by Hung Tran Apply JBoss Rules to improve how communication systems schedule meetings with participants 5
Technologies n n n JBoss Rules AJAX Web services 6
Technologies n n Java My. SQL LDAP Tomcat 7
Software Architecture Presented by Hung Tran 8
Server Architecture Presented by Hung Tran 9
ZCS Migration Wizard for Exchange. exe file. Use the Migration Wizard. exe file to migrate Microsoft® Exchange server email accounts to the Zimbra server. Accounts from Microsoft Exchange 2000, 2003, and 5. 5 can be migrated. Presented by Hung Tran 10
• • • Postfix serves as the Zimbra Mail Transfer Agent (MTA) for sending and receiving email across the Internet. All Zimbra messages (internal and external) flow through Postfix uses SMTP/LMTP protocol. Presented by Hung Tran 11
• • The Zimbra message (or blob) store is built on the underlying Unix/Linux file system. The mapping is one file per message—Zimbra actually write the RFC 822 MIME message representation directly to a file. Presented by Hung Tran 12
• The Zimbra includes an embedded relational database, My. SQL, for managing mailbox meta-data Presented by Hung Tran 13
• • Lucene is a high-performance, full-text search engine from Apache. The search process required to construct an index. So, Lucene works by generating a full “segment” index. Presented by Hung Tran 14
n The Zimbra journal is like a database transaction log in guaranteeing that no data is lost in the event of a failure and that the system can restart quickly. Presented by Hung Tran 15
JBoss Rules Presented by Dung Nguyen n n n If A, not(B), not(C) then do(A 1) else. If A, B, not(C) then do(A 1, B 1) else. If A, B, C then do(A 1, B 1, C 1) Rule A: When A then do(A 1) Rule B: When B then do(B 1) Rule C: When C then do(C 1) 16
JBoss Rules Structure of JBoss Rules Engine 17
JBoss Rule: check if the Appointment is celebrated. Class Participant. List { int percetage. Of. Participant; long appointement. ID; …… } Class Appointment { long appointment. ID; int success. Percentage; void set. Success(boolean success); ……… } Working. Memory. Assert(m_Participant. List); Assert Object to Rule Engine Working. Memory. Assert(m_Appointment. List); 18
JBoss Rule: check if the Appointment is celebrated. rule when Participant. List(percent: Percetage. Of. Participant, appt. ID 1: Appointement. ID) appt: Appointment(appt. ID: Appointment. ID, success. No: Success. Percentage) eval(appt. ID 1==appt. ID) eval(percent>=success. No) then appt. set. Success(true); appt. Create. Appointment(); end 19
JBoss Rules Import org. drools. *; Working. Memory. assert. Object(m_Participant. List); Assert Object to Rule Engine Working. Memory. assert. Object(m_Appointment. List); Activate Rules Engine Working. Memory. fire. All. Rules(); 20
Implementation – Create meeting request Presented by Tuan Le Convener click on “Save” button to create a conference call 21
Login page 22
Calendar page 23
Appointment details 24
Sequence Diagram get. Info. Request get. Contact. Request Client – Ajax GUI Server get. Context_Session create. Appointment Services dispatch. Services JBoss Rules Database – File System 25
Implementation– Respond the meeting request Presented by Thanh Doan Participant respond to the meeting request by accept it or decline it 26
User 2 – Respond to meeting request 27
User 2 – Response message (automatically) 28
User 2 – respond message 29
User 1 – Get response message 30
User 4 – decline meeting 31
User 4 – Accept meeting 32
Sequence Diagram Response. Event Response. Handle Client – Ajax GUI Server get. Context_Session send. Response Services dispatch. Services JBoss Rules Database – File System 33
Conclusion n Robo. Comm has been built with many features: n n n Create / manage a meeting Response a meeting request Contact list 34
Conclusion (cont) n n Email Individual calendar Apply JBoss rules into Robo. Comm What will be done so far: n Implement more rules into Robo. Comm 35
Reference n n n 1. JBoss Rules: http: //www. jboss. org 2. Zimbra: http: //www. zimbra. com 3. Documentation: http: //sce. uhcl. edu/yue 36
Thanks for listening QA 37
- Slides: 37