Telegramm-Bot + Google Analytics

Grüße an die Habraviten. Ich möchte darüber sprechen, wie wir Google Analytics mit dem Telegramm-Bot verschraubt haben, auf welche Probleme wir gestoßen sind und was letztendlich nicht konfiguriert werden konnte.

In der alten Weise wird Google Analytics auf einer Website mit einer Domain oder in einer Anwendung mit einem SDK installiert. Beim Googeln des Themas wurde klar, dass es keine Beispiele gab, also beschlossen wir, es selbst zu tun. In unserem Fall gab es keine Website oder mobile Anwendung, aber es bestand der Wunsch, Ereignisse im Telegramm-Bot zu verfolgen. Und teilweise stellte sich heraus, dass es getan wurde.

Problem Nummer 1


Die Bots befinden sich physisch unter t.me/benice_tools_bot . Dies ähnelt einer normalen Site, jedoch ohne direkten Zugriff auf die Stammdateien, um den Zählercode festzulegen und Ereignisse zu konfigurieren.
Das Frontend ist in diesem Fall das Telegramm selbst, auf das wir keinen Zugriff haben.

Unser Bot arbeitet mit der Binance-API und der Telegramm-API, und dementsprechend gibt es ein Backend, über das es möglich geworden ist, mit Analyseeinstellungen zu manövrieren.

In Google Analytics haben sie einen Zähler "für die Website" erstellt und Ereignisse mit den Parametern "Aktion, Bezeichnung, Kategorie" registriert. Detaillierte Einstellungen werden auf Dutzenden von Websites beschrieben. Und danach trat das erste Problem auf.

Mit den Standardmethoden von Google war es nicht möglich, Ziele im Bot zu platzieren, es gab keinen Zugriff auf die Vorderseite.

Zur Rettung kam eine Bibliothek , die das Übertragen und Verarbeiten von Ereignisparametern aus dem Backend ermöglichte.

Nach dem Einrichten haben wir begonnen, die Arbeitsfähigkeit der Methode zu testen, und haben den ersten Erfolg erzielt. Abgeschlossene Ereignisse wurden in Google Analytics angezeigt. Im Echtzeitmodus war sichtbar, wie viele Personen im Bot online sind, und andere Daten.

BildBild

Nach unabhängigen Tests und Nutzern aus dem Werbeverkehr wurde klar, dass die von uns benötigten Informationen zu 100% zuverlässig sind. Es wurde deutlich, wie viele Personen online sind und welche spezifischen Veranstaltungen durchgeführt werden.

Aber es gab immer noch einige Fehler. Beispielsweise wurde der Gerätetyp nicht korrekt erkannt. "Desktop-Computer" wurde angezeigt, auch wenn Sie Telegramm von einem mobilen Gerät aus verwenden. Der Standort zeigte nur Griechenland an, da sich der Server mit dem Bot in diesem Land befand. Demografie, Interessen, Browser und Betriebssysteme wurden als "(nicht festgelegt)" angezeigt.

Problem Nummer 2


Wir haben Werbelinks erstellt, die bei Aktivierung 7 Tage lang Zugriff auf kostenpflichtige Funktionen gewähren. Und Klicks auf diese Links mussten mit Google Analytics verknüpft werden, um Werbekampagnen zu analysieren.

Standardmäßig generiert Google Analytics selbst eine Benutzer-ID oder lässt diese ohne diesen Parameter. Sie können jedoch Ihre eigene benutzerdefinierte ID erstellen und an Google senden.

Wir haben diese Methode angewendet. Wir haben die Benutzerabrechnung über die verschlüsselte Benutzer-ID unseres Systems erstellt.

Das Telegramm überträgt Metadaten, wenn der Bot startet. Dies funktioniert genauso wie bei bekannten utm-Tags.
Im Link wird für eine Werbekampagne nach dem Start ein Label eingefügt.

Zum Beispiel:

http://t.me/benice_tools_bot?start=habrahabr 

Wenn der Bot startet, analysieren wir die Parameter für den Start und nehmen sie für eine bestimmte Kampagne.
Im Backend werden im Benutzerprofil Informationen angezeigt, die er für eine bestimmte Kampagne "Campaign_habrahabr" erhalten hat.

Es blieb, unseren Besucher im Code anzugeben:

 if (!code) code = "organic"; const visitor = ua(googleAnalyticsProjectId, `token:${code};CLIENTID:${saltUserId}`, { strictCidFormat: false }); visitor.event(category, action, label).send(); 

Wenn der Benutzer ohne Werbekampagne selbst gekommen ist, wird diese Quelle als „organisch“ erkannt.

So stellte sich heraus, dass die Auslösung von Zielen durch einen bestimmten Benutzer analysiert wurde, der aus einer Werbekampagne stammte.

Bild

Bild

PS


Alle Anrufe bei Google Analytics endeten verwirrt vom Support. Bei den ersten Anrufen konnten keine Tipps eingeholt werden, wenn nichts anderes funktionierte. Und als die Ereignisse bereits auf Analytics übertragen wurden, machte der Support eine 15-minütige Pause, um „die Details“ der Frage zu klären, und als sie zurückkamen, stellten sie selbst Fragen: „Wie haben Sie das gemacht?“

Source: https://habr.com/ru/post/de442610/


All Articles