Code Monkey home page Code Monkey logo

palma's Introduction

PalMA – share a team monitor

Copyright (C) 2014–2021 Universitätsbibliothek Mannheim

Authors: Alexander Wagner, Stefan Weil, Jörg Mechnich, Dennis Müller (UB Mannheim)

This is free software. You may use it under the terms of the GNU General Public License (GPL). See docs/gpl.txt for details.

Parts of the software use different licenses which are listed in file LICENSE.

Build Status Codacy Badge Scrutinizer Code Quality

Summary

PalMA enables people to share several contents on one monitor. Users can display PDF files, office files, images, videos, websites and or computer screens in real time (up to four entries simultaneously). Everything can be controlled via a website, so it's perfectly usable for all kinds of (mobile) devices.

PalMA in Use

PalMA in use

PalMA UI

PalMA UI

Installation

See INSTALL.md for details.

Mannheim University Library develops and installs PalMA on mini PCs running the stable releases of Debian GNU Linux and Raspbian. Other Linux based hardware and software combination can also be used, but might require some smaller modifications.

Hardware requirements

The team monitor (with adequate size and resolution) is connected to a computing device (usually a mini pc) running Linux. Hardware requirements for the pc are relatively low. For reasonable performance we recommend something at least as strong as a Raspberry Pi 3.

A minimal setup can be built with an ARM based mini pc like the Raspberry Pi for less than 100 EUR. It can drive monitors with HDMI and full HD resolution (1920 x 1080 pixel), but is slow and only offers limited memory for viewer applications.

A setup with good performance can be built with an Intel NUC for around 200 EUR. It also provides HDMI and resolutions up to 1920 x 1200 pixel.

A high end setup uses a mini pc with Intel Core i5, more RAM and a fast solid state disk (SSD). HDMI allows full HD resolution, display port (DP) even larger resolution.

Client Software

Microsoft Windows and Mac OS X clients need additional software if users want to share their desktop. These products were tested successfully with desktop computers and notebooks:

  • UltraVNC – http://www.uvnc.com/ (GNU General Public License) This is a free VNC server for Windows. Using the Single Click version UltraVNC SC, it is possible to address preconfigured displays without any installation.

  • VineServer – https://github.com/stweil/OSXvnc (GNU General Public License) This VNC server is needed for MacBooks with retina display.

  • x11vnc – http://www.karlrunge.com/x11vnc/ (free) This VNC server is included in most Linux distributions.

It is currently not possible to share the desktop of mobile devices (smartphones / tablets).

Bug reports

Please file your bug reports to https://github.com/UB-Mannheim/PalMA/issues. Make sure that you are using the latest version of the software before sending a report.

Contributing

Bug fixes, new functions, suggestions for new features and other user feedback are much appreciated.

The source code is available from https://github.com/UB-Mannheim/PalMA. Please prepare your code contributions also on GitHub.

Acknowledgments

This project uses other free software:

palma's People

Contributors

aleksandrairt avatar alexanderwe avatar ccantuci95 avatar codacy-badger avatar dennmuel avatar hellonoel avatar jmechnich avatar jwwk avatar kba avatar kriegerlukas avatar lenaburger avatar lenatech avatar mahaesin avatar marduzca avatar mmsami avatar morph3o avatar ncvv avatar oaksuen avatar polina-pot avatar reretter avatar sarahkrieg avatar simonada avatar siratscha avatar stweil avatar takhan89 avatar teadmiseds avatar voelpa avatar zabdelka avatar zhaoyang868686 avatar zuphilip avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

palma's Issues

File Handler Issues

Sometimes the image zoom controls do nothing while the arrows control the zoom. In Chromium on Win7 sometimes the zoombuttons control arrow up and down. Coincidence?

Show all uploaded files

Implement a way to see and download all uploaded files even if already removed from the display. Maybe one could somehow access the palma upload directory.

Original note:
When changing control interface to control interface with tables (share, upload, url) Perhaps use a forth tab (files) to display the originally uploaded files (xls, odt, ...)

Clean up FAQ section

If VNC download and PIN gets removed in help & faq section, the contents of this section have to be customized according to the new content.

Refit documentation and help

The new release requires us to update the documentation (github wiki) and the user help (help section within palma as well as pdf files on the webpage).
Related to #45

Original note:
Customize documentation when changing interfaces

Test and implement new image filehandler

Shared pictures are opened with eog and displayed with a lot of additional information, so they don't fill up their window completely. feh has been mentioned as a replacement, which is to be tested

Integrate Reporting Framework

In order to improve palma we could collect some data about its usage. We would have to define key values and find a tool to evaluate the most used functions and time periods.

Increase font-size

On large screens there is much space between the elements. These could be a bit bigger. Also the control buttons are hard to press an small devices.

Fix display in IE

In IE the tab buttons' background color is grey instead of red. (Same grey as the text, so you cannot read anything...)
Also the windowcontrolbuttons are mostly not rounded and have a background color that shouldn't be there.

Improve communication with PalMA users

Currently there is only random feedback from

  • institiutions which use PalMA
  • PalMA users at Mannheim University Library

The list of institutions using PalMA (https://github.com/UB-Mannheim/PalMA/wiki) is also very incomplete.
I invite members of those institutions to add their institution to that list.

Do we need more dedicated communications channels like mailing lists, twitter, ...? Which ones?

Dropzone Update

Advanced functionalities should be tested by updating the integrated Dropzone Javascript framework, e.g. for alert messages when uploading big files.

Language button

Should we add a button to change the language or do we want to keep it conditional to the browser language?

Find replacement for RealVNC server (macOS)

Desktop sharing requires a VNC server with support for reverse connections.

For macOS, the RealVNC server was the only solution available when we started with PalMA, but recent versions of RealVNC (version 6 and later) obviously no longer support reverse connections ("Connect to Listening VNC Viewer").

Users can still install older versions of the RealVNC server (which is difficult), or they must find a way how to get a reverse connection with the latest version.

If we had a signed installer / binary for OSXvnc, it could replace the RealVNC server.

Simple download of desktop sharing tool

One button for downloading the desktop sharing client should be sufficient. The selection of the chosen client shall fit the user's operating system.
Perhaps it is a good idea to show the download button on the main screen, not only in help & faq section.

Add handler to rotate images

Images shot in landscape mode are displayed in portrait mode (or vice versa). So a handler to rotate contents by 90 degree would be helpful.

Change default browser to Firefox / Chromium

It might be a good idea to use one of the mainstream browsers like Firefox or Chromium as the browser component instead of dwb.

Dwb development is very sporadic, Debian updates even less frequent. That means that the WebKit engine embedded is not up-to-date anymore, which can lead to rendering problems and problems with security.

If the browser is required to be lightweight, single-window, keyboard-centric, then there are more actively maintained tools like uzbl or xombrero.

Change confusing icons

Screen icon for toggling visibility is confusing. Maybe the old eye would be a better choice, whereas this is already used for the vnc section. Maybe there is a better icon for that.
Also an icon indicating a loading process would be nice for file uploads that take a few seconds.

PDF files are downloaded and not displayed

When sharing a link to a PDF file, dwb tries to download the file instead of displaying it. We should implement an automatism to download and open the file or enable dwb itself to display the file.
Since dwb is said to be "outdated and insecure", should we take this opportunity to discuss an alternative?

Clean up control interface

The area below the monitor controls seems to claim to much space compared to the rest of the interface. It would be great if this area could be divided in a section with three (or more) tabs.

These tabs can contain the following elements, that already exist:

  • share
  • upload
  • url

PDF viewer controls

I think several enhancements for the zathura controls would be nice:

  • a possibility to show two pages next to each other
  • possibility to put in a page number to go to
  • a hint that skipping to the next page doesn't work with the "right" button, but with "next"

Controls not reloading in samsung internet app

On samsung tablet in internet app, the position controls do not reload after changing the screenlayout. (Except when they do, e.g. after adding further content...)
Also when deleting items, they do not disappear from the displaylist.

Users can't navigate through shared presentations

When users upload e.g. a PowerPoint file, they cannot navigate through the slides using the control buttons. The file is displayed with a sidebar showing the structure of the presentation - which is were the cursor is. Assumingly users expect the file to be launched in fullscreen presentation mode. Should we make this the default for this filetype?

Handle the unavailable screen sharing on mobile devices

On android devices you can download the linux screen sharing file, although this doesn't do anything on that platform.
Maybe one could display a default message, that screensharing is not available or not even display this section on the respective devices.

Redesign screensavers

Redesign screensavers to emphasize wireless aspect of usage. Maybe add a sequence of pictures to illustrate how the login process works.
Also we will try out new backgrounds on the PalMA station and on the user interface.

Minilayout icons not parallel

On samsung tablet in Chrome and "Internet" app as well as in safari on ipad, vertical minilayout icons are not perfectly parallel to each other. (Perhabs the br elementcauses this ...)

Can't show URLs with capital letters

URLs with capital letters are not displayed, because they don't match the regular expression that checks for valid urls.
On some mobile devices the autocorrection causes capital letters and it's quite a hassle for the user to get them to lowercase.

Fix and overhaul responsive design

The UI seems to be unfunctional on mobile devices at times. Anyway the responsive design must be adapted to the changes made in #58 and its depending issues respectively.

No url sharing because of screen keyboard and subtabs

On samsung tablet in landscape mode it is not possible to enter a url. The appearing keyboard changes the height of the screen so that the subtabs appear. Closing the keyboard leads back to the empty input field. This problem occurs on small screens of any kind of device.

Make it easier to find PIN

The PIN could be hidden and although be reachable through main interface, not only by entering the help & faq section.

Eastereggs

Psssst. Thinking 'bout some eastereggs. Funny lil' things happening while using PalMA.

Already ideas in mind, let us entertain and surprise you ;)

Screensaver gets killed on start

When PalMA starts screensaver.php gets called, but disappears immediately. This repeats a couple of times in a row before it finally stays up. This has happened on physical as well as virtual machines.
/tmp/Palma.log:

2017-05-30 10:00:34 start dwb with screensaver
palma: db file = /var/www/html/palma.db
palma: cmd=DISPLAY=:1 HOME=/var/www wmctrl -l, result=
Received SIGSEGV, trying to clean up.
Segmentation fault
2017-05-30 10:00:39 dwb was killed

Javascript not working in IE

In IE on Win7 sometimes you can only choose a screenlayout, when you have the web developer tools opened. Probably related to references to the console.
Checking out different branches shows, that this also happens in the master branch.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.