Telegram Site Helper 2.0 - Chat-Assistent für die Website basierend auf Telegramm



    Guten Tag. Mein Name ist Andrew.
    Letzten Sommer veröffentlichte ich das Projekt und den Artikel " Chat-Assistent für die Site mit Telegramm in 15 Minuten ". Die Idee des Projekts war es, einen Popup-Chat-Assistenten auf der Website zu implementieren , dessen Backend (für den Chat) der Telegramm-Messenger ist, der immer beliebter wird .

    Überraschenderweise gewann das Projekt schnell Sterne auf GitHub und ich erhielt Dankesbriefe und Bitten um Hilfe bei der Einrichtung von Leuten aus der ganzen Welt. Die Benutzer konnten das Skript auf ihrem Hosting nicht ausführen: Entweder wird set_time_limit (0) nicht unterstützt, dann ein 503-Fehler, dann werden die Pfade nicht korrekt angegeben.
    Die zweite Version des Skripts lässt sich viel einfacher installieren und basiert aufWebHooks .

    >>>> Link zum GitHub-Repository .

    Kurz gesagt, was ist das?


    Bild
    Für diejenigen, die den letzten Artikel nicht gesehen haben, wiederhole ich. Der Telegram Site Helper besteht aus einer Reihe von Skripten (PHP, JS), die einen Chat-Assistenten für Ihre Site implementieren (sodass Ihre Besucher / Kunden Ihrem Manager umgehend eine Frage im Chat stellen können). Der Manager erhält eine Nachricht im Telegramm-Messenger. Und dort kann er antworten. Das System eignet sich für Standorte, an denen kein sehr großer Kundenstrom besteht. Es gibt noch ein paar Unannehmlichkeiten: Alle Nachrichten aller Besucher werden in einem einzigen Chat an den Manager gesendet. Um eine Antwort auf die Besucher zu senden, muss der Manager zuerst die Auswahl „podchat“ durch Senden eines Befehls / chat_1234 , wie folgt aus :


    Was gibt's Neues


    Chatten Sie jetzt mit WebHooks


    Der Telegrammserver selbst sendet neue Nachrichten an Ihren Server.
    Der Skriptserver, der für immer im Hintergrund für Long Poll-Anforderungen an den Telegrammserver arbeitet, wird nicht mehr benötigt. Aber jetzt brauchen wir HTTPS (dies ist die Telegrammrichtlinie). Ein Zertifikat kann gekauft , kostenlos bei StartSSL erstellt oder selbst signiert werden.

    Für diejenigen, die nicht suchen möchten, die Befehle für das Terminal:
    So erstellen Sie eine CSR-Datei für StartSSL
    sudo openssl req -nodes -newkey rsa:2048 -keyout apache.key -out apache.csr

    So erstellen Sie ein selbstsigniertes Zertifikat
    sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout apache.key -out apache.crt


    Für die Installation wird nur eine Datei verwendet.



    Das Repository enthält nur eine Datei: telegram-site-helper-install.php ist das Installationsprogramm. Es werden die notwendigen Verzeichnisse erstellt, JS, CSS und zwei PHP-Dateien entpackt.
    Hier können Sie JS-Chat-Code generieren, der auf der Seite der Site eingefügt werden muss.
    Achtung: Skripte im Installationsprogramm sind in base64 kodiert
    Da base64 für viele Wordpress / Joomla-Website-Besitzer mit Vireninjektionen verbunden ist, lade ich alle paranoiden Personen ein, die Angst haben, den Inhalt von base64-codierten Skripten (z. B. mit diesem Dienstprogramm ) im Voraus zu studieren .


    Pop-up und eingebaute Chats, Stilisierung


    Chat kann gestaltet werden, ohne in CSS einzusteigen. Die Farbe des Rahmens, des Hintergrunds und der Schriftart kann direkt vom Installationsprogramm aus konfiguriert werden.

    Chat unterstützt auch zwei Anzeigemodi. Es kann in jedes andere HTML- Element eingebettet oder an eine der Ecken des Bildschirms " geklebt " werden. Chat ist offen , wenn Sie auf einem Standard - Beschriftung klicken, und vielleicht , wenn Sie auf einem beliebigen HTML - Element klicken

    , können Sie auch alle die Inschriften ändern ( „IM“, „Geben Sie Ihren Namen“, „Datei anhängen“ und andere).

    Dateiübertragung


    Jetzt können Client und Manager Dateien (Fotos und Dokumente) austauschen. Dateien werden auf dem Telegrammserver gespeichert und belegen keinen Platz auf Ihrem Hosting.


    JQuery wird nicht mehr benötigt


    Als sie mich das letzte Mal beschimpft haben, müssen Sie JQuery ziehen, um ein kleines Skript zu erstellen. Ich habe alles realisiert und dieses Mal habe ich alles in reinem JavaScript geschrieben.

    Funktioniert über Server Side Events oder LongPoll


    Der Chat auf der Site kann jetzt Updates von Ihrem Server nicht nur über Long Poll-Anfragen, sondern auch über Server Side Event-Broadcast empfangen (er funktioniert nur bei Hosting-Diensten, die set_time_limit (0) unterstützen, und es gibt keine Probleme mit der flush () -Funktion ).

    Wie zu installieren


    1. Melden Sie sich über SSH oder FTP bei Ihrem Server / VPS / Hosting an
    2. Erstellen Sie einen Ordner (bequemer im Stammverzeichnis der Site) und nennen Sie ihn beispielsweise "Telegramm-Site-Helper"
    3. Machen Sie ihr chmod (Zugriffsrechte) mindestens 0775 (der Installer wird Ordner und Dateien dort erstellen)
    4. Gießen Sie in diesen Ordner telegram-site-helper-install.php
    5. Führen Sie das Skript über https aus (zum Beispiel :) . Sie sollten Folgendes sehen:https://mysite.ru/telegram-site-helper/telegram-site-helper-install.php

    6. Wählen Sie die Sprache und klicken Sie auf "Installation starten"
    7. Erstellen Sie ein Kennwort für die Autorisierung von Managern und geben Sie es in das entsprechende Feld ein (der Manager gibt dieses Kennwort einmal für die Autorisierung mit dem Telegramm-Bot ein).
    8. Holen Sie sich das Token für den Bot von @BotFather und fügen Sie es (Token) in das entsprechende Feld ein:
    9. Wählen Sie, wo Daten gespeichert werden sollen: in SQLite oder in MySQL. Wenn in MySQL - konfigurieren Sie den Zugriff.
    10. Wenn Sie ein selbstsigniertes Zertifikat verwenden, geben Sie den vollständigen Pfad dazu an (es muss an den Telegrammserver gesendet werden).
    11. Klicken Sie auf " Einstellungen überprüfen und Telegramm-Site-Helper installieren ".
    12. Wenn die Installation erfolgreich war, sollte Folgendes angezeigt werden:
    13. Öffne Telegramm und schreibe an deinen Bot " / login 1234 " (wobei 1234 das Manager-Passwort ist). Wenn die Installation erfolgreich war, werden Sie vom Bot autorisiert.
    14. Gehen Sie zur Registerkarte Widget-Generator

    15. Wir konfigurieren das Widget und kopieren den Code auf die Site. Das ist alles.
    16. Wenn Ihnen das Projekt gefallen hat, können Sie Spenden .


    Zukunftspläne


    • Implementieren Sie dennoch die LongPoll-Unterstützung für den Telegrammserver, um auf HTTPs zu verzichten
    • Heraufkommen und tun: wie man Kunden in "Sub-Chats" aufteilt
    • Komplette englische Übersetzung
    • Sprach-Chat
    • Möglichkeit, den Nachrichtenton zu ändern / stummzuschalten
    • Clevere Gedanken, die Habra-Nutzer in die Kommentare schreiben


    Am Ende des Artikels danke ich dem Telegramm-Team für die Plattform für Bots. Sehr nützliche Sache.
    Vielen Dank.

    UPD! Ich habe vergessen hinzuzufügen, dass es sich nach der Installation lohnt, das Installationsprogramm vom Server zu entfernen und Zugriffsrechte für den Ordner einzurichten.
    Vielen Dank für die prompten Pull-Anfragen und die Kritik am Code. Ich bin auf der Suche nach Kraft und Zeit für eine Überarbeitung.

    Jetzt auch beliebt: