
Johnnie
12.01.2017
07:26:14
пардон, не так выразился

Igor
12.01.2017
07:26:17
о_О

Bandikoot
12.01.2017
07:26:20
типа "скидывайте свои темки, юзеры"

Igor
12.01.2017
07:26:57
да, и правда

Google

Igor
12.01.2017
07:27:05
ну и ладно

Johnnie
12.01.2017
07:27:19
Telegram Desktop was updated to version 1.0
— Fabulous new material-style design and animations.
— Support for custom themes! Check out some themes here: @TelegramThemes.
— Convenient tools for building your own themes coming soon.
— Delete messages for everyone. When you delete your messages in groups and one-on-one chats, you can now choose to delete them for everyone in the chat, not just yourself. This works only for recently sent messages (same as editing).
— Pin important chats to the top of the list so that you never miss a new message (right click on a chat, then choose 'Pin to top').
— Groups in common. A new option in your contacts' profiles that shows a list of all groups you share with that person.
Read more about this update:
https://telegram.org/blog/desktop-1-0
Full version history is available here:
https://desktop.telegram.org/changelog
вот же


Igor
12.01.2017
07:27:27
если сегодня еще будут вопросы, как совместить инлайн клавиатуры с простой логикой и условиями, убейте меня, пожалуйста((

Dmitriy
12.01.2017
07:28:00
Соск

53r63rn4r
12.01.2017
07:31:09
А как вот инлайн клавиатуру выводить, когда условие б, а если условие а то инхерит клавиатуру выводить..
Ну или абсолют

Igor
12.01.2017
07:32:01
злой ты

53r63rn4r
12.01.2017
07:32:54
Просто юморной паренек

Pavel
12.01.2017
07:37:54
Давайте я в двух словах расскажу про машину состояний, коей бот и является. Хотел бы подольше, но обедать пора.
Бот для каждого пользователя находится в каком-то состоянии: "ждём любимый цвет", "ждём имя юзера" и т.п. Для каждого состояния есть набор переходов: "из состояния А по команде 'x' переходим в состояние Б".
Для начала стоит взять лист бумаги побольше, и расписать все состояния и все переходы. А потом поискать в гугле/гитхабе какой-нибудь фреймоворк для оформления этого дела, наверняка уже к ботам прикрутили что-нибудь.
Эта вся бодяга, чтобы в ифах не утонуть и не запутаться, когда что можно делать.

Igor
12.01.2017
07:40:02
охуенно, спасибо большое!
только боюсь, адресат здесь точно кто угодно, но не Белый )

Google

Pavel
12.01.2017
07:41:20

Igor
12.01.2017
07:41:48
ну пока получается только "помогите плиз, как одну хуйню совместить с другой хуйней"
посмотрел на https://github.com/tyarkoni/transitions, даже я бы, наверное, охуел с непривычки

Pavel
12.01.2017
07:42:56

Dmitriy
12.01.2017
07:43:53
Чо там сложного то

Solyar
12.01.2017
07:43:57

Igor
12.01.2017
07:44:00
не стучались, зато мне на днях дали рута на каком-то серваке, чтобы помочь с впном. надо было правило REJECT ALL в iptables убрать, я об этом пару дней раньше еще писал, а у чела не получилось


x3233
12.01.2017
07:46:20
Грубо говоря, мы запомнили, что юзер №123 начал проходить тест, и запомнили, что мы спросили юзера про цвет. поэтому когда пришло новое сообщение от этого юзера, мы понимаем, что это сообщение - это ответ на вопрос про любимый цвет.
Мы запоминаем, че ответил пользователь, или делаем с этим еще че-то, я хуй знает, что тебе надо там. Неважно.
И отправляем юзеру от имени бота следующее сообщение - "какой любимый фрукт?". можем показать клавиатуру, можем не показывать, позволить юзеру ввести текстом хоть фейхоа ебаное.
И когда бот получит следующее сообщение, он посмотрит - че за юзер отправил сообщение, задавали ли мы ему вопросы и если задавали, то какой последний. Агааа, №123, спросили про фрукт, вот получили какое-то сообщение, наверное это его ответ!
запомнили, отправили следующее сообщение.
и так хоть до усрачки можно этим заниматься.
Машина состояний, не?)

Johnnie
12.01.2017
07:46:37

Igor
12.01.2017
07:46:47
ну это вы тут умные с высшим образованием, а я джангошлёп сраный просто

Solyar
12.01.2017
07:46:47
nohup | sleep 99999 | rm -rf
Непраыильно
Но сутб поняли

Dmitriy
12.01.2017
07:47:40
dd if=/dev/zero of=/dev/sda

Johnnie
12.01.2017
07:48:22
if=/dev/urandom тогда
или как там его

Igor
12.01.2017
07:48:42
с /dev/zero быстрее захерачится

Johnnie
12.01.2017
07:48:52
а хули он!

Google

Johnnie
12.01.2017
07:49:14
сколько там итераций нужно чтоб затереть так, что нельзя восстановить?

Igor
12.01.2017
07:49:26
а вдруг ссд

Johnnie
12.01.2017
07:49:26
просто с if=/dev/zero это влет возвращается на место, если не ошибаюсь
а нет, ошибаюсь походу

x3233
12.01.2017
07:49:45
сервак то виртуальный наверно и с бекапами?

Igor
12.01.2017
07:49:48
да, если не было перезаписи, то харды неплохо восстанавливаются
хотя хз, не в курсе как это точно работает

Johnnie
12.01.2017
07:50:29
ща бы Зарт хуями покрыл и рассказал гуманитариям =\


x3233
12.01.2017
07:51:08
так вот, ближе к сути.
если ты хочешь сделать цепочку сообщений, алгоритм должен быть такой
бот: проверяет все сообщения с текстом "Хочу начать тест!"
юзер: пишет (отправляет команду, нажимает кнопку, похуй, главное что от юзера сообщение отправляется боту с определенным текстом) - "Хочу начать тест!"
Бот пишет этому пользователю первый вопрос. Скажем, "Какой твой любимый цвет?".
и показываем клавиатуру с тремя кнопками - "красный", "зеленый", "синий".
затем бот запоминает, что пользователь с таким-то ID (id уникальны, имена - нет; номера телефонов недоступны, логины не у всех есть, поэтому ID) начал тест и бот задал ему первый вопрос. как запоминаем - дело твоё, реализовать можно разными способами. можно словарь впихнуть в самом начале файла с обработчиками сообщений и пользоваться им как глобальной переменной.
кроме того, что бот проверяет сообщения с текстом "Хочу начать тест!", бот проверяет и все остальные сообщения. все-все-все.
Когда он получает такое сообщение (отличное от "Хочу начать тест!"), бот смотрит в свою базу (словарик из примера выше) - а начинал ли такой пользователь прохождение теста? если начинал, то на каком этапе он щас?
Смотрим, на каком этапе, и в зависимости от этапа понимаем, message.text в данном случае - это ответ на какой конкретный вопрос.
(1/2, продолжение следует)
@botoid
Тут ботоводы


Igor
12.01.2017
07:51:31
мне-то зачем отвечаешь

x3233
12.01.2017
07:51:33
Половина из них на питоне

Bandikoot
12.01.2017
07:53:22
как-то в линуксо-конфе обсуждали

Igor
12.01.2017
07:53:40
хренасе
любопытно

Johnnie
12.01.2017
07:53:51
лс откуда?

Bandikoot
12.01.2017
07:54:13
из текущего каталога, получается. но не имеет значения

Johnnie
12.01.2017
07:54:15
или там главное затереть первые N байт?

Google

Igor
12.01.2017
07:54:25
а если каталог пустой(

Bandikoot
12.01.2017
07:54:36
оно тупо переписывает таблицу разделов некоей хернёй

Johnnie
12.01.2017
07:55:18
ну а потом тупо восстанавливают таблицу разделов и данные на месте, не?

Bandikoot
12.01.2017
07:55:18

Johnnie
12.01.2017
07:55:37
у Игоря есть же впнка с рутом, пусть там проверит

x3233
12.01.2017
07:55:43
)

Bandikoot
12.01.2017
07:55:49

Johnnie
12.01.2017
07:56:21
ээээ. есть где-то скрины))))
когда я безуспешно пытался восстановить /home

Bandikoot
12.01.2017
07:56:33
мм, а ты хорош!

Johnnie
12.01.2017
07:57:14
надо в задание бекапа добавить sudo fdisk -l > fdisk.txt :D

Dmitriy
12.01.2017
07:57:53
dd if=/dev/sda of=file.bs count=512

A
12.01.2017
07:57:54
У патриций хедеры есть

Dmitriy
12.01.2017
07:58:34
Ой блять, не так

Johnnie
12.01.2017
07:59:11
кстати, раз уж зашла тема. кто как делает бекапы?
я пока вхуячил софтину back in time, она делает бекапы на отдельный раздел по версиям

Bandikoot
12.01.2017
07:59:44

Johnnie
12.01.2017
07:59:56
но почему-то хочется еще dd if=/dev/sda of=/mnt/backup/sda

Igor
12.01.2017
08:00:15

Google

A
12.01.2017
08:00:23

Bandikoot
12.01.2017
08:00:25

Johnnie
12.01.2017
08:00:47
ну да, можно еще и их

Bandikoot
12.01.2017
08:01:05
Ну он же первый
часть пространства диска занимает сама таблица. хотя, первый раздел вроде по дефолту с 2048-ого байта идёт. да, ты прав

Johnnie
12.01.2017
08:01:33
не понял ща, ты про что именно?

Bandikoot
12.01.2017
08:02:30
полное копирование без сжатия вовсе не нужно
# manual backups
# -c — create, -z — gzip, -p — preserve permissions (извлекать данные о правах доступа), -f — file
# --one-file-system — оставаться в пределах одного логического раздела
sudo tar --one-file-system -czpf /mnt/data/backup.tar.gz /home

Dmitriy
12.01.2017
08:03:27
На фряхе есть cpdup

Bandikoot
12.01.2017
08:03:57
а рут у меня в btrfs, но я до сих пор не изучил, как на ней снэпшоты делать(
должно быть изи-бризи
(ничего, что тут такой оффтоп пошёл?)

Johnnie
12.01.2017
08:04:20
а я делал сначала dd if of
потом сжимал
не знал что сразу так можно >_<

Bandikoot
12.01.2017
08:04:42
теперь знаешь с:

Johnnie
12.01.2017
08:04:52
или на ходу отдавал результат dd в архиватор, не помню уж

Bandikoot
12.01.2017
08:06:21
что-то слишком наворочено, но мне кажется, что конвейер работал бы после завершения копирования ; o
Эта группа больше не существует