Difference between revisions of "Launching Display Screens"

From TMS Support Wiki
Jump to navigation Jump to search
Line 105: Line 105:
Microsoft Edge sometimes needs an additional switch (--edge-kiosk-type=fullscreen) to stop it opening in a new tab in an existing window:
Microsoft Edge sometimes needs an additional switch (--edge-kiosk-type=fullscreen) to stop it opening in a new tab in an existing window:


<blockquote><nowiki>"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --kiosk --edge-kiosk-type=fullscreen --window-position=1921,0 "http://YourPTSServer/PTSWeb/?User=OUTDISP&Password=pharmacy&IgnoreWindowsUsername=True"</nowiki></blockquote>
<blockquote><nowiki>"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --kiosk --edge-kiosk-type=fullscreen --window-position=1921,0 "http://YourPTSServer/PTSWeb/?User=OUTDISP&Password=pharmacy&IgnoreWindowsUsername=True"</nowiki>
[[Media:PTSEdgeDisplayShortcut.zip|Download this shortcut example]]
<i>Note: this download will not work without some reconfiguration. At the very least, you will have to amend the URL shortcut as described on this page.</i></blockquote>


Now that you have constructed the path for your shortcut, simply right-click on the desktop, go to New > Shortcut and enter the path into the Location field and then give the shortcut a name and save it. The name of the shortcut isn't particularly important. Double click the file to verify that it opens up in the way you want it too.
Now that you have constructed the path for your shortcut, simply right-click on the desktop, go to New > Shortcut and enter the path into the Location field and then give the shortcut a name and save it. The name of the shortcut isn't particularly important. Double click the file to verify that it opens up in the way you want it too.

Revision as of 12:05, 15 February 2024

One of the most useful ways of making use of the data that PTS collects is to output the progress of ongoing prescriptions to external display screens, also known as status screens. The types of display available are Outpatient, Dispensary and Delivery.

Setting up the TV

Installing, mounting and connecting the TV is a discussion with your estates department.

We're often asked if the TV requires an ethernet connection.

  1. If the TV is a Smart TV (see next section) and is allowed onto the internal network then there is the possibility that a network point would be useful. By and large people connect these screen up via a PC so it's therefore the PC that requires a network connection rather than the TV, and estates will have to route a HDMI cable to the PC.
  2. That being said if they would prefer the TV to be connected to the PC through HDMI-over-ethernet (e.g. for very long cable runs) then that is supported.

Once the TV is up and running it will likely just be a case of setting the input to the correct HDMI port and turning the volume up.

Some TVs come with overscan enabled which will crop the edges of the screen. Look in the aspect ratio menu for whichever option disables overscan - it's likely to be named "Just Scan", "Screen Fit", "Full" or similar. Google could help here if you provide your TV brand or model number.

Smart TVs

Most smart TVs now come with a built in web browser. If you can connect the TV to your internal network (either wireless or wired) then you can set the web browser's home page to the appropriate URL (discussed below) and from then on simply load the web browser application on the TV to open the chosen display screen.

This can be a lot easier to manage than a PC, but unfortunately some IT departments do not allow such devices onto the network. Connecting the TV to a guest network will not work - it needs to be able to connect to your PTS server.

While you're testing this out, just check whether the TV can reach your PTS login screen with the same URL that you use inside dispensary. You don't have to log in, just being able to reach the login page means you can be relatively sure that the TV is connected properly.

Setting up the PC

It is recommended that you use a 1920x1080 resolution for the display, and ensure the "scale" setting in your PC's display settings is configured to 100%. This setting is also known as "change the size of text, apps and other items", or "make text and other items larger or smaller".

Different resolution and scale settings can make the text too small to read from a distance or lead to formatting issues, but all screens and circumstances are different.

Dedicated PC

If you can assign a PC to just this task then simply connect the PC to the external monitor. Some Trusts are using cost effective low powered stick PCs for this purpose.

Multiple monitors

An example of how to set up the display settings. Notice that monitor 2, the display screen, is arranged to the right of monitor 1.

Consult with your IT department and have them set up the secondary monitor in "extend desktop" mode.

We've identified a few circumstances where it is not be possible to launch anything on a secondary monitor automatically if the secondary monitor is arranged to the left of the main monitor in Windows display settings. No matter what you do the window will open on the primary display. If you encounter this problem, consider re-arranging the monitor layout so the secondary monitor is to the right of the primary display, even if that does not make sense in terms of the actual physical layout. We appreciate this is odd. This issue has affected all screen launching methods we have tested with.

Setting up PTS

It is strongly recommended that you set up dedicated user accounts specifically for this purpose as the username and password will need to be shared around and will be stored on the PC as plaintext. You should create a user account for each screen you want to set up. Consider locking down the user permissions so the accounts can do very little else.

The process begins with creating an appropriate user view that is configured to show the prescriptions that are relevant for the display you are trying to set up. See the setting up user views page for more detailed information, but suffice to say the user views are set up almost exactly like a normal home page user view, just the Type of View setting should be set to Outpatient Display, Dispensary Display, or Delivery Display instead of Standard View. Make sure the user view is the default, or ideally the only user view for the user account in question.

Test logging in with the new account. If it loads up the desired status screen correctly move on to the next section.

Constructing URL for a Smart TV

See the "PTS URL with autologin parameters" section below - the Smart TV URL is constructed in the same way. At this point you shouldn't need to refer to anything else in this guide.

Once the TV is loading the status screen correctly consider setting the URL as the home page. From then on you would only have to open the web browser to load the status screen.

Setting up a desktop shortcut

Next you will set up a desktop shortcut icon that directs to the newly created view. The first step is to construct the shortcut path.

The shortcut will be constructed like this:

"Path to web browser application" --kiosk --window-position=HorizontalOffset,VerticalOffset "PTS URL with login parameters"

These details are discussed below.

Path to web browser application

e.g. "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"

The physical path to the chosen web application executable. In the example Microsoft Edge is selected, but Chrome is also supported. Safari is not included in our testing but is likely to work. Internet Explorer will probably have issues.

If the PC hosting the screen will also be used as a normal PTS terminal it's a good idea to use two different web browser applications for this so the two sessions don't conflict with each other.

Kiosk switch for launching in full screen

--kiosk

Including --kiosk instructs the browser to load the web page in full screen.

Microsoft Edge sometimes needs an additional switch to stop it opening in a new tab in an existing window:

--kiosk --edge-kiosk-type=fullscreen

Window position switch for launching on a secondary monitor

e.g. --window-position=1921,0

--window-position is the pixel offset from the top left corner of the primary display where the new window will appear. The default is 0,0.

For our purposes this can be used to open the page on a secondary monitor. This is done by specifying the horizontal offset to be one pixel greater than the horizontal resolution of the primary monitor. For example if the primary monitor is a 1920x1080 display, specify --window-position=1921,0 to open the page on the secondary monitor.

If you have a more elaborate monitor arrangement you should still be able to get the status screen to appear where you want it to by experimenting with both of the window-position values. Trial and error is likely to be the way forward.

Either set the value to 0,0 or omit the switch entirely to have the screen open on the main display.

PTS URL with autologin parameters

e.g. "http://YourPTSServer/PTSWeb/?User=OUTDISP&Password=pharmacy&IgnoreWindowsUsername=True"

Here you specify the URL to your PTS installation along with a username and password passed through as a query string along with a command to ignore the Windows username.

  1. YourPTSServer
    The name of your PTS server. This is the same server name that you use to access PTS on all the PCs in the pharmacy.
  2. PTSWeb
    The name given to your PTS application during initial installation. This is normally PTSWeb, but again it will be what all the pharmacy PCs are pointed to.
  3. User
    The username of the display screen user.
  4. Password
    The corresponding password.
  5. IgnoreWindowsUsername
    Set this to True. This instructs PTS not to attempt to login based on the Windows user account, like it might do normally.

When first setting this up you may want to test your URL in a normal web browser session to make sure it loads the correct view, before worrying about everything else.

Completed shortcut example (Chrome)

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --kiosk --window-position=1921,0 "http://YourPTSServer/PTSWeb/?User=OUTDISP&Password=pharmacy&IgnoreWindowsUsername=True"

Download this shortcut example

Note: this download will not work without some reconfiguration. At the very least, you will have to amend the URL shortcut as described on this page.

Completed shortcut example (Edge)

Microsoft Edge sometimes needs an additional switch (--edge-kiosk-type=fullscreen) to stop it opening in a new tab in an existing window:

"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --kiosk --edge-kiosk-type=fullscreen --window-position=1921,0 "http://YourPTSServer/PTSWeb/?User=OUTDISP&Password=pharmacy&IgnoreWindowsUsername=True"

Download this shortcut example

Note: this download will not work without some reconfiguration. At the very least, you will have to amend the URL shortcut as described on this page.

Now that you have constructed the path for your shortcut, simply right-click on the desktop, go to New > Shortcut and enter the path into the Location field and then give the shortcut a name and save it. The name of the shortcut isn't particularly important. Double click the file to verify that it opens up in the way you want it too.

From now on you can now either use this shortcut to manually open the status screen, or continue on to the next section for how to get it to load automatically.

If kiosk mode prevents you from closing the page back down, either Alt+Tab or Ctrl+Alt+Del to move away from it.

Getting Windows to load the shortcut automatically

Now that the shortcut is created you may want to configure Windows to load the shortcut automatically when the PC is turned on or logged in. This part of the process may require admin access to the PC. If IT need to get involved, explain the task first as they may have their own methods for getting things to load automatically.

That notwithstanding, the simplest normal way to get a file to boot automatically is to add it to the all users Startup folder in Windows. This directory is normally hidden but you can find it by running this command in an Explorer window:

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

Simply drag and drop the shortcut file into the directory, then reboot the PC. Now when you or someone else logs in to Windows, the status screen should load on the correct monitor automatically.

Allowing sound

Most modern web browsers deliberately block web pages from auto-playing sound when the user isn't interacting with the page as a safety measure. Unfortunately this conflicts with how these status screens are designed to be used.

Allow auto-play in Edge

Click on the three dots at the top right corner of Edge and open Settings. From the sidebar panel, click on the Cookies and Site Permission and open the Media Autoplay within Site Permissions. You can either allow autoplay for all sites (recommended) or allow auto-play on a per-site basis.

Allow auto-play in Chrome

Add this argument to the Chrome shortcut after the --kiosk argument:

--autoplay-policy=no-user-gesture-required

In some cases this is not sufficient if it conflicts with a pre-existing user policy. You should consult with your IT department about the problem, but in the event that you have full control of the PC, it's possible to modify the registry to override the policy.

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome

You may have to create the "Google" and "Chrome" keys yourself. Once inside the Chrome 'folder', create a DWORD 32-Bit Value, call it "AutoplayAllowed", and set the value to 1 (true). You should now restart the PC.

Still no sound?

At this point you should consider whether the PC is outputting sound to the correct output device, and that the TV is not muted and things like that. It's not unusual for Windows to default to the wrong audio settings; this is because it is less common to use a secondary screen as the audio output device.

The display screens have built in YouTube connectivity for showing video messages to patients in accordance with the customisable Status Screen Messages. If the PTS server does not have outside internet connectivity, not only will this not work but the failed connection attempt can cause a noticeable impact to performance. This will happen whether the status screen message actually calls for a video or not; the YouTube API is embedded in the page.

The issue is often first noticed when the screen fails to call out ticket numbers, or moves between pages slowly, or just generally seems to be struggling.

To tell PTS not to attempt any remote connections, go to Setup > Application Settings, locate the "skip checking if PTS is online" setting (OFFLINE) and set it to Yes.

More performance tweaks can be found here.