News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Switching between browser tabs (remotely)

Started by dsouza123, June 29, 2008, 12:21:20 PM

Previous topic - Next topic

dsouza123

There is a wall mounted monitor that has a web browser displayed.
There are a number of tabs, I want to remotely switch between the tabs.

I have written code to do this locally (on my PC), it uses a system tray icon
with a right click menu using the keybd_event api


                        invoke  keybd_event, VK_CONTROL, 0, 0, 0       ; Do a Ctrl-Tab (forward a Tab)
                        invoke  Sleep, milliDelay
                        invoke  keybd_event, VK_TAB,     0, 0, 0
                        invoke  Sleep, milliDelay
                     
                        invoke  keybd_event, VK_CONTROL, 0, KEYEVENTF_KEYUP, 0
                        invoke  Sleep, milliDelay
                        invoke  keybd_event, VK_TAB,     0, KEYEVENTF_KEYUP, 0
                        invoke  Sleep, milliDelay


A left click on it sends a Ctrl-Tab to the browser.

I also have had success by modifying the sparcz telnet controlled server
to allow a it to Tab on a second networked PC,
but there are upsides and downsides.

Upsides :
   telnet program is on each PC
   an unlimited number of commands available
   small amount of code to receive a command

Downsides :
   starting the telnet program just to send keystrokes to a browser
   interface, typing in each command (spelling) versus clicking an icon/menu
   the personr has to know the commands, (a list of commands could be added)
   one person at a time can connect, also they have to disconnect for someone else to use it

Possible solutions:
  some other protocol that doesn't create an ongoing connection such as QOTD or HTTP
  telnet code to make the connection, send the key combo then disconnect

I haven't found code to create a client for QOTD or telnet, or code for a QOTD or HTTP server.

Any ideas, code ?

The attached code:
  Tabtray.asm, the system tray program to switch between a local browser's tabs (configured for firefox)
  TabSprcz.asm, the telnet based server that will do the same (commands forward, refresh, backward, bye)

[attachment deleted by admin]

jj2007

If the two pc's are connected over a network, you might let the local app poll (e.g. once per second) the time stamp of a remote file containing instructions.

dsouza123

Thanks jj2007

That is a different way!  Have the local  program write to a remote file then have the remote
PC check for the time stamp and/or added content.  I think that would require a network share.

For ease of setup and use, sticking with a web based protocol in this case is probably best.

jj2007

Quote from: dsouza123 on June 30, 2008, 11:14:54 AM
I think that would require a network share.

> I also have had success by modifying the sparcz telnet controlled server
to allow a it to Tab on a second networked PC,

So the other pc is not networked? Sorry, I misunderstood...

dsouza123

You were  correct, all the PCs in the room are networked (tcp/ip),
including the one that controls the wall mounted monitor,
so anyone should be able to switch the browser tabs from their desk.

If a standard web protocol like telnet or http were used even if someone
used a different OS they could still send a command to the Tab server.

I am still searching for code, what are some good search terms to use ?

jj2007

Quote from: dsouza123 on June 30, 2008, 09:22:57 PM
if someone used a different OS they could still ...
... write to a file on the network, and let the wall monitor check the time stamp, and let it act if it differs from the last one?