Seon internet job sharing

From Seon
Jump to: navigation, search

Seon Enterprise offers a functionality to share Seon jobs via a simple "share" function. With this function enabled, an Seon Webaccess user may share an Seon job via email to a given destination for a given timeframe, optionally secured with a password.

Requirements

For this feature, you need:

  • Seon Enterprise license
  • Seon Release 2015-03-19 or newer installed
  • properly configured mail transfer agent for mailing purposes (for Seonvirtual users, see the documentation Seon VMware virtualized image - mail configuration)
  • PHP 5.3.7 or newer for security options

Configuration

In order to enable the feature, navigate in the administrative web interface to "Configuration" -> "Seon Enterprise" -> "Webaccess":

Google ChromeScreenSnapz190.png

By default, the option is disabled. The configuration options have the following meanings:

  • External Seonapi URL: Seon Webaccess offers a secured Seonapi implementation (in a seperate directory, "webaccess/seonapi/index.php"), which needs to be available to external communication partners. Many customers offer Seon Webaccess to external partners, these may offer the subdirectory without problems. Side note: using Apache & mod_rewrite, you can write specific URL rules which have a nicer name for external partners.
  • Mail sender address: With this optional setting, you can define the SMTP "From:" field in the sent mail.
  • Mail templates (german & english): Absolute path to a file containing the text for the sent mail. See below for usable variables in this mail text.
  • Send as HTML: the generated mail will be sent as HTML email.
  • Mail subject (german & english): The mail subject.
  • Error page: A valid HTML body code which will be displayed to a user who tries to access the service without proper link or with an invalid password.

Mail templating

For the above mentioned "Mail template file" (available in german and english), the content of the file will be interpreted and variables will be substituted with actual values. The following variables are available:

  • #link#: The dynamic http(s) link to the shared job.
  • #firstName#: The given name of the user initiating the sharing process.
  • #lastName#: The family name of the user initiating the sharing process.
  • #desc#: A string combining last name and given name, separated by a comma and a space character (i.e. "Koch, Harald")
  • #telephone#: The telephone number of the user initiating the sharing process.
  • #fax#: The facsimile number of the user initiating the sharing process.
  • #email#: The email address of the user initiating the sharing process.
  • #country#: The country name of the user initiating the sharing process.
  • #department#: The department name of the user initiating the sharing process.
  • #location#: The location name of the user initiating the sharing process.
  • #company#: The company name of the user initiating the sharing process: if a longname is configured, the longname will be used, otherwise the shortname will be used.

The sent mail will be encoded in UTF-8 characters.

The example for this documentation is based on this mail template:

Sehr geehrter Adressat,

#firstName# #lastName# (#email#) hat Ihnen Daten zur Verfügung gestellt:

#link#

Ihr Seon Enterprise

User interaction

Users can share any viewable jobs where the files are still available (say: archived jobs cannot be shared, since their data files are not available). If a job is downloadable, it is shareable.

Sharing is done in the job detail view. If sharing is enabled, a button appears in the toolbar:

Google ChromeScreenSnapz191.png

The language of the shared job depends on the user's language in Seon Webaccess:

  • If the user is using the german web interface, the german mail will be sent.
  • If the user is using another language, the english mail will be sent.

After clicking on the button, the following window appears:

Google ChromeScreenSnapz192.png

The user has to enter a valid email address. Optionally, he can assign a password for this shared job. In this case, both password must be the same. The password is hashed securely and not saved in plain text in the database, so later-on recovery is impossible!

The timeframe for availability of this shared link is configurable, by default a timeframe of 48 hours is selected.

After submitting the shared job, the user gets an informational window:

Google ChromeScreenSnapz193.png

If a password was supplied, the user is informed that this password must be communicated to the data recipient.

Recipient's view

The job recipient obtains the link to the job via the configured email template. An example could be:

MailScreenSnapz001.png

The link in this email contains a hash which represents the shared job.

After clicking on the link, Seon Enterprise offers the data of the file. If an authentification password is configured, the user must prompt his password into a webbrowser prompt field:

FirefoxScreenSnapz050.png

The text "Passwort" depends on the language of the shared job:

  • For a german shared shared job (say: user is logged in Seon Webaccess with german language, the mail is sent in german): the text says "Passwort"
  • For all other languages, the text says "Password"

Automatic share expiration

The running send queue daemon takes care about expired job shared and deletes them from the shared list.

Logging

Properly accessed jobs which are downloaded by users are logged in the plugin logs of the job:

Google ChromeScreenSnapz195.png

The log is dynamically build based on the information if the job is shared with a password or without a password.

The cleanup process of shared jobs is logged in the Seon's system log:

Google ChromeScreenSnapz202.png

Administration

If job sharing is active, a new menu entry appears in the administrative web interface in "Seon Enterprise jobs":

Google ChromeScreenSnapz196.png

With this menu entry, a list of all shared jobs is available:

Google ChromeScreenSnapz198.png

The information speak for itself:

  • With the trash icon button, you can delete an entry.
  • The job number is the referenced job.
  • User: the initiator of the shared job. This field is clickable in order to administrate the user directly.
  • Valid until: the date of expiration of the job share.
  • Hash: the unique share hash, which is also included in the link contained the email.
  • Password protected: this read-only checkbox shows if the initiator of the job share has given a password.
  • URL: The actually available URL to access this shared job. The link is dynamically build upon the above mentioned configuration URL.
  • Email: the addressed email for the share link.
  • Language: the initiator's user language.


Deleting an entry will be logged in the job's plugin logs:

Google ChromeScreenSnapz201.png