Tutorial kod sumber rasmi pelbagai struktur (*Case Handler*, *CJS Plugin*, *ESM Plugin*, *Wibusoft*, *Telegraf*, *Discord.js*, *Python*).
const axios = require('axios');
const API_BASE = 'http://restapi.fakrulafif.com';
const API_KEY = 'YOUR_APIKEY';
// 1. Case Command !ai (GPT-4 AI Chat)
case 'ai': {
if (!text) return reply('Sila masukkan soalan anda! Contoh: !ai Siapa presiden Malaysia?');
reply('ā³ Sedang memproses jawapan AI...');
try {
const res = await axios.get(`${API_BASE}/api/ai/gpt4?text=${encodeURIComponent(text)}&apikey=${API_KEY}`);
if (res.data && res.data.status) {
reply(`š¤ *FakrulDev AI Answer:*\n\n${res.data.result}`);
} else {
reply(`ā Ralat: ${res.data.message}`);
}
} catch (err) {
reply('ā Gagal menghubungi server API.');
}
break;
}
// 2. Case Command !tiktok (TikTok Video Downloader No WM)
case 'tiktok':
case 'tt': {
if (!args[0]) return reply('Sila masukkan URL TikTok! Contoh: !tiktok https://vt.tiktok.com/xxx');
reply('ā³ Sedang memuat turun video TikTok...');
try {
const res = await axios.get(`${API_BASE}/api/downloader/tiktok?url=${encodeURIComponent(args[0])}&apikey=${API_KEY}`);
if (res.data && res.data.status) {
const data = res.data.result;
await conn.sendMessage(from, {
video: { url: data.videoNoWm },
caption: `šµ *${data.title}*\nš¤ Author: ${data.author}`
}, { quoted: msg });
} else {
reply(`ā ${res.data.message}`);
}
} catch (err) {
reply('ā Gagal memproses video TikTok.');
}
break;
}
const fetch = require('node-fetch');
let handler = async (m, { conn, text, usedPrefix, command }) => {
if (!text) throw `Sila masukkan soalan anda!\nContoh: *${usedPrefix + command} Siapa FakrulDev?*`;
m.reply('ā³ Sedang menjana jawapan AI...');
let res = await fetch(`http://restapi.fakrulafif.com/api/ai/gpt4?text=${encodeURIComponent(text)}&apikey=YOUR_APIKEY`);
let json = await res.json();
if (json.status) {
m.reply(`š¤ *FakrulDev AI Answer:*\n\n${json.result}`);
} else {
throw json.message || 'Gagal memuat jawapan AI.';
}
};
handler.help = ['ai '];
handler.tags = ['ai'];
handler.command = /^(ai|gpt4|ask)$/i;
module.exports = handler;
import fetch from 'node-fetch';
let handler = async (m, { conn, text, usedPrefix, command }) => {
if (!text) throw `Sila masukkan soalan anda!\nContoh: *${usedPrefix + command} Siapa FakrulDev?*`;
m.reply('ā³ Sedang menjana jawapan AI...');
let res = await fetch(`http://restapi.fakrulafif.com/api/ai/gpt4?text=${encodeURIComponent(text)}&apikey=YOUR_APIKEY`);
let json = await res.json();
if (json.status) {
m.reply(`š¤ *FakrulDev AI Answer:*\n\n${json.result}`);
} else {
throw json.message || 'Gagal memuat jawapan AI.';
}
};
handler.help = ['ai '];
handler.tags = ['ai'];
handler.command = /^(ai|gpt4|ask)$/i;
export default handler;
module.exports = {
cmd: ['ai', 'gpt4'],
tags: ['ai'],
desc: 'Tanya soalan kepada FakrulDev AI',
run: async (client, m, { text, prefix, command }) => {
if (!text) return client.reply(m.chat, `Penggunaan: ${prefix + command} [soalan]`, m);
try {
const res = await fetch(`http://restapi.fakrulafif.com/api/ai/gpt4?text=${encodeURIComponent(text)}&apikey=YOUR_APIKEY`);
const json = await res.json();
if (json.status) {
client.reply(m.chat, json.result, m);
} else {
client.reply(m.chat, `Ralat: ${json.message}`, m);
}
} catch (e) {
client.reply(m.chat, 'Gagal menyemak API.', m);
}
}
};
const { Telegraf } = require('telegraf');
const axios = require('axios');
const bot = new Telegraf('YOUR_TELEGRAM_BOT_TOKEN');
const API_BASE = 'http://restapi.fakrulafif.com';
const API_KEY = 'YOUR_APIKEY';
bot.command('ai', async (ctx) => {
const prompt = ctx.message.text.split(' ').slice(1).join(' ');
if (!prompt) return ctx.reply('Sila taip soalan! Contoh: /ai apakah itu AI?');
ctx.reply('ā³ Menjana jawapan AI...');
try {
const res = await axios.get(`${API_BASE}/api/ai/gpt4?text=${encodeURIComponent(prompt)}&apikey=${API_KEY}`);
ctx.reply(`š¤ FakrulDev AI:\n\n${res.data.result}`);
} catch (err) {
ctx.reply('ā Ralat server API.');
}
});
bot.launch();
const { Client, GatewayIntentBits } = require('discord.js');
const axios = require('axios');
const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent] });
const API_KEY = 'YOUR_APIKEY';
client.on('messageCreate', async (message) => {
if (message.author.bot) return;
if (message.content.startsWith('!ai')) {
const prompt = message.content.slice(3).trim();
if (!prompt) return message.reply('Sila sertakan soalan anda!');
const res = await axios.get(`http://restapi.fakrulafif.com/api/ai/gpt4?text=${encodeURIComponent(prompt)}&apikey=${API_KEY}`);
message.reply(res.data.result || 'Ralat AI.');
}
});
client.login('YOUR_DISCORD_BOT_TOKEN');