# Provisional Tools

15 August 2006 - Document version 2.2

## What Makes a Tool Provisional

A provisional tool is one which is considered to be mature enough to be included in the release distribution, but is not (yet) considered to be an official part of the enterprise bundle, and which does not come enabled by default. Additional steps are required to enable these extra tools.

However, a provisional tool may meet a need that the standard tools do not. Since one of the criteria for provisional status is that the tool must already have seen successful production use at more than one member institution, and since provisional tools are included in the code QA'ed for a release, you should be able to deploy a provisional tool in production with some confidence.

The basic idea of provisional tools is to allow implementors to have ready access to blossoming tools for testing and evaluation. If they meet needs and broad success is reported in production, they may be included as a standard part of the bundle in future releases. Your feedback on the suitability of these tools for inclusion in an upcoming Sakai release is therefore an important part of this process.

You'll find a more complete description of the criteria for provisional status among the "community practices" posted on Confluence: Criteria for Provisional Status

## Unstealthing Tools

Provisional tools are, as a general rule, "stealthed" by default. This means they do not appear as options in either the Worksite Setup or Edit Tools lists - they effectively require the intervention of an admin in order to be added to a site.

Tools can be stealthed through a setting in `sakai.properties`, which simply contains a comma-separated list of all the tool ids for those tools that will be stealthed. Sakai OOTB has the following tools stealthed:

    stealthTools@org.sakaiproject.tool.api.ActiveToolManager=sakai.assignment,sakai.rwiki,sakai.site.roster,
    osp.evaluation,osp.exposedmatrix,osp.exposedwizard,osp.glossary,osp.guidance.sample,osp.matrix,osp.presTemplate,
    osp.presentation,osp.reports,osp.synoptic,osp.synoptic.design.publish,osp.wizard,sakai.messagecenter,
    sakai.metaobj,sakai.postem,sakai.samigo,sakai.search,sakai.sitemanage,
    osp.presLayout,osp.style

To unstealth a tool, simply remove it from this list in `sakai.properties`.

There are some provisional tools (e.g. SU, Sakaiscript, Summary Calendar) for which stealthing is not an issue, since they are inherently designed for admin enabling and deployment. These tools are not registered for Worksite Setup in the first place, and so are effectively always stealthed. Stealthing is a mechanism for obscuring tools from site creators and maintainers, not admins, who have access to all the available tools through their admin site functions.

## Provisional Tools in 2.2

A brief overview of each provisional tool is provided below. For more detailed information visit the Confluence links provided, or send your questions to the listed contact.

### Rwiki

Tool ID:

  sakai.rwiki

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/RWIKI/Home

Contact:

  Ian Boston (ian@caret.cam.ac.uk)

#### Overview

The Wiki tool is a fully integrated Sakai Tool that enables users of Sakai to create content, share and manage in a Wiki Environment. Where functionality is provided by other tools within Sakai, the wiki delegates responsibility to those tools (e.g. resources).

Additional functionality includes:

- Linking between worksite spaces

- Adding content from the Resources tool (e.g. images)

- Creating subspaces within worksite spaces

- Controlling permissions

- Exporting content in various formats (e.g. pdf, rtf)

- Watching for notifications (e.g. rss and/or email)

#### Configuration

Once unstealthed, the tool is added to worksites just like any other tool. Once added, a Wiki space dedicated to that worksite is created with a number of default pages. Members of the worksite may edit the content and create new pages simply by placing Wiki links on the existing pages.

### Message Center

Tool ID:

  sakai.messagecenter

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/MFT/Home

Contact:

  Kristol Hancock (khancock@iupui.edu)

#### Overview

Message Center is Indiana University’s solution for discussion and private messaging, facilitating one-on-one and group communication. Through private messaging, users within a site can quickly and easily communicate and can even auto-forward private messages to their favorite email client. By providing authors with extensive control over permissions and forum/topic status and giving users a more intuitive navigation, the discussion forum feature complements private messaging well.

#### Configuration

System administrators need to set the role-to-permission-level mapping in `sakai.properties`. OOTB generic roles are set to the following:

    mc.default.Student=Contributor
    mc.default.Instructor=Owner
    mc.default.Teaching\ Assisant=Contributor

Note: If you add a role to `sakai.properties` that has a space, you must escape it with a backslash (e.g., `mc.default.project\ owner=Owner`).

### OSP

Tool ID:

  osp.*

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/OSP/Home

Contact:

  Chris Coppola (chris.coppola@rsmart.com)

#### Overview

The Open Source Portfolio (OSP) has been a significant standalone product in its own right, and it is bundled in Sakai 2.2 as a suite of tools designed to work in concert for portfolio-based assessment. Using OSP, individuals can collect items, reflect, design portfolios, and publish them to designated audiences. Instructors and program administrators are able to provide structure and guidance to an individual's work that include step-by-step (sequential) wizards, matrices of goals/standards, and hierarchies to organize related work. Please visit http://www.osportfolio.org for more information on the Open Source Portfolio (OSP).

### Search

Tool ID:

  sakai.search

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/SEARCH/Home

Contact:

  Ian Boston (ian@caret.cam.ac.uk)

#### Overview

The search tool aims to provide a tool that allows a Google-like search of all content in a Sakai instance. It also provides a service component that can be used by other tools to provide search functionality. When search is turned on, an indexer runs in the background that treats content as it is added to the system,

#### Configuration

To turn on search indexing, add the following to `sakai.properties`:

    search.experimental=true

To make the tool available, unstealth the tool id `sakai.search`.

### SU

Tool ID:

  sakai.su

Confluence Space:

  None

Contact:

  Zach Thomas (zach.thomas@txstate.edu)

#### Overview

SU is a tool for administrators to use to log in as another user. It is code developed at Texas State University for their local brand of Sakai called TRACS: Teaching Research and Collaboration System. It is meant to be used within the Admin Workspace, and so it does not need to be stealthed or unstealthed (it will never appear among the tool options in "Worksite Setup"). It features a simple form in which you type the user id of the user you wish to "become" in the system.

The name stands for Super User, and comes from a command-line tool in Unix that serves the same purpose. It is often pronounced "Sue."

#### Configuration

In order to use the tool, edit the !admin site (i.e. the Admin MyWorkspace) through the admin Sites tool, add a page or edit an existing page, and place the tool on that page. The SU tool will appear in the list with the title "Become User" and the id sakai.su. When you've placed the tool, remember to click the Save button.

The tool itself is very simple. There is a text field to type a user id, and there is a Submit button. Your session will continue as though you had logged in as the specified user. This will work even if that user is already logged in at another location.

To change back to "yourself," you must logout and log back in.

#### Security

The SU tool is hard-coded only to work for users with administrative privileges. Naturally you should take care whom you give these privileges to. The ability to have more fine-grained control of permissions on the tool may be developed for a future version.

### Sakaiscript

Tool ID:

  NA

Confluence Space:

  None

Contact:

  Steve Githens (s-githens@northwestern.edu)

#### Overview

Sakaiscript is essentially a logical web service wrapper to the Sakai API, opening up a number of common admin functions to easy scripting from other languages. You'll find HTML documentation for it, including sample scripts from Python, in `reference/docs/webservices/html/index.html`.

#### Configuration

Sakai web services and SakaiScript are included in the release and need to be turned on using a property in the Sakai Properties file:

    # Indicates whether or not we allow web-service logins
    webservices.allowlogin=false

This parameter is set to false so as to make sure that no one can robot-guess Sakai passwords using web services out of the box. If you want to support the login, you must set this property to true in your Sakai instance.

#### Security

While it's true that you have to enable the above property to log in via webservices, webservices are always "on". In other words you could, in principle, always navigate to the Axis page to view the SOAP methods, and use SakaiScript as long as you have a SessionID (you could just copy it from your browser cookie).

Any site enabling web-services should understand the security implications of Sakai web services. Web services should be run over HTTPS in any production environment as IDs, Passwords, and Sakai Session Keys are passed back and forth in plain text using SOAP.

### Post 'Em

Tool ID:

  sakai.postem

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/PEM/Home

Contact:

  Kristol Hancock (khancock@iupui.edu)

#### Overview

Post ‘Em is an automated reporting system that enables faculty to post grades and comments without compromising student privacy. Post ‘Em accepts CSV files, empowering faculty to track student grades in a spreadsheet application of their choice. Keep in mind that Post ‘Em files are not restricted to grades and comments, so the research community may also benefit from this functionality.

#### Configuration

The tool simply needs to be unstealthed, and requires no special configuration.

### Summary Calendar

Tool ID:

  sakai.summary.calendar

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/CALSUM/Calendar+Summary

Contact:

  Nuno Fernandes (nuno@ufp.pt)

#### Overview

Calendar Summary is a synoptic tool that presents a visual monthly view of schedule events in the Home page of My Workspace or other course/project sites. If placed in My Workspace sites, it aggregates schedule events of all active sites the user is member of (unless the user is an admin). If placed in course/project sites, it displays only events for that site.

#### Configuration

This tool may be unstealthed to allow it to be added by site maintainers - just as with most other provisional tools - but it's especially appropriate to add it to site templates. To add it to new My Workspaces by default, for example, edit the `!user` template. To add it to the Home page of course/project sites, edit the Home page of the `!worksite` template.

### Tests&Quizzes

Tool ID:

  sakai.samigo

Confluence Space:

  http://bugs.sakaiproject.org/confluence/display/SAM/Home

Contact:

  Lydia Li (lydial@stanford.edu)

#### Overview

Samigo is the historical project name for the tool that appears in Sakai as Tests&Quizzes (the terms are often used interchangeably). It is an online assessment tool that supports teaching and learning, in both formative assessments and summative assessments.

Its key features are:

- Creating Assessments: It supports rich text editing of a variety of question types such as Multiple Choice, Survey, Short Answer/Essay, True/False, Fill in the Blank, File Upload, and Audio Recording. It also allows importing individual questions from question pools, as well as random ones drawn from question pools.

- Importing/Exporting: Assessments can be exported/imported via IMS QTI xml format. It currently supports QTI 1.2.

- Organizing and Publishing: It allows instructors to specify release date, due date, and/or retract date, late handling, number of submissions, grading options, feedback settings, security settings, and layout...etc. It supports automatic and manual grading; It also provides management for question pools.

- Managing assessment-taking: It delivers assessments based on a rich set of settings configured during authoring, such as randomized questions and answers, timed assessment with auto submit, high security assessments with restricted IP and secondary password, feedback settings, as well as the option to automatically send grades to Sakai's Gradebook tool.

Samigo is an ambitious application, and has its own set of release notes maintained on Confluence, which you can find at: http://bugs.sakaiproject.org/confluence/display/SAM/2.2+Release+Notes.

#### Configuration

For File Upload questions in Samigo, answers are saved to DB as a blob by default. If you want to save answers to files, you can override this default by adding the following in your sakai.properties file.

    # ** Samigo File Upload question type settings **
    # the following default settings
    # com.corejsf.UploadFilter.repositoryPath,
    # com.corejsf.UploadFilter.sizeThreshold,
    # com.corejsf.UploadFilter.sizeMax and
    # com.corejsf.UploadFilter.saveMediaToDb in Samigo web.xml
    # can be overidden with the following settings in sakai.properties
    samigo.answerUploadRepositoryPath=/tmp/
    samigo.sizeThreshold=512
    samigo.sizeMax=20480
    samigo.saveMediaToDb=false

When `saveMediaToDB` is true, `SAM_MEDIA_T.MEDIA` must be a blob or equivalent to work. If you're running Oracle and using `auto.ddl` to create tables, you should check the data type of the "MEDIA" column in the `SAM_MEDIA_T` table. Hibernate tries to choose the right data type for this field, but has a habit of choosing the wrong one for Oracle. The correct types for each database are:

- HSQLDB --> varbinary

- Oracle --> blob

- MySQL --> longblob

For further configuration options and details, please see the Samigo release notes at:http://bugs.sakaiproject.org/confluence/display/SAM/2.2+Release+Notes.

### Roster

Tool ID:

  sakai.site.roster

Confluence Space:

  None

Contact:

  Kristol Hancock (khancock@iupui.edu)

#### Overview

Roster allows users to view the names, photos and profiles of site participants who have made their information accessible through the Profile tool in My Workspace. If an institution has institutional photos, the photos can be made accessible separately to site maintainers.

#### Configuration

The tool simply needs to be unstealthed. It requires no special configuration, but some extra work may need to be done to provide photos for it from campus systems.

### TwinPeaks

Tool ID:

  None

Confluence Space:

  None

Contact:

  Jim Eng (jimeng@umich.edu)

#### Overview

TwinPeaks is a capability to search external repositories while using the HTMLArea WYSIWIG editor (note: Sakai 2.2 uses FCKeditor by default). TwinPeaks was originally developed by the Indiana University Library and was extended and merged into the Sakai 2.1 release by the MIT OKI project.

To add a repository to TwinPeaks, one must write or obtain an OKI DR OSID implementation for that particular repository and then install the OSID implementation in their Sakai instance. Documentation for installing and registering a new OSID implementation within Sakai is available in the Sakai Development Resources area on collab.sakiaproject.org.

TwinPeaks is suitable for use on development servers and can be used to enable sites to begin the development of their DR OSID implementations. The TwinPeaks implementation in the Sakai 2.2 release should not be turned on in production systems without additional work.

#### Configuration

TwinPeaks can be enabled by changing the following sakai.properties setting to true.

    # enable the twinpeaks feature in the WYSIWYG editor in legacy tools: true or false
    wysiwyg.twinpeaks=false