LAMS is LTI 1.1 compliant tool provider. It can work with a number of LMSs that support LTI, e.g. Blackboard, Moodle, Sakai, etc.

LAMS Setup

In order for any LMS to be able to use LAMS as LTI tool provider, it needs to be registered with LAMS first. For this
1. Open sysdmin menu as sysadmin
2. Choose "Maintain LTI Tool Consumers" menu item and opt for adding new LTI Tool Consumer. The page where you can enter tool consumer's settings will look like the following:

3. Enter appropriate values and save. Please note that key and prefix should be unique among all LTI tool consumers and integration servers. If this conditions aren't met, LAMS won't allow saving the new tool consumer and will show according error message.

Blackboard setup

In order to use LAMS as a LTI tool provider in Blackboard it needs to be registered in Blackboard.

1. Open System Admin tab, click on Building Blocks link and then open LTI Tool Providers.

2. At first, register new LAMS provider domain by pressing on Register Provider Domain button, you'll see the following page where you should enter details about LAMS server. Once entered, save it. It needs to be done only once per any Blackboard server.


 

3. Create new placements. Once LAMS tool provider has been created, you'll be prompted to LTI Tool Providers page. Find LAMS tool provider row and then click on a number shown in Placements column (in the beginning it's zero, as a tool provider is just created and doesn't have any placements yet). To achieve the same results hover over tool provider's name and click on its options menu and then select 'Manage Placements'. Press on a Create Placement button.

After this it's possible to start adding LAMS lessons using just created placement.

4. Adding LAMS lessons.Go to any course and find newly created placement in the tools area it got added, for example, it could be 'Tools' tab. Select it. The page will look like this:

Work with LAMS LTI Tool Provider

Popup pages should be allowed in a browser, as all LAMS LTI pages are shown as popups. This statement is at least true for Blackboard.

Authoring LAMS lesson

When teacher opens LAMS link for the first time, he'll get shown LAMS add lesson interface. Where he can author new sequence by using 'Author new LAMS lessons' buttons or select from the list of existing ones from the tree on the left side. After pressing Save button, he'll get prompted to learner-monitor interface (see below).

Accessing LAMS lesson

Once lesson is created by a teacher, LAMS LTI will show learner-monitor interface to anybody accessing this lesson. 

Pressing Open Lesson button will open regular LAMS learning interface.

Pressing Open Monitor button will open regular LAMS monitor interface. Besides, this button is only shown to monitors.

Testing LTI

Highly recommend http://ltiapps.net/test/tc.php to simulate your LTI client/consumer. Make sure you pass the correct roles to make it work properly.

Troubleshooting

Login Failed - authentication error. Failed to validate: signature_invalid

Most likely there's a problem with the proxy either on the client and/or server side. In LAMS, make sure that you have proxy-address-forwarding="true" set properly:

<server name="default-server"> 
                <http-listener name="default" socket-binding="http" max-post-size="104857600" certificate-forwarding="true" proxy-address-forwarding="true" /> 
                <host name="default-host" alias="localhost"> 
                    <location name="/" handler="welcome-content"/> 
                         <!-- Removing server headers 
                            <filter-ref name="server-header"/> 
                            <filter-ref name="x-powered-by-header"/> 
                        --> 
                            <filter-ref name="hsts"/> 
                        <access-log pattern="combined" /> 
                </host> 
</server>

If it's in the client side, they might be calling LAMS from behind their proxy (see 192.168.1.x address in the referrer), like:

127.0.0.1 - - 30/May/2017:13:52:39 +0800 "POST /lams/LoginRequestLti HTTP/1.1" 401 133 
"http://192.168.1.237/moodle3.2/moodle/mod/lti/launch.php?id=33" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0"