Klasifikasi Komentar Facebook Secara Otomatis dengan n8n, AI dan Metabase

Anita Nur Hidayati
13 June, 2025
blog cover

Saat melakukan analisis manual suatu dataset akan membutuhkan waktu berjam-jam sehingga tidak efisien. Dalam artikel ini, kita akan membahas bagaimana membangun workflow yang secara otomatis dapat mengambil komentar dari halaman media sosial facebook, mengklasifikasikannya berdasarkan kategori dan sentimen, dan menyajikannya ke dalam dashboard yang mudah dianalisis dengan n8n, OpenAI dan metabase.

Mengambil Komentar dari Facebook Graph API

Mendapatkan token facebook graph API

  1. Buat aplikasi facebook dahulu di https://developers.facebook.com/ 
  2. Generate akses token facebook di https://developers.facebook.com/tools/explorer/
  3. Di n8n, tambahkan access token di credential Facebook Graph API 

Membuat workflow di n8n

Di n8n, create workflow baru dan tambahkan dengan manual trigger untuk memulai workflow

Tambahkan node 2 Facebook Graph API. 1 untuk get page ID dengan node me dan untuk get Post ID sesuai dengan page ID dengan node sebagai berikut

Setelah mendapatkan ID postingan, selanjutnya kita baru bisa mendapatkan komentar setiap postingan. Buat node facebook graph API dan tambahkan node expression ini. $json.postId didapat dari response Get Post ID, silakan sesuaikan.

{{ $json.postId }}/comments?fields=from,like_count,likes,message,created_time,id,comments{from,created_time,id,message}&limit=20

Jika dibutuhkan format ulang response dari response agar lebih rapi

Klasifikasi Komentar

Escape Character

Terkadang komentar mengandung karakter yang menyebabkan error ketika eksekusi secara batch sehingga perlu tambahan formatting

function escapeJSONString(str) {
return str
.replace(/\\/g, “\\\\”)
.replace(/”/g, ‘\\”’)
.replace(/\n/g, “\\n”)
.replace(/\r/g, “\\r”)
.replace(/\t/g, “\\t”);
}
let safeMessage = escapeJSONString(rawMessage);
return {
json: {
safeMessage: safeMessage
}
};
});

Selanjutnya kita akan menggunakan node http request untuk mendapatkan hasil klasifikasi sentimen dengan OpenAI. Sebelum proses ini dilakukan pastikan sudah punya API key OpenAInya

Ini contoh prompting ke OpenAI yang diinput di Body JSON.

{
"model": "gpt-4.1-mini-2025-04-14",
"messages": [
{
"role": "system",
"content": "You classify the sentiment of a message into exactly one word: Neutral or Negative. Respond only with one word: 'Neutral' if the message is a question, statement, or neutral information. Respond 'Negative' if it expresses complaint, dissatisfaction, or negative emotion."
},
{
"role": "user",
"content": "{{ $json["safeMessage"] }}"
}
],
"temperature": 0,
"max_tokens": 200
}

Tambahkan node Code untuk reformat response dari OpenAI agar hasilnya hanya data sentimen saja.

const inputItems = $items();
return inputItems.map(item => {
const sentiment = item.json.choices?.[0]?.message?.content || null;
return {
json: {
sentiment: sentiment
}
};
});

Selain menggunakan htpp request, kita juga dapat menggunakan AI nodes Sentiment Analysis dan Text Classifier untuk mendapatkan hasil klasifikasi dari AI

Lakukan hal yang sama untuk mendapatkan hasil klasifikasi komentar, lalu merge kedua node tersebut agar menjadi 1 menggunakan node Merge. Pilih mode Combine by Position dengan 2 input.

Streaming Data ke Database

Data yang telah diklasifikasikan siap untuk disimpan dan divisualisasikan

Merge data hasil klasifikasi dengan metadata komentar dari facebook menggunakan node Merge dengan mode Combine by Position.

Simpan data hasil klasifikasi komentar ke database. Berikut contoh insert data ke table facebook di db postgres. Mapping data dapat dilakukan secara otomatis jika data response sama persis dengan nama kolom di table databasenya, jika tidak lakukan mapping manual

Lakukan test workflow untuk memastikan proses dapat berjalan

Visualisasi dan Analisis

Setelah data tersedia di database, kita bisa membuat dashboard di Metabase dan melakukan analisis datanya.

Penutup

Mengotomatisasi klasifikasi komentar Facebook dengan n8n, OpenAI, dan Metabase memungkinkan kita mendapatkan wawasan yang berharga dengan lebih efisien, menghemat waktu, dan memperbaiki pengambilan keputusan. Mulailah mengimplementasikan solusi ini untuk meningkatkan analisis media sosial Anda.

Ready to Digitally Transform Your Business Processes?

Join 100+ companies already experiencing maximum productivity

WEEKLY INSIGHTS

Get insights on business process management tailored to your role, industry, and challenges.

Choose the topics that matter most to your work. Each week, AlurKerja will send practical insights tailored to your responsibilities and organizational context.

One email per week. Update your preferences anytime.

About You

This information helps us tailor the perspective and context of the insights provided.

Your Role * Select one.

Organization Type * Select one.

Customize Your Insights

Choose the industry and topics most relevant to your work.

Industry or Organization Field * Select one.

Topics You Want to Follow *

Select up to three topics most relevant to your work.

What Are You Currently Facing?

What process challenge is most felt in your organization right now? *

Select one main challenge.

Required for B2B segmentation.

Your Weekly Insight has been personalized.

From now on, we will prioritize insights for:

Industry:

Topics:

Email pertama akan dikirim sesuai jadwal Weekly Insight berikutnya. Anda dapat memperbarui pilihan industri, topik, atau peran melalui tautan "Atur Preferensi" di setiap email.

Read Latest Insights

Facing process challenges that need to be resolved immediately?

Discuss with AlurKerja Team