@botoid

Страница 630 из 4042
Vitaly
13.03.2017
15:34:00
Я все еще в Плюсе
Но ты очень быстро опускаешься )

yegorf1
13.03.2017
15:34:00
многопоточность это такое себе. всё это решается в ноде. как и скорость из коробки
Ты говоришь про синхронную работу, но в жс даже слипа нет

Google
denisx
13.03.2017
15:35:15
Ты говоришь про синхронную работу, но в жс даже слипа нет
давай поточнее, ты про однопоточный код или про асинхронные вызовы?

George
13.03.2017
15:35:36
ну на node.js можно легковесный API сделать как прослойку и бота, как интерфейс для взаимодействия... - я думал в этом ключе. Причем можно будет юзать гибридно. А можно например на node.js сделать бэк, а бота на python... whatever... проект возможно будет для опенсурса... что там ща популярней - js или python?

Rocket
13.03.2017
15:36:21
Вот. Здравствуй 0
Посмотрел твою либу. А что ты подазумеваешь под middleware?

George
13.03.2017
15:37:00
кстати про робочат давно слышал и знаю )

Rocket
13.03.2017
15:37:40
Цепочку вызовов
Несколько bot.on() обрабатывают один и тот же запрос?

Vitaly
13.03.2017
15:38:21
Это просто добавление хэндлера в цепочку. То есть можно сказать да )

Rocket
13.03.2017
15:39:06
Это просто добавление хэндлера в цепочку. То есть можно сказать да )
Угу, ясно. Вчера прочитал переписку и в голове возникло что то типа middleware в django.

Vitaly
13.03.2017
15:39:34
Я думаю похожее что то. Позже гляну как там в Джанго и скажу

Rocket
13.03.2017
15:39:56
У меня сейчас метания на тему - сделать pre/post handlers и chaining handlers.

George
13.03.2017
15:40:08
хых.. в js вот хрен многопоточно обработать данные.. в highload-проектах вроде критично

Vitaly
13.03.2017
15:42:00
У меня сейчас метания на тему - сделать pre/post handlers и chaining handlers.
Второе. Первое - много корнер кэйсов будет

Google
Vitaly
13.03.2017
15:42:55
Например?
Ну много точек расширения в смеси с лайфтаймом.

Цепочка проще и понятнее.

Да и более гибко

Rocket
13.03.2017
15:43:56
Цепочка проще и понятнее.
Вот мне так не кажется.

Vitaly
13.03.2017
15:44:04
Да ладно ))

Douglas
13.03.2017
15:44:17
Опять языкосрач? ?
Вот вот. Поверить не могу что кто то до сих пор на это ведется

George
13.03.2017
15:44:36
https://nodejs.org/docs/latest/api/cluster.html вот это насколько юзабельно, кто пробовал?

Vitaly
13.03.2017
15:45:29
https://nodejs.org/docs/latest/api/cluster.html вот это насколько юзабельно, кто пробовал?
Это никто не юзает. Нада масштабировать - масштабируй на уровне приложения

George
13.03.2017
15:45:37
прикольный велосипед вроде.. 4-хколесный...

я понял. В общем мне пытаются объяснить что можно что угодно проимпрувить

тогда казуально выбираю Node.js



Rocket
13.03.2017
15:47:59
Да ладно ))
Тут есть два противоречащих поинта. Если делать pre/post, то будет меньше гибкости, но зато наглядность - сходу понятно что и как обрабатывается. Если же делать chaining, то гибкости - хоть ложкой ешь, но пропадает наглядность и фильтры нужно будет вызывать для всех хендлеров - страдает производительность, если фильтры тяжелые.

George
13.03.2017
15:49:46
пойду говнокодить. Пожелайте удачи

Google
Rocket
13.03.2017
16:15:59
Тяжелые - отваливайся когда не нужно
О том и речь, что думать об этом нужно будет когда пишешь код, а хочется чтобы об этом библиотека думала.

denisx
13.03.2017
16:17:03
О том и речь, что думать об этом нужно будет когда пишешь код, а хочется чтобы об этом библиотека думала.
не понял тебя чуток. библиотека думает там где нужно. зачем ей думать про твой код?

Rocket
13.03.2017
16:25:05
Про фильтры не понял. У тебя де цепочка. 1 раз вначале отфильтровал и все.
Все верно, в этом случае надо вызвать все фильтры для всех хендлеров.

denisx
13.03.2017
16:26:18
Все верно, в этом случае надо вызвать все фильтры для всех хендлеров.
можно пример? я не понимаю, как ты это реализуешь на другом языке, который "думает сам"

denisx
13.03.2017
16:27:03
ты вроде про питон писал

Vitaly
13.03.2017
16:27:24
Rocket
13.03.2017
16:27:37
ты вроде про питон писал
В контексте данного вопроса не важно на каком языке

Vitaly
13.03.2017
16:28:00
оке

denisx
13.03.2017
16:28:30
Rocket
13.03.2017
16:29:01
"делать pre/post" vs чейн. вот тут
Ага, про это и говорим

Vitaly
13.03.2017
16:56:35


Rocket
13.03.2017
16:57:06
А вот и нет ?

Vitaly
13.03.2017
16:57:25
В вот и да )))

Rocket
13.03.2017
17:11:08
В вот и да )))
Если я правильно понял твою модель, то выглядит это следующим образом(с питоньим синтаксисом нет проблем?): @bot.on(is_message, is_user_registred, .... ) def some_handler(...): ...

все хендлеры заданные таким образом будут вызываны, если фильтры возвращают True

верно я понимаю?

Google
Vitaly
13.03.2017
17:12:35
не, on - это просто добавление в цепочку

даавай пример функционала - я накидаю код и объясню

Rocket
13.03.2017
17:13:35
гхм...

например, бот, который хранит заметки

Vitaly
13.03.2017
17:15:10
какие фильтры?

опиши функционал )

Rocket
13.03.2017
17:16:23
команда /list - показать все заметки команда /add - добавить новую команда /remove - удалить

Vitaly
13.03.2017
17:17:08
Сча накатаю

Хотя тут я не виду мидлварей )

Вижу

Rocket
13.03.2017
17:18:06
есть она тут - перед любым запросом достать юзера из базы - его настройки - язык, часовой пояс как минимум

хотя, у меня конкретно для этих целей задуманы экстракторы, но об этом отдельно подискутируем

Vitaly
13.03.2017
17:23:59
https://gist.github.com/dotcypress/f5700a53869ea4e2716fc3107b887d8f

вот, хотя опять таки - мидлвари там не нужны

нужен другой пример )

или давай расширю этот пример

Alan
13.03.2017
17:26:02
Господа, подскажите, а есть статистика сколько в среднем приходится юзеров на одного нормального ( в плане юзабилити) бота?

Rocket
13.03.2017
17:26:17
Можешь flow рассказать, а то я в синтаксисе js плаваю?

Google
Alan
13.03.2017
17:27:36
От 1 до сотен тысяч
Вилка адовая, может есть ресурсы со статами популярных ботов? (можно свой на каждого бота)

/stat@combot

Combot
13.03.2017
17:28:02
combot.org/chat/-1001041869725

Vitaly
13.03.2017
17:29:08
Можешь flow рассказать, а то я в синтаксисе js плаваю?
вот, почитай этот файлик https://github.com/telegraf/telegraf/blob/develop/lib/core/composer.js это просто цепочка обработчиков, но я накрутил немного хэлперов и можно строить крышесносящие деревья обработчиков. Просто набор фактори, которые генерируют умные обработчики, типа если сообщение не мое - просто вызываю следующий обработчик, etc.

Rocket
13.03.2017
17:29:30
Vitaly, bot.use это preprocessor?

Vitaly
13.03.2017
17:29:45
это добавление обработчика в цепочку

все

просто добавление )

handlers.push(handler) - псевдокод

Rocket
13.03.2017
17:32:24
ты меня навел на мысль, пойду медитировать с карандашом

Vitaly
13.03.2017
17:32:56
классические миддлвари - знакомьтесь )

Rocket
13.03.2017
17:33:24
угу, похоже на то, что в django

Volond
13.03.2017
17:51:29
А еще есть такая штука market://details?id=telegra.ph

Alan
13.03.2017
18:11:27
@chotamreaderbot у этого бота все нормальные
Как это относится к моему вопросу не ясно)

Volond
13.03.2017
18:17:27
Alan
13.03.2017
18:18:02
Какой вопрос такой ответ
Ок, тролль детектед:)

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