aldrovan Posted September 30, 2022 Posted September 30, 2022 hi fellows i try to send a text like this data: 30-09-2022 other: blalbalb etc: xxxxxx in telegram by curl i use this syntax $Action = "sendMessage" $URL = "https://api.telegram.org/bot" & $token & "/" & $Action $cicle = UBound($data) / 4 Local $a = 0, $b = 1, $c = 2, $d = 3 For $i = 0 To $cicle MsgBox(0,'',$data[$a]) $text= "Data: "& $data[$a] MsgBox(0,'',$text) Run(@ComSpec & " /c " & @ScriptDir & '\curl\bin\curl.exe commandName -v -X POST --silent --output /dev/null ' & $URL & ' -d chat_id=' & $ChatID & ' -d text='&$text, "", @SW_HIDE) ; don't forget " " before "/c" $a += 4 $b += 4 $c += 4 $d += 4 If $d > UBound($data) Then ExitLoop EndIf Next the strange things is if i use $text= "Data: "& $data[$a] send me only text Data: without a array if $text= $data[$a] send me only a data 29-09-2022 but why ??? thanks
funkey Posted September 30, 2022 Posted September 30, 2022 Because there is a space in the string and you do not put " " around the string. aldrovan 1 Programming today is a race between software engineers striving tobuild bigger and better idiot-proof programs, and the Universetrying to produce bigger and better idiots.So far, the Universe is winning.
aldrovan Posted September 30, 2022 Author Posted September 30, 2022 sorry again but i have also another strange thing in practical , the for repeat two time , i have this function expandcollapse popupFunc _TelegramBotCurl($token, $data) ;_ArrayDisplay($data) $Action = "sendSticker" $URL = "https://api.telegram.org/bot" & $token & "/" & $Action ;$data="CAACAgQAAxkBAAEF9T1jNpkkuWRDVYKHnPUPFXFBTl0MGwACMQwAAjIXuVEc6LihmiTkbSoE" $dataTop = "CAACAgQAAxkBAAEF9T9jNplFM3b-9DDg3zyPZhhpO7eEmQACDiAAAmSKPgABEwY6mWO8PJMqBA" Run(@ComSpec & " /c " & @ScriptDir & '\curl\bin\curl.exe commandName -v -X POST --silent --output /dev/null ' & $URL & ' -d chat_id=' & $ChatID & ' -d sticker=' & $dataTop, "", @SW_HIDE) ; don't forget " " before "/c" $Action = "sendMessage" $URL = "https://api.telegram.org/bot" & $token & "/" & $Action $cicle = UBound($data) / 4 Local $a = 0, $b = 1, $c = 2, $d = 3 Sleep(3000) For $i = 1 To $cicle ;MsgBox(0,'',$data[$a]) $text= "Data:_"& $data[$a]& "%0A" & _ "Data:_" & $data[$b] & "%0A" & _ "Data:_" & $data[$c] & "%0A" & _ "Data:_"& $data[$d]& "%0A" & @CRLF Run(@ComSpec & " /c " & @ScriptDir & '\curl\bin\curl.exe commandName -v -X POST --silent --output /dev/null ' & $URL & ' -d chat_id=' & $ChatID & ' -d text='&$text, "", @SW_HIDE) ; don't forget " " before "/c" $a += 4 $b += 4 $c += 4 $d += 4 Sleep(3000) If $d > UBound($data) or $i = $cicle Then If ProcessExists("curl.exe") Then ; Check if the internet esplorer process is running. ProcessClose("curl.exe") EndIf ExitLoop EndIf Next $Action = "sendSticker" $URL = "https://api.telegram.org/bot" & $token & "/" & $Action ;$data="CAACAgQAAxkBAAEF9T1jNpkkuWRDVYKHnPUPFXFBTl0MGwACMQwAAjIXuVEc6LihmiTkbSoE" $data = "CAACAgQAAxkBAAEF9T9jNplFM3b-9DDg3zyPZhhpO7eEmQACDiAAAmSKPgABEwY6mWO8PJMqBA" Run(@ComSpec & " /c " & @ScriptDir & '\curl\bin\curl.exe commandName -v -X POST --silent --output /dev/null ' & $URL & ' -d chat_id=' & $ChatID & ' -d sticker=' & $dataTop, "", @SW_HIDE) ; don't forget " " before "/c" EndFunc ;==>_TelegramBotCurl in this function i have this array $data with 8 row with data i subdivide in 2 block with $cicle = UBound($data) / 4 Local $a = 0, $b = 1, $c = 2, $d = 3 Sleep(3000) For $i = 1 To $cicle but firstime work good but after not exit loop and repeat again two time o_O why ??? thanks
funkey Posted October 1, 2022 Posted October 1, 2022 I would use RunWait() and not a fixed Sleep(). So you don't need to use ProcessClose() without knowing what's going on. Your programming style is a bit strange for me by the way. I would clean up the code and use [($i -1) * 4 + 1] as indexer for line one. aldrovan 1 Programming today is a race between software engineers striving tobuild bigger and better idiot-proof programs, and the Universetrying to produce bigger and better idiots.So far, the Universe is winning.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now