Website-Icon WebSpotting

Social Media Monitoring (Facebook API)

Soziale Netzwerke bieten ein so enormes Informationspotenzial über die kommunizierenden User an, dass die Gemeinschaftsportale schnell als eine Plattform von Kundendaten gesehen werden können. Allen voran ist hier Facebook zu nennen. Da dieses Netzwerk am meisten Potenzial durch seine Größe bietet, verspricht es auch den größten Mehrwert[1].

Social Media Monitoring soll in diesem Bereich das Potenzial nutzen und mit einer kontinuierlichen Analyse der Informationen Daten generieren, welche für Statistiken, Prognosen und/oder Handlungsempfehlungen genutzt werden sollen.

Anhand der generierten Kundenstatistiken können Strategieanpassungen wie beispielsweise Imagekampagnen oder Marktanalysen vorgenommen werden.

Ein Unternehmen kann durch Social Media Monitoring viel über seinen Kundenstamm und potenzielle Kunden in Erfahrung bringen und aktiv auf Geschehnisse reagieren.

Das Problem an Social Media Monitoring ist jedoch die Praxis und die daraus resultierende Umsetzung. Ein Soziales Netzwerk enthält Datenschutzrichtlinien, welche private (dennoch relevante) Informationen von Kunden schützen. Weitere Probleme sind der eigentliche Zugriff auf die Informationen, das anschließende Gewinnen der Daten und das Aufbereiten zu unternehmensrelevanten Informationen.

Der Mehrwert von Social Media Monitoring zeigt jedoch klar, dass dies Problemstellungen sind, welche sich zu lösen lohnen.

Jedes Soziale Netzwerk und somit auch Facebook sollte eine Einschränkung der für Fremde ersichtlichen Profileinstellungen anbieten. Obwohl Facebook sich das alleinige Recht über die Nutzungsrechte der User hat zusichern lassen[2], so können die einzelnen Benutzer die Sichteinstellungen ihres Profils von Facebook einschränken. Durch die Einschränkung können Inhalte durch Social Media Monitoring nicht abgerufen werden.

Sind die Informationen beschränkt, jedoch für einige Benutzergruppen (Freunde, Familie, Öffentlich, …) verfügbar, so können die Daten mit entsprechenden Schritten generiert werden.

Für die Kontrolle des Datenschutzes gibt es mehrere Verfahren zur Verifizierung[3].

 

Das Facebook Login Plug-In ist integriert in den Entwickler-Toolkits, sodass bei allen Applikationen, die mit Facebook zu tun haben, ein Log-In benutzt werden kann. Der Log-In ist essentiell für eine Nutzung des Open Graphs, denn eine getätigte Aktion muss stets dem Benutzer zugeordnet werden können, der diese ausführt.

Der Benutzer muss eine Autorisation akzeptieren, um dem anfragenden Drittanbieter zu erlauben auf die privaten Daten zuzugreifen. Diese Autorisation wird mit einer Benachrichtigung und einer Bestätigung derselben erteilt. Teilnehmer der Autorisationsbenachrichtigung müssen der Client, die eigenen Sever und die Facebook Server sein.

Eine Autorisation ist zwingend erforderlich, sollte Facebook Log-In auf Drittanbieterseiten zur Verfügung gestellt werden.

Wenn ein Benutzer sich über Facebook Log-In anmeldet und somit die Autorisation über seine Daten erteilt hat, braucht eine Applikation (meistens) eine Zugriffsrechteverwaltung. Darf die Applikation beispielsweise Orte, Bilder, Spielfortschritte oder Videos auf das Profil posten oder reicht eine Beschränkung auf die Einsicht der Basis Informationen des Profils.

 

Zuletzt Bedarf es einen Access Token. Dieser ist eine Art Schlüssel, der als Zeichenkette nach der Autorisation generiert wird. Sobald eine Applikation auf die Graph API zugreifen möchte muss der Access Token praktisch vorgezeigt werden. Die Anfrage der Applikation wird nur ausgeführt, wenn der Access Token die richtigen Zugriffsrechte beinhaltet.

 

Für eine konforme Verwendung des Open Graphs ist eine Reihe von Schritten notwendig, die beispielsweise auf die Benutzerrechte der aktiven User eingehen, aber auch eine kontrollierte Applikationsverwaltung gewährleisten.

In der Verwendung ist es möglich mehrere Access Tokens zu verknüpfen, um die jeweiligen Rechte zu erreichen. Einmal generiert ist ein Access Token jedoch nicht für ewig gültig, daher müssen derweilen neue Tokens generiert werden.

 

Der API Graph von Facebook enthält implementierte Strukturen, welche mit einem Access-Token zugänglich gemacht werden. Dies verhindert, dass unbekannte User, die keine Berechtigung haben und somit die Autorisation nicht akzeptiert haben, keine Anteilnahme an den Inhalten haben.

Eine Ergänzung zu dem Themengebiet der Berechtigungen fehlt jedoch noch. Selbst wenn die Autorisation erteilt und die Zugriffsrechte für eine bestimmte Information oder Aktion zugelassen wurden, kann es der Fall sein, dass das Profil selbst diese Informationen nicht freigeschaltet hat. Eine Applikation ist nicht in der Lage die Sicherheitseinstellungen eines Profils auszuschalten.

 

Bei Facebook werden die Initialisierungen von Drittanbieterverknüpfungen mithilfe einer HTML Erweiterung von Metatags initialisiert.

Jeder Post auf beispielsweise einer Pinnwand kann mit einem Metatag versehen werden.

Dieser Tag bestimmt von welcher Anwendung/Device/Website der Beitrag getätigt wurde, aber auch um welches Objekt es sich handelt.

Ein Metatag setzt bestimmte Kriterien eines Beitrags, sodass ein zufälliger Betrachter erweiterte Informationen diesbezüglich abrufen kann. Praktisch ist dieses Vorgehen mit einer Produktbeschreibung an einem Produkt zu erklären. Das Produkt selber ist zwar Existent, jedoch kann es ohne Beschreibung nicht zugeordnet werden.

Der erstellte Post enthält selbst nur den Klartext, der von dem User erstellt wurde. Durch die Erweiterung um Metatags wird der Post zu einem vollständigen Objekt im Open Graph und enthält erweiterte Informationen bezüglich des Inhaltes.

Da der Open Graph über HTTP zugänglich ist, können Objekte und dadurch Informationen von dem Graphen abgezogen werden.

Für den Abzug der Daten gibt es mehrere Möglichkeiten auf die Datenbank von Facebook zuzugreifen. Facebook selbst stellt vier Schnittstellen zur Verfügung um auf die eigene Datenbank zuzugreifen[4]. Die Benutzung der hierbei eigens für Facebook implementierten SQL Sprache Facebook Query Language ist hierbei die vorteilhafteste Methode, da sie auf eine besondere Selektierung zugreifen kann[5].

(Syntaxbeispiel aus Facebook Graph API Explorer[6])

 

Ein weiterer Vorteil von FQL ist, dass eine Schachtelung von Aufrufen möglich ist und somit mit den Ergebnissen erneute Suchabfragen gestellt werden können. Für einen Zugriff auf die Datenbank von Facebook bedient sich FQL bei der Graph API von Facebook. In verschiedenen Tabellen lassen sich einzelne Attribute selektieren, welche über die Graph API anschließend aus der Datenbank gefiltert und ausgegeben werden. Jede Datenbanktabelle enthält hierbei bestimmte Attribute zu den einzelnen Datenbankkategorien. Facebook verfeinert stetig die Detailtiefe und Strukturierung der FQL Tabellen, um eine Optimierung der Suchanfragen zu gewährleisten. Ein großer Vorteil von FQL besteht nämlich in der Genauigkeit der Abfrage. Es ist also möglich gezielter gleichzeitig mehrere Request zu verbinden und die benötigten Daten anzufordern. Aktuell sind bei Facebook 77 Datenbanktabellen bereit für einen Zugriff[7]. FQL gibt nach gesendeter Suchfrage die Antwortergebnisse in einem Java Script Object Notation Array aus, welches anschließend ausgelesen werden kann.

Sollte eine Abfrage von Daten professionell genutzt werden, so ist es zwingend erforderlich den Bereich der Performance zu optimieren. Bei einem Produktvergleich von mehreren 100 oder sogar 1000 Anfragen an den Facebook Server stürzt schnell das System ab oder braucht zu lange, um die Daten zu aktualisieren. Facebook Inc. selbst hat dieses Problem erkannt und bietet eine Lösungsalternative an.

Immer häufiger wird hier die Methode des FQL als die effizienteste angesprochen, da durch ihre mehrfache Request Anfrage in nur einem Statement an Performance gespart werden kann8. Zusätzlich hat Facebook Inc. die Batch Request eingeführt.

 

(Ausschnitt eines Syntaxbeispiel aus Allfacebook Blog9)

 

Ein Batch Request ist eine logische HTTP-Anfrage Abfolge, welche in einem JSON Array dargestellt wird. Die Batch Abfrage enthält bis zu 50 Request an den Facebook Server und kann mithilfe der Methoden (GET/PUT/POST/DELETE) mehrere Aktionen gleichzeitig ausführen10.

Es ist also möglich gro ße Abfragen mithilfe von Batch Request zu vereinfachen. Anstelle von mehrfachen HTTP Abfragen wird ein Batch Request ausgeführt, der die Informationen parallel abfragt und dadurch Zeit spart. Die gesparte Zeitdauer ist bei unternehmensrelevanten Statistiken von großer Bedeutung und darf daher nicht außer Acht gelassen werden.

 

In Hinblick auf die Problemstellung vom Social Media Monitoring lässt sich die Umsetzung in Bezug auf die Datengewinnung schon in Worte fassen.

Eine Kombination aus FQL und einem Batch Request sichert eine Performance-optimierung durch die Kombination von Laufzeitoptimierungen durch Batch Requests und effizientere Filterung mittels FQL.

 

Wird für diese Datengewinnung PHP verwendet, so kann ein Parser das gewonnene JSON Objekt nach Bezug der Daten abrufen und anhand seines Arrays die Daten filtern11.

Diese Daten könnten in eine Excel Tabelle exportiert werden und anschließend verglichen werden.

Um Statistiken zu erheben ist es jedoch wichtig, die Objekt ID (object_id) oder die eindeutige URL der zu betrachtenden Objekte in einer unternehmenseigenen Datenbank zu sichern, sodass nicht manuell nach dem Objekt gesucht werden muss.

 

Durch korrekte Anwenden von Social Media Monitoring können Unternehmen viele wichtige Potenziale der Kommunikationsportale nutzen und gewinnbringend einsetzen.

Das tolle an Social Media Monitoring ist, das es nie aufhört und beständig Daten gezogen werden können. Die Daten brauchen bei einer einmalig implementierten Struktur keinen großen Aufwand zu durchlaufen, bevor aus ihnen ein Mehrwert für das Unternehmen in Form von beispielsweise Imagekampagnen abgezogen werden kann.

Die Daten kommen also praktisch von alleine und es muss nur zugegriffen werden.

Durch die Beständigkeit der Datenanalyse lässt sich die Prognose wagen, dass mit einem guten Social Media Monitoring dauerhafte Verbesserungen in Bezug auf die Kunden und damit auf die Kaufkraft erlangt werden können. Dies ist auch der Grund wieso Social Media Monitoring aktuell sehr stark eingesetzt und weiterentwickelt wird.

 

 

Mit diesen Worten wünsche ich ein gutes Monitoring!

 

Alle Quellenangaben wurden im Zeitraum vom 24.01.2013 bis zum 28.01.2013 abgerufen.

Referenzierte Quellen:

1  Facebook Newsroom; Facebook Newsroom

2  Abstimmung der Nutzerrechte: Zeit Online

3  Autorisationsschritte: Facebook Developer

4  Facebook API; Facebook Developer

5,7,8 Facebook Query Language; abouttheweb Blog

6  Facebook API Graph Explorer; Facebook Developer

9  Batch Request; Allfacebook Blog

10  Facebook Batch Request; Facebook Developer

11  JSON Objekt auslesen; Dr. Web Blog

Die mobile Version verlassen