@botoid

Страница 2987 из 4042
Futorio
21.05.2018
21:56:37
С ботом часто возникают проблемы, если хостить его на heroku?

Roman
21.05.2018
22:03:42
Всем Добрый день. Понимаю, что подобные вопросы уже были, посмотрел историю, но так и не понял, как работает chosen_inline_result. То есть в какой момент приходит результат?

set_time_limit(0); $botToken = "BOT_KEY"; $website = "https://api.telegram.org/bot".$botToken; $content = file_get_contents("php://input"); $update = json_decode($content, TRUE); $message = $update["message"]; $chat_id = $message["chat"]["id"]; $text = $message["text"]; $inline_chat_id = $update["inline_query"]["id"]; $inline_result = $update["chosen_inline_result"]["result_id"]; $inline_query = $update["chosen_inline_result"]["query"]; if ($inline_chat_id !== "") { $text = "Hello World."; if (isset($update["chosen_inline_result"])) { $text = $text." yes "; } $inlineAnswer = [ [ "type" => "article", "id" => "0001", "title" => "Short URL for", "message_text" => $text, "parse_mode" => "Markdown", "description" => "test" ] ]; file_get_contents($website."/answerInlineQuery?inline_query_id=".$inline_chat_id."&results=".json_encode($inlineAnswer)."&cache_time=5"); }

Не понимаю как получить выбранное пользователем значение.

Google
Roman
21.05.2018
22:07:17
Спасибо :-)

Алексей
21.05.2018
22:09:27
прошу помощи - разгадать загадку: при нажатии inline кнопки происходит какая-то магия и inline меню полностью ломается, причем от чего это зависит не понятно

бот: @vk_virus_bot 1 запрос)"terry домофон" ломает клавиатуру если нажать на кнопку трека, а потом на перелистывание, и спокойно работает перелистывание если не нажимать

2) запрос "терри домофон" работает все

и как это объяснить?

Bogdan
21.05.2018
22:12:34
и как это объяснить?
код показывай

Алексей
21.05.2018
22:14:09
код показывай
foreach($obj["response"]["items"] as $val) { if($count == $offset) { if($kol<5) { $button.='[{"callback_data":"[sh]'.$offset.'_'.$id.'","text":"'.getname($val['duration'],$val['is_hq'],$val['artist'],$val['title']).'"}],'; $offset++; $kol++; } } $count++; } //file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$button."&disable_web_page_preview=true"); if($count !=0) { $answer = "\xF0\x9F\x8D\xB3 Поиск в VK"; $vsego = floor(intval($obj["response"]["count"])/5); if(intval($obj["response"]["count"])/5 != floor(intval($obj["response"]["count"])/5)) $vsego++; //$vsego = 10; if($vsego > 10) $vsego = 10; $back = $list - 1; if($back == 0) $back = 1; $next = $list + 1; if($next == ($vsego+1)) $next = $vsego; $replyMarkup = '{"inline_keyboard":['.$button.'[{"callback_data":"slist1_'.$id.'","text":"1"},{"callback_data":"slist'.$back.'_'.$id.'","text":"%E2%97%80"},{"callback_data":"nomer","text":"'.$list.'"},{"callback_data":"slist'.$next.'_'.$id.'","text":"%E2%96%B6"},{"callback_data":"slist'.$vsego.'_'.$id.'","text":"'.$vsego.'"}],[{"callback_data":"downsh'.'_'.$id.'","text":"Скачать всё"},{"callback_data":"menucancel","text":"Отменить"}]]}'; if($mesId != "") { file_get_contents($website."/editMessageText?chat_id=".$chatId."&message_id=".$mesId."&text=".$answer."&reply_markup=".$replyMarkup); } else { file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$answer."&reply_markup=".$replyMarkup); } } else { $replyMarkup ='{"inline_keyboard":[[{"callback_data":"menucancel","text":"Отменить"}]]}'; file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".urlencode("\xF0\x9F\x98\xA3 В поиске нет результатов\r\n\r\n").$downloadposk.rekl()."&disable_web_page_preview=true&reply_markup=".$replyMarkup); if($mesId != "") file_get_contents($website."/deleteMessage?chat_id=".$chatId."&message_id=".$mesId); }

Dan
21.05.2018
22:14:44
foreach($obj["response"]["items"] as $val) { if($count == $offset) { if($kol<5) { $button.='[{"callback_data":"[sh]'.$offset.'_'.$id.'","text":"'.getname($val['duration'],$val['is_hq'],$val['artist'],$val['title']).'"}],'; $offset++; $kol++; } } $count++; } //file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$button."&disable_web_page_preview=true"); if($count !=0) { $answer = "\xF0\x9F\x8D\xB3 Поиск в VK"; $vsego = floor(intval($obj["response"]["count"])/5); if(intval($obj["response"]["count"])/5 != floor(intval($obj["response"]["count"])/5)) $vsego++; //$vsego = 10; if($vsego > 10) $vsego = 10; $back = $list - 1; if($back == 0) $back = 1; $next = $list + 1; if($next == ($vsego+1)) $next = $vsego; $replyMarkup = '{"inline_keyboard":['.$button.'[{"callback_data":"slist1_'.$id.'","text":"1"},{"callback_data":"slist'.$back.'_'.$id.'","text":"%E2%97%80"},{"callback_data":"nomer","text":"'.$list.'"},{"callback_data":"slist'.$next.'_'.$id.'","text":"%E2%96%B6"},{"callback_data":"slist'.$vsego.'_'.$id.'","text":"'.$vsego.'"}],[{"callback_data":"downsh'.'_'.$id.'","text":"Скачать всё"},{"callback_data":"menucancel","text":"Отменить"}]]}'; if($mesId != "") { file_get_contents($website."/editMessageText?chat_id=".$chatId."&message_id=".$mesId."&text=".$answer."&reply_markup=".$replyMarkup); } else { file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$answer."&reply_markup=".$replyMarkup); } } else { $replyMarkup ='{"inline_keyboard":[[{"callback_data":"menucancel","text":"Отменить"}]]}'; file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".urlencode("\xF0\x9F\x98\xA3 В поиске нет результатов\r\n\r\n").$downloadposk.rekl()."&disable_web_page_preview=true&reply_markup=".$replyMarkup); if($mesId != "") file_get_contents($website."/deleteMessage?chat_id=".$chatId."&message_id=".$mesId); }
Гхм. А ты не мог бы использовать pastebin какой-нибудь?

Bogdan
21.05.2018
22:14:52
foreach($obj["response"]["items"] as $val) { if($count == $offset) { if($kol<5) { $button.='[{"callback_data":"[sh]'.$offset.'_'.$id.'","text":"'.getname($val['duration'],$val['is_hq'],$val['artist'],$val['title']).'"}],'; $offset++; $kol++; } } $count++; } //file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$button."&disable_web_page_preview=true"); if($count !=0) { $answer = "\xF0\x9F\x8D\xB3 Поиск в VK"; $vsego = floor(intval($obj["response"]["count"])/5); if(intval($obj["response"]["count"])/5 != floor(intval($obj["response"]["count"])/5)) $vsego++; //$vsego = 10; if($vsego > 10) $vsego = 10; $back = $list - 1; if($back == 0) $back = 1; $next = $list + 1; if($next == ($vsego+1)) $next = $vsego; $replyMarkup = '{"inline_keyboard":['.$button.'[{"callback_data":"slist1_'.$id.'","text":"1"},{"callback_data":"slist'.$back.'_'.$id.'","text":"%E2%97%80"},{"callback_data":"nomer","text":"'.$list.'"},{"callback_data":"slist'.$next.'_'.$id.'","text":"%E2%96%B6"},{"callback_data":"slist'.$vsego.'_'.$id.'","text":"'.$vsego.'"}],[{"callback_data":"downsh'.'_'.$id.'","text":"Скачать всё"},{"callback_data":"menucancel","text":"Отменить"}]]}'; if($mesId != "") { file_get_contents($website."/editMessageText?chat_id=".$chatId."&message_id=".$mesId."&text=".$answer."&reply_markup=".$replyMarkup); } else { file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$answer."&reply_markup=".$replyMarkup); } } else { $replyMarkup ='{"inline_keyboard":[[{"callback_data":"menucancel","text":"Отменить"}]]}'; file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".urlencode("\xF0\x9F\x98\xA3 В поиске нет результатов\r\n\r\n").$downloadposk.rekl()."&disable_web_page_preview=true&reply_markup=".$replyMarkup); if($mesId != "") file_get_contents($website."/deleteMessage?chat_id=".$chatId."&message_id=".$mesId); }
отлично, phpшники - вперед

Алексей
21.05.2018
22:15:04
библиотеки слишком много едят

и вываливают тонны непонятных ошибок

Google
Dan
21.05.2018
22:15:40
Может быть не стоит использовать библиотеки?

Алексей
21.05.2018
22:15:42
например офф библиотека время от времени вываливает "continue" через исключения

бот очень сильно жрет память на внутреннии операции тем более при нагрузке в 150 одновременных закачек это существо

ошибка вываливается только если текст вроде смешанный

чисто русский или чисто английский - ему пофиг

есть какие идеи?

Alexandr
21.05.2018
22:30:23
привет всем. Почему не работает " UPDATE telegram SET next = next + 1"??

Marlik
21.05.2018
22:39:50
Джейки
21.05.2018
22:40:14
foreach($obj["response"]["items"] as $val) { if($count == $offset) { if($kol<5) { $button.='[{"callback_data":"[sh]'.$offset.'_'.$id.'","text":"'.getname($val['duration'],$val['is_hq'],$val['artist'],$val['title']).'"}],'; $offset++; $kol++; } } $count++; } //file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$button."&disable_web_page_preview=true"); if($count !=0) { $answer = "\xF0\x9F\x8D\xB3 Поиск в VK"; $vsego = floor(intval($obj["response"]["count"])/5); if(intval($obj["response"]["count"])/5 != floor(intval($obj["response"]["count"])/5)) $vsego++; //$vsego = 10; if($vsego > 10) $vsego = 10; $back = $list - 1; if($back == 0) $back = 1; $next = $list + 1; if($next == ($vsego+1)) $next = $vsego; $replyMarkup = '{"inline_keyboard":['.$button.'[{"callback_data":"slist1_'.$id.'","text":"1"},{"callback_data":"slist'.$back.'_'.$id.'","text":"%E2%97%80"},{"callback_data":"nomer","text":"'.$list.'"},{"callback_data":"slist'.$next.'_'.$id.'","text":"%E2%96%B6"},{"callback_data":"slist'.$vsego.'_'.$id.'","text":"'.$vsego.'"}],[{"callback_data":"downsh'.'_'.$id.'","text":"Скачать всё"},{"callback_data":"menucancel","text":"Отменить"}]]}'; if($mesId != "") { file_get_contents($website."/editMessageText?chat_id=".$chatId."&message_id=".$mesId."&text=".$answer."&reply_markup=".$replyMarkup); } else { file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".$answer."&reply_markup=".$replyMarkup); } } else { $replyMarkup ='{"inline_keyboard":[[{"callback_data":"menucancel","text":"Отменить"}]]}'; file_get_contents($website."/sendmessage?chat_id=".$chatId."&text=".urlencode("\xF0\x9F\x98\xA3 В поиске нет результатов\r\n\r\n").$downloadposk.rekl()."&disable_web_page_preview=true&reply_markup=".$replyMarkup); if($mesId != "") file_get_contents($website."/deleteMessage?chat_id=".$chatId."&message_id=".$mesId); }
что ты хочешь тут сделать?

Алексей
21.05.2018
22:41:11
что ты хочешь тут сделать?
странности говорю творятся - пофиксил вроде принудительным приведением в utf8 получаемых данных

Джейки
21.05.2018
22:43:05
конечно ты тот еще извращенец. iconv() пробовал?

Suren
21.05.2018
22:43:18
Джейки
21.05.2018
22:43:54
Только не aiogram ??
ну хз, и его сломать можно, нечаянно, не так написав часть кода)

Suren
21.05.2018
22:44:23
ну хз, и его сломать можно, нечаянно, не так написав часть кода)
Ну так можно сломать что угодно Но он не вываливает «тонны непонятных ошибок»

Джейки
21.05.2018
22:45:00
странности говорю творятся - пофиксил вроде принудительным приведением в utf8 получаемых данных
и просьба к тебе, на будущее, чуть-чуть приведи в порядок код, пожалуйста...Сам я тоже не ахти красиво пишу, но блин, хотя б переменные пиши на английском чтоль

Ну так можно сломать что угодно Но он не вываливает «тонны непонятных ошибок»
ну его «тонны непонятных ошибок» я тоже не понял если честно.

@LyoSU
21.05.2018
22:45:51
Алексей
21.05.2018
22:46:05
и просьба к тебе, на будущее, чуть-чуть приведи в порядок код, пожалуйста...Сам я тоже не ахти красиво пишу, но блин, хотя б переменные пиши на английском чтоль
все переменные in english ж, берем официальную библиотеку - и закачиваем юзеру 150 аудиозаписей = поймете о чем я

Alexandr
21.05.2018
22:46:20
а почему должно работать?
Потому что везде примеры такие же

Google
Алексей
21.05.2018
22:46:52
150 закачек чего?
аудио - ну примерно около 100 человек одноврменно качают каждому максимум по 250 аудиозаписей

Джейки
21.05.2018
22:46:53
-_-
смотри, тут твоя тема)

Алексей
21.05.2018
22:47:38
т.е. ты про отправку аудиофайла (mp3) имеешь ввиду?
да, но не только, при больших аудио заводится например мега костыль через личный диалог и тд

Джейки
21.05.2018
22:47:53
что значит личный диалог?

аудио - ну примерно около 100 человек одноврменно качают каждому максимум по 250 аудиозаписей
а как ты боришься с лимитом? Хотя аудио отправляется не сразу, тут про лимиты говорить и не стоит.

Alexandr
21.05.2018
22:49:41
Алексей
21.05.2018
22:49:45
что значит личный диалог?
на сервере так ж крутится madelineproto авторизованный за пользователя, т.к. боты не могут отправлять большие файл - команда отправляется этому пользователю, тот грузит файл в диалог с ботом, бот получая сообщение запоминает file_id и уже направляет заказчику

@LyoSU
21.05.2018
22:49:53
ты таблицу создал?

Alexandr
21.05.2018
22:50:33
ты таблицу создал?
да, а в ней 3 перменные ( столбца)

Джейки
21.05.2018
22:50:54
@LyoSU
21.05.2018
22:50:59
да, а в ней 3 перменные ( столбца)
ну так смотри ответ от майскула

Alexandr
21.05.2018
22:51:38
@LyoSU
21.05.2018
22:52:20
ничем, в том то и дело
вбей в консоль майскула и покажи ответ

Alexandr
21.05.2018
22:54:10


Джейки
21.05.2018
22:56:05
а сколько записей то?

Alexandr
21.05.2018
22:56:45
к 1 нужно прибавить 1.

@LyoSU
21.05.2018
22:57:10
к 1 нужно прибавить 1.
этим запросом ты изменяешь это поле сразу всем строкам

Джейки
21.05.2018
22:57:24
стоп. там в таблице telegram сколько записей?

Google
Alexandr
21.05.2018
22:58:22
этим запросом ты изменяешь это поле сразу всем строкам
1 строка, но даже , когда было две , то все равно не работало

Джейки
21.05.2018
22:58:45
покажи таблицу telegram

а тип у next какой?

Alexandr
21.05.2018
22:59:48


tinyint(4)

Джейки
21.05.2018
23:00:28
https://ruhighload.com/lock+wait+timeout+exceeded+%D0%B2+mysql

Alexandr
21.05.2018
23:00:44


Джейки
21.05.2018
23:01:36
да не, понял. но тут видишь ошибка из за чего может быть.

Ошибка "Lock wait timeout exceeded" встречается при частом обновлении одних и тех же данных. Для быстрого решения проблемы достаточно изменить настройку innodb_lock_wait_timeout.

ты что его 100 раз пытался поменять?

Alexandr
21.05.2018
23:03:56
ну да, в течении 5 секунд два раза хотел увеличить

Джейки
21.05.2018
23:05:45
отличный сарказм. но что-то ж его заблокировало!

Alexandr
21.05.2018
23:06:50


Джейки
21.05.2018
23:07:23
а откуда эта ошибка, и когда появилась?

Alexandr
21.05.2018
23:07:44
просто обновлял phpMyAdmin ( страницу)

Джейки
21.05.2018
23:09:50
перезапусти денвер, попробуй все заново

Alexandr
21.05.2018
23:10:15
уже, но не робит

лол

С телефона прибавляет

а с компа - нет, хотя аккаунт один и тот же

Google
Джейки
21.05.2018
23:17:18
Стоп

На компе какой клиент?

Или ты про другое?

Alexandr
21.05.2018
23:19:02
Или ты про другое?
Я не понимаю уже. У меня было в базе значение 1 этого столбца = 1. После пару нажатий на телефоне их стало 6,но теперь опять все стоит.

Denis
21.05.2018
23:39:36
Нафига херока

Аренда сервера за 300р в месяц

И делай что хочешь

Louis
21.05.2018
23:59:50
+

Who
22.05.2018
02:07:51
посоны, а inlineKeyboard имеет фиксированную ширину, я так понял? ну т.е сами кнопки. или они растягиваются на ширину сообщения?



вот что делать с оставшимся пространством?

Tony
22.05.2018
02:42:03
вот что делать с оставшимся пространством?
Оставить для красоты либо на тексте который выложен на белом листе переносить.

вот что делать с оставшимся пространством?
И получится кубической формы. Много места займет. Оставь как есть. Так хоть промахнуться не получится))

Gabb
22.05.2018
02:46:42
Johnny
22.05.2018
03:51:04
вот что делать с оставшимся пространством?
У каждого свои проблемы, у меня этого пространства зачастую нет :)

Алексей
22.05.2018
03:52:10
вот что делать с оставшимся пространством?
Ничего не поделаешь, насколько я помню, если сообщение короткое, а кнопки маленькие - хочешь не хочешь, а выглядеть будет так

Ко всему кнопка еще и выехать за границы сообщения может

Vitaly
22.05.2018
04:03:00
В этом чатике либо кнопки либо вэбхуки на питоне. Ничо нового :)

Johnny
22.05.2018
04:04:02
В этом чатике либо кнопки либо вэбхуки на питоне. Ничо нового :)
ну прям. сейчас команда Vee проснется, и зарядит нам про безопасность телеги постов 100-200 :)

Страница 2987 из 4042