Joomla is an open source project and contributions from the community are essential to its growth and success. Anyone can contribute on any level, even newcomers can contribute to Joomla. Read more...
I need to specially thanks Marius van Rijnsoever(co-mentor) because he is with my project even before my project accepted.
And with him I always talk[argue] about the project and the feasibility of doing it and still...
And also need to mention Akarawuth Tamrareang(co-mentor) help me when I going outside of my project and guide what should Joomla needs from me.
Why
First I want to integrate Elgg and WordPress with Joomla (that's my actual GSOC project which is accepted)
I had a plan which used a gateway to do those integration
Then I realized there is some existing framework(JFusion) to do that... and simply given up my gateway idea .
I tried JFusion. Ya It was nice and easy and Its deal with Databases and almost every thing done inside the Joomla.
But when I need to communicate from External Application(Ex-App) to Joomla I need to go to the Ex-App side do some coding (But I simply didn't do that I give up using it)
Therefore I have to deal with 2 softwares ( Joomla and and Ex-App)
Then I think of a new way to do this..
Then I came back to my gateway idea with some modification
And that's the begin of JConnect
The main advantage of JConnect is when you are integrating some software with Joomla You are doing it totally independent from Joomla code or Joomla Framework
Features-Phase 1.1
Plugin based integration of External Application (Ex-App) with Joomla
Fully User Synchronization
Universally accepted XML-RPC data interchange
IP and secret key based security
Dual way communication (between Joomla and Ex-App)
for developers who need to integrate Ex-App with Joomla
Forget Joomla Framework and simply work on your codes ( no need to deal with Joomla in order to integrate your Ex-App)
Implement few methods and start integration
able to use-with any language any platform because of XML-RPC technology
Features-Phase 1.2
centralized management in Joomla
Documentation + Tutorials
Features-Phase 2
Activity module (see updates of Ex-App in Joomla)
Search Joomla site
deal with weblinks and contact in Joomla
Special API's for
User community softwares
Blogging software
Forums
Project Main Tasks
Within GSOC Period
Create JConnect Framework (Phase 1.1 and 1.2)
After GSOC
Phase 2
Elgg and Wordpress Integration
Architecture
Step to Step Procedure
Create testing External Application ( a xml-rpc server) which listening joomla .
Create Internal Joomla Plugin (System)
Create Plugin to oversee user detail changes(user)
Create component-site
Create admin-component (no enhanced GUI)
Create WP/Elgg integration
create activity module and update Extenal Apps accordingly
Create WP/Elgg integration
Modify admin-component ( for GUI)
testing..
Database ERD
Details Description
Methods Listeninig on External App
createUser(secKey,userObj):true|errorObj
updateUser(secKey,userObj):true|errorObj
getUsers(secKey,usernameList):array of userObjs
if(usernameList==NULL) return all users
deleteUser(secKey,username):true|errorObj
getUserList(secKey,compareOptions):array of usernames
compareOptions is a speciial where clause to filter usernames
if(compareOptions ==NULL) return all usernames
syncUsers(secKey,userObjList):true|falutObjList
login(secKey,username,password):true|errorCode
In above the username field will be either username or email depending on the External Application & that information is provided to the JConnect in the configuration process.
---------------------------------------
User
---------------------------------------
+username
+email
+password
---------------------------------------
I would like to here your comments on this as above details will not be my final project specs..
Your comments will be influenced to modify my project...
please comment on here.. http://forum.joomla.org/viewtopic.php?f=231&t=400473