2015.05 2016.06

Die Broadcasting-Komponente (broadcasting)

Beschreibung der Komponente zum Erzeugen von Nachrichtenfenstern in der Web-Anwendung

Allgemeines

Dieses Modul ergänzt die Anwendung um die Funktionalität einer Runtime-Anwenderinformation. Als berechtigter Nutzer oder Administrator können Sie Nachrichten online generieren und versenden.

Zugriffsrechte

Das Broadcasting-System ist durch eine Zugriffsregel geschützt. Nur berechtigte Nutzer dürfen diese Funktionalität ausführen. Hierfür ist das PRIVILEG broadcasting mittels des CLI-Kommandos load permissions data from file {file} in die Zugriffsliste einzutragen. Nachfolgend eine Beispielkonfiguration als XML-File.

<?xml version="1.0" encoding="UTF-8" ?>
<mcrpermissions
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation="MCRPermissions.xsd"
  xmlns:xml="http://www.w3.org/XML/1998/namespace"
>
  <mcrpermission name="manage-broadcasting"
    description="Administration rights for the session system"
    ruledescription="For administrators only">
    <condition format="xml">
      <boolean operator="or">
        <condition value="admin" operator="=" field="group"/>
      </boolean>
    </condition>
  </mcrpermission>
</mcrpermissions>

Konfiguration

Die Grundkonfiguration zum Versenden der Nachrichten ist in der Datei mcr-module-broadcasting.xml gespeichert. Sie stellt eine Voreinstellung dar, welche zum Ausführungszeitpunkt interaktiv verändert werden kann.

<?xml version="1.0" encoding="UTF-8"?>
<mcr-module-broadcasting>
  <!-- on | off -->
  <!-- on = client will autmatically listen for new messages by AJAX -->
  <!-- off client won't listen for new messages -->
  <power>on</power>

  <!-- Seconds, in which intervall the client will ask for new messages -->
  <refreshRate>60</refreshRate>

  <!-- true | false -->
  <!-- true = User will get the same message again, if a new session is opened, even though the user already received
    the message. This should be used, if a user login will be used by more than one person -->
  <!-- false = Each user will get a message only on times, indepently on the session. -->
  <sessionSensitive>false</sessionSensitive>

  <message.header>Sehr geehrte Mitarbeiter</message.header>
  <message.tail>Ihr Administrator</message.tail>
  <!-- <group/> &| <user> -->

  <!-- allowGuestGroup ("true|false")  if set to true all "gast" users are listen on the channel, if "false" only
    user != "gast" are listen -->
  <receivers allowGuestGroup="false"/>

  <!-- <from> & <to> (ISO 8601) are NOT supported yet, -> use @send -->
  <!-- @send = ever | never --><!-- ever = send continuasly -->
  <!-- never = do NOT send -->
  <onAirTime send="ever">
    <from>2015-10-20T10:17:42.920Z</from>
    <to>2015-10-20T10:17:42.920Z</to>
  </onAirTime>

</mcr-module-broadcasting>

Einbinden in die Anwendung

Der Aufruf des Broadcasting-Modules sollte aus der Navigation der Anwendung heraus erfolgen. Hierfür ist in der navigation.xml folgender Eintrag zu tätigen.

<item
  href="/servlets/MCRBroadcastingServlet?mode=getReceiverList"
  type="extern"
  target="_self"
  style="normal"
  replaceMenu="false"
  constrainPopUp="false">
  <label xml:lang="de">Nachrichten</label>
  <label xml:lang="en">Broadcasting</label>
</item>

Der Include der benötigten XSLT-Stylesheets erfolgt in der Datei generatePage.xsl.

<xsl:include href="mcr-module-broadcasting.xsl" />

Als letztes ist dafür zu sorgen, dass der Listener in alle Webseiten im HEAD-Bereich eingetragen wird. Dazu ist das head-HTML-Tag um diese Zeile zu ergänzen.

<xsl:call-template name="module-broadcasting.getHeader"/>

Informationen zu Benutzung des Modules finden Sie im MyCoRe User Guide.

 Kathleen Neumann, Jens Kupferschmidt - 2015-11-05