Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Community hub - technical specification: Difference between revisions

From MoodleDocs
Line 33: Line 33:
* if there is a security issue with web service (this solution implies that about every registered Moodle site enable web services)?
* if there is a security issue with web service (this solution implies that about every registered Moodle site enable web services)?
* which protocol to use?
* which protocol to use?
* other methods could be to not use web service, and only a simple entry script reserved to community hub (probably using json + the secret key explained into the community hub doc)

Revision as of 05:52, 22 March 2010

Operations

Following the different communication operations excepted between Moodle.org, hub servers and Moodle site.

Moodle site and Hub server

Moodlesite2hubserver.png

Moodle.org Hub directory and (Moodle.org) Hub server

Hubdirectory moodleorg2hubserver moodle.org.png

Moodle site and Moodle.org Hub directory

Moodlesite2moodleorg.png

Methods

Following we explain the way we'll implement the operations

Site/Hub Registration operations

  1. The site/hub enables the web service, enable a protocol, create a specific ws user, a specific ws role, and a specific token.
  2. The site/hub sends by POST the web service token to the hub server/hub directory.
  3. The hub server/hub directory enables the web service, enable a protocol, create a specific ws user, a specific ws role, and a specific token.
  4. The hub server/hub directory calls the web service function: confirm_registration($thisisyourtokentocallme).
  5. Finally the hub server/hub directory calls the web service call get_info function for its first time

Course search (hub or global search) + hub list operations

  1. When the hub server is set with the option "Publish this hub so people can join it", it creates a ws token (same steps than previous chapter), we'll call this token a public token.
  2. The site calls a php script on the hub server to retrieve the public token.
  3. Then the site calls the web service function search_courses()

Other operations (get_info)

The site/hub server/directory should all have specific token to talk to each other.

Note

  • the administrator delete token, user, service, roles: we need an option to rebuild the token (delete previous user,service,token.. , then rebuild it, then resend to the hub server/hub directory). The site would just call a ws function confirm_registration($thisisyourtokentocallme) on the hub server/hub directory.
  • if there is a security issue with web service (this solution implies that about every registered Moodle site enable web services)?
  • which protocol to use?
  • other methods could be to not use web service, and only a simple entry script reserved to community hub (probably using json + the secret key explained into the community hub doc)