-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathlanguages.lua
3895 lines (3893 loc) · 294 KB
/
languages.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
return {
en = {
status = {
kicked = '&&&1 is banned from this group',
left = '&&&1 left the group or has been kicked and unbanned',
administrator = '&&&1 is an Admin',
creator = '&&&1 is the group creator',
unknown = 'This user has nothing to do with this chat',
member = '&&&1 is a chat member'
},
userinfo = {
header_1 = '*Ban info (globals)*:\n',
header_2 = '*General info*:\n',
warns = '`Warns`: ',
media_warns = '`Media warns`: ',
group_msgs = '`Messages in the group`: ',
group_media = '`Media sent in the group`: ',
last_msg = '`Last message here`: ',
global_msgs = '`Total number of messages`: ',
global_media = '`Total number of media`: ',
remwarns_kb = 'Remove warns'
},
getban = {
header = '*Global stats* for ',
nothing = '`Nothing to display`',
kick = 'Kick: ',
ban = 'Ban: ',
tempban = 'Tempban: ',
flood = 'Removed for flood: ',
warn = 'Removed for warns: ',
media = 'Removed for forbidden media: ',
arab = 'Removed for Telegram Link posting: ',
rtl = 'Removed for RTL char: ',
kicked = '_Kicked!_',
banned = '_Banned!_'
},
bonus = {
general_pm = '_I\'ve sent you the message in private_',
no_user = 'I\'ve never seen this user before.\nIf you want to teach me who he is, forward me a message from him',
the_group = 'the group',
adminlist_admin_required = 'I\'m not a group Admin.\n*Only an Admin can see the administrators list*',
settings_header = 'Current settings for *the group*:\n\n*Language*: `&&&1`\n',
reply = '*Reply to someone* to use this command, or write a *username*',
too_long = 'This text is too long, I can\'t send it',
msg_me = '_Message me first so I can message you_',
menu_cb_settings = 'Tap on an icon!',
menu_cb_warns = 'Use the row below to change the warns settings!',
menu_cb_media = 'Tap on a switch!',
tell = '*Group ID*: &&&1',
},
not_mod = 'You are *not* a moderator',
breaks_markdown = 'This text breaks the markdown.\nMore info about a proper use of markdown [here](https://telegram.me/GroupButler_ch/46).',
credits = '*Some useful links:*',
extra = {
setted = '&&&1 command saved!',
new_command = '*New command set!*\n&&&1\n&&&2',
no_commands = 'No commands set!',
commands_list = 'List of *custom commands*:\n&&&1',
command_deleted = '&&&1 command has been deleted',
command_empty = '&&&1 command does not exist'
},
help = {
mods = {
banhammer = "*Moderators: banhammer powers*\n\n"
.."`!kick [by reply|username]` = kick a user from the group (he can be added again).\n"
.."`!ban [by reply|username]` = ban a user from the group (also from normal groups).\n"
.."`!tempban [minutes]` = ban an user for a specific amount of minutes (minutes must be < 10.080, one week). For now, only by reply.\n"
.."`!unban [by reply|username]` = unban the user from the group.\n"
.."`!user [by reply|username|id]` = returns a two pages messages: the first shows how many times the user has been banned *in all the groups* (divided in sections), "
.."the second page shows some general stats about the user: messages/media in the group, warns received and so on.\n"
.."`!status [username|id]` = show the current status of the user `(member|kicked/left the chat|banned|admin/creator|never seen)`.\n"
.."`!banlist` = show a list of banned users. Includes the motivations (if given during the ban)\n"
.."`!banlist -` = clean the banlist.\n"
.."\n*Note*: you can write something after `!ban` command (or after the username, if you are banning by username)."
.." This comment will be used as the motivation of the ban.",
info = "*Moderators: info about the group*\n\n"
.."`!setrules [group rules]` = set the new regulation for the group (the old will be overwritten).\n"
.."`!addrules [text]` = add some text at the end of the existing rules.\n"
.."`!setabout [group description]` = set a new description for the group (the old will be overwritten).\n"
.."`!addabout [text]` = add some text at the end of the existing description.\n"
.."\n*Note:* the markdown is supported. If the text sent breaks the markdown, the bot will notify that something is wrong.\n"
.."For a correct use of the markdown, check [this post](https://telegram.me/GroupButler_ch/46) in the channel",
flood = "*Moderators: flood settings*\n\n"
.."`!antiflood` = manage the flood settings in private, with an inline keyboard. You can change the sensitivity, the action (kick/ban), and even set some exceptions.\n"
.."`!antiflood [number]` = set how many messages a user can write in 5 seconds.\n"
.."_Note_ : the number must be higher than 3 and lower than 26.\n",
media = "*Moderators: media settings*\n\n"
.."`!media` = receive via private message an inline keyboard to change all the media settings.\n"
.."`!warnmax media [number]` = set the max number of warnings before be kicked/banned for has sent a forbidden media.\n"
.."`!nowarns (by reply)` = reset the number of warnings for the users (*NOTE: both regular warnings and media warnings*).\n"
.."`!media list` = show the current settings for all the media.\n"
.."\n*List of supported media*: _image, audio, video, sticker, gif, voice, contact, file, link_\n",
welcome = "*Moderators: welcome settings*\n\n"
.."`!menu` = receive in private the menu keyboard. You will find an option to enable/disable the welcome message.\n"
.."\n*Custom welcome message:*\n"
.."`!welcome Welcome $name, enjoy the group!`\n"
.."Write after \"/welcome\" your welcome message. You can use some placeholders to include the name/username/id of the new member of the group\n"
.."Placeholders: _$username_ (will be replaced with the username); _$name_ (will be replaced with the name); _$id_ (will be replaced with the id); _$title_ (will be replaced with the group title).\n"
.."\n*GIF/sticker as welcome message*\n"
.."You can use a particular gif/sticker as welcome message. To set it, reply to a gif/sticker with \'/welcome\'\n"
.."\n*Composed welcome message*\n"
.."You can compose your welcome message with the rules, the description and the moderators list.\n"
.."You can compose it by writing `!welcome` followed by the codes of what the welcome message has to include.\n"
.."_Codes_ : *r* = rules; *a* = description (about); *m* = adminlist.\n"
.."For example, with \"`!welcome rm`\", the welcome message will show rules and moderators list",
extra = "*Moderators: extra commands*\n\n"
.."`!extra [#trigger] [reply]` = set a reply to be sent when someone writes the trigger.\n"
.."_Example_ : with \"`!extra #hello Good morning!`\", the bot will reply \"Good morning!\" each time someone writes #hello.\n"
.."You can reply to a media (_photo, file, vocal, video, gif, audio_) with `!extra #yourtrigger` to save the #extra and receive that media each time you use # command\n"
.."`!extra list` = get the list of your custom commands.\n"
.."`!extra del [#trigger]` = delete the trigger and its message.\n"
.."\n*Note:* the markdown is supported. If the text sent breaks the markdown, the bot will notify that something is wrong.\n"
.."For a correct use of the markdown, check [this post](https://telegram.me/GroupButler_ch/46) in the channel",
warns = "*Moderators: warns*\n\n"
.."`!warn [by reply]` = warn a user. Once the max number is reached, he will be kicked/banned.\n"
.."`!warnmax` = set the max number of the warns before the kick/ban.\n"
.."\nHow to see how many warns a user has received: the number is showed in the second page of the `!user` command. In this page, you will see a button to reset this number.",
char = "*Moderators: special characters*\n\n"
.."`!menu` = you will receive in private the menu keyboard.\n"
.."Here you will find two particular options: _Telegram Links and RTL_.\n"
.."\n*Telegram Links*: when it's not allowed (🚫), everyone who posts a Telegram Link will be kicked from the group.\n"
.."*Rtl*: it stands for 'Righ To Left' character eg Hindi, Arabic etc, and it's the responsible of the weird service messages that are written in the opposite sense.\n"
.."When Rtl is not allowed (🚫), everyone that writes this character (or that has it in his name) will be kicked.",
links = "*Moderators: links*\n\n"
.."`!setlink [link|'no']` : set the group link, so it can be re-called by other admins, or unset it.\n"
.."`!link` = get the group link, if already setted by the owner.\n"
.."\n*Note*: the bot can recognize valid group links. If a link is not valid, you won't receive a reply.",
lang = "*Moderators: group language*\n\n"
.."`!lang` = choose the group language (can be changed in private too).\n"
.."\n*Note*: translators are volunteers, so I can't ensure the correctness of all the translations. And I can't force them to translate the new strings after each update (not translated strings are in english)."
.."\nAnyway, translations are open to everyone. Use `!strings` command to receive a _.lua_ file with all the strings (in english).\n"
.."Use `!strings [lang code]` to receive the file for that specific language (example: _/strings es_ ).\n"
.."In the file you will find all the instructions: follow them, and as soon as possible your language will be available ;)",
settings = "*Moderators: group settings*\n\n"
.."`!menu` = manage the group settings in private with an handy inline keyboard.\n"
.."`!report [on/off]` (by reply) = the user won't be able (_off_) or will be able (_on_) to use \"@admin\" command.\n",
},
all = '*Commands for all*:\n'
..'`!dashboard` : see all the group info from private\n'
..'`!rules` (if unlocked) : show the group rules\n'
..'`!about` (if unlocked) : show the group description\n'
..'`!adminlist` (if unlocked) : show the moderators of the group\n'
..'`@admin` (if unlocked) : by reply= report the message replied to all the admins; no reply (with text)= send a feedback to all the admins\n'
..'`!kickme` : get kicked by the bot\n'
..'`!faq` : some useful answers to frequent quetions\n'
..'`!id` : get the chat id, or the user id if by reply\n'
..'`!echo [text]` : the bot will send the text back (with markdown, available only in private for non-admin users)\n'
..'`!info` : show some useful informations about the bot\n'
..'`!group` : get the discussion group link\n'
..'`!f` <feedback> : send a feedback/report a bug/ask a question to my creator. _ANY KIND OF SUGGESTION OR FEATURE REQUEST IS WELCOME_. He will reply ASAP\n'
..'`!help` : show this message.'
..'\n\nIf you like this bot, please leave the vote you think it deserves [here](https://telegram.me/storebot?start=groupthorbot)',
private ='Hi, *&&&1*!\n'
..'\nI\'m A Simple Group Management Bot.\n'
..'\n*📍Change Log*\n'
..'1⃣Fully Updated To v3.2\n'
..'2⃣Strict Anti-Telegram Link Posting\n'
..'3⃣Bot is Now [Open-Source](https://github.com/kamikazechaser/GroupThorBot)\n'
..'\n*✅Features*\n'
..'1⃣Anti-Telegram Links\n'
..'2⃣Anti-Media Posting\n'
..'3⃣Ban/Kick By Reply\n'
..'4⃣Working Ban List\n'
..'5⃣Warn By Reply Which Automatically Kicks After The Max Warns\n'
..'\n*❗️NFO*\n'
..'1⃣Use `!` Before Commands\n'
..'2⃣Contact Me By Using `!f <YOUR MESSAGE>`\n'
..'3⃣Bot *MUST* Be Made Admin\n'
..'4⃣If The Group Is Public, A Ban Is Preffered Over A Kick\n'
..'5⃣Banhammer Commands Work With Reply\n'
..'\n*🔰Adding The Bot*\n'
..'1⃣Go To Administrators\n'
..'2⃣Search For `@GroupThorBot` And Add As Administrator\n'
..'3⃣In the group, Type `!help` To List The Commands\n'
..'4⃣Owner Can be Set By Replying At Any of The Owners Message with `!owner` Command\n'
..'\n*🌀Quick Settings* _type in group_\n'
..'1⃣`!menu`\n'
..'2⃣`!media`\n'
..'3⃣`!dashboard`\n'
..'4⃣`!antiflood`\n'
..'\n*🔨Extra Commands*\n'
..'1⃣`!ping`:Checks If Bot Is Online\n'
..'2⃣`!tell`:Reply To A User To Return His User Info\n'
..'3⃣`!info`:Returns General Info\n'
..'4⃣`!help`:Returns List Of Commands When Typed In A group\n'
..'5⃣`!banlist`:Returns List Of Users Who Have Been Kicked\n',
group_success = '_I\'ve sent you the help message in private_',
group_not_success = '_Please message me first so I can message you_',
initial = 'Choose the *role* to see the available commands:',
kb_header = 'Tap on a button to see the *related commands*'
},
links = {
no_link = '*No link* for this group. Ask the owner to generate one',
link = '[&&&1](&&&2)',
link_no_input = 'This is not a *public supergroup*, so you need to write the link near /setlink',
link_invalid = 'This link is *not valid!*',
link_updated = 'The link has been updated.\n*Here\'s the new link*: [&&&1](&&&2)',
link_setted = 'The link has been setted.\n*Here\'s the link*: [&&&1](&&&2)',
link_unsetted = 'Link *unsetted*',
poll_unsetted = 'Poll *unsetted*',
poll_updated = 'The poll has been updated.\n*Vote here*: [&&&1](&&&2)',
poll_setted = 'The link has been setted.\n*Vote here*: [&&&1](&&&2)',
no_poll = '*No active polls* for this group',
poll = '*Vote here*: [&&&1](&&&2)'
},
mod = {
modlist = '*Creator*:\n&&&1\n\n*Admins*:\n&&&2'
},
report = {
no_input = 'Write your suggestions/bugs/doubt near the !',
sent = 'Feedback sent!',
feedback_reply = '*Hello, this is a reply from the bot owner*:\n&&&1',
},
service = {
welcome = 'Hi &&&1, and welcome to *&&&2*!',
welcome_rls = 'Total anarchy!',
welcome_abt = 'No description for this group.',
welcome_modlist = '\n\n*Creator*:\n&&&1\n*Admins*:\n&&&2',
abt = '\n\n*Description*:\n',
rls = '\n\n*Rules*:\n',
},
setabout = {
no_bio = '*No description* for this group.',
no_bio_add = '*No description for this group*.\nUse /setabout [bio] to set-up a new description',
no_input_add = 'Please write something next this poor "/addabout"',
added = '*Description added:*\n"&&&1"',
no_input_set = 'Please write something next this poor "/setabout"',
clean = 'The bio has been cleaned.',
new = '*New bio:*\n"&&&1"',
about_setted = 'New description *saved successfully*!'
},
setrules = {
no_rules = '*Total anarchy*!',
no_rules_add = '*No rules* for this group.\nUse /setrules [rules] to set-up a new constitution',
no_input_add = 'Please write something next this poor "/addrules"',
added = '*Rules added:*\n"&&&1"',
no_input_set = 'Please write something next this poor "/setrules"',
clean = 'Rules has been wiped.',
new = '*New rules:*\n"&&&1"',
rules_setted = 'New rules *saved successfully*!'
},
settings = {
disable = {
rules_locked = '/rules command is now available only for moderators',
about_locked = '/about command is now available only for moderators',
welcome_locked = 'Welcome message won\'t be displayed from now',
modlist_locked = '/adminlist command is now available only for moderators',
flag_locked = '/flag command won\'t be available from now',
extra_locked = '#extra commands are now available only for moderator',
flood_locked = 'Anti-flood is now off',
report_locked = '@admin command won\'t be available from now',
admin_mode_locked = 'Admin mode off',
},
enable = {
rules_unlocked = '/rules command is now available for all',
about_unlocked = '/about command is now available for all',
welcome_unlocked = 'Welcome message will be displayed',
modlist_unlocked = '/adminlist command is now available for all',
flag_unlocked = '/flag command is now available',
extra_unlocked = 'Extra # commands are now available for all',
flood_unlocked = 'Anti-flood is now on',
report_unlocked = '@admin command is now available',
admin_mode_unlocked = 'Admin mode on',
},
welcome = {
no_input = 'Welcome and...?',
media_setted = 'New media setted as welcome message: ',
reply_media = 'Reply to a `sticker` or a `gif` to set them as *welcome message*',
a = 'New settings for the welcome message:\nRules\n*About*\nModerators list',
r = 'New settings for the welcome message:\n*Rules*\nAbout\nModerators list',
m = 'New settings for the welcome message:\nRules\nAbout\n*Moderators list*',
ra = 'New settings for the welcome message:\n*Rules*\n*About*\nModerators list',
rm = 'New settings for the welcome message:\n*Rules*\nAbout\n*Moderators list*',
am = 'New settings for the welcome message:\nRules\n*About*\n*Moderators list*',
ram = 'New settings for the welcome message:\n*Rules*\n*About*\n*Moderators list*',
no = 'New settings for the welcome message:\nRules\nAbout\nModerators list',
wrong_input = 'Argument unavailable.\nUse _/welcome [no|r|a|ra|ar]_ instead',
custom = '*Custom welcome message* setted!\n\n&&&1',
custom_setted = '*Custom welcome message saved!*',
wrong_markdown = '_Not setted_ : I can\'t send you back this message, probably the markdown is *wrong*.\nPlease check the text sent',
},
resume = {
header = 'Current settings for *&&&1*:\n\n*Language*: `&&&2`\n',
w_a = '*Welcome type*: `welcome + about`\n',
w_r = '*Welcome type*: `welcome + rules`\n',
w_m = '*Welcome type*: `welcome + adminlist`\n',
w_ra = '*Welcome type*: `welcome + rules + about`\n',
w_rm = '*Welcome type*: `welcome + rules + adminlist`\n',
w_am = '*Welcome type*: `welcome + about + adminlist`\n',
w_ram = '*Welcome type*: `welcome + rules + about + adminlist`\n',
w_no = '*Welcome type*: `welcome only`\n',
w_media = '*Welcome type*: `gif/sticker`\n',
w_custom = '*Welcome type*: `custom message`\n',
legenda = '✅ = _enabled/allowed_\n🚫 = _disabled/not allowed_\n👥 = _sent in group (always for admins)_\n👤 = _sent in private_'
},
char = {
arab_kick = 'Telegram Link posting will lead to a kick',
arab_ban = 'Telegram Link posting will lead to a ban',
arab_allow = 'Telegram Links Allowed',
rtl_kick = 'The use of the RTL character will lead to a kick',
rtl_ban = 'The use of the RTL character will lead to a ban',
rtl_allow = 'RTL character allowed',
},
broken_group = 'There are no settings saved for this group.\nPlease run /initgroup to solve the problem :)',
Rules = '/rules',
About = '/about',
Welcome = 'Welcome message',
Modlist = '/adminlist',
Flag = 'Flag',
Extra = 'Extra',
Flood = 'Anti-flood',
Rtl = 'Rtl',
Arab = 'Telegram Links',
Report = 'Report',
Admin_mode = 'Admin mode',
},
warn = {
warn_reply = 'Reply to a message to warn the user',
changed_type = 'New action on max number of warns received: *&&&1*',
mod = 'A moderator can\'t be warned',
warned_max_kick = 'User &&&1 *kicked*: reached the max number of warnings',
warned_max_ban = 'User &&&1 *banned*: reached the max number of warnings',
warned = '&&&1 *has been warned.*\n_Number of warnings_ *&&&2*\n_Max allowed_ *&&&3*',
warnmax = 'Max number of warnings changed&&&3.\n*Old* value: &&&1\n*New* max: &&&2',
getwarns_reply = 'Reply to a user to check his numebr of warns',
getwarns = '&&&1 (*&&&2/&&&3*)\nMedia: (*&&&4/&&&5*)',
nowarn_reply = 'Reply to a user to delete his warns',
warn_removed = '*Warn removed!*\n_Number of warnings_ *&&&1*\n_Max allowed_ *&&&2*',
ban_motivation = 'Too many warnings',
inline_high = 'The new value is too high (>12)',
inline_low = 'The new value is too low (<1)',
zero = 'The number of warnings received by this user is already _zero_',
nowarn = 'The number of warns received by this user have been *reset*'
},
setlang = {
list = '*List of available languages:*',
success = '*New language set:* &&&1',
error = 'Language not yet supported'
},
banhammer = {
kicked = '`&&&1` kicked `&&&2`!',
banned = '`&&&1` banned `&&&2`!',
already_banned_normal = '&&&1 is *already banned*!',
unbanned = 'User unbanned!',
reply = 'Reply to someone',
globally_banned = '&&&1 has been globally banned!',
not_banned = 'The user is not banned',
banlist_header = '*Banned users*:\n\n',
banlist_empty = '_The list is empty_',
banlist_error = '_An error occurred while cleaning the banlist_',
banlist_cleaned = '_The banlist has been cleaned_',
tempban_zero = 'For this, you can directly use /ban',
tempban_week = 'The time limit is one week (10.080 minutes)',
tempban_banned = 'User &&&1 banned. Ban expiration:',
tempban_updated = 'Ban time updated for &&&1. Ban expiration:',
general_motivation = 'I can\'t kick this user.\nProbably I\'m not an Admin, or the user is an Admin him/herself'
},
floodmanager = {
number_invalid = '`&&&1` is not a valid value!\nThe value should be *higher* than `3` and *lower* then `26`',
not_changed = 'The max number of messages is already &&&1',
changed_plug = 'The *max number* of messages (in *5 seconds*) changed _from_ &&&1 _to_ &&&2',
kick = 'Now flooders will be kicked',
ban = 'Now flooders will be banned',
changed_cross = '&&&1 -> &&&2',
text = 'Texts',
image = 'Images',
sticker = 'Stickers',
gif = 'Gif',
video = 'Videos',
sent = '_I\'ve sent you the anti-flood menu in private_',
ignored = '[&&&1] will be ignored by the anti-flood',
not_ignored = '[&&&1] won\'t be ignored by the anti-flood',
number_cb = 'Current sensitivity. Tap on the + or the -',
header = 'You can manage the group flood settings from here.\n'
..'\n*1st row*\n'
..'• *ON/OFF*: the current status of the anti-flood\n'
..'• *Kick/Ban*: what to do when someone is flooding\n'
..'\n*2nd row*\n'
..'• you can use *+/-* to change the current sensitivity of the antiflood system\n'
..'• the number it\'s the max number of messages that can be sent in _5 seconds_\n'
..'• max value: _25_ - min value: _4_\n'
..'\n*3rd row* and below\n'
..'You can set some exceptions for the antiflood:\n'
..'• ✅: the media will be ignored by the anti-flood\n'
..'• ❌: the media won\'t be ignored by the anti-flood\n'
..'• *Note*: in "_texts_" are included all the other types of media (file, audio...)'
},
mediasettings = {
warn = 'This kind of media are *not allowed* in this group.\n_The next time_ you will be kicked or banned',
settings_header = '*Current settings for media*:\n\n',
changed = 'New status for [&&&1] = &&&2',
},
preprocess = {
flood_ban = '&&&1 *banned* for flood!',
flood_kick = '&&&1 *kicked* for flood!',
media_kick = '&&&1 *kicked*: media sent not allowed!',
media_ban = '&&&1 *banned*: media sent not allowed!',
rtl_kicked = '&&&1 *kicked*: rtl character in names/messages not allowed!',
arab_kicked = '&&&1 *kicked*: Telegram Link detected!',
rtl_banned = '&&&1 *banned*: rtl character in names/messages not allowed!',
arab_banned = '&&&1 *banned*: Telegram Link detected!',
flood_motivation = 'Banned for flood',
media_motivation = 'Sent a forbidden media',
first_warn = 'This type of media is *not allowed* in this chat.'
},
kick_errors = {
[1] = 'I\'m not an admin, I can\'t kick people',
[2] = 'I can\'t kick or ban an admin',
[3] = 'There is no need to unban in a normal group',
[4] = 'This user is not a chat member',
},
flag = {
no_input = 'Reply to a message to report it to an admin, or write something next \'@admin\' to send a feedback to them',
reported = 'Reported!',
no_reply = 'Reply to a user!',
blocked = 'The user from now can\'t use \'@admin\'',
already_blocked = 'The user is already unable to use \'@admin\'',
unblocked = 'The user now can use \'@admin\'',
already_unblocked = 'The user is already able to use \'@admin\'',
},
all = {
dashboard = {
private = '_I\'ve sent you the group dashboard in private_',
first = 'Navigate this message to see *all the info* about this group!',
antiflood = '- *Status*: `&&&1`\n- *Action* when an user floods: `&&&2`\n- Number of messages *every 5 seconds* allowed: `&&&3`\n- *Ignored media*:\n&&&4',
settings = 'Settings',
admins = 'Admins',
rules = 'Rules',
about = 'Description',
welcome = 'Welcome message',
extra = 'Extra commands',
media = 'Media settings',
flood = 'Flood settings'
},
menu = '_I\'ve sent you the settings menu in private_',
menu_first = 'Manage the settings of the group.\n'
..'\nSome commands (_/rules, /about, /adminlist, #extra commands_) can be *disabled for non-admin users*\n'
..'What happens if a command is disabled for non-admins:\n'
..'• If the command is triggered by an admin, the bot will reply *in the group*\n'
..'• If the command is triggered by a normal user, the bot will reply *in the private chat with the user* (obviously, only if the user has already started the bot)\n'
..'\nThe icons near the command will show the current status:\n'
..'• 👥: the bot will reply *in the group*, with everyone\n'
..'• 👤: the bot will reply *in private* with normal users and in the group with admins\n'
..'\n*Other settings*: for the other settings, icon are self explanatory\n',
media_first = 'Tap on a voice in the right colon to *change the setting*\n'
..'You can use the last line to change how many warnings should the bot give before kick/ban someone for a forbidden media\n'
..'The number is not related the the normal `!warn` command',
},
},
it = {
status = {
kicked = '&&&1 è bannato da questo gruppo',
left = '&&&1 ha lasciato il gruppo, o è stato kickato e unbannato',
administrator = '&&&1 è un Admin',
creator = '&&&1 è il creatore del gruppo',
unknown = 'Questo utente non ha nulla a che fare con questo gruppo',
member = '&&&1 è un membro del gruppo'
},
getban = {
header = '*Info globali* su ',
nothing = '`Nulla da segnalare`',
kick = 'Kick: ',
ban = 'Ban: ',
tempban = 'Tempban: ',
flood = 'Rimosso per flood: ',
warn = 'Rimosso per warns: ',
media = 'Rimosso per media vietati: ',
arab = 'Rimosso per caratteri telegram Linki: ',
rtl = 'Rimosso per carattere RTL: ',
kicked = '_Kickato!_',
banned = '_Bannato!_'
},
userinfo = {
header_1 = '*Ban info (globali)*:\n',
header_2 = '*Info generali*:\n',
warns = '`Warns`: ',
media_warns = '`Warns per media`: ',
group_msgs = '`Messaggi nel gruppo`: ',
group_media = '`Media nel gruppo`: ',
last_msg = '`Ultimo messaggio`: ',
global_msgs = '`Numero totale di messaggi`: ',
global_media = '`Numero totale di media`: ',
remwarns_kb = 'Azzera i warns'
},
bonus = {
general_pm = '_Ti ho inviato il messaggio in privato_',
the_group = 'il gruppo',
settings_header = 'Impostazioni correnti per *il gruppo*:\n\n*Lingua*: `&&&1`\n',
no_user = 'Non ho mai visto questo utente prima.\nSe vuoi insegnarmi dirmi chi è, inoltrami un suo messaggio',
reply = '*Rispondi a qualcuno* per usare questo comando, o scrivi lo *username*',
adminlist_admin_required = 'Non sono un Admin del gruppo.\n*Solo un Admin puà vedere la lista degli amministratori*',
too_long = 'Questo testo è troppo lungo, non posso inviarlo',
msg_me = '_Scrivimi prima tu, in modo che io possa scriverti_',
menu_cb_settings = 'Tocca le icone sulla destra!',
menu_cb_warns = 'Usa la riga sottostante per modificare le impostazioni dei warns!',
menu_cb_media = 'Usa uno switch!',
tell = '*ID gruppo*: &&&1'
},
not_mod = '*Non sei* un moderatore!',
breaks_markdown = 'Questo messaggio impedisce il markdown.\nControlla quante volte hai usato asterischi oppure underscores.\nPiù info [qui](https://telegram.me/GroupButler_ch/46)',
credits = '*Alcuni link utili:*',
extra = {
setted = '&&&1 salvato!',
new_command = '*Nuovo comando impostato!*\n&&&1\n&&&2',
no_commands = 'Nessun comando impostato!',
commands_list = 'Lista dei *comandi personalizzati*:\n&&&1',
command_deleted = 'Il comando personalizzato &&&1 è stato eliminato',
command_empty = 'Il comando &&&1 non esiste'
},
help = {
mods = {
banhammer = "*Moderatori: il banhammer*\n\n"
.."`!kick [by reply|username]` = kicka un utente dal gruppo (potrà essere aggiunto nuovamente).\n"
.."`!ban [by reply|username]` = banna un utente dal gruppo (anche per gruppi normali).\n"
.."`!tempban [minutes]` = banna un utente per un tot di minuti (i minuti devono essere < 10.080, ovvero una settimana). Per ora funziona solo by reply.\n"
.."`!unban [by reply|username]` = unbanna l\'utente dal gruppo.\n"
.."`!user [by reply|username|id]` = mostra un messaggio di due pagine: la prima mostra quante volte l'utente è stato bannato/kickato *da tutti i gruppi del bot* (diviso in categorie), "
.."la seconda pagina mostra alcune statistiche generali sull'utente: messaggi media inviati nel gruppo, warn ricevuti e così via.\n"
.."`!status [username|id]` = mostra la posizione attuale dell\'utente `(membro|kickato/ha lasciato il gruppo|bannato|admin/creatore|mai visto)`.\n"
.."`!banlist` = mostra la lista degli utenti bannati. Sono incluse le motivazioni (se descritte durante il ban).\n"
.."`!banlist -` = elimina la lista degli utenti bannati.\n"
.."\n*Nota*: puoi scrivere qualcosa dopo il comando `!ban` (o dopo l'username, se stai bannando per username)."
.." Questo commento verrà considerato la motivazione.",
info = "*Moderatori: info sul gruppo*\n\n"
.."`!setrules [regole del gruppo]` = imposta il regolamento del gruppo (quello vecchio verrà eventualmente sovrascritto).\n"
.."`!addrules [testo]` = aggiungi del testo al regolamento già esistente.\n"
.."`!setabout [descrizione]` = imposta una nuova descrizione per il gruppo (quella vecchia verrà eventualmente sovrascritta).\n"
.."`!addabout [testo]` = aggiungi del testo alla descrizione già esistente.\n"
.."\n*Nota:* il markdown è permesso. Se del testo presenta un markdown scorretto, il bot notificherà che qualcosa è andato storto.\n"
.."Per un markdown corretto, consulta [questo post](https://telegram.me/GroupButler_ch/46) nel canale ufficiale",
flood = "*Moderatori: impostazioni flood*\n\n"
.."`!antiflood` = gestisci le impostazioni dell\'antiflood in privato, tramite una tastiera inline. Puoi cambiare la sensibilità, l\'azione (kick/ban), ed anche impostare una lista di media ignorati.\n"
.."`!antiflood [numero]` = imposta quanti messaggi possono essere inviati in 5 secondi senza attivare l\'anti-flood.\n"
.."_Nota_ : il numero deve essere maggiore di 3 e minore di 26.\n",
media = "*Moderatori: impostazioni media*\n\n"
.."`!media` = ricevi in privato una tastiera inline per gestire le impostazioni di tutti i media.\n"
.."`!warnmax media [numero]` = imposta il numero massimo di warning prima di essere kickato/bannato per aver inviato un media vietato.\n"
.."`!nowarns (by reply)` = resetta il numero di warnings ricevuti dall'utente (*NOTA: sia warn normali che warn per i media*).\n"
.."`!media list` = mostra l'elenco delle impostazioni attuali per i media.\n"
.."\n*Lista dei media supportati*: _image, audio, video, sticker, gif, voice, contact, file, link_\n",
welcome = "*Moderatori: messaggio di benvenuto*\n\n"
.."`!menu` = ricevi in privato la tastiera del menu. Lì troverai un\'opzione per abilitare/disabilitare il messaggio di benvenuto.\n"
.."\n*Messaggio di benvenuto personalizzato:*\n"
.."`!welcome Benvenuto $name, benvenuto nel gruppo!`\n"
.."Scrivi dopo \"/welcome\" il tuo benvenuto personalizzato. Puoi usare dei segnaposto per includere nome/username/id del nuovo membro del gruppo\n"
.."Segnaposto: _$username_ (verrà sostituito con lo username); _$name_ (verrà sostituito col nome); _$id_ (verrà sostituito con l\'id); _$title_ (verrà sostituito con il nome del gruppo).\n"
.."\n*GIF/sticker come messaggio di benvenuto*\n"
.."Puoi usare una gif/uno sticker per dare il benvenuto ai nuovi membri. Per impostare la gif/sticker, invialo e rispondigli con \'/welcome\'\n"
.."\n*Messaggio di benvenuto composto*\n"
.."Puoi comporre il messaggio di benvenuto con le regole, la descrizione e la lista dei moderatori.\n"
.."Per comporlo, scrivi `!welcome` seguito dai codici di cosa vuoi includere nel messaggio.\n"
.."_Codici_ : *r* = regole; *a* = descrizione (about); *m* = moderatori.\n"
.."Ad esempio, con \"`!welcome rm`\"il messaggio di benvenuto mostrerà regole e moderatori",
extra = "*Moderatori: comandi extra*\n\n"
.."`!extra [#comando] [risposta]` = scrivi la risposta che verrà inviata quando il comando viene scritto.\n"
.."_Esempio_ : con \"`!extra #ciao Buon giorno!`\", il bot risponderà \"Buon giorno!\" ogni qualvolta qualcuno scriverà #ciao.\n"
.."Puoi anche rispondere ad un media (_foto, file, vocale, video, gif, musica_) con `!extra #quellochevuoi` per salvare l'extra e ricevere il media ogni volta che usi il #comando impostato.\n"
.."`!extra list` = ottieni la lista dei comandi personalizzati impostati.\n"
.."`!extra del [#comando]` = elimina il comando ed il messaggio associato.\n"
.."\n*Nota:* il markdown è permesso. Se del testo presenta un markdown scorretto, il bot notificherà che qualcosa è andato storto.\n"
.."Per un markdown corretto, consulta [questo post](https://telegram.me/GroupButler_ch/46) nel canale ufficiale",
warns = "*Moderatori: warns*\n\n"
.."`!warn [by reply]` = ammonisci (warn) un utente. Quando il numero massimo di warn viene raggiunto dall\'utente, verrà kickato/bannato.\n"
.."`!warnmax` = imposta il numero massimo di richiami prima di kickare/bannare.\n"
.."\nCome vedere quanti warn ha ricevuto un utente: il numero è mostrato nella seconda pagina del comando `!user`. In questa pagina, potrai trovare un tasto per resettare il numero.",
char = "*Moderatori: i caratteri*\n\n"
.."`!menu` = riceverai la tastiera del menu in privato dove potrai trovare due opzioni particolari: _telegram Linko ed Rtl_.\n"
.."\n*telegram Linko*: quando l'telegram Linko non è permesso (🚫), chiunque scriva un carattere telegram Linko verrà kickato dal gruppo.\n"
.."*Rtl*: sta per carattere 'Right To Left'. In poche parole, se inserito nel proprio nome, qualsiasi stringa (scritta) dell\'app di Telegram che contiene il nome dell'utente verrà visualizzata al contrario"
.." (ad esempio, lo 'sta scrivendo'). Quando il carattere Rtl non è permesso (🚫), chiunque ne farà utilizzo nel nome (o nei messaggi) verrà kickato.",
links = "*Moderatori: link*\n\n"
..'`!setlink [link|\'no\']` : imposta il link del gruppo, in modo che possa essere richiesto da altri Admin, oppure eliminalo\n'
.."`!link` = ottieni il link del gruppo, se già impostato dal proprietario\n"
.."\n*Nota*: il bot può riconoscere link validi a gruppi/sondaggi. Se il link non è valido, non otterrai una risposta.",
lang = "*Moderatori: linguaggio del bot*\n\n"
.."`!lang` = scegli la lingua del bot (può essere cambiata anche in privato).\n"
.."\n*Nota*: i traduttori sono utenti volontari, quindi non posso assicurare la correttezza delle traduzioni. E non posso costringerli a tradurre le nuove stringhe dopo un aggiornamento (le stringhe non tradotte saranno in inglese)."
.."\nComunque, chiunque può tradurre il bot. Usa il comando `!strings` per ricevere un file _.lua_ con tutte le stringhe (in inglese).\n"
.."Usa `!strings [codice lingua]` per ricevere il file associato alla lingua richiesta (esempio: _/strings es_ ).\n"
.."Nel file troverai tutte le istruzioni: seguile, e il linguggio sarà disponibile il prima possibile ;) (traduzione in italiano NON NECESSARIA)",
settings = "*Moderatori: impostazioni del gruppo*\n\n"
.."`!menu` = gestisci le impostazioni del gruppo in privato tramite una comoda tastiera inline.\n"
.."`!report [on/off]` (by reply) = l'utente non potrà (_off_) o potrà (_on_) usare il comando \"@admin\".\n",
},
all = '*Comandi per tutti*:\n'
..'`!dashboard` : consulta tutte le info sul gruppo in privato\n'
..'`!rules` (se sbloccato) : mostra le regole del gruppo\n'
..'`!about` (se sbloccato) : mostra la descrizione del gruppo\n'
..'`!adminlist` (se sbloccato) : mostra la lista dei moderatori\n'
..'`@admin` (se sbloccato) : by reply= inoltra il messaggio a cui hai risposto agli admin; no reply (con descrizione)= inoltra un feedback agli admin\n'
..'`!kickme` : fatti kickare dal bot\n'
..'`!faq` : le risposte alle domande più frequenti\n'
..'`!id` : mostra l\'id del gruppo, oppure l\'id dell\'utente a cui si ha risposto\n'
..'`!echo [testo]` : il bot replicherà il testo scritto (markdown supportato, disponibile solo in privato per non-admin)\n'
..'`!info` : mostra alcune info sul bot\n'
..'`!group` : ottieni il link del gruppo di discussione (inglese)\n'
..'`!c` <feedback> : invia un feedback/segnala un bug/fai una domanda al creatore. _OGNI GENERE DI SUGGERIMENTO E\' IL BENVENUTO_. Risponderà ASAP\n'
..'`!help` : show this message.'
..'\n\nSe ti piace questo bot, per favore lascia il voto che credi si meriti [qui](https://telegram.me/storebot?start=groupbutler_bot)',
private = 'Hey, *&&&1*!\n'
..'Sono un semplice bot creato con lo scopo di aiutare gli utenti di Telegram ad amministrare i propri gruppi.\n'
..'\n*Cosa posso fare per aiutarti?*\n'
..'Beh, ho un sacco di funzioni utili!\n'
..'• Puoi *kickare or bannare* gli utenti (anche in gruppi normali) by reply o by username\n'
..'• Puoi impostare regole e descrizione\n'
..'• Puoi attivare un *anti-flood* configurabile\n'
..'• Puoi personalizzare il *messaggio di benvenuto*, ed usare anche gif e sticker\n'
..'• Puoi ammonire gli utenti, e kickarli/bannarli se raggiungono il numero massimo di ammonizioni\n'
..'• Puoi decidere se ammonire o kickare gli utenti che inviano un media specifico\n'
..'...e questo è solo l\'inizio, puoi trovare tutti i comandi disponibili premendo sul pulsante "all commands", appena qui sotto :)\n'
..'\nPer usarmi, *devo essere impostato come amministratore*, o non potrò funzionare correttamente! (se non ti fidi, spero di toglierti qualche dubbio sul perchè di questa necessità con [questo post](https://telegram.me/GroupButler_ch/63))'
..'\nPuoi segnalare bug/inviare un feedback/fare una domanda al mio creatore usando il comando "`!c <feedback>`". SI ACCETTA QUALSIASI RICHIESTA/SEGNALAZIONE!',
group_success = '_Ti ho inviato il messaggio in privato_',
group_not_success = '_Per favore, avviami cosicchè io possa risponderti_',
initial = 'Scegli un *ruolo* per visualizzarne i comandi:',
kb_header = 'Scegli una voce per visualizzarne i *comandi associati*'
},
links = {
no_link = '*Nessun link* per questo gruppo. Chiedi al proprietario di settarne uno',
link = '[&&&1](&&&2)',
link_invalid = 'Questo link *non è valido!*',
link_no_input = 'Questo non è un *supergruppo pubblico*, quindi devi specificare il link affianco a /setlink',
link_updated = 'Il link è stato aggiornato.\n*Ecco il nuovo link*: [&&&1](&&&2)',
link_setted = 'Il link è stato impostato.\n*Ecco il link*: [&&&1](&&&2)',
link_unsetted = 'Link *rimosso*',
poll_unsetted = 'Sondaggio *rimosso*',
poll_updated = 'Il sondaggio è stato aggiornato.\n*Vota qui*: [&&&1](&&&2)',
poll_setted = 'Il sondaggio è stato impostato.\n*Vota qui*: [&&&1](&&&2)',
no_poll = '*Nessun sondaggio attivo* in questo gruppo',
poll = '*Vota qui*: [&&&1](&&&2)'
},
mod = {
modlist = '*Creatore*:\n&&&1\n\n*Admin*:\n&&&2',
},
report = {
no_input = 'Scrivi il tuo suggerimento/bug/dubbio accanto al punto esclamativo (!)',
sent = 'Feedback inviato!',
feedback_reply = '*Hello, this is a reply from the bot owner*:\n&&&1',
},
service = {
welcome = 'Ciao &&&1, e benvenuto/a in *&&&2*!',
welcome_rls = 'Anarchia totale!',
welcome_abt = 'Nessuna descrizione per questo gruppo.',
welcome_modlist = '\n\n*Creatore*:\n&&&1\n*Admin*:\n&&&2',
abt = '\n\n*Descrizione*:\n',
rls = '\n\n*Regole*:\n',
},
setabout = {
no_bio = '*Nessuna descrizione* per questo gruppo.',
no_bio_add = '*Nessuna descrizione per questo gruppo*.\nUsa /setabout [descrizione] per impostare una nuova descrizione',
no_input_add = 'Per favore, scrivi qualcosa accanto a "/addabout"',
added = '*Descrzione aggiunta:*\n"&&&1"',
no_input_set = 'Per favore, scrivi qualcosa accanto a "/setabout"',
clean = 'La descrizione è stata eliminata.',
new = '*Nuova descrizione:*\n"&&&1"',
about_setted = 'La nuova descrizione *è stata salvata correttamente*!'
},
setrules = {
no_rules = '*Anarchia totale*!',
no_rules_add = '*Nessuna regola* in questo gruppo.\nUsa /setrules [regole] per impostare delle nuove regole',
no_input_add = 'Per favore, scrivi qualcosa accanto a "/addrules"',
added = '*Rules added:*\n"&&&1"',
no_input_set = 'Per favore, scrivi qualcosa accanto a "/setrules"',
clean = 'Le regole sono state eliminate.',
new = '*Nuove regole:*\n"&&&1"',
rules_setted = 'Le nuove regole *sono state salvate correttamente*!'
},
settings = {
disable = {
rules_locked = '/rules è ora utilizzabile solo dai moderatori',
about_locked = '/about è ora utilizzabile solo dai moderatori',
welcome_locked = 'Il messaggio di benvenuto non verrà mostrato da ora',
modlist_locked = '/adminlist è ora utilizzabile solo dai moderatori',
flag_locked = '/flag command won\'t be available from now',
extra_locked = 'I comandi #extra sono ora utilizzabili solo dai moderatori',
rtl_locked = 'Anti-RTL è ora on',
flood_locked = 'L\'anti-flood è ora off',
arab_locked = 'Anti-caratteri telegram Linki è ora on',
report_locked = '@admin non sarà disponibile da ora',
admin_mode_locked = 'Admin mode off',
},
enable = {
rules_unlocked = '/rules è ora utilizzabile da tutti',
about_unlocked = '/about è ora utilizzabile da tutti',
welcome_unlocked = 'il messaggio di benvenuto da ora verrà mostrato',
modlist_unlocked = '/adminlist è ora utilizzabile da tutti',
flag_unlocked = '/flag command is now available',
extra_unlocked = 'I comandi #extra sono già disponibili per tutti',
rtl_unlocked = 'Anti-RTL è ora off',
flood_unlocked = 'L\'anti-flood è ora on',
arab_unlocked = 'Anti-caratteri telegram Linki è ora off',
report_unlocked = '@admin è ora disponibile',
admin_mode_unlocked = 'Admin mode on',
},
welcome = {
no_input = 'Welcome e...?',
media_setted = 'Media impostato come messaggio di benvenuto: ',
reply_media = 'Rispondi ad uno `sticker` a ad una `gif` per usarli come *messaggio di benvenuto*',
a = 'Nuove impostazioni per il messaggio di benvenuto:\nRegole\n*Descrizione*\nLista dei moderatori',
r = 'Nuove impostazioni per il messaggio di benvenuto:\n*Regole*\nDescrizione\nLista dei moderatori',
m = 'Nuove impostazioni per il messaggio di benvenuto:\nRegole\nDescrizione\n*Lista dei moderatori*',
ra = 'Nuove impostazioni per il messaggio di benvenuto:\n*Regole*\n*Descrizione*\nLista dei moderatori',
rm = 'Nuove impostazioni per il messaggio di benvenuto:\n*Regole*\nDescrizione\n*Lista dei moderatori*',
am = 'Nuove impostazioni per il messaggio di benvenuto:\nRegole\n*Descrizione*\n*Lista dei moderatori*',
ram = 'Nuove impostazioni per il messaggio di benvenuto:\n*Regole*\n*Descrizione*\n*Lista dei moderatori*',
no = 'Nuove impostazioni per il messaggio di benvenuto:\nRegole\nDescrizione\nLista dei moderatori',
wrong_input = 'Argomento non disponibile.\nUsa invece _/welcome [no|r|a|ra|ar]_',
custom = '*Messaggio di benvenuto personalizzato* impostato!\n\n&&&1',
custom_setted = '*Messaggio di benvenuto personalizzato salvato!*',
wrong_markdown = '_Non impostato_ : non posso reinviarti il messaggio, probabilmente il markdown usato è *sbagliato*.\nPer favore, controlla il messaggio inviato e riprova',
},
resume = {
header = 'Impostazioni correnti di *&&&1*:\n\n*Lingua*: `&&&2`\n',
w_media = "*Tipo di benvenuto*: `gif/sticker`\n",
w_custom = "*Tipo di benvenuto*: `messaggio personalizzato`\n",
w_a = '*Tipo di benvenuto*: `benvenuto + descrizione`\n',
w_r = '*Tipo di benvenuto*: `benvenuto + regole`\n',
w_m = '*Tipo di benvenuto*: `benvenuto + moderatori`\n',
w_ra = '*Tipo di benvenuto*: `benvenuto + regole + descrizione`\n',
w_rm = '*Tipo di benvenuto*: `benvenuto + regole + moderatori`\n',
w_am = '*Tipo di benvenuto*: `benvenuto + descrizione + moderatori`\n',
w_ram = '*Tipo di benvenuto*: `benvenuto + regole + descrizione + moderatori`\n',
w_no = '*Tipo di benvenuto*: `solo benvenuto`\n',
w_media = '*Tipo di benvenuto*: `gif/sticker`\n',
legenda = '✅ = _abilitato/permesso_\n🚫 = _disabilitato/non permesso_\n👥 = _inviato nel gruppo (sempre, per gli admin)_\n👤 = _inviato in privato_'
},
char = {
arab_kick = 'Messaggi in telegram Linko = kick',
arab_ban = 'Messaggi in telegram Linko = ban',
arab_allow = 'Messaggi in telegram Linko permessi',
rtl_kick = 'Uso del carattere RTL = kick',
rtl_ban = 'Uso del carattere RTL = ban',
rtl_allow = 'Carattere RTL consentito',
},
broken_group = 'Sembra che questo gruppo non abbia delle impostazioni salvate.\nPer favore, usa /initgroup per risolvere il problem :)',
Rules = '/rules',
About = '/about',
Welcome = 'Messaggio di benvenuto',
Modlist = '/adminlist',
Flag = 'Flag',
Extra = 'Extra',
Flood = 'Anti-flood',
Rtl = 'Rtl',
Arab = 'telegram Linko',
Report = 'Report',
Admin_mode = 'Admin mode',
},
warn = {
warn_reply = 'Rispondi ad un messaggio per ammonire un utente (warn)',
changed_type = 'Nuova azione: *&&&1*',
mod = 'Un moderatore non può essere ammonito',
warned_max_kick = 'Utente &&&1 *kickato*: raggiunto il numero massimo di warns',
warned_max_ban = 'Utente &&&1 *bannato*: raggiunto il numero massimo di warns',
warned = '*L\'utente* &&&1 *è stato ammonito.*\n_Numero di ammonizioni_ *&&&2*\n_Max consentito_ *&&&3*',
warnmax = 'Numero massimo di waning aggiornato&&&3.\n*Vecchio* valore: &&&1\n*Nuovo* valore: &&&2',
getwarns_reply = 'Rispondi ad un utente per ottenere il suo numero di ammonizioni',
getwarns = '&&&1 (*&&&2/&&&3*)\nMedia: (*&&&4/&&&5*)',
nowarn_reply = 'Rispondi ad un utente per azzerarne le ammonizioni',
ban_motivation = 'Troppi warning',
inline_high = 'Il nuovo valore è troppo alto (>12)',
inline_low = 'Il nuovo valore è troppo basso (<1)',
zero = 'Il numero di warning ricevuti da questo utente è già _zero_',
warn_removed = '*Warn rimosso!*\n_Numero di ammonizioni_ *&&&1*\n_Max consentito_ *&&&2*',
nowarn = 'Il numero di ammonizioni ricevute da questo utente è stato *azzerato*'
},
setlang = {
list = '*Elenco delle lingue disponibili:*',
success = '*Nuovo linguaggio impostato:* &&&1',
error = 'Lingua non ancora supportata'
},
banhammer = {
kicked = '&&&1 ha kickato &&&2! (ma può ancora rientrare)',
banned = '&&&1 ha bannato &&&2!',
unbanned = 'L\'utente è stato unbannato!',
reply = 'Rispondi a qualcuno',
globally_banned = '&&&1 è stato bannato globalmente!',
no_unbanned = 'Questo è un gruppo normale, gli utenti non vengono bloccati se kickati',
already_banned_normal = '&&&1 è *già bannato*!',
not_banned = 'L\'utente non è bannato',
banlist_header = '*Utenti bannati*:\n\n',
banlist_empty = '_La lista è vuota_',
banlist_error = '_Si è verificato un errore nello svuotare la banlist_',
banlist_cleaned = '_La lista degli utenti bannati è stata eliminata_',
tempban_zero = 'Puoi usare direttamente /ban per questo',
tempban_week = 'Il limite è una settimana (10.080 minuti)',
tempban_banned = 'L\'utente &&&1 è stato bannato. Scadenza del ban:',
tempban_updated = 'Scadenza aggiornata per &&&1. Scadenza ban:',
general_motivation = 'Non posso kickare questo utente.\nProbabilmente non sono un Admin, o l\'utente che hai cercato di kickare è un Admin'
},
floodmanager = {
number_invalid = '`&&&1` non è un valore valido!\nil valore deve essere *maggiore* di `3` e *minore* di `26`',
not_changed = 'il massimo numero di messaggi che può essere inviato in 5 secondi è già &&&1',
changed_plug = 'Il numero *massimo di messaggi* che possono essere inviato in *5 secondi* è passato _da_ &&&1 _a_ &&&2',
enabled = 'Antiflood abilitato',
disabled = 'Antiflood disabilitato',
kick = 'I flooders verranno kickati',
ban = 'I flooders verranno bannati',
changed_cross = '&&&1 -> &&&2',
text = 'Messaggi normali',
image = 'Immagini',
sticker = 'Stickers',
gif = 'Gif',
video = 'Video',
sent = '_Ti ho inviato il menu dell\'anti-flood in privato_',
ignored = '[&&&1] saranno ignorati dall\'anti-flood',
not_ignored = '[&&&1] verranno considerati dall\'anti-flood',
number_cb = 'Sensibilità del flood. Tappa su + oppure -',
header = 'Puoi gestire le impostazioni dell\'anti-flood da qui.\n'
..'\n*1^ riga*\n'
..'• *ON/OFF*: lo stato corrente dell\'anti-flood\n'
..'• *Kick/Ban*: cosa fare quando un utente sta floodando\n'
..'\n*2^ riga*\n'
..'• puoi usare *+/-* per cambiare la sensibilità dell\'anti-flood\n'
..'• il valore rappresenta il numero massimo di messaggi che possono essere inviati in _5 secondi_\n'
..'• valore max: _25_ - valore min: _4_\n'
..'\n*3^ riga* ed a seguire\n'
..'Puoi impostare alcune eccezioni per l\'anti-flood:\n'
..'• ✅: il media verrà ignorato dal conteggio del flood\n'
..'• ❌: il media verrà considerato nel conteggio del flood\n'
..'• *Nota*: in "_messaggi normali_" sono compresi anche tutti i media non citati (file, audio...)'
},
mediasettings = {
warn = 'Questo tipo di media *non è consentito* in questo gruppo.\n_La prossima volta_ verrai kickato o bannato',
settings_header = '*Impostazioni correnti per i media*:\n\n',
changed = 'Nuovo stato per [&&&1] = &&&2',
},
preprocess = {
flood_ban = '&&&1 *bannato* per flood',
flood_kick = '&&&1 *kickato* per flood',
media_kick = '&&&1 *kickato*: media inviato non consentito',
media_ban = '&&&1 *bannato*: media inviato non consentito',
rtl_kicked = '&&&1 *kickato*: carattere rtl nel nome/nei messaggi non consentito',
arab_kicked = '&&&1 *kickato*: caratteri telegram Linki non consentiti',
rtl_banned = '&&&1 *bannato*: carattere rtl nel nome/nei messaggi non consentito',
arab_banned = '&&&1 *bannato*: caratteri telegram Linki non consentiti',
flood_motivation = 'Bannato per flood',
media_motivation = 'Ha inviato un media non consentito',
first_warn = 'Questo tipo di media *non è consentito* in questo gruppo.'
},
kick_errors = {
[1] = 'Non sono admin, non posso kickare utenti',
[2] = 'Non posso kickare o bannare un admin',
[3] = 'Non c\'è bisogno di unbannare in un gruppo normale',
[4] = 'Questo utente non fa parte del gruppo',
},
flag = {
no_input = 'Rispondi ad un messaggio per segnalarlo agli admin, o scrivi qualcosa accanto ad \'@admin\' per inviare un feedback ai moderatori',
reported = 'Segnalato!',
no_reply = 'Rispondi a qualcuno!',
blocked = 'Questo utente da ora non potrà usare \'@admin\'',
already_blocked = 'Questo utente non può già usare \'@admin\'',
unblocked = 'L\'utente ora può usare \'@admin\'',
already_unblocked = 'L\'utente può già usare \'@admin\'',
},
all = {
dashboard = {
private = '_Ti ho inviato la scheda del gruppo in privato_',
first = 'Naviga questo messaggio tramite i tasti per consultare *tutte le info* sul gruppo!',
antiflood = '- *Stato*: `&&&1`\n- *Azione* da intraprendere quando un utente sta floodando: `&&&2`\n- Numero di messaggi *in 5 secondi* consentito: `&&&3`\n- *Media ignorati*:\n&&&4',
settings = 'Impostazioni',
admins = 'Admin',
rules = 'Regole',
about = 'Descrizione',
welcome = 'Messaggio di benvenuto',
extra = 'Comandi extra',
flood = 'Impostazioni Anti-flood',
media = 'Impostazioni dei media'
},
menu = '_Ti ho inviato il menu delle impostazioni in privato_',
menu_first = 'Gestisci le impostazioni del gruppo.\n'
..'\nAlcuni comandi (_/rules, /about, /adminlist, comandi #extra_) possono essere *disabilitati per utento *non*-admin*\n'
..'Cosa accade se un comando è disabilitato per i non-admin:\n'
..'• Se il comando è richiesto da un admin, il bot risponderà *nel gruppo*\n'
..'• Se il comando è richiesto da un utente normale, il bot risponderà *in privato all\'utente* (ovviamente, solo se l\'utente aveva già avviato il bot in precedenza)\n'
..'\nL\'icona vicino al comando indica lo stato corrente:\n'
..'• 👥: il bot risponderà *nel gruppo*, senza distinzioni\n'
..'• 👤: il bot risponderà *in prvato* se richiesto da un utente, nel gruppo invece se richiesto da un admin\n'
..'\n*Altre impostazioni*: per le altre impostazioni, l\'icona esprime bene il loro stato corrente\n',
media_first = 'Tocca una voce sulla colonna destra per *cambiare le impostazioni*'
..'Puoi usare l\'ultima riga per decidere quante volte il bot deve avvisare un utente prima di bannarlo/kickarlo per aver inviato un media proibito.\n'
..'Questo numero non è correlato in alcun modo al comando `!warn`.',
},
},
es = {
status = {
kicked = '&&&1 is banned from this group',
left = '&&&1 left the group or has been kicked and unbanned',
administrator = '&&&1 is an Admin',
creator = '&&&1 is the group creator',
unknown = 'This user has nothing to do with this chat',
member = '&&&1 is a chat member'
},
getban = {
header = '*Global stats* for ',
nothing = '`Nothing to display`',
kick = 'Kick: ',
ban = 'Ban: ',
tempban = 'Tempban: ',
flood = 'Removed for flood: ',
warn = 'Removed for warns: ',
media = 'Removed for forbidden media: ',
arab = 'Removed for telegram Link chars: ',
rtl = 'Removed for RTL char: ',
kicked = '_Kicked!_',
banned = '_Banned!_'
},
userinfo = {
header_1 = '*Ban info (globals)*:\n',
header_2 = '*General info*:\n',
warns = '`Warns`: ',
media_warns = '`Media warns`: ',
group_msgs = '`Messages in the group`: ',
group_media = '`Media sent in the group`: ',
last_msg = '`Last message here`: ',
global_msgs = '`Total number of messages`: ',
global_media = '`Total number of media`: ',
remwarns_kb = 'Remove warns'
},
bonus = {
general_pm = '_I\'ve sent you the message in private_',
no_user = 'I\'ve never seen this user before.\nIf you want to teach me who he is, forward me a message from him',
the_group = 'the group',
settings_header = 'Current settings for *the group*:\n\n*Language*: `&&&1`\n',
reply = '*Reply to someone* to use this command, or write a *username*',
adminlist_admin_required = 'I\'m not a group Admin.\n*Only an Admin can see the administrators list*',
too_long = 'This text is too long, I can\'t send it',
msg_me = '_Message me first so I can message you_',
menu_cb_settings = 'Tap on an icon!',
menu_cb_warns = 'Use the row below to change the warns settings!',
menu_cb_media = 'Tap on a switch!',
tell = '*ID del grupo*: &&&1'
},
not_mod = 'Tu *no* eres moderador',
breaks_markdown = 'This text breaks the markdown.\nMore info about a proper use of markdown [here](https://telegram.me/GroupButler_ch/46).',
credits = '*Some useful links:*',
extra = {
setted = '&&&1 command saved!',
new_command = '*Nuevo comando programado!*\n&&&1\n&&&2',
no_commands = 'No hay comandos programados!',
commands_list = 'Lista de *comandos personalizados*:\n&&&1',
command_deleted = 'El comando &&&1 ha sido eliminado',
command_empty = 'El comando &&&1 no existe'
},
help = {
mods = {
banhammer = "*Moderators: banhammer powers*\n\n"
.."`!kick [by reply|username]` = kick a user from the group (he can be added again).\n"
.."`!ban [by reply|username]` = ban a user from the group (also from normal groups).\n"
.."`!tempban [minutes]` = ban an user for a specific amount of minutes (minutes must be < 10.080, one week). For now, only by reply.\n"
.."`!unban [by reply|username]` = unban the user from the group.\n"
.."`!user [by reply|username|id]` = returns a two pages messages: the first shows how many times the user has been banned *in all the groups* (divided in sections), "
.."the second page shows some general stats about the user: messages/media in the group, warns received and so on.\n"
.."`!status [username|id]` = show the current status of the user `(member|kicked/left the chat|banned|admin/creator|never seen)`.\n"
.."`!banlist` = show a list of banned users. Includes the motivations (if given during the ban).\n"
.."`!banlist -` = clean the banlist.\n"
.."\n*Note*: you can write something after `!ban` command (or after the username, if you are banning by username)."
.." This comment will be used as the motivation of the ban.",
info = "*Moderators: info about the group*\n\n"
.."`!setrules [group rules]` = set the new regulation for the group (the old will be overwritten).\n"
.."`!addrules [text]` = add some text at the end of the existing rules.\n"
.."`!setabout [group description]` = set a new description for the group (the old will be overwritten).\n"
.."`!addabout [text]` = add some text at the end of the existing description.\n"
.."\n*Note:* the markdown is supported. If the text sent breaks the markdown, the bot will notify that something is wrong.\n"
.."For a correct use of the markdown, check [this post](https://telegram.me/GroupButler_ch/46) in the channel",
flood = "*Moderators: flood settings*\n\n"
.."`!antiflood` = manage the flood settings in private, with an inline keyboard. You can change the sensitivity, the action (kick/ban), and even set some exceptions.\n"
.."`!antiflood [number]` = set how many messages a user can write in 5 seconds.\n"
.."_Note_ : the number must be higher than 3 and lower than 26.\n",
media = "*Moderators: media settings*\n\n"
.."`!media` = receive via private message an inline keyboard to change all the media settings.\n"
.."`!warnmax media [number]` = set the max number of warnings before be kicked/banned for having sent a forbidden media.\n"
.."`!nowarns (by reply)` = reset the number of warnings for the users (*NOTE: both regular warnings and media warnings*).\n"
.."`!media list` = show the current settings for all the media.\n"
.."\n*List of supported media*: _image, audio, video, sticker, gif, voice, contact, file, link_\n",
welcome = "*Moderators: welcome settings*\n\n"
.."`!menu` = receive in private the menu keyboard. You will find an option to enable/disable the welcome message.\n"
.."\n*Custom welcome message:*\n"
.."`!welcome Welcome $name, enjoy the group!`\n"
.."Write after \"/welcome\" your welcome message. You can use some placeholders to include the name/username/id of the new member of the group\n"
.."Placeholders: _$username_ (will be replaced with the username); _$name_ (will be replaced with the name); _$id_ (will be replaced with the id); _$title_ (will be replaced with the group title).\n"
.."\n*GIF/sticker as welcome message*\n"
.."You can use a particular gif/sticker as welcome message. To set it, reply to a gif/sticker with \'/welcome\'\n"
.."\n*Composed welcome message*\n"
.."You can compose your welcome message with the rules, the description and the moderators list.\n"
.."You can compose it by writing `!welcome` followed by the codes of what the welcome message has to include.\n"
.."_Codes_ : *r* = rules; *a* = description (about); *m* = adminlist.\n"
.."For example, with \"`!welcome rm`\", the welcome message will show rules and moderators list",
extra = "*Moderators: extra commands*\n\n"
.."`!extra [#trigger] [reply]` = set a reply to be sent when someone writes the trigger.\n"
.."_Example_ : with \"`!extra #hello Good morning!`\", the bot will reply \"Good morning!\" each time someone writes #hello.\n"
.."You can reply to a media (_photo, file, vocal, video, gif, audio_) with `!extra #yourtrigger` to save the #extra and receive that media each time you use # command\n"
.."`!extra list` = get the list of your custom commands.\n"
.."`!extra del [#trigger]` = delete the trigger and its message.\n"
.."\n*Note:* the markdown is supported. If the text sent breaks the markdown, the bot will notify that something is wrong.\n"
.."For a correct use of the markdown, check [this post](https://telegram.me/GroupButler_ch/46) in the channel",
warns = "*Moderators: warns*\n\n"
.."`!warn [kick/ban]` = choose the action to perform once the max number of warnings is reached.\n"
.."`!warn [by reply]` = warn a user. Once the max number is reached, he will be kicked/banned.\n"
.."`!warnmax` = set the max number of the warns before the kick/ban.\n"
.."\nHow to see how many warns a user has received: the number is showed in the second page of the `!user` command. In this page, you will see a button to reset this number.",