Author Topic: NetFlix  (Read 9899 times)

0 Members and 1 Guest are viewing this topic.

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
NetFlix
« on: October 10, 2014, 05:30:16 AM »
here is a work in progress (I'd say 85%) for Netflix controlled by the mighty VC :)
commands are dynamic except for the 2 with payloads attached ...

good to know:
 - the commands will allow to browse and start playing a movie ... but no movie control yet (see below)
 - commands will require some tweaking to work:
      - must create NetFlixProfileTocken.xml, if you use profiles (never tested without profiles) ... to do that, log in to Netflix with your browser and, right click the profile and copy the shortcut ... the token is whatever after tkn=
      - see the command current page for log-in credentials ... either create the map or put directly your info ...
 - modify the enable and disable groups in ++Open NetFlix...
 - create a command outside the group to trigger NetFlix.Start, as I have the group disabled, once enabled and Netflix start I disable everything else
 - group has prefix override ...

have fun, if you find bugs please report, feedback and your experience with this, will help to improve it ...

---------------------- Original Post -----------------------------
before I reinvent the wheel, I though to check if anybody has developed a way to integrate Netflix with VC ... sadly they are stopping the public API in November 2014 ... so things must be done by manipulating the browser ...

if nobody did it yet... I think the way to go is use robobrowser ...

Idea: scrape mylist page to build xml file then one can say: I want to watch the mask ... and the mask movie starts
« Last Edit: January 28, 2015, 01:11:55 PM by Haddood »
When Voice command gets tough, use hand gestures

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2009
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: NetFlix Xml Request
« Reply #1 on: October 10, 2014, 08:05:27 AM »
The only one I remember is http://voxcommando.com/forum/index.php?topic=1034.0

But that wasn't scraping the site -- just relying on static URLs.
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: NetFlix Xml Request
« Reply #2 on: October 10, 2014, 08:06:38 AM »
There are Netflix plugins for some media centres like XBMC.  You might be able to do something with that.  But you are right, roboBrowser will probably offer a lot of options.  The only problem is that it probably won't take long before Netflix changes the design and breaks it so be prepared for the occasional fixing session.

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix Xml Request
« Reply #3 on: October 10, 2014, 08:48:26 AM »
There are Netflix plugins for some media centres like XBMC.  You might be able to do something with that.  But you are right, roboBrowser will probably offer a lot of options.  The only problem is that it probably won't take long before Netflix changes the design and breaks it so be prepared for the occasional fixing session.

I tried some... the one that works with gotham in fact uses chrome browser screen ... so I might as well do it with robobrowser and have full control... for the moment the disadvantage with early tests is that VC really grows additional 60MB on memory
When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: NetFlix Xml Request
« Reply #4 on: October 10, 2014, 09:26:30 AM »
the disadvantage with early tests is that VC really grows additional 60MB on memory

Is that really a problem?  60 megabytes is really nothing nowadays, and what would it cost you if you run Netflix in a separate browser?  Do you need that memory for something else?

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix Xml Request
« Reply #5 on: October 15, 2014, 12:42:13 AM »
Is that really a problem?  60 megabytes is really nothing nowadays, and what would it cost you if you run Netflix in a separate browser?  Do you need that memory for something else?

I am running VC on a mac mini 2006 with 2.5GB ram ... it is already at 1.8Gb most of the time and windows is not fan of high meme load ...
anyway I got done at 90% ... logging, browsing ...and play are working ... needs some fine tuning then I will share ... feels like can grow to be the ultimate solution of movie library

When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: NetFlix Xml Request
« Reply #6 on: October 15, 2014, 08:13:56 AM »
... what would it cost you (in memory consumption)  if you run Netflix in a separate browser?

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix Xml Request
« Reply #7 on: October 17, 2014, 07:45:30 PM »
now I get what you meant  :bonk :bonk
however I don't mind a browser crashing ... but it hurts when VC freeze  :biglaugh :biglaugh
When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: NetFlix Xml Request
« Reply #8 on: October 18, 2014, 08:54:48 AM »
It seems we have shifted to a new topic.  I thought we were talking about memory consumption.

Does NetFlix crash your browser frequently?

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix Xml Request
« Reply #9 on: October 18, 2014, 06:35:48 PM »
It seems we have shifted to a new topic.  I thought we were talking about memory consumption.

Does NetFlix crash your browser frequently?

not at all. but Netflix in robobrowser tends to freeze VC ...sometimes it recovers after a while sometimes it does not. I haven't reported anything yet as I am still working on the commands
When Voice command gets tough, use hand gestures

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix
« Reply #10 on: January 28, 2015, 01:12:57 PM »
I updated the post above instead of starting a new thread ....

there is still work to be done on the Netflix commands:
- scrolling the pages ...
- in home page, limit movies playable to the lists visible on the screen
- movie controls (couldn't get sendkey or the variations to send key press to robobrowser in full screen mode (Silverlight or DX), if someone solves this please post back)
- disable subgenre and sorting for pages that do not have sorting /subgenre ...
- make sorting command dynamic, just in case things varies or they add new options ...
- add filters to sorting (like the tick boxes in sort by maturity rating)
- add and remove movies to my list
When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: NetFlix
« Reply #11 on: January 28, 2015, 01:23:50 PM »
- movie controls (couldn't get sendkey or the variations to send key press to robobrowser in full screen mode (Silverlight or DX), if someone solves this please post back)
Does that mean that it works OK when not in full screen mode?

Keyboard emulate will only work if the correct window has focus.
If sendkeys does not work, try InputKeys, or DxInput (the most powerful, low level method)
In some cases keyboard emulation might work better (maybe) if you run VC as admin but normally I don't think this should be needed.

Also in the case of an activeX or flash component on a web page, the keyboard emulation might only work if the control has focus (not just the page but the actual flash control on the page) so it might be necessary to first focus the flash control.

PegLegTV

  • $upporter
  • Sr. Member
  • *****
  • Posts: 499
  • Karma: 43
    • View Profile
Re: NetFlix
« Reply #12 on: January 28, 2015, 01:31:08 PM »
Cool Idea, I control Netflix playback, when in full screen, I'm not sure if it will work with robobrowser but this works for me using Chrome

Chrome Netflix
Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.1.3.8-->
<commandGroup open="True" name="Chrome Netflix" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="591" name="Netflix play/pause" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>Window.Focus</cmdType>
      <params>
        <param>Chrome</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>SendKeys</cmdType>
      <params>
        <param>{ENTER}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Pause Netflix, Play Netflix</phrase>
  </command>
  <command id="588" name="Netflix Find Netflix" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>Window.Focus</cmdType>
      <params>
        <param>Chrome</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Find Netflix</phrase>
  </command>
  <command id="570" name="Netflix Stop/Close" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>Window.Close</cmdType>
      <params>
        <param>Chrome</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Window.Focus</cmdType>
      <params>
        <param>XBMC</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Stop Netflix, Close Netflix</phrase>
  </command>
  <command id="581" name="Netflix Step back" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>SendKeys</cmdType>
      <params>
        <param>{LEFT}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Step back, I missed that, What was that</phrase>
  </command>
  <command id="582" name="Netflix Step Forward" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>SendKeys</cmdType>
      <params>
        <param>{RIGHT}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Step Forward, Jump forward</phrase>
  </command>
  <command id="578" name="Netflix Fast Forward" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="True" loopDelay="200" loopMax="0" description="">
    <action>
      <cmdType>Window.Focus</cmdType>
      <params>
        <param>Chrome</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>InputKeys.Send</cmdType>
      <params>
        <param>vk:right</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Fast Forward Netflix</phrase>
  </command>
  <command id="602" name="Netflix Rewind" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="True" loopDelay="200" loopMax="0" description="">
    <action>
      <cmdType>Window.Focus</cmdType>
      <params>
        <param>Chrome</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>InputKeys.Send</cmdType>
      <params>
        <param>vk:left</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Rewind Netflix</phrase>
  </command>
  <command id="991" name="Netflix Frame Selection" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="True" loopDelay="500" loopMax="0" description="">
    <action>
      <cmdType>Window.Focus</cmdType>
      <params>
        <param>Chrome</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>InputKeys.Send</cmdType>
      <params>
        <param>vk:right</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Show frame Selection, Show Frames, Hide Frame Selection, Hide Frames</phrase>
  </command>
</commandGroup>

Hope this can help
« Last Edit: April 07, 2015, 01:51:17 AM by PegLegTV »

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix
« Reply #13 on: January 28, 2015, 01:33:12 PM »
James,
I tried InputKeys and DxInput as well ... but no luck ... in fact that is why I haven't shared the command before... though I have it since more than 2 months ... now, running short on time for VC ... thought maybe others can help to finish it ...

I can't remember if my tries worked in window mode  ....

Cool Idea, I control Netflix playback, when in full screen, I'm not sure if it will work with robobrowser but this works for me using Chrome

Chrome Netflix

Hope this can help

thank you for sharing ... will test and post back ...
« Last Edit: January 28, 2015, 01:37:05 PM by Haddood »
When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: NetFlix
« Reply #14 on: January 28, 2015, 02:46:46 PM »
I just signed up for Netflix (one month free), started playing a movie in robobrowser, went fullscreen (via the fullscreen button in the Silverlight player) then tested with DxInput to pause and play by emulating spacebar.  Worked perfectly on the first try.

Here's my test command for play/pause:

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.1.3.6-->
<command id="212" name="begin, start, pause playback" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
  <action>
    <cmdType>DxInput.KeyPress</cmdType>
    <params>
      <param>space</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <phrase>begin, start, pause</phrase>
  <phrase>playback</phrase>
</command>

You need to enable the dxInput plugin.  Also, I set my keypress delay to 60ms.  I did not test with lower values but it might not work if you set it too low.  60 milliseconds usually works well.

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix
« Reply #15 on: January 29, 2015, 11:16:28 AM »
I just signed up for Netflix (one month free), started playing a movie in robobrowser, went fullscreen (via the fullscreen button in the Silverlight player) then tested with DxInput to pause and play by emulating spacebar.  Worked perfectly on the first try.


then maybe you can the commands a try and give me some feedback to improve 'em  8) 8)

Quote
You need to enable the dxInput plugin.  Also, I set my keypress delay to 60ms.  I did not test with lower values but it might not work if you set it too low.  60 milliseconds usually works well.

Aaaaahhhhh,  I had it set at 0 (not sure if it is the default thing in the plug in, if it is maybe you can do it to be 60 for newbees like me, who never read the wiki :))
When Voice command gets tough, use hand gestures

PegLegTV

  • $upporter
  • Sr. Member
  • *****
  • Posts: 499
  • Karma: 43
    • View Profile
Re: NetFlix
« Reply #16 on: April 08, 2015, 12:29:37 AM »
I thought this might be of use with your Netflix setup Haddood

http://voxcommando.com/forum/index.php?topic=2103.msg18279#msg18279

PegLegTV

  • $upporter
  • Sr. Member
  • *****
  • Posts: 499
  • Karma: 43
    • View Profile
Re: NetFlix
« Reply #17 on: February 15, 2016, 10:52:41 PM »
@haddood I've been trying to get a new Netflix setup together for when I upgrade to windows 10, but being that Netflix did a major update to the layout of the windows 10 app its more difficult then I would prefer, so I thought I would give yours another look and see how yours works,

and I was wondering if you have figured out a way for basic (up, down, left, right) navigation in the browser?

I did some testing and tried using the Div IDs but it appears that Netflix is using dynamic Div to prevent the items from using the same Div id every time, so this method fell short of basic navigation

but I did have an idea of possibly creating a command that would allow chromecast like capability of sending the Netflix video from android or other PC to VC and have it launch the video in Robob, but haven't fully decided yet.

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix
« Reply #18 on: February 16, 2016, 04:41:15 AM »
I haven't done much to it since then.... we use Netflix most of the time with Xbox these days... However I will try to take a look at it again ...
It has been a long time in my head to built a "my library" and "previously viewed" locally saved pages by scraping info from Netflix ... So this might a good time to look at it ...
When Voice command gets tough, use hand gestures

PegLegTV

  • $upporter
  • Sr. Member
  • *****
  • Posts: 499
  • Karma: 43
    • View Profile
Re: NetFlix
« Reply #19 on: February 17, 2016, 02:35:43 AM »
quick update:

I was able to figure out a way for basic navigation for the most part  :yay, except for making the rows scroll with the left and right movement but it does appear to be working and I think it looks good to

execute the command "Launch Netflix / Windowed" to launch netlfix

you may have to login or select your profile with your mouse on first launch

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.1.4-->
<commandGroup open="True" name="Netflix Nav" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="1150" name="Launch Netflix / Windowed" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>RoboB.Select</cmdType>
      <params>
        <param>Netflix</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Fullscreen</cmdType>
      <params>
        <param>False</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Navigate</cmdType>
      <params>
        <param>www.netflix.com</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Wait</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Show</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.ElementByID</cmdType>
      <params>
        <param>title-card-1-0</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Click</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMud</param>
        <param>1</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMlr</param>
        <param>0</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
  </command>
  <command id="1159" name="Netflix UP" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMlr</param>
        <param>0</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>PY.ExecString</cmdType>
      <params>
        <param>result={Var.NMud}-1</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMud</param>
        <param>{LastResult}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Select</cmdType>
      <params>
        <param>Netflix</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.ElementByID</cmdType>
      <params>
        <param>title-card-{Var.NMud}-0</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Click</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>LastActionSuccess</ifType>
      <ifParams>&amp;&amp;</ifParams>
      <then />
      <else>
        <action>
          <cmdType>PY.ExecString</cmdType>
          <params>
            <param>result={Var.NMud}+1</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>Results.SetVar</cmdType>
          <params>
            <param>NMud</param>
            <param>{LastResult}</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>OSD.ShowText</cmdType>
          <params>
            <param>Top of the page</param>
            <param />
            <param>-1</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
      </else>
    </if>
    <phrase>Netflix UP</phrase>
  </command>
  <command id="1164" name="Netflix DOWN" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMlr</param>
        <param>0</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>PY.ExecString</cmdType>
      <params>
        <param>result={Var.NMud}+1</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMud</param>
        <param>{LastResult}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Select</cmdType>
      <params>
        <param>Netflix</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.ElementByID</cmdType>
      <params>
        <param>title-card-{Var.NMud}-0</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Click</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>LastActionSuccess</ifType>
      <ifParams>&amp;&amp;</ifParams>
      <then />
      <else>
        <action>
          <cmdType>PY.ExecString</cmdType>
          <params>
            <param>result={Var.NMud}-1</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>Results.SetVar</cmdType>
          <params>
            <param>NMud</param>
            <param>{LastResult}</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>OSD.ShowText</cmdType>
          <params>
            <param>Bottom of the page</param>
            <param />
            <param>0</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
      </else>
    </if>
    <phrase>Netflix DOWN</phrase>
  </command>
  <command id="1180" name="Netflix left" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>PY.ExecString</cmdType>
      <params>
        <param>result={Var.NMlr}-1</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMlr</param>
        <param>{LastResult}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Select</cmdType>
      <params>
        <param>Netflix</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.ElementByID</cmdType>
      <params>
        <param>title-card-{Var.NMud}-{Var.NMlr}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Click</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>LastActionSuccess</ifType>
      <ifParams>&amp;&amp;</ifParams>
      <then />
      <else>
        <action>
          <cmdType>Results.SetVar</cmdType>
          <params>
            <param>NMlr</param>
            <param>0</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>RoboB.ElementByID</cmdType>
          <params>
            <param>title-card-{Var.NMud}-{Var.NMlr}</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>RoboB.Click</cmdType>
          <params />
          <cmdRepeat>1</cmdRepeat>
        </action>
      </else>
    </if>
    <phrase>Netflix left</phrase>
  </command>
  <command id="1153" name="Netflix RIGHT" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>PY.ExecString</cmdType>
      <params>
        <param>result={Var.NMlr}+1</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>Results.SetVar</cmdType>
      <params>
        <param>NMlr</param>
        <param>{LastResult}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Select</cmdType>
      <params>
        <param>Netflix</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.ElementByID</cmdType>
      <params>
        <param>title-card-{Var.NMud}-{Var.NMlr}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Click</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>LastActionSuccess</ifType>
      <ifParams>&amp;&amp;</ifParams>
      <then />
      <else>
        <action>
          <cmdType>Results.SetVar</cmdType>
          <params>
            <param>NMlr</param>
            <param>0</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>RoboB.ElementByID</cmdType>
          <params>
            <param>title-card-{Var.NMud}-{Var.NMlr}</param>
          </params>
          <cmdRepeat>1</cmdRepeat>
        </action>
        <action>
          <cmdType>RoboB.Click</cmdType>
          <params />
          <cmdRepeat>1</cmdRepeat>
        </action>
      </else>
    </if>
    <phrase>Netflix RIGHT</phrase>
  </command>
  <command id="1227" name="Netflix Close" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>RoboB.Select</cmdType>
      <params>
        <param>Netflix</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>RoboB.Dispose</cmdType>
      <params />
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Netflix Close</phrase>
  </command>
</commandGroup>

because of the way that its navigating the page I have it jump straight to the first row of videos, I also have it popup an OSD when it reaches the top row of videos and bottom row of videos

when navigating up and down it will automatically jump to the first poster in the next row instead of going straight down

After a lot of testing I found that Div is not going to work at all but I did some more digging and found that there is an Element ID called "title-card-*-*"

The First * is the row number and the second * is the "card" number

my next step will be to see if right and left navigation will still work if the rows scroll with the movement,
« Last Edit: February 17, 2016, 11:22:36 AM by PegLegTV »

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: NetFlix
« Reply #20 on: February 17, 2016, 04:26:03 PM »
:clap :clap :clap
When Voice command gets tough, use hand gestures

PegLegTV

  • $upporter
  • Sr. Member
  • *****
  • Posts: 499
  • Karma: 43
    • View Profile
Re: NetFlix
« Reply #21 on: April 10, 2016, 02:55:24 AM »
 ::banana ::banana Check it out Control Netflix.com using RoboBrowser   http://voxcommando.com/forum/index.php?topic=2560.msg22028#msg22028   ::banana ::banana