在我继续之前
- 我需要特别感谢Marius van Rijnsoever(联合导师),因为即使我的项目尚未被接受,他也一直支持我的项目。
- 和他在一起,我总是讨论[争论]项目的可能性和实施它的可行性...
- 同时也需要提及Akarawuth Tamrareang(联合导师),当我在我的项目之外时给予我帮助,并指导Joomla需要我从哪里入手。
为什么
- 首先,我想将Elgg和WordPress与Joomla集成(那是我实际接受的GSOC项目)
- 我有一个计划,使用网关来进行这些集成
- 然后我意识到已经有现成的框架(JFusion)来做这个...于是简单地放弃了我的网关想法。
- 我尝试了JFusion。是的,它很好,也很容易使用,它处理数据库,几乎Joomla内部的所有事情都做完了。
- 但是,当我需要从外部应用程序(Ex-App)与Joomla通信时,我需要进入Ex-App那边进行一些编码(但我没有这么做,我放弃使用它)
- 因此我必须处理两个软件(Joomla和Ex-App)
- 然后我想出了一个新方法来做这个...
- 然后我带着一些修改回到了我的网关想法
- 这就是JConnect的开始
- JConnect的主要优势在于,当您将某些软件与Joomla集成时,您完全独立于Joomla代码或Joomla框架进行操作
功能-阶段1.1
- 基于插件的External Application (Ex-App)与Joomla集成
- 完全用户同步
- 普遍接受的XML-RPC数据交换
- 基于IP和密钥的安全性
- 双向通信(Joomla与Ex-App之间)
适用于需要将Ex-App与Joomla集成的开发者
- 忘记Joomla框架,只需在您的代码上工作(无需处理Joomla以集成您的Ex-App)
- 实现一些方法并开始集成
- 由于XML-RPC技术的支持,可以与任何语言和平台配合使用
特性-阶段1.2
- 在Joomla中实现集中管理
- 文档 + 教程
特性-阶段2
- 活动模块(查看Joomla中Ex-App的更新)
- 搜索Joomla网站
- 处理Joomla中的网页链接和联系人
- 特殊的API
- 用户社区软件
- 博客软件
- 论坛
项目主要任务
在GSOC期间
- 创建JConnect框架(阶段1.1和1.2)
GSOC之后
- 阶段2
- Elgg和Wordpress集成
架构
分步操作流程
- 创建一个监听Joomla的外部应用程序测试(一个xml-rpc服务器)
- 创建Joomla内部插件(系统)
- 创建插件以监控用户详细信息的更改(用户)
- 创建站点组件
- 创建管理组件(没有增强的GUI)
- 创建WP/Elgg集成
- 创建活动模块并相应更新外部应用程序
- 创建WP/Elgg集成
- 修改管理组件(用于GUI)
- 测试...
数据库ERD
详细描述
外部应用程序监听的方法
- createUser(secKey,userObj):true|errorObj
- updateUser(secKey,userObj):true|errorObj
- getUsers(secKey,usernameList):用户对象数组
如果(usernameList==NULL) 返回所有用户 - deleteUser(secKey,username):true|errorObj
- getUserList(secKey,compareOptions):用户名数组
compareOptions是一个特殊的过滤用户名的where子句
如果(compareOptions ==NULL) 返回所有用户名 - syncUsers(secKey,userObjList):true|falutObjList
- login(secKey,username,password):true|errorCode
在上面的用户名字段可以是用户名或电子邮件,这取决于外部应用程序,并且这些信息在配置过程中提供给JConnect。
---------------------------------------
用户
---------------------------------------
+用户名
+电子邮件
+密码
---------------------------------------
---------------------------------------
错误
---------------------------------------
+代码
+消息
---------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------
我想听听您对此的意见,因为以上细节不是我的最终项目规格。
您的意见将影响我对项目的修改...
请在这里评论...
https://forum.joomla.org/viewtopic.php?f=231&t=400473