Chat-Button in HTML-Layer einbinden

Wenn Sie Ihren yalst-Einbindungscode/Chat-Button in einer HTML-Layer plazieren (also irgendwo zwischen den HTML-Tags <div> und </div>), kann es bei älteren Kauflösungen passieren, daß auf Ihrer Webseite ein weißes Rechteck zu sehen ist, welches je nach konkreter Position das Design stören kann. Ursache ist eine weitere Layer aus dem yalst-Einbindungscode, die wir z.B. für Chat-Einladungen, Mitteilungen oder Umfragen verwenden.

In solchen Fällen müssen Sie zwei Einbindungscodes pro Seite verwenden. Einer (Code 1) ist dann nur für die Ausgabe des Buttons zuständig, der andere (Code 2) übernimmt das Besucher-Monitoring, die Chat-Einladungen usw. Die beiden Codes unterscheiden sich durch Ihre jeweiligen Parameter.

Ersetzen Sie in den folgenden Beispielen bitte <Ihre yalst-Site> durch die Nummer Ihrer Site (wird u.a. in der Operator-Konsole oben angezeigt), z.B. 27000-1. Bei Kauflösungen müssen Sie rd.livesupportserver.de durch die Domain Ihrer yalst-Installation ersetzen.

Code 1:

  • zur Anzeige des Chat-Buttons
  • kommt in die Layer, in der der Button erscheinen soll

<script language="JavaScript" src="http://rd.livesupportserver.de/yalst/yalst.js.php?site=<Ihre yalst-Site>&amp;count=no" type="text/javascript"></script>

Code 2:

  • für das Besucher-Monitoring
  • kommt unmittelbar vor </body> der jeweiligen Seite

<script language="JavaScript" src="http://rd.livesupportserver.de/yalst/yalst.js.php?site=<Ihre yalst-Site>&amp;button=no" type="text/javascript"></script>

Ab yalst-Version 7.5, Release 7.503 (vom 30.12.2009), sollten keine störenden Rechtecke mehr in einer Webseite zu sehen sein. Allerdings kann es durch eine ungünstige Layer-Schachtelung immer noch passieren, daß Chat-Einladungen, Mitteilungen, Umfragen oder Banner an einer ungeeigneten Position auf der Seite erscheinen.

Daher empfehlen wir bei der Plazierung von Chat-Buttons in einer HTML-Layer nach wie vor die zuvor beschriebene doppelte Einbindung.

Registrierte Benutzer per API via PHP hinzufügen

Registrierte Benutzer sind Besucher Ihrer Website, an die Sie spezielle Zugangsdaten (Benutzername und Kennwort) für den Live-Support vergeben haben. Sobald ein solcher Benutzer angelegt wurde, erscheint im Startfenster des Live-Supports die Schaltfläche [Chat für registrierte Benutzer], über die der jeweilige Besucher zu einem entsprechenden Anmeldefenster gelangt, in das diese Zugangsdaten eingegeben werden müssen. Support-Anfragen registrierter Besucher werden in der Operator-Konsole besonders gekennzeichnet. Somit wissen Sie genau, welche Person „am anderen Ende des Chats“ zugegen ist, was bei „normalen“ Anfragen ja nicht eindeutig bekannt ist. Registrierte Benutzer können mit einem Zeitguthaben versehen werden. Falls die eingestellte Zeit „abgechattet“ ist, kann dieser Benutzer keine neuen Chats mehr initiieren.

Registrierte Benutzer werden standardmäßig über den yalst-Kundenbereich über ein entsprechendes Formular hinzugefügt. Dieser Vorgang kann jedoch über die integrierte Programmierschnittstelle (API) automatisiert werden, so daß z.B. aus einem Besucher, der sich auf Ihrer Website anmeldet, automatisch ein registrierter yalst-Benutzer werden kann. Das PHP-Script, um einen Benutzer hinzuzufügen, könnte etwa so aussehen:

<IHRE YALST-DOMAIN> Domain Ihres LiveSupport-Servers
<IHRE YALST-SITE> Site Ihres LiveSupport-Zugangs (z.B. 1-1)
<IHR API-KENNWORT> Kennwort für API-Zugriffe (wird in Ihrem Kundenbereich festgelegt)

<?php
include("xmlrpc.inc.php");
$passwd = md5("<IHR API-KENNWORT"); // wird im yalst-Kundenbereich festgelegt
$site = ("IHRE YALST-SITE"); // z.B. "27000-1"
// Daten des neuen Benutzers
$benutzer = "test";
$kennwort = "Yalst5";
$beschreibung = "Testbenutzer, per API hinzugefügt";
// API-Funktion aufrufen
$result = XMLRPC_request('<IHRE YALST-DOMAIN>','/yalst/api.php','reguser.add ',array(XMLRPC_prepare($site),XMLRPC_prepare($passwd),XMLRPC_prepare($ benutzer),XMLRPC_prepare($kennwort),XMLRPC_prepare($beschreibung),XMLR PC_prepare("-1")));
?>

Die Include-Datei „xmlrpc.inc.php“ erhalten Sie unter
http://keithdevens.com/software/xmlrpc

LiveSupport-Status (online/offline) über PHP-Script ermitteln

Sie können direkt von Ihren Webapplikationen – z.B. PHP-Skripten – aus feststellen, ob Ihr Live-Support online oder offline ist. Dies kann z.B. sinnvoll sein, wenn Sie einzelne Inhalte Ihrer Seite danach ausrichten möchten, ob Online-Beratung zur Verfügung steht oder nicht.

Dazu stehen Ihnen zwei Möglichkeiten zur Verfügung, der Aufruf eines PHP-Skripts (online.php), welches den Online-Status als Zahl zurückgibt, oder die Nutzung einer API-Funktion.

Bitte ersetzen Sie in den folgenden Beispielen (für PHP, selbstverständlich lassen sich vergleichbare Abfragen auch in anderen Sprachen formulieren) diese Platzhalter durch Ihre entsprechenden Daten:

<IHRE YALST-DOMAIN> Domain Ihres LiveSupport-Servers
<IHRE YALST-SITE> Site Ihres LiveSupport-Zugangs (z.B. 1-1)
<IHR API-KENNWORT> Kennwort für API-Zugriffe (wird in Ihrem Kundenbereich festgelegt)

1. online.php

http://<IHRE YALST-DOMAIN>/yalst/online.php?site=<IHRE YALST-SITE>

Als Ergebnis wird eine einzige Ziffer zurückgegeben, die dann ausgewertet
werden kann:
1 – es wird zur Zeit kein Live-Support angeboten
2 – Live-Support wird angeboten
0 – es ist ein Fehler aufgetreten (z.B. unzulässiger Aufruf dieser Seite)

In PHP könnte man das so formulieren:
function yalst()
{ $fd=@fopen("http://<IHRE YALST-DOMAIN>/yalst/online.php?site=<IHRE YALST-SITE>","r");
if ($fd)
{
$buffer=trim(fgets($fd,4096));
@fclose($fd);
if ($buffer==2)
{return true;}
else
{return false;}
}
else
{return false;}
}

Durch Aufruf der Funktion yalst() können Sie dann ermitteln, ob Ihr LiveSupport online ist.

2. yalst-API

Die eingebaute Programmierschnittstelle, welche in Ihrem yalst-Kundenbereich dokumentiert ist, bietet selbstverständlich auch eine Funktion, um an diese Information zu gelangen, und zwar

„system.isOnline“

In PHP könnte man das in etwa so formulieren:

include("xmlrpc.inc.php");
$passwd = md5("<IHR API-KENNWORT");
$result =
XMLRPC_request('<IHRE YALST-DOMAIN','/yalst/api.php','system.isOnline',ar ray(XMLRPC_prepare("<IHRE YALST-SITE>"),XMLRPC_prepare($passwd)));
if ($result[1])
{echo "online<br>";}
else
{echo "offline<br>";}

Die Include-Datei „xmlrpc.inc.php“ erhalten Sie unter
http://keithdevens.com/software/xmlrpc

Kauflösung: Was tun bei Datenbankfehlern?

Einen Datenbankfehler zeigt yalst in der Regel durch folgende Fehlermeldung an:

„Zur Zeit kann keine Verbindung zu unserem Datenbank-Server hergestellt werden. Wir bitten um Verständnis. Bitte versuchen Sie es später noch einmal!“

Zusätzlich erhalten Sie eine Fehlernummer und den Namen des PHP-Skriptes, bei dem der Fehler aufgetreten ist. Diese Angaben helfen dem yalst-Produktsupport, die Datenbankanweisung zu identifizieren, die zu dem Fehler führt.

Die Original-Fehlermeldung Ihres MySQL-Servers finden Sie in der Textdatei /yalst/log/error.log (oder admin.log bei Fehlern im Kundenbereich). Sie gibt Aufschluß über die Ursache des Problems.

In vielen Fällen handelt es sich bei solchen Fehlern um beschädigte MySQL-Indexdateien (die beispielsweise bei einem Systemabsturz entstehen können). Diese können mit den gängigen MySQL-Werkzeugen wie z.B. phpMyAdmin oder direkt mit dem MySQL-Repair-Befehl (http://dev.mysql.com/doc/refman/5.1/de/repair-table.html) behoben werden.

Sie können uns Ihre Log-Dateien auch zusenden, indem Sie – in Absprache mit unserem Produktsupport – aus yalst-Setup (/yalst/setup) eine Diagnose-Mail versenden (eine entsprechende Schaltfläche finden Sie im Kopfbereich jeder Setup-Seite).