Changes between Initial Version and Version 1 of Proposal/ProjectSimpleAccountCreation


Ignore:
Timestamp:
Aug 21, 2011, 1:56:03 PM (13 years ago)
Author:
romw
Comment:

Initial Draft

Legend:

Unmodified
Added
Removed
Modified
  • Proposal/ProjectSimpleAccountCreation

    v1 v1  
     1= Simplified Project Website Account Creation in BOINC =
     2== Introduction ==
     3BOINC supports multiple ways to create accounts for any given project.  Creating accounts on a BOINC project via the project website hasn’t received as much attention in previous years as it probably should have.  This revised process is an attempt to better capture volunteers that are visiting a project website via press releases and other forms of advertisement.
     4
     5At present the current system asks the volunteer for account creation information and then shuffles them off to web page to download the BOINC client software.  Once the software has been downloaded the volunteer has to walk through the project attach wizard and once again the volunteer must answer questions about account credentials.
     6
     7We received a lot of feedback about the BOINC sign-up process over the years, and most of the feedback has been it isn’t as simple as SETI@Home used to be.  Now that enough of the pieces are available in the client-side architecture we hope to put this issue to rest once and for all.
     8
     9== Changes to the Project Website ==
     10When a volunteer first visits a project's homepage with a supported browser they are presented with a 'download now' link instead of the current 'create account' link.
     11
     12Clicking on the 'download now' link will cause a cookie to be stored on the machine; this cookie will contain the authenticator to use and the current time of the server.  The resulting page should provide basic instructions to launch the BOINC installer on the supported browser.  After 5-10 seconds the webpage should redirect to the BOINC website to download the BOINC installer and pass in the authenticator and return URL which will be used to return the volunteer to the project where they may decide to provide more information (name, country, team, etc) to the project.
     13
     14NOTE:  Unless the volunteer decides to provide additional information to the project, the account will be anonymous.  How should we handle projects that require a terms of use?
     15
     16== Changes to the BOINC manager ==
     17At present the BOINC manager requires either a project_init.xml file or an acct_mgr_url.xml file to engage the cookie detection code and automatic add project process.  We should modify the manager to check for cookies from all the available URLs in the all projects list.  It should behave like this:
     18
     19{{{
     20
     21if NumberofAttachedProjects == 0 then
     22    if exists(project_init.xml) or exists(acct_mgr_url.xml) then
     23        ... do the same stuff as we do now ...
     24    else
     25        foreach (project in all_projects_list.xml)
     26            if exists(project.cookie) then
     27                add project cookie to CookiesFound array
     28            endif
     29        endfor
     30
     31        sort CookiesFound array by CreationTime
     32
     33        if CookiesFound.Count > 0 then
     34            if CookiesFound[0].IsProject then
     35                launch attach to project wizard in automatic mode
     36            endif
     37            if CookiesFound[0].IsAccountManager then
     38                launch attach to account manager wizard in automatic mode
     39            endif
     40        endif
     41    endif
     42endif
     43
     44}}}
     45NOTE:  Unless there is an error, the only thing the volunteer might be prompted for is proxy server information.
     46
     47== Implementation Details ==
     48=== Project Cookie Contents ===
     49Authenticator/!CreationTime
     50
     51=== Account Manager Cookie Contents ===
     52Login/!PasswordHash/ReturnURL/!CreationTime
     53
     54== Conclusion ==
     55In theory this should allow us to capture incoming volunteer traffic from mainstream media regardless of their level of computer expertise.
     56
     57== Outstanding Issues ==
     58=== What do we do about alpha and beta projects? ===
     59Normally alpha and beta projects to not make the all_projects_list.xml file. However, it would be useful to be able to capture new BOINC clients via news articles about alpha and beta projects.