Control Presentations with Cortana










0















I'm working on a use case where I want to control Powerpoint Presentations(on Microsoft PowerPoint and Apple Keynote) using Cortana.



I've been looking for quite some time now for resources that I could leverage to learn from and implement the same.



The closest I could get to is this series of two articles:



  1. Controlling Powerpoint Slideshow With Alexa

  2. Controlling Powerpoint Slides With Alexa and Websocket

But the issue with this is, it's using slideshow which hasn't been updated for quite some time now and also doesn't support later versions of Keynote and Powerpoint. And mine is an enterprise level use case so the package can't be relied upon with the kind of support that it has right now.



I also had a look at Cortana Skills Kit Website but wasn't able to find anything substantial in this direction.



So the question is, is there a reliable library that I could leverage to do this? Or does Cortana Skills Kit have the capabilities to control local running instances of Powerpoint?



I'd really appreciate it if someone could point me in the right direction regarding this.



UPDATE:



  1. I tried achieving this by developing a PowerPoint Add-In. But then when I dived deeper, I go to know that PowerPoint Add-Ins are of the following types:

enter image description here



I, on the other hand, want something that could work in the Presenter mode. And I didn't find anything related to that. Basically, Contextual Mail Add-In is only for Outlook and Outlook Web. Task Pane and Content Add-In is for UI based Add-Ins. But I want a UI-less Add-In that could work and control my presentation in Presenter Mode. I tried looking for Add-In Commands but couldn't find anything related to that.



  1. I also tried having a look at Office URI Schemes as suggested by Micromuncher, but I couldn't find a way to navigate from one slide to the other using these schemes.









share|improve this question




























    0















    I'm working on a use case where I want to control Powerpoint Presentations(on Microsoft PowerPoint and Apple Keynote) using Cortana.



    I've been looking for quite some time now for resources that I could leverage to learn from and implement the same.



    The closest I could get to is this series of two articles:



    1. Controlling Powerpoint Slideshow With Alexa

    2. Controlling Powerpoint Slides With Alexa and Websocket

    But the issue with this is, it's using slideshow which hasn't been updated for quite some time now and also doesn't support later versions of Keynote and Powerpoint. And mine is an enterprise level use case so the package can't be relied upon with the kind of support that it has right now.



    I also had a look at Cortana Skills Kit Website but wasn't able to find anything substantial in this direction.



    So the question is, is there a reliable library that I could leverage to do this? Or does Cortana Skills Kit have the capabilities to control local running instances of Powerpoint?



    I'd really appreciate it if someone could point me in the right direction regarding this.



    UPDATE:



    1. I tried achieving this by developing a PowerPoint Add-In. But then when I dived deeper, I go to know that PowerPoint Add-Ins are of the following types:

    enter image description here



    I, on the other hand, want something that could work in the Presenter mode. And I didn't find anything related to that. Basically, Contextual Mail Add-In is only for Outlook and Outlook Web. Task Pane and Content Add-In is for UI based Add-Ins. But I want a UI-less Add-In that could work and control my presentation in Presenter Mode. I tried looking for Add-In Commands but couldn't find anything related to that.



    1. I also tried having a look at Office URI Schemes as suggested by Micromuncher, but I couldn't find a way to navigate from one slide to the other using these schemes.









    share|improve this question


























      0












      0








      0








      I'm working on a use case where I want to control Powerpoint Presentations(on Microsoft PowerPoint and Apple Keynote) using Cortana.



      I've been looking for quite some time now for resources that I could leverage to learn from and implement the same.



      The closest I could get to is this series of two articles:



      1. Controlling Powerpoint Slideshow With Alexa

      2. Controlling Powerpoint Slides With Alexa and Websocket

      But the issue with this is, it's using slideshow which hasn't been updated for quite some time now and also doesn't support later versions of Keynote and Powerpoint. And mine is an enterprise level use case so the package can't be relied upon with the kind of support that it has right now.



      I also had a look at Cortana Skills Kit Website but wasn't able to find anything substantial in this direction.



      So the question is, is there a reliable library that I could leverage to do this? Or does Cortana Skills Kit have the capabilities to control local running instances of Powerpoint?



      I'd really appreciate it if someone could point me in the right direction regarding this.



      UPDATE:



      1. I tried achieving this by developing a PowerPoint Add-In. But then when I dived deeper, I go to know that PowerPoint Add-Ins are of the following types:

      enter image description here



      I, on the other hand, want something that could work in the Presenter mode. And I didn't find anything related to that. Basically, Contextual Mail Add-In is only for Outlook and Outlook Web. Task Pane and Content Add-In is for UI based Add-Ins. But I want a UI-less Add-In that could work and control my presentation in Presenter Mode. I tried looking for Add-In Commands but couldn't find anything related to that.



      1. I also tried having a look at Office URI Schemes as suggested by Micromuncher, but I couldn't find a way to navigate from one slide to the other using these schemes.









      share|improve this question
















      I'm working on a use case where I want to control Powerpoint Presentations(on Microsoft PowerPoint and Apple Keynote) using Cortana.



      I've been looking for quite some time now for resources that I could leverage to learn from and implement the same.



      The closest I could get to is this series of two articles:



      1. Controlling Powerpoint Slideshow With Alexa

      2. Controlling Powerpoint Slides With Alexa and Websocket

      But the issue with this is, it's using slideshow which hasn't been updated for quite some time now and also doesn't support later versions of Keynote and Powerpoint. And mine is an enterprise level use case so the package can't be relied upon with the kind of support that it has right now.



      I also had a look at Cortana Skills Kit Website but wasn't able to find anything substantial in this direction.



      So the question is, is there a reliable library that I could leverage to do this? Or does Cortana Skills Kit have the capabilities to control local running instances of Powerpoint?



      I'd really appreciate it if someone could point me in the right direction regarding this.



      UPDATE:



      1. I tried achieving this by developing a PowerPoint Add-In. But then when I dived deeper, I go to know that PowerPoint Add-Ins are of the following types:

      enter image description here



      I, on the other hand, want something that could work in the Presenter mode. And I didn't find anything related to that. Basically, Contextual Mail Add-In is only for Outlook and Outlook Web. Task Pane and Content Add-In is for UI based Add-Ins. But I want a UI-less Add-In that could work and control my presentation in Presenter Mode. I tried looking for Add-In Commands but couldn't find anything related to that.



      1. I also tried having a look at Office URI Schemes as suggested by Micromuncher, but I couldn't find a way to navigate from one slide to the other using these schemes.






      ms-office powerpoint office-addins cortana cortana-skills-kit






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 14 '18 at 7:19







      SiddAjmera

















      asked Nov 12 '18 at 13:59









      SiddAjmeraSiddAjmera

      13.5k31137




      13.5k31137






















          1 Answer
          1






          active

          oldest

          votes


















          1














          The slideshow approach seems really fragile, though it is highly cool.



          Pretty much all versions of PowerPoint support automation. But with DDE being mostly dead, and OLE seeming inappropriate in the Cloud, it would be nice to automate some behaviors without extensive coding.



          Once upon a time, you could add a reference to an id or index to the file i.e. myPresentation.ppt#4 to show slide 4, but this no longer works.



          How this should be done; a protocol handler that automates PowerPoint. Does this exist? Kind of. Right now you can use deep linking in a limited way on most platforms.



          • https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes


          • https://docs.microsoft.com/en-us/office/client-developer/integration/integrate-with-office-from-android-applications


          But right now this just lets us open for viewing or editing a presentation without saying what page. So... about the only thing we can do is lobby our friends at Microsoft to consider this as part of their new strategy.



          However, Cortana will support it when it exists.



          • https://docs.microsoft.com/en-us/cortana/skills/launch-apps-from-skills





          share|improve this answer

























          • Thanks for your answer. And what about Apple Keynote?

            – SiddAjmera
            Nov 13 '18 at 5:00











          • I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

            – Micromuncher
            Nov 14 '18 at 0:06











          • I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

            – SiddAjmera
            Nov 14 '18 at 6:43











          • So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

            – Micromuncher
            Nov 14 '18 at 16:18











          • That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

            – SiddAjmera
            Nov 14 '18 at 16:20











          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53263729%2fcontrol-presentations-with-cortana%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          The slideshow approach seems really fragile, though it is highly cool.



          Pretty much all versions of PowerPoint support automation. But with DDE being mostly dead, and OLE seeming inappropriate in the Cloud, it would be nice to automate some behaviors without extensive coding.



          Once upon a time, you could add a reference to an id or index to the file i.e. myPresentation.ppt#4 to show slide 4, but this no longer works.



          How this should be done; a protocol handler that automates PowerPoint. Does this exist? Kind of. Right now you can use deep linking in a limited way on most platforms.



          • https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes


          • https://docs.microsoft.com/en-us/office/client-developer/integration/integrate-with-office-from-android-applications


          But right now this just lets us open for viewing or editing a presentation without saying what page. So... about the only thing we can do is lobby our friends at Microsoft to consider this as part of their new strategy.



          However, Cortana will support it when it exists.



          • https://docs.microsoft.com/en-us/cortana/skills/launch-apps-from-skills





          share|improve this answer

























          • Thanks for your answer. And what about Apple Keynote?

            – SiddAjmera
            Nov 13 '18 at 5:00











          • I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

            – Micromuncher
            Nov 14 '18 at 0:06











          • I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

            – SiddAjmera
            Nov 14 '18 at 6:43











          • So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

            – Micromuncher
            Nov 14 '18 at 16:18











          • That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

            – SiddAjmera
            Nov 14 '18 at 16:20
















          1














          The slideshow approach seems really fragile, though it is highly cool.



          Pretty much all versions of PowerPoint support automation. But with DDE being mostly dead, and OLE seeming inappropriate in the Cloud, it would be nice to automate some behaviors without extensive coding.



          Once upon a time, you could add a reference to an id or index to the file i.e. myPresentation.ppt#4 to show slide 4, but this no longer works.



          How this should be done; a protocol handler that automates PowerPoint. Does this exist? Kind of. Right now you can use deep linking in a limited way on most platforms.



          • https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes


          • https://docs.microsoft.com/en-us/office/client-developer/integration/integrate-with-office-from-android-applications


          But right now this just lets us open for viewing or editing a presentation without saying what page. So... about the only thing we can do is lobby our friends at Microsoft to consider this as part of their new strategy.



          However, Cortana will support it when it exists.



          • https://docs.microsoft.com/en-us/cortana/skills/launch-apps-from-skills





          share|improve this answer

























          • Thanks for your answer. And what about Apple Keynote?

            – SiddAjmera
            Nov 13 '18 at 5:00











          • I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

            – Micromuncher
            Nov 14 '18 at 0:06











          • I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

            – SiddAjmera
            Nov 14 '18 at 6:43











          • So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

            – Micromuncher
            Nov 14 '18 at 16:18











          • That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

            – SiddAjmera
            Nov 14 '18 at 16:20














          1












          1








          1







          The slideshow approach seems really fragile, though it is highly cool.



          Pretty much all versions of PowerPoint support automation. But with DDE being mostly dead, and OLE seeming inappropriate in the Cloud, it would be nice to automate some behaviors without extensive coding.



          Once upon a time, you could add a reference to an id or index to the file i.e. myPresentation.ppt#4 to show slide 4, but this no longer works.



          How this should be done; a protocol handler that automates PowerPoint. Does this exist? Kind of. Right now you can use deep linking in a limited way on most platforms.



          • https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes


          • https://docs.microsoft.com/en-us/office/client-developer/integration/integrate-with-office-from-android-applications


          But right now this just lets us open for viewing or editing a presentation without saying what page. So... about the only thing we can do is lobby our friends at Microsoft to consider this as part of their new strategy.



          However, Cortana will support it when it exists.



          • https://docs.microsoft.com/en-us/cortana/skills/launch-apps-from-skills





          share|improve this answer















          The slideshow approach seems really fragile, though it is highly cool.



          Pretty much all versions of PowerPoint support automation. But with DDE being mostly dead, and OLE seeming inappropriate in the Cloud, it would be nice to automate some behaviors without extensive coding.



          Once upon a time, you could add a reference to an id or index to the file i.e. myPresentation.ppt#4 to show slide 4, but this no longer works.



          How this should be done; a protocol handler that automates PowerPoint. Does this exist? Kind of. Right now you can use deep linking in a limited way on most platforms.



          • https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes


          • https://docs.microsoft.com/en-us/office/client-developer/integration/integrate-with-office-from-android-applications


          But right now this just lets us open for viewing or editing a presentation without saying what page. So... about the only thing we can do is lobby our friends at Microsoft to consider this as part of their new strategy.



          However, Cortana will support it when it exists.



          • https://docs.microsoft.com/en-us/cortana/skills/launch-apps-from-skills






          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Nov 12 '18 at 21:31

























          answered Nov 12 '18 at 21:13









          MicromuncherMicromuncher

          475114




          475114












          • Thanks for your answer. And what about Apple Keynote?

            – SiddAjmera
            Nov 13 '18 at 5:00











          • I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

            – Micromuncher
            Nov 14 '18 at 0:06











          • I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

            – SiddAjmera
            Nov 14 '18 at 6:43











          • So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

            – Micromuncher
            Nov 14 '18 at 16:18











          • That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

            – SiddAjmera
            Nov 14 '18 at 16:20


















          • Thanks for your answer. And what about Apple Keynote?

            – SiddAjmera
            Nov 13 '18 at 5:00











          • I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

            – Micromuncher
            Nov 14 '18 at 0:06











          • I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

            – SiddAjmera
            Nov 14 '18 at 6:43











          • So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

            – Micromuncher
            Nov 14 '18 at 16:18











          • That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

            – SiddAjmera
            Nov 14 '18 at 16:20

















          Thanks for your answer. And what about Apple Keynote?

          – SiddAjmera
          Nov 13 '18 at 5:00





          Thanks for your answer. And what about Apple Keynote?

          – SiddAjmera
          Nov 13 '18 at 5:00













          I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

          – Micromuncher
          Nov 14 '18 at 0:06





          I haven't been an Apple dev in years... but I haven't found anything on deep linking. BUT ... slideshare has an API - and you can upload powerpoint and keynote to slideshare ... slideshare.net/developers

          – Micromuncher
          Nov 14 '18 at 0:06













          I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

          – SiddAjmera
          Nov 14 '18 at 6:43





          I did try using Office Add-Ins but the issue is, the Add-In will only be active in Edit Mode while I'm trying to make it work in Presenter Mode.

          – SiddAjmera
          Nov 14 '18 at 6:43













          So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

          – Micromuncher
          Nov 14 '18 at 16:18





          So the paths open to you, as I see it, are 1/ create protocol handlers on whatever platform you support that drive the app that renders your slideshow, or 2/ use a cloud/weh based solution that supports either presentation rendering or automates "screen scraping". For slideshare, you can add /<pagenum> to any presentation to show that page. They have a controls library for javascript, but it looks like it only supports control of a presentation embedded in your web page...

          – Micromuncher
          Nov 14 '18 at 16:18













          That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

          – SiddAjmera
          Nov 14 '18 at 16:20






          That's exactly the issue. If it were just a web-based thing, there would have been some way or the other to deal with it. But it's not. So I'm still stuck.

          – SiddAjmera
          Nov 14 '18 at 16:20


















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53263729%2fcontrol-presentations-with-cortana%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Kleinkühnau

          Makov (Slowakei)

          Deutsches Schauspielhaus