
Леонид
05.04.2016
11:51:42
в чате

Alex
05.04.2016
11:51:43
Вот оно что!

Плюшка
05.04.2016
11:51:45
$reply_markup=["keyboard"=>[["a","b"],["c","d"]]];
$sendmessage =API_URL."sendmessage?chat_id=".$chatID."&text=Привет&reply_makrup=".urlencode(json_encode($reply_markup));
как-то так

Леонид
05.04.2016
11:56:45
кароч

Google

Леонид
05.04.2016
11:56:50
ктонить знает
как сделать more...
что бы можно было свернуть текст
большой

Alex
05.04.2016
12:11:51
странно почему

Плюшка
06.04.2016
04:24:35
Там reply_makrup вместо reply_markup
по хорошему, text тоже надо оборачивать в урленкод
<?php
class TelegramBot{
protected $token;
public function __construct($token){
$this->token = $token;
}
public function getApiUrl(){
return "https://api.telegram.org/bot{$this->token}/";
}
protected function buildParams($params){
$s = [];
foreach($params as $k=>$v){
array_push($s,"{$k}=>{urlencode($v)}");
}
return implode($s,"&");
}
public function buildUrl($method,$params){
return $this->getApiUrl().$method."?".$this->buildParams($params);
}
public function query($method,$params){
return json_decode(file_get_contents($this->buildUrl($method,$params)),true);
}
}
?>
вот готовый класс

Logos
06.04.2016
07:12:55
Готовый класс для чего?

Плюшка
06.04.2016
07:13:08
для бота

Logos
06.04.2016
07:14:47
А класс *чего* для бота?

Плюшка
06.04.2016
07:15:42
бота

Google

Плюшка
06.04.2016
07:15:53
а что не так?

Logos
06.04.2016
07:24:33
все верно. это каркас всего бота в 1 классе
сорри

Vasilij
06.04.2016
08:13:29
ты же не пишешь getBuildedURL
зачем эта промежуточная переменная $s? Есть же array_map
зачем getApiUrl в паблике? это же внутренняя реализация класса
так же как и билдЮрл
Ладно язык плох - это понятно, но почему не пытаться понятнее на нем писать?


Александр NeonXP⚛??
06.04.2016
08:19:01
о! 101 класс для телеграмовых ботов на РНР! ?
Да лан я сам такой: https://github.com/NeonXP/TelegramApi

Logos
06.04.2016
08:27:49
нече так)
а там точно 101?

Александр NeonXP⚛??
06.04.2016
08:29:17
±100

Logos
06.04.2016
08:29:50
?

Плюшка
06.04.2016
08:47:13
щас переделаю

Alex
06.04.2016
09:14:27
@zapishibot
Научил я его клавиатуру показывать

Logos
06.04.2016
09:14:43
как

Google

Alex
06.04.2016
09:15:45
$reply_markup=["keyboard"=>[["голос","фото"],["стикер","файл"]]];
$sendmessage =API_URL."sendmessage?chat_id=".$chatID."&text=Привет&reply_markup=".urlencode(json_encode($reply_markup));
file_get_contents($sendmessage);
break;

Logos
06.04.2016
09:18:00
break обязателен?
синтаксис соответствует правилам апи?

Alex
06.04.2016
09:18:32
case "/start":
$reply_markup=["keyboard"=>[["голос","фото"],["стикер","файл"]]];
$sendmessage =API_URL."sendmessage?chat_id=".$chatID."&text=Привет&reply_markup=".urlencode(json_encode($reply_markup));
file_get_contents($sendmessage
break; если в в конструкции switch case

Logos
06.04.2016
09:18:48
почему urlencode?

Alex
06.04.2016
09:19:29
"Эта функция удобна, когда закодированная строка будет использоваться в запросе, как часть URL, также это удобный способ для передачи переменных другим страницам."

Vasilij
06.04.2016
09:35:20
Мне интересно, а что все пишут? Я имею ввиду каких ботов, окромя mySuperTelegramFramework?

Logos
06.04.2016
09:36:00

Alex
06.04.2016
09:36:02
Я просто разбираюсь, как всё устроено, учу его всему по чуть-чуть, пока идеи большого проекта нет

Vasilij
06.04.2016
09:36:54
так а зачем учить сторонее апи если нет идеи его использования. Да и вообще как это учить апи?
или ты на примере телеграма практикуешься в пхп?
но тогда зачем пхп)

Logos
06.04.2016
09:37:37
самая простая реализация на php

Vasilij
06.04.2016
09:38:02
это потому, что ты немного пхп знаешь) Самая простая что я видел это на эликсире

Alex
06.04.2016
09:38:35

Александр NeonXP⚛??
06.04.2016
09:38:46
у меня ботик в конфе моей следит за порядком. другой бот попомогает моей команде в DozoR'е.
+ по тихоньку пишу для текстовых квестов бота

Alex
06.04.2016
09:39:31

Vasilij
06.04.2016
09:40:12
да, и как помогает команде?
есть идея запилить финансового помощника, но времени нет

Google

Александр NeonXP⚛??
06.04.2016
09:40:36
да, и как помогает команде?
ну коды из командного чата сам вбивает в движок и задание преслылает. получается сильно быстрее чем через сайт это все делать

Alex
06.04.2016
09:41:33
?

Vasilij
06.04.2016
09:41:48
курто

Logos
06.04.2016
09:44:13

Александр NeonXP⚛??
06.04.2016
09:45:03
квестового бота решил пилить на nodejs ибо сейчас на РНР не пишу, а по работе и в личных петпроджектах/шабашках только на ноде пишу

Vasilij
06.04.2016
09:45:07
что будет делать?
что-то типа
> How much money do i have in UAH?
In total you have XXX UAH
> How much money do i have on card 1234?
You have YYY UAH on card 123
> Can i afford iphone for ZZZ UAH?
You can, but you will not have enough money to live. Shell i put “iphone for ZZZ UAH” in wait list?
> Yes
Done
это в конечной реализации. Для начала просто коммандами

Александр NeonXP⚛??
06.04.2016
09:45:47
особенно про айфон

Logos
06.04.2016
09:46:07
ну для этого часок нужен

Александр NeonXP⚛??
06.04.2016
09:46:10
с яндексмаркета цены идеально брать
и еще говорить, «купить за столько то ты можешь воооон там, быньк, карта с геопозицией»

Logos
06.04.2016
09:47:34
вот геолокацию на php освоить = это весч
весчь то есть

Vasilij
06.04.2016
09:47:59
Там много времени надо потратить на юзер-френдли комманды. Я думаю сделать базу, загнать в эластик и по нему искать совпадения и высчитывать коэфициент схожести с текстом

Logos
06.04.2016
09:48:03
в телеграме

Vasilij
06.04.2016
09:48:16
не, я не по пхп)

Logos
06.04.2016
09:48:39
у меня на php многое завязано
не могу от него отойти

Google

Vasilij
06.04.2016
09:48:54
другая работа)

Logos
06.04.2016
09:48:56
либо все переделывать придется
что за эластик
просвети

Vasilij
06.04.2016
09:49:33
https://www.elastic.co/
фулл текст сьорч енджин

Logos
06.04.2016
09:49:37
и элксир - кто это?

Vasilij
06.04.2016
09:50:15
http://elixir-lang.org/ - функциональный язык программирования
заточен под конкуренси
там тоже есть свой фреймворк, очень похож на rails
только не такое говно :)

Logos
06.04.2016
09:52:10
исполнение в режиме *мягкого* реального времени
^ что это?

Vasilij
06.04.2016
09:52:39
где это такое?

Logos
06.04.2016
09:52:48
вики про эликсиръ