Skip navigation
All Places > Blackboard Developer Community > Blog > Author: Alberto Ruiz


I've been working in a proof of concept application to use LDAP to authenticate users in Blackboard Collaborate using the simplest possible approach. Now I have something working and I want to share it with the community.

 

First of all I'm not a PHP programmer, so the code you'll see needs a lot of improvement and is not production ready, but I think is enough in order to understand the concept. I've choosen PHP because of the simple LDAP interaction that it has out of the box.

 

The concept is that you can create a login page that binds the user with the LDAP server, and if the binding is successful then it creates a LTI request with the user data in a unique context and redirect the user to the management interface.

 

Here you can watch a demo and code walkthrough, (sorry, it is in Spanish, I'll upload an English version as soon as I have enough time) : Demo LDAP-Collaborate - eLearning Media

 

The code used in the video is available in Github: GitHub - eLearningMedia/LDAP-Collaborate-login: Simple application to manage Blackboard Collaborate sessions and recordi…

I want to share my experience creating a "blank page" content item in the course TOC programatically.

 

My motivation was to add the Collaborate recordings download links from a course to a content in order to keep them available after restoring the course in other instance of Learn after archiving, because the pk1 and the Collaborate plugin tables are not kept.

 

The core of the solution is this code:

 

  CourseToc newToc = new CourseToc();

  newToc.setTargetType(Target.CONTENT_ITEM);
  newToc.setCourseId(course.getId());
  newToc.setLabel("Recordings");
  newToc.setLaunchInNewWindow(false);
  newToc.setIsEnabled(true);
  newToc.setAllowGuests(false);

  Content content = new Content();

  content.setTitle("Recordings");
  content.setCourseId(course.getId());
  content.setIsAvailable(true);
  content.setAllowGuests(false);
  content.setIsFolder(false);
  content.setLaunchInNewWindow(false);
  content.setContentHandler("resource/x-bb-blankpage");
  content.setBody(FormattedText.toFormattedText(contentString));

  ContentDbPersister.Default.getInstance().persist(content);

  newToc.setContentId(content.getId());

  CourseTocDbPersister.Default.getInstance().persist(newToc );

  CourseMapManagerFactory.getInstance().invalidateCache(course.getId());

 

The contentString variable contains the HTML to show in the blank page content.

 

Hope this will help somebody who want to create any kind of content programatically, not just my particular user case.

Hi,

 

I have recorded a video tutorial about how to use the Blackboard Learn Web Services Framework. I wanted to be language agnostic so I have used SoapUI.

 

You will learn how to setup your Blackboard Learn environment to let an external tool to register, login and consume the SOAP webservices.

 

In this video we will get all the users with default system role. To this we will get a session, register a proxy tool with the required entitlements, login this tool and create the desired filter and the request to obtain the users.

 

Sorry for my english, it is not very "dynamic", but I think you can understand almost everything with the screen sharing.

 

Here you are a video with the process to disable and re-enable users using SIS Flat Files. It is an easy way to keep low the number of users that count to license while you keep all the user data for historic or audits purpose : http://1428242.mediaspace.kaltura.com/media/t/1_wftw3en3

 

The video is in spanish but closed captions are provided in english.

 

Hope this help.