You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
958 B
35 lines
958 B
import {processBotMessage} from '../controllers/bots'
|
|
import {Msg} from './interfaces'
|
|
import { models } from '../models'
|
|
|
|
// return bool whether to skip forwarding to tribe
|
|
export async function isBotMsg(msg:Msg, sentByMe:boolean): Promise<boolean> {
|
|
const txt = msg.message.content
|
|
const chat = await models.Chat.findOne({where:{
|
|
uuid: msg.chat.uuid
|
|
}})
|
|
if(!chat) return false
|
|
|
|
if(txt.startsWith('/bot ')) {
|
|
const ok = processBotMessage(msg, chat, null)
|
|
return ok?true:false
|
|
}
|
|
|
|
const botInTribe = await models.ChatMember.findOne({where:{
|
|
bot:true, chatId: chat.id
|
|
}})
|
|
if(!botInTribe) return false
|
|
if(!(botInTribe.botMakerPubkey && botInTribe.botUuid)) return false
|
|
|
|
if(txt.startsWith(`${botInTribe.botPrefix} `)){
|
|
const ok = await processBotMessage(msg, chat, botInTribe)
|
|
return ok?true:false
|
|
}
|
|
|
|
return false
|
|
|
|
// check if bot msg
|
|
// check my ChatMembers to see if its here
|
|
|
|
// process it "bot_cmd"
|
|
}
|
|
|