AnsweredAssumed Answered

Custom LTI Placements

Question asked by John_Lowe@baylor.edu Expert on May 1, 2017
Latest reply on Jul 30, 2017 by Colin Murtaugh

Has anyone been successful in getting some of the more unique LTI placements like "course_home_sub_navigation" or "course_settings_sub_navigation" working properly?  There are some tools that I've love to have integrated into the right-hand side menu in Canvas courses instead of in the main course menu.  I've done a sample LTI config (below) that indicates that all the possible placements are enabled when I check the placements in the app settings, but just can't get some of them to actually show up in the GUI.

 

 

If you have been successful, would you mind sharing your XML?

 

What I'm using for testing is below which works great for all the normal menu placements, but not for the other sidebar placements.

<?xml version="1.0" encoding="UTF-8"?><cartridge_basiclti_link xmlns="http://www.imsglobal.org/xsd/imslticc_v1p0" xmlns:blti="http://www.imsglobal.org/xsd/imsbasiclti_v1p0" xmlns:lticm="http://www.imsglobal.org/xsd/imslticm_v1p0" xmlns:lticp="http://www.imsglobal.org/xsd/imslticp_v1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.imsglobal.org/xsd/imslticc_v1p0 http://www.imsglobal.org/xsd/lti/ltiv1p0/imslticc_v1p0.xsd http://www.imsglobal.org/xsd/imsbasiclti_v1p0 http://www.imsglobal.org/xsd/lti/ltiv1p0/imsbasiclti_v1p0p1.xsd http://www.imsglobal.org/xsd/imslticm_v1p0 http://www.imsglobal.org/xsd/lti/ltiv1p0/imslticm_v1p0.xsd http://www.imsglobal.org/xsd/imslticp_v1p0 http://www.imsglobal.org/xsd/lti/ltiv1p0/imslticp_v1p0.xsd">
  <blti:title>Example Tool Provider</blti:title>
  <blti:description>This is a Sample Tool Provider.</blti:description>
  <blti:launch_url>http://lti-tool-provider-example.herokuapp.com/messages/blti</blti:launch_url>
  <blti:extensions platform="canvas.instructure.com">
    <lticm:options name="account_navigation">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?account_navigation</lticm:property>
      <lticm:property name="text">account_navigation Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
      
      <lticm:options name="labels">
        <lticm:property name="en">Account Navigation Label</lticm:property>
        <lticm:property name="es">Biblioteca de Imágenes</lticm:property>
      </lticm:options>
    </lticm:options>
    <lticm:options name="assignment_menu">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?assignment_menu</lticm:property>
      <lticm:property name="message_type">ContentItemSelection</lticm:property>
      <lticm:property name="text">assignment_menu Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="assignment_selection">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?assignment_selection</lticm:property>
      <lticm:property name="message_type">ContentItemSelectionRequest</lticm:property>
      <lticm:property name="text">assignment_selection Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="course_home_sub_navigation">
      <lticm:property name="canvas_icon_class">icon-commons</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?course_home_sub_navigation</lticm:property>
      <lticm:property name="text">course_home_sub_navigation Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
    </lticm:options>
    <lticm:options name="course_navigation">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?course_navigation</lticm:property>
      <lticm:property name="text">course_navigation Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
      
      <lticm:options name="labels">
        <lticm:property name="en">Course Navigation Label</lticm:property>
        <lticm:property name="es">Biblioteca de Imágenes</lticm:property>
      </lticm:options>
    </lticm:options>
    <lticm:options name="course_settings_sub_navigation">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?course_settings_sub_navigation</lticm:property>
      <lticm:property name="text">course_settings_sub_navigation Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
    </lticm:options>
    <lticm:options name="discussion_topic_menu">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?discussion_topic_menu</lticm:property>
      <lticm:property name="message_type">ContentItemSelection</lticm:property>
      <lticm:property name="text">discussion_topic_menu Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="editor_button">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?editor_button</lticm:property>
      <lticm:property name="message_type">ContentItemSelectionRequest</lticm:property>
      <lticm:property name="text">editor_button Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="file_menu">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?file_menu</lticm:property>
      <lticm:property name="message_type">ContentItemSelection</lticm:property>
      <lticm:property name="text">file_menu Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="global_navigation">
      <lticm:property name="canvas_icon_class">icon-analytics</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?global_navigation</lticm:property>
      <lticm:property name="text">LTI Analytics</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
    </lticm:options>
    <lticm:options name="homework_submission">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?homework_submission</lticm:property>
      <lticm:property name="message_type">ContentItemSelectionRequest</lticm:property>
      <lticm:property name="text">homework_submission Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png</lticm:property>
    <lticm:options name="link_selection">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?link_selection</lticm:property>
      <lticm:property name="message_type">ContentItemSelectionRequest</lticm:property>
      <lticm:property name="text">link_selection Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="migration_selection">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?migration_selection</lticm:property>
      <lticm:property name="message_type">ContentItemSelectionRequest</lticm:property>
      <lticm:property name="text">migration_selection Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:options name="module_menu">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?module_menu</lticm:property>
      <lticm:property name="message_type">ContentItemSelection</lticm:property>
      <lticm:property name="text">module_menu Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:property name="privacy_level">public</lticm:property>
    <lticm:options name="quiz_menu">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?quiz_menu</lticm:property>
      <lticm:property name="message_type">ContentItemSelection</lticm:property>
      <lticm:property name="text">quiz_menu Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
    <lticm:property name="selection_height">500</lticm:property>
    <lticm:property name="selection_width">500</lticm:property>
    <lticm:property name="text">Extension text</lticm:property>
    <lticm:options name="tool_configuration">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?tool_configuration</lticm:property>
      <lticm:property name="text">tool_configuration Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
    </lticm:options>
    <lticm:options name="user_navigation">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?user_navigation</lticm:property>
      <lticm:property name="text">user_navigation Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/blti</lticm:property>
      
      <lticm:options name="labels">
        <lticm:property name="en">User Navigation Label</lticm:property>
        <lticm:property name="es">Biblioteca de Imágenes</lticm:property>
      </lticm:options>
    </lticm:options>
    <lticm:options name="wiki_page_menu">
      <lticm:property name="canvas_icon_class">icon-lti</lticm:property>
      <lticm:property name="icon_url">http://lti-tool-provider-example.herokuapp.com/selector.png?wiki_page_menu</lticm:property>
      <lticm:property name="message_type">ContentItemSelection</lticm:property>
      <lticm:property name="text">wiki_page_menu Text</lticm:property>
      <lticm:property name="url">http://lti-tool-provider-example.herokuapp.com/messages/content-item</lticm:property>
    </lticm:options>
  </blti:extensions>
</cartridge_basiclti_link>

Outcomes