Tuesday, January 16, 2007

Developing a PowerPoint Custom Plug-in Application using CONTENTdm API

CONTENTdm version 4.0 is provided with a very powerful Application Program Interface, (API). The API provides opportunities to develop local programs that interact with the objects and metadata stored within the CONTENTdm server, and the University Libraries have done just that.

Our experience with the API has been favorable. We have thousands of copyrighted images that we protect by requiring users to login using their domain user names and passwords. We were protecting these images even before DiMeMa supported access restriction with version 3.8.

However, by protecting these images, we were not able to utilize the PowerPoint Plug-in for CONTENTdm. DiMeMa’s PowerPoint Plug-in performs well in retrieving images and metadata from the CONTENTdm server for imports to Microsoft PowerPoint for use during presentations. Ball State University’s faculties use this program for classroom teaching and instruction. However, the vanilla PowerPoint plug-in does not recognize the authentication and authorization processes used by our CONTENTdm system.

Unauthenticated users are only allowed to view thumbnail-size images. With the vanilla plug-in, authenticated users can only import thumbnail-size images, which are generally of a lower quality and do not show much detail on a large screen. For this reason, faculty do not find the thumbnail images acceptable for classroom use. A better option is to use hi-resolution images in PowerPoint presentations.

Using the API, we developed a service and application that interacts with both our CONTENTdm server and Microsoft PowerPoint. We have created a custom plug-in enhancement that supports our authentication and authorization processes to access protected images. Faculty can use the custom plug-in to import larger images from the CONTENTdm server after they are authenticated and authorized from the plug-in.

Four major components are used to make this process work efficiently:

1. CONTENTdm API. The API is required to interact with, and retrieve, objects from the CONTENTdm server.
2. XML. This acts as a Web service/intermediary so that VB/VB.net components can understand the data retrieved from the CONTENTdm server.
3. VB/VB.net/C#. This is necessary to build the plug-in for PowerPoint. Additional components within VB/VB.net also need to be added, based on the functionality desired for the plug-in.
4. Microsoft Package Deployment tool. This component is optional. It bundles all the components used within VB/VB.net into one executable file that users can double-click to install. You can use other products such as InstallShield.

The Ball State University Libraries’ PowerPoint plug-in, built using the CONTENTdm API, is an example of a program application developed by the University Libraries personnel to improve the functionality and usability of the CONTENTdm system, particularly for classroom faculty.

For more information, contact P. Budi Wibowo, Ball State University Libraries’ Head of Digital Libraries and Web Services, BWibowo@bsu.edu, (765) 285-8032.

0 Comments:

Post a Comment

<< Home