mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2025-08-23 19:36:54 +00:00
adding persian language
translating tg bot to persian
This commit is contained in:
parent
d4c8b926d3
commit
b19c917a83
1 changed files with 27 additions and 27 deletions
|
@ -34,22 +34,22 @@ func (j *StatsNotifyJob) SendMsgToTgbot(msg string) {
|
|||
//Telegram bot basic info
|
||||
tgBottoken, err := j.settingService.GetTgBotToken()
|
||||
if err != nil || tgBottoken == "" {
|
||||
logger.Warning("sendMsgToTgbot failed,GetTgBotToken fail:", err)
|
||||
logger.Warning("ارسال پیام به ربات ناموفق بود, دریافت توکن ربات ناموفق بود:", err)
|
||||
return
|
||||
}
|
||||
tgBotid, err := j.settingService.GetTgBotChatId()
|
||||
if err != nil {
|
||||
logger.Warning("sendMsgToTgbot failed,GetTgBotChatId fail:", err)
|
||||
logger.Warning("ارسال پیام به ربات ناموفق بود, دریافت توکن ربات ناموفق بود:", err)
|
||||
return
|
||||
}
|
||||
|
||||
bot, err := tgbotapi.NewBotAPI(tgBottoken)
|
||||
if err != nil {
|
||||
fmt.Println("get tgbot error:", err)
|
||||
fmt.Println("ارور اتصال به ربات:", err)
|
||||
return
|
||||
}
|
||||
bot.Debug = true
|
||||
fmt.Printf("Authorized on account %s", bot.Self.UserName)
|
||||
fmt.Printf("اهراز شده بر روی اکانت %s", bot.Self.UserName)
|
||||
info := tgbotapi.NewMessage(int64(tgBotid), msg)
|
||||
//msg.ReplyToMessageID = int(tgBotid)
|
||||
bot.Send(info)
|
||||
|
@ -64,10 +64,10 @@ func (j *StatsNotifyJob) Run() {
|
|||
//get hostname
|
||||
name, err := os.Hostname()
|
||||
if err != nil {
|
||||
fmt.Println("get hostname error:", err)
|
||||
fmt.Println("ارور اتصال به هاست:", err)
|
||||
return
|
||||
}
|
||||
info = fmt.Sprintf("Hostname:%s\r\n", name)
|
||||
info = fmt.Sprintf("هاست:%s\r\n", name)
|
||||
//get ip address
|
||||
var ip string
|
||||
netInterfaces, err := net.Interfaces()
|
||||
|
@ -104,11 +104,11 @@ func (j *StatsNotifyJob) Run() {
|
|||
// NOTE:If there no any sessions here,need to notify here
|
||||
// TODO:Sub-node push, automatic conversion format
|
||||
for _, inbound := range inbouds {
|
||||
info += fmt.Sprintf("Node name:%s\r\nPort:%d\r\nUpload↑:%s\r\nDownload↓:%s\r\nTotal:%s\r\n", inbound.Remark, inbound.Port, common.FormatTraffic(inbound.Up), common.FormatTraffic(inbound.Down), common.FormatTraffic((inbound.Up + inbound.Down)))
|
||||
info += fmt.Sprintf("نام کاربری:%s\r\nپورت:%d\r\nآپلود↑:%s\r\nدانلود↓:%s\r\nمجموع:%s\r\n", inbound.Remark, inbound.Port, common.FormatTraffic(inbound.Up), common.FormatTraffic(inbound.Down), common.FormatTraffic((inbound.Up + inbound.Down)))
|
||||
if inbound.ExpiryTime == 0 {
|
||||
info += fmt.Sprintf("Expire date:unlimited\r\n \r\n")
|
||||
info += fmt.Sprintf("تاریخ انقضاء::نامحدود\r\n \r\n")
|
||||
} else {
|
||||
info += fmt.Sprintf("Expire date:%s\r\n \r\n", time.Unix((inbound.ExpiryTime/1000), 0).Format("2006-01-02 15:04:05"))
|
||||
info += fmt.Sprintf("تاریخ انقضاء:%s\r\n \r\n", time.Unix((inbound.ExpiryTime/1000), 0).Format("2006-01-02 15:04:05"))
|
||||
}
|
||||
}
|
||||
j.SendMsgToTgbot(info)
|
||||
|
@ -116,7 +116,7 @@ func (j *StatsNotifyJob) Run() {
|
|||
|
||||
func (j *StatsNotifyJob) UserLoginNotify(username string, ip string, time string, status LoginStatus) {
|
||||
if username == "" || ip == "" || time == "" {
|
||||
logger.Warning("UserLoginNotify failed,invalid info")
|
||||
logger.Warning("اتصال به پنا ناموفق بود، مشخصات نادرست")
|
||||
return
|
||||
}
|
||||
var msg string
|
||||
|
@ -127,31 +127,31 @@ func (j *StatsNotifyJob) UserLoginNotify(username string, ip string, time string
|
|||
return
|
||||
}
|
||||
if status == LoginSuccess {
|
||||
msg = fmt.Sprintf("Successfully logged-in to the panel\r\nHostname:%s\r\n", name)
|
||||
msg = fmt.Sprintf("با موفقیت به پنل وارد شدید\r\nHostname:%s\r\n", name)
|
||||
} else if status == LoginFail {
|
||||
msg = fmt.Sprintf("Login to the panel was unsuccessful\r\nHostname:%s\r\n", name)
|
||||
msg = fmt.Sprintf("اتصال به پنل ناموفق بود\r\nHostname:%s\r\n", name)
|
||||
}
|
||||
msg += fmt.Sprintf("Time:%s\r\n", time)
|
||||
msg += fmt.Sprintf("Username:%s\r\n", username)
|
||||
msg += fmt.Sprintf("مدت زمان:%s\r\n", time)
|
||||
msg += fmt.Sprintf("نام کاربری:%s\r\n", username)
|
||||
msg += fmt.Sprintf("IP:%s\r\n", ip)
|
||||
j.SendMsgToTgbot(msg)
|
||||
}
|
||||
|
||||
var numericKeyboard = tgbotapi.NewInlineKeyboardMarkup(
|
||||
tgbotapi.NewInlineKeyboardRow(
|
||||
tgbotapi.NewInlineKeyboardButtonData("Get Usage", "get_usage"),
|
||||
tgbotapi.NewInlineKeyboardButtonData("وضعیت کاربری", "وضعیت کاربری"),
|
||||
),
|
||||
)
|
||||
|
||||
func (j *StatsNotifyJob) OnReceive() *StatsNotifyJob {
|
||||
tgBottoken, err := j.settingService.GetTgBotToken()
|
||||
if err != nil || tgBottoken == "" {
|
||||
logger.Warning("sendMsgToTgbot failed,GetTgBotToken fail:", err)
|
||||
logger.Warning("ارسال پیام به ربات ناموفق بود, دریافت توکن ربات ناموفق بود:", err)
|
||||
return j
|
||||
}
|
||||
bot, err := tgbotapi.NewBotAPI(tgBottoken)
|
||||
if err != nil {
|
||||
fmt.Println("get tgbot error:", err)
|
||||
fmt.Println("ارور اتصال به ربات:", err)
|
||||
return j
|
||||
}
|
||||
bot.Debug = false
|
||||
|
@ -175,8 +175,8 @@ func (j *StatsNotifyJob) OnReceive() *StatsNotifyJob {
|
|||
msg := tgbotapi.NewMessage(update.CallbackQuery.Message.Chat.ID, "")
|
||||
|
||||
switch update.CallbackQuery.Data {
|
||||
case "get_usage":
|
||||
msg.Text = "for get your usage send command like this : \n <code>/usage uuid | id</code> \n example : <code>/usage fc3239ed-8f3b-4151-ff51-b183d5182142</code>"
|
||||
case "وضعیت کاربری":
|
||||
msg.Text = " برای دریافت وضعیت کاربری، دستوری به شکل زیر ارسال کنید: : \n <code>/usage uuid | id</code> \n مثال : <code>/usage fc3239ed-8f3b-4151-ff51-b183d5182142</code>"
|
||||
msg.ParseMode = "HTML"
|
||||
}
|
||||
if _, err := bot.Send(msg); err != nil {
|
||||
|
@ -198,19 +198,19 @@ func (j *StatsNotifyJob) OnReceive() *StatsNotifyJob {
|
|||
// Extract the command from the Message.
|
||||
switch update.Message.Command() {
|
||||
case "help":
|
||||
msg.Text = "What you need?"
|
||||
msg.Text = "چه کمکی از دست من برمیاد؟"
|
||||
msg.ReplyMarkup = numericKeyboard
|
||||
case "start":
|
||||
msg.Text = "Hi :) \n What you need?"
|
||||
msg.Text = "سلام :) \n چه کمکی از دست من برمیاد؟"
|
||||
msg.ReplyMarkup = numericKeyboard
|
||||
|
||||
case "status":
|
||||
msg.Text = "bot is ok."
|
||||
msg.Text = "ربات حالش خوبه، تو خوبی؟ :)"
|
||||
|
||||
case "usage":
|
||||
msg.Text = j.getClientUsage(update.Message.CommandArguments())
|
||||
default:
|
||||
msg.Text = "I don't know that command, /help"
|
||||
msg.Text = "این دستور شناخته شده نیست :(, /help"
|
||||
msg.ReplyMarkup = numericKeyboard
|
||||
|
||||
}
|
||||
|
@ -226,21 +226,21 @@ func (j *StatsNotifyJob) getClientUsage(id string) string {
|
|||
traffic, err := j.inboundService.GetClientTrafficById(id)
|
||||
if err != nil {
|
||||
logger.Warning(err)
|
||||
return "something wrong!"
|
||||
return "یه اشتباهی رخ داد!"
|
||||
}
|
||||
expiryTime := ""
|
||||
if traffic.ExpiryTime == 0 {
|
||||
expiryTime = fmt.Sprintf("unlimited")
|
||||
expiryTime = fmt.Sprintf("نامحدود")
|
||||
} else {
|
||||
expiryTime = fmt.Sprintf("%s", time.Unix((traffic.ExpiryTime/1000), 0).Format("2006-01-02 15:04:05"))
|
||||
}
|
||||
total := ""
|
||||
if traffic.Total == 0 {
|
||||
total = fmt.Sprintf("unlimited")
|
||||
total = fmt.Sprintf("نامحدود")
|
||||
} else {
|
||||
total = fmt.Sprintf("%s", common.FormatTraffic((traffic.Total)))
|
||||
}
|
||||
output := fmt.Sprintf("💡 Active: %t\r\n📧 Email: %s\r\n🔼 Upload↑: %s\r\n🔽 Download↓: %s\r\n🔄 Total: %s / %s\r\n📅 Expire in: %s\r\n",
|
||||
output := fmt.Sprintf("💡 فعال: %t\r\n📧 نام کاربری: %s\r\n🔼 آپلود↑: %s\r\n🔽 دانلود↓: %s\r\n🔄 مجموع: %s / %s\r\n📅 تاریخ انقضاء: %s\r\n",
|
||||
traffic.Enable, traffic.Email, common.FormatTraffic(traffic.Up), common.FormatTraffic(traffic.Down), common.FormatTraffic((traffic.Up + traffic.Down)),
|
||||
total, expiryTime)
|
||||
|
||||
|
|
Loading…
Reference in a new issue