Commit Graph

274 Commits

Author SHA1 Message Date
Kay Marquardt (Gnadelwartz)
fe4fb34e8a allow finish inline keyboard, allow keyboards without text 2019-04-25 13:54:31 +02:00
Kay Marquardt (Gnadelwartz)
a7d14f673c add send_inline_keyboard, start using sendJson 2019-04-24 18:24:54 +02:00
Kay Marquardt (Gnadelwartz)
991ecd44d8 first version of send_inline_button 2019-04-24 17:34:36 +02:00
Kay Marquardt (Gnadelwartz)
0cfb9f00dc adjust doc to mycommands and new section installation 2019-04-24 16:53:01 +02:00
Kay Marquardt (Gnadelwartz)
262bb9e805 more aliases, use aliases in commands.sh 2019-04-24 13:34:44 +02:00
Kay Marquardt (Gnadelwartz)
097a841961 factor out background, update doc 2019-04-24 10:17:29 +02:00
Kay Marquardt (Gnadelwartz)
92ad9e42fc factor out background update doc 2019-04-24 10:07:46 +02:00
Kay Marquardt (Gnadelwartz)
03f22c90c0 add _is_function 2019-04-23 20:37:15 +02:00
Kay Marquardt (Gnadelwartz)
56a45aa883 parse VCARD and VENUE from message 2019-04-23 19:00:17 +02:00
Kay Marquardt (Gnadelwartz)
ca73be8c41 rename tmp-bot-bash to data-bot-bash 2019-04-23 18:11:24 +02:00
Kay Marquardt (Gnadelwartz)
8549727aad user_is tests addded 2019-04-23 15:48:58 +02:00
Kay Marquardt (Gnadelwartz)
63ef6781a2 add simple check for correct JSON.sh and commands.sh file 2019-04-23 13:24:34 +02:00
Kay Marquardt (Gnadelwartz)
f412a2921a implement ENV varible usage 2019-04-23 13:07:20 +02:00
Kay Marquardt (Gnadelwartz)
1957133d9b test and optimize adaptive polling 2019-04-23 12:48:05 +02:00
Kay Marquardt (Gnadelwartz)
fe5840d3fc start evironment config 2019-04-23 11:45:03 +02:00
Kay Marquardt (Gnadelwartz)
893ee61d61 slower adaptive sleep in pesudo ms 2019-04-22 21:50:38 +02:00
Kay Marquardt (Gnadelwartz)
7ed47dd41b refactor options, startbot and init 2019-04-22 21:05:52 +02:00
Kay Marquardt (Gnadelwartz)
f59ddae610 start 0.7 dev2, add JSON.sh test 2019-04-22 20:34:43 +02:00
Kay Marquardt (Gnadelwartz)
4fff4c3319 Version 0.62 of bashbot 2019-04-22 10:23:28 +02:00
Kay Marquardt (Gnadelwartz)
1048d89648 prepare for sync with master 2019-04-22 10:19:16 +02:00
Kay Marquardt (Gnadelwartz)
bca3e591ec JSON.sh use brief output no empty arrays 2019-04-21 20:57:23 +02:00
Kay Marquardt (Gnadelwartz)
0422cb016d download json.sh only 2019-04-21 18:20:56 +02:00
Kay Marquardt (Gnadelwartz)
fbd86c3412 fix errors in JsonGet found by testsuite 2019-04-21 17:15:46 +02:00
Kay Marquardt (Gnadelwartz)
48e6f64d58 finalize process_message test 2019-04-21 14:52:55 +02:00
Kay Marquardt (Gnadelwartz)
26c8523589 fix first errors found by testsuite 2019-04-21 13:45:51 +02:00
Kay Marquardt (Gnadelwartz)
753f1b3b16 no zero byte files 2019-04-20 21:31:05 +02:00
Kay Marquardt (Gnadelwartz)
31834194ad some more init tests 2019-04-20 21:09:36 +02:00
Kay Marquardt (Gnadelwartz)
b1aef7d6f9 better handling of sourcing files 2019-04-20 16:26:16 +02:00
Kay Marquardt (Gnadelwartz)
074a10336f Merge branch 'master' into develop 2019-04-19 18:42:32 +02:00
Kay Marquardt (Gnadelwartz)
ba455af9f1 fix getting message count 2019-04-19 18:35:51 +02:00
Kay Marquardt (Gnadelwartz)
f53b8df40f start test framework 2019-04-19 17:31:01 +02:00
Kay Marquardt (Gnadelwartz)
b5a30dc2ba Version 0.61 of bashbot 2019-04-19 14:07:01 +02:00
Kay Marquardt (Gnadelwartz)
ef0041e7bd dev version 0.7 starts 2019-04-19 13:01:25 +02:00
Kay Marquardt (Gnadelwartz)
3fb7796c99 adjust bashbot and doc to changed dirs 2019-04-19 11:28:12 +02:00
Kay Marquardt (Gnadelwartz)
a97cd69402 rearrange example and dev files 2019-04-19 10:43:06 +02:00
Kay Marquardt (Gnadelwartz)
8bb14ec909 add pre-push hook 2019-04-18 21:02:06 +02:00
Kay Marquardt (Gnadelwartz)
209c4b34f4 Version 0.60 of bashbot 2019-04-18 10:35:18 +02:00
Kay Marquardt (Gnadelwartz)
f5162e2616 Version 0.60-rc3 2019-04-17 09:34:02 +02:00
Kay Marquardt (Gnadelwartz)
19a0f7eac3 add backward compatibility for keyboards from interactive chats 2019-04-16 21:56:46 +02:00
Kay Marquardt (Gnadelwartz)
2e3c9753fe Bashbot v0.60-rc2 2019-04-16 20:43:54 +02:00
Kay Marquardt (Gnadelwartz)
1bf26b9caf finalize features and descriptions 2019-04-16 13:29:49 +02:00
Kay Marquardt (Gnadelwartz)
e29924706d provide bashbot function reference 2019-04-15 21:06:29 +02:00
Kay Marquardt (Gnadelwartz)
ba80ec6976 fix showing text 2x times when upload file 2019-04-15 16:51:26 +02:00
Kay Marquardt (Gnadelwartz)
3824137433 fix / allow more complex keyboards 2019-04-15 16:32:56 +02:00
Kay Marquardt (Gnadelwartz)
bf97646361 dev3-rc1 candidate 2019-04-15 14:17:18 +02:00
Kay Marquardt (Gnadelwartz)
e18b200fe6 check if we can connect to telegram bot 2019-04-15 12:19:04 +02:00
Kay Marquardt (Gnadelwartz)
6be706b571 fix case problem with bash JsonDecode 2019-04-15 10:55:22 +02:00
Kay Marquardt (Gnadelwartz)
87ec24bceb Version 0.60-rc1 2019-04-14 23:05:43 +02:00
Kay Marquardt (Gnadelwartz)
c001d148f8 adjust doc, fix unneeded JsonDecode use 2019-04-14 23:04:17 +02:00
Kay Marquardt (Gnadelwartz)
7e75b92261 new interactive command calc 2019-04-14 20:30:59 +02:00
Kay Marquardt (Gnadelwartz)
f5538eff3a update doc, fix minor problem with CHAT[TYPE] 2019-04-14 17:43:12 +02:00
Kay Marquardt (Gnadelwartz)
5787908d72 pure bash implementaion of JsonDecode 2019-04-14 17:00:58 +02:00
Kay Marquardt (Gnadelwartz)
aa1404d49c get all JSON string with JsonGetStrings 2019-04-13 21:05:17 +02:00
Kay Marquardt (Gnadelwartz)
8ec4c1434a decode all strings with JsonDecode 2019-04-13 20:53:59 +02:00
Kay Marquardt (Gnadelwartz)
c944292047 fix UTF-8 decode of message 2019-04-13 14:50:53 +02:00
Kay Marquardt (Gnadelwartz)
c163459954 revert some optimizations 2019-04-12 20:49:58 +02:00
Kay Marquardt (Gnadelwartz)
121a113703 more portable [ = ] test 2019-04-12 19:39:21 +02:00
Kay Marquardt (Gnadelwartz)
fe9443fe4d start v0.6-dev3 - optimize quoting and grep use 2019-04-12 17:18:20 +02:00
Kay Marquardt (Gnadelwartz)
1144a1ff69 Bashbot Version 0.52 - user acls added 2019-04-12 13:14:33 +02:00
Kay Marquardt (Gnadelwartz)
db7b19fbc4 user_is_botadmin final 2019-04-12 11:27:20 +02:00
Kay Marquardt (Gnadelwartz)
56cb1bbfc6 inital botadmin, better variable scooping 2019-04-12 10:30:35 +02:00
Kay Marquardt (Gnadelwartz)
88cf2d9265 make user_is_creator more failsave 2019-04-11 20:54:26 +02:00
Kay Marquardt (Gnadelwartz)
307363a4cc functions user_is_creator user_is_admin 2019-04-11 20:33:39 +02:00
Kay Marquardt (Gnadelwartz)
f4e277ba15 sync with master v0.51 and start 0.60dev2 2019-04-11 10:09:29 +02:00
Kay Marquardt (Gnadelwartz)
a13ecbcfcf Bashbot Version 0.51 shellcheck testet 2019-04-11 09:59:56 +02:00
Kay Marquardt (Gnadelwartz)
94fa6a05da Bashbot Version 5.1 shellcheck testet 2019-04-10 11:53:58 +02:00
Kay Marquardt (Gnadelwartz)
4ddd1226be add README.txt for help command 2019-04-09 13:41:38 +02:00
Kay Marquardt (Gnadelwartz)
259ad9b358 sync master with dev 2019-04-09 13:01:02 +02:00
Kay Marquardt (Gnadelwartz)
4ce19b1b04 resolve conflicts with master 2019-04-09 11:57:41 +02:00
Kay Marquardt (Gnadelwartz)
f55571306a use while loop for broadcast 2019-04-08 12:40:07 +02:00
Kay Marquardt (Gnadelwartz)
863f09a52b current USER is redefind as ARRAY, use RUNUSER as workaround 2019-04-08 12:23:31 +02:00
Kay Marquardt (Gnadelwartz)
e936e6fe39 fix if TMPDIR is empty and path may point to / 2019-04-08 12:11:17 +02:00
Kay Marquardt (Gnadelwartz)
34d2e3de5c finish bashbot.sh shellcheck 2019-04-08 11:58:55 +02:00
Kay Marquardt (Gnadelwartz)
8eef8400a1 Bashbot Version 0.5 - fix count message 2019-04-04 15:25:27 +02:00
Kay Marquardt (Gnadelwartz)
e5e266697a Bashbot Version 0.5 2019-04-04 15:05:19 +02:00
Kay Marquardt (Gnadelwartz)
18b3b51ec7 fix multiple local 2019-04-03 18:14:22 +02:00
Kay Marquardt (Gnadelwartz)
c075ea601e add botname to startbot 2019-04-03 12:58:48 +02:00
Kay Marquardt (Gnadelwartz)
b4e13bd354 first shellcheck iteration for bashbot.sh 2019-04-01 19:13:13 +02:00
Kay Marquardt (Gnadelwartz)
352c64fc32 some typo, specify exit codes 2019-04-01 12:52:25 +02:00
Kay Marquardt (Gnadelwartz)
92e9e9c3f5 fix hmtl with urlencode 2019-03-31 14:54:58 +02:00
Kay Marquardt (Gnadelwartz)
46cf9591e5 check if we can change to bashbot dir 2019-03-31 12:52:11 +02:00
Kay Marquardt (Gnadelwartz)
050d376f28 bashbot 0.5 Release Candidate 2019-03-31 12:12:55 +02:00
Kay Marquardt (Gnadelwartz)
0c144bcac2 more quoting 2019-03-30 15:14:13 +01:00
Kay Marquardt (Gnadelwartz)
432f0bcf51 fix sync with JSON 2019-03-30 15:11:33 +01:00
Kay Marquardt
b27017f6c9
Merge branch 'sed-JSON' into master 2019-03-30 15:02:29 +01:00
Kay Marquardt (Gnadelwartz)
cb5cb646ab fix quoting in bashbot.sh 2019-03-29 18:06:10 +01:00
Kay Marquardt (Gnadelwartz)
8e08c1f9fe fix bad quoting 2019-03-29 17:59:57 +01:00
Kay Marquardt (Gnadelwartz)
6f1c32817a follow my own rule: quote whenver possible 2019-03-29 17:52:00 +01:00
Kay Marquardt (Gnadelwartz)
0a90edbe52 Security considerations and Typos 2019-03-28 20:59:52 +01:00
Kay Marquardt (Gnadelwartz)
851be83518 prepare for v0.5, add version numbers to files 2019-03-28 16:51:33 +01:00
Kay Marquardt (Gnadelwartz)
64255eb17c fix echo -" 2019-03-28 14:29:33 +01:00
Kay Marquardt (Gnadelwartz)
2d1a0c3be0 make bashbot.sh not output colors and clear when not interactive 2019-03-28 14:24:08 +01:00
Kay Marquardt (Gnadelwartz)
7919be2e3e init changes username in bashbot.rc also 2019-03-27 15:03:02 +01:00
Kay Marquardt (Gnadelwartz)
aa391e24ba 24716 is not random enough 2019-03-26 20:50:17 +01:00
Kay Marquardt (Gnadelwartz)
2852e7875a more random tmp file name 2019-03-26 20:35:42 +01:00
Kay Marquardt (Gnadelwartz)
d6b640ec11 experimental fast conversion of JSON 2019-03-26 17:49:47 +01:00
Kay Marquardt (Gnadelwartz)
bea3c80c3f init: apply permissions recursive 2019-03-25 18:29:10 +01:00
Kay Marquardt (Gnadelwartz)
b29dc39059 init command 2019-03-25 11:15:07 +01:00
Kay Marquardt (Gnadelwartz)
eff4a68c70 add example startup/init script and crontab 2019-03-24 19:31:54 +01:00
Kay Marquardt (Gnadelwartz)
a8fe8b3b19 add root warning, explaning UTF-8 handling 2019-03-24 13:57:49 +01:00
Kay Marquardt (Gnadelwartz)
c7fd6de725 optimize replied and forwarded message parsing 2019-03-22 20:41:34 +01:00
Kay Marquardt (Gnadelwartz)
3847ff5468 provide information about replied and forwarded messages 2019-03-22 20:30:22 +01:00
Kay Marquardt (Gnadelwartz)
057f0e74c0 remove debug code 2019-03-22 17:50:53 +01:00
Kay Marquardt (Gnadelwartz)
8d3a0e497d make bashbot more failsave on startup 2019-03-22 17:47:36 +01:00
Drew
b641a96711
Merge pull request #53 from gnadelwartz/gnadelwartz-patch-2
Add delete message support
2019-03-22 09:32:02 -04:00
Drew
c6419c58dd
Merge pull request #54 from gnadelwartz/patch-2
line breaks in startproc scripts
2019-03-22 09:31:53 -04:00
Kay Marquardt (Gnadelwartz)
fd5f9d4ff0 remove unneeded variable from killback 2019-03-18 22:21:53 +01:00
Kay Marquardt (Gnadelwartz)
3b25adfeb2 add command line option to kill all background jobs 2019-03-18 22:19:44 +01:00
Kay Marquardt (Gnadelwartz)
a84b26a236 command line option to (re)start background processes 2019-03-18 20:00:16 +01:00
Kay Marquardt (Gnadelwartz)
b181234bb9 add possibility to execute multiple background scripts 2019-03-18 14:45:19 +01:00
Kay Marquardt
a0bedbc207
line breaks in startproc scripts 2019-03-14 21:07:27 +01:00
Kay Marquardt
9d149bde7a
Add delete message support
since API v3 its possible to delete bot messages or any message if your bot is admin.
2019-03-11 15:41:21 +01:00
Kay Marquardt
dfdbb5f599
use curl --data-urlencode instead of own urlencode
When sending HTML with send_HTML_message  content it is displayed as is and not interpreted as HTML. using the curl biulting urlencode fixed it.
2019-02-28 20:18:23 +01:00
Kay Marquardt
14b684daa9
fix quoting to avoid globbing
If in  the3 bot recieve a message containing a single '*' a directorly linsting is inserted in the Message, e.g. 'this is a *' expands to:

'this is a this is a bashbot.sh commands.sh count JSON.sh LICENSE question README.md token'
2019-02-28 20:11:31 +01:00
Daniele Ferone
fd08cd7873 Add function remove_keyboard to disable the custom keyboard 2017-11-11 08:51:49 +01:00
Daniil Gentili
1243c75757 Now messages with more than 4096 chars can also be sent 2016-10-25 15:58:09 +00:00
Daniil Gentili
a566efc476 Remove escaping of slashes 2016-10-25 12:23:09 +00:00
Daniil Gentili
b5c576633d Now the messages id can be accessed in MESSAGE[ID], all updates fetched with getUpdates are processed simultaneously and newlines and certain unicode codepoints are parsed correctly in messages (closes #21) 2016-10-24 22:13:52 +00:00
Daniil Gentili
034409c491 Fix bugs and update docs 2016-06-09 09:40:39 -04:00
Daniil Gentili
958456d64d Fix security problems 2016-06-09 14:11:33 +02:00
Daniil Gentili
9cdab60e70 Rename vars 2016-06-09 14:05:35 +02:00
jarriztg
cd30d17f52 Here you have (#23)
first, test, if is 
CHAT[FIRST_NAME]=$(echo "$res" | egrep '\["result",0,"message","chat","first_name"\]' | cut -f 2 | cut -d '"' -f 2)
isnt working, but if is:
GROUP[FIRST_NAME]=$(echo "$res" | egrep '\["result",0,"message","chat","first_name"\]' | cut -f 2 | cut -d '"' -f 2)
is working, can you resolve them? if them have solution, dont marge this pullrequest
2016-06-09 14:04:33 +02:00
jarriztg
d169b7f96f functions in bash added and colors (#19)
* functions in bash added and colors

* Update bashbot.sh

* Update bashbot.sh

* Update bashbot.sh

* Update bashbot.sh

* Update bashbot.sh
2016-06-05 12:41:49 +02:00
Pwrtelegram
b2c5793032 Fixed bug in inline query function. 2016-05-27 17:09:22 +02:00
Pwrtelegram
9b64c3fae6 Fixed typo, fixed download file name, fixed sending of gifs trhu inline queries. 2016-05-27 15:52:34 +02:00
Daniil Gentili
78a57d9d9c Added INLINE variable 2016-05-13 17:58:37 +02:00
Daniil Gentili
0efec7dce1 Fixed bugs 2016-05-13 17:45:56 +02:00
Daniil Gentili
6c66639277 Fix typo 2016-05-05 15:40:56 +02:00
topkecleon
c840e3581e Main script will now download JSON.sh if the user did not clone recursively. 2016-04-19 05:59:37 -04:00
topkecleon
62c3d5eb84 Added a license for the unfortunate souls whose governments don't allow public domain.
Removed JSON.sh and added the project as a submodule. Modified code referencing it accordingly.

Added "attach" argument to attach to the tmux session and a default message if no argument is given.

Other minor changes.
2016-04-19 05:49:35 -04:00
Daniil Gentili
55bf7e35a9 Fix perms 2016-04-18 12:05:59 +02:00
Daniil Gentili
dfd4bc6fa6 Moved customizable settings into commands.sh 2016-04-18 12:05:31 +02:00
Daniil Gentili
867180363c Fix perms 2016-04-17 20:01:05 +02:00
Daniil Gentili
fd1358b209 Added sendvenue method and moved command parsing section to commands.sh to ease upgrades. 2016-04-17 20:00:37 +02:00
Daniil Gentili
c13d45b37b Added easy way to start bot. 2016-04-17 14:13:28 +02:00
Daniil Gentili
d13b6e25eb Fixed smore bugs, tried to speed up bot. 2016-04-17 14:00:45 +02:00
Daniil Gentili
c33082e585 Fixed bugs (now you can run multiple background session in multiple bots), added option to count users, added option to parse markdown and html using send_message, updated documentation and decided to put the sending loop for interactive chats in the background using tmux so that if I have to update the bot interactive sessions will continue to send out messages. Also changed the file name and the location (/tmp/ of the fifos for interactive chats) and added option to broadcast messages to all users. 2016-04-16 20:50:05 +02:00
Ignacio Iglesias
9ffc3bf3c4 Added inline support and examples.
I have adapted inline mode to the bot:  InlineQuery, answerInlineQuery, the 19 types of InlineQueryResult and InputTextMessageContent from InputMessageContent. I also have added some examples.
2016-04-16 03:43:15 +02:00
Daniil Gentili
219bcd25d2 Added killproc function. 2016-04-15 19:37:44 +02:00
Daniil Gentili
c96cc8a4a7 Reduced interactive command timeout, added command to print last newline and made startproc call command in args 2016-04-15 19:32:21 +02:00
Daniil Gentili
495c23def4 Fixed bug when script prints content right before exiting 2016-04-15 19:25:43 +02:00
Ignacio Iglesias
6ad35f34d7 Updated nested tmux and fixed username in chats
With the: ''TMUX= tmux new-session -d -s ....'' addition,  now interactive chats work when you are running the bot inside a tmux session.

Before, USER[USERNAME] was not getting the username of the user in groups, now it is solved.
2016-03-26 23:31:47 +01:00
Daniil Gentili
86c11e9397 Fixed typo 2016-03-23 16:04:28 +01:00
Daniil Gentili
a7a495561e Fixed security issues
Added check in send_file function to prevent user from requesting any file on the server and added a third parameter check to send_message.
If send_message is called with text as third param it will send the message given as is, without checking for keyboards, files etc...
One could simply do a myfilelocationstartshere $PWD/bashbot.sh and get the whole bot with the token.
2016-03-23 15:56:22 +01:00
Drew
652be0893f Merge pull request #8 from danog/patch-2
Fixed bugs and added option to source functions from other script
2016-03-22 09:00:55 -04:00
Daniil Gentili
a7801823ce Fixed last bugs 2016-03-20 22:34:55 +01:00
Ignacio Iglesias
4d2a6a6de2 Separated markdown sendmessage 2016-03-19 02:08:25 +01:00
Ignacio Iglesias
76e96c05a1 Added Markdown support for telegram-bot-bash 2016-03-18 01:34:05 +01:00
Daniil Gentili
6e3e156f42 Fixed other bugs 2016-01-25 13:37:05 +01:00
Daniil Gentili
931cf51a7c Update bashbot.sh 2016-01-22 19:03:12 +01:00