These are chat archives for LaravelRUS/chat

10th
Jul 2016
Dave
@aios
Jul 10 2016 00:09
@sitdirek действительно - сам сделал - сам нашел - сам решил)
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 00:50
Larabeer митап окончен, отдельная благодарность @symbios-zi за активное участие +)))
Dave
@aios
Jul 10 2016 00:52
@SerafimArts повезло вам... =(
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 00:56
Ща, всё будет+
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:07
https://youtu.be/gPvPssxRx0k
там обработка идёт пока (поворот видео под нормальный формат)
#Спасибо @vlsoprun, ты настолько офигенный оператор, что даже смог нажать кнопку "стоп" на середине видеообращения к участникам :D
JhaoDa
@jhaoda
Jul 10 2016 01:12
Гайз, а хорошо ли отдавать пустую коллекцию вместо null, если в связи hasMany пусто?
Andrei Sosnov
@atehnix
Jul 10 2016 01:12
@SerafimArts :+1: Молодцы! Хоть кому-то удалось собраться)
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:13
@jhaoda очень хорошо
Dave
@aios
Jul 10 2016 01:13
@jhaoda мне кажется не очень. если особая обработка какая то нужна.
JhaoDa
@jhaoda
Jul 10 2016 01:13
@SerafimArts а почему ларавель так не делает из коробки?
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:13
@jhaoda а хз, но я бы просто возвращал пустую коллекцию
JhaoDa
@jhaoda
Jul 10 2016 01:13
Мне вот тоже эта идея нравится, но червячок сомнения гложет...
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:14
всё же ты выборку делал, получил результат
просто он пустой
как следствие и коллекция из 0 элементов
Andrei Sosnov
@atehnix
Jul 10 2016 01:14
Я тоже за пустую коллекцию.
Dave
@aios
Jul 10 2016 01:15
пошумели погудели. =(((
ппц.. а когда еще планируете?
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:16
ну а кто знает
эта вся сборка была из-за @symbios-zi =)
он в мск приезжал типа
JhaoDa
@jhaoda
Jul 10 2016 01:28
Крысота, теперь если любая many-связь пустая, то возвращается пустая коллекция
Dave
@aios
Jul 10 2016 01:28
@jhaoda поделись пожалуйста.
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:29
у него там своя атмосфера
JhaoDa
@jhaoda
Jul 10 2016 01:29
Как не заглянешь в элоквент, так что-то новое каждый раз что-то интересное найдешь
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:29
реинкарнация yadm походу
JhaoDa
@jhaoda
Jul 10 2016 01:29
@SerafimArts не, это чисто на элоквентовских фичах
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:30
@jhaoda ты не отнекивайся, а давай yadm пиши
я сделал всё, что было в моих силах для этого
JhaoDa
@jhaoda
Jul 10 2016 01:32
https://gist.github.com/jhaoda/5f99d3990a953bf2e7ff4fe5928cbfe2
Не уверен, что $relations instanceof HasOneOrMany || $relations instanceof HasManyThrough достаточно, но это по ходу станет ясно
Dave
@aios
Jul 10 2016 01:32
@jhaoda спасибо
KarmaBot
@KarmaBot
Jul 10 2016 01:32
Спасибо (+1) для @jhaoda принято! Текущая карма +1033.
JhaoDa
@jhaoda
Jul 10 2016 01:34
Падажжите, я что же, велосипед изобрёл...
Отключил свои правки, а всё равно коллекция приходит
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:36
вот это поворот
JhaoDa
@jhaoda
Jul 10 2016 01:37
:( спать пора, короче
@aios извини, бро, ввёл в заблуждение
@SerafimArts это всё доктрина виновата
Там же явно инициализируются в конструкторе переменные для хранения связей, вот меня что-то и заклинило, что тут тоже надо
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:39
доктрина всегда во всём виновата
Dave
@aios
Jul 10 2016 01:39
@jhaoda да ничего. а я думал ты там какой то прорыв сделал.
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:39
судя по моему опыту работы со всем, где она учавствует
Dave
@aios
Jul 10 2016 01:40

у него там своя атмосфера

а что за атмосфера то?

@SerafimArts он ведь никогда ничего не рассказывает. знает больше всех - ну или просто не обращается с вопросами в чат - а если обращается то реально редко - когда все свои - типа в 4 утра.
Andrei Sosnov
@atehnix
Jul 10 2016 01:41
@jhaoda гы) Значит не зря 3/4 "опрошенных" были за пустую коллекцию.. :)
JhaoDa
@jhaoda
Jul 10 2016 01:41
:( а можно матом?
Dave
@aios
Jul 10 2016 01:42
@jhaoda надеюсь не на меня.
Andrei Sosnov
@atehnix
Jul 10 2016 01:42
@jhaoda да кто ж тебя забанит.. ))) Можно)
jdmpnn
@jdmpnn
Jul 10 2016 01:42
да тут прям культ личности jhaoda я смотрю...
Dave
@aios
Jul 10 2016 01:42
@jdmpnn ну он тут просто самый "старый"
@jdmpnn типа уважение к возрасту и все такое.
JhaoDa
@jhaoda
Jul 10 2016 01:43
Делаю dd() модели
  #relations: array:1 [
    "images" => Collection {#301
      #items: []
    }
  ]
Делаю dd($model->images) — null
Чот я не понял
Dave
@aios
Jul 10 2016 01:44
На каком то этапе геттер срабатывает не правильно.
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:44
потому что внутри есть __get перехват, не?
Dave
@aios
Jul 10 2016 01:44
$model->images()
вот так пробовал?
JhaoDa
@jhaoda
Jul 10 2016 01:44
@aios зачем?
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:44
как бы $model->images не возващает релейшн
Dave
@aios
Jul 10 2016 01:44
@jhaoda ну вдруг ты ее не подгружаешь чисто случайно
JhaoDa
@jhaoda
Jul 10 2016 01:44
@SerafimArts ну так коллекцию пусть вернёт, она же уже есть у него
Dave
@aios
Jul 10 2016 01:44
@jhaoda ааа вот тебе зачем...
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 01:44
а перехватыевает вызов и делает какую-то магию доп. на релейшене
не помню какую
а то, что в relations - это лишь кеш
вроде как
Dave
@aios
Jul 10 2016 01:45
@SerafimArts кеш это то что как раз $model->images
@SerafimArts если подгрузил раньше.
@SerafimArts если нет - то вот у @jhaoda сейчас такая ситуация.
JhaoDa
@jhaoda
Jul 10 2016 01:46
@SerafimArts точно, я переопределил метод в цепочке вызовов и потерял поиск связи :(
@SerafimArts eskerrik asko
KarmaBot
@KarmaBot
Jul 10 2016 01:46
Спасибо (+1) для @SerafimArts принято! Текущая карма +508.
Vitaliy D
@actorius
Jul 10 2016 01:51
КОму нибудь попадались стать по созданию custom guard более детальные чем в доке на сайте лары?
JhaoDa
@jhaoda
Jul 10 2016 01:53
@actorius ты спрашивай
jdmpnn
@jdmpnn
Jul 10 2016 01:55
@jhaoda ты же этого так не любишь? я вот 2ю неделю боюсь тут спрашивать, повезло что англ. норм
JhaoDa
@jhaoda
Jul 10 2016 01:56
@jdmpnn я люблю толковые вопросы, а не те, ответы на которые в первом абзаце доки
И допускаю, что вопрос гвардов не совсем прост
А когда человек что-то делает с ларавель, но не знает, что такое ::class, то пардоньте, ему рано ларавель и я об этом говорю.
jdmpnn
@jdmpnn
Jul 10 2016 02:30
@jhaoda обычно мои вопросы либо требуют по часу времени только чтобы заредьюсить код до проблемного места, либо решаются прочтением и перепрочтением документации и туториалов. Далее я хотел написать что есть ещё каверзные вопросы, но когда начал сочинять ответ с пруфлинками, пришёл к выводу что они все решаются всё равно перепрочтением документации... Блин... ладно... Перестану боятся спрашивать... сразу же не забанят, если вопрос хоть каким-то боком к программингу
JhaoDa
@jhaoda
Jul 10 2016 02:31
@jdmpnn раминь!
Роман Сохарев
@greabock
Jul 10 2016 04:33
Приветы
KarmaBot
@KarmaBot
Jul 10 2016 04:33
Будь как дома, @greabock, я ни в чем не откажу. Много мануалов, коль желаешь, покажу :)
Роман Сохарев
@greabock
Jul 10 2016 04:33
как там сходка прошла?
@mrFANRA в formers/former это есть уже
Роман Сохарев
@greabock
Jul 10 2016 04:59
@SerafimArts Кирюша!
Dave
@aios
Jul 10 2016 05:39
@greabock https://youtu.be/gPvPssxRx0k
Vitaliy D
@actorius
Jul 10 2016 05:56
Авторизую так: $username = 'joe'; // var_dump(Auth::attempt(['username' => $username])); var_dump(Auth::check());
Attempt возвращает true, check соответственно тоже. Но если закоментить следующим запросом attempt то check = false. Почему? В доке написано что атемпт аутентифицирует юзера через сессию и дальше юзер будет сам заливаться в Auth::user()
Vitaliy D
@actorius
Jul 10 2016 08:24
Никто не знает почему?)
Роман Сохарев
@greabock
Jul 10 2016 09:37
@actorius дык, а где имплементация методов, собственно? retrieveByToken и retrieveById конкретно интересуют
Роман Сохарев
@greabock
Jul 10 2016 09:56
это не говоря уже о том, что для такого костыля на массивах больше подойдет дженерик, чем реальная модель
Ну и не мешало бы теорию по аутентификации и сессиям подтянуть. Таких вопросов бы не возникло
Vitaliy D
@actorius
Jul 10 2016 10:21
@greabock Да была б она еще теория по ларе. Я так понял что оно само работает с сессиями, а оказывается нужно писать самому...
JhaoDa
@jhaoda
Jul 10 2016 11:21
@actorius ссылки на гист надо заворачивать в код
Lander931
@Lander931
Jul 10 2016 11:41
Привет
KarmaBot
@KarmaBot
Jul 10 2016 11:41
Прувет, @Lander931!
Lander931
@Lander931
Jul 10 2016 11:43
У хостера php v5.4.45, подскажите какая версия ларавель подойдет? 5.2.3 не идет. Не хочется перебирать все версии, подскажите где посмотреть требования под каждую версию...
JhaoDa
@jhaoda
Jul 10 2016 11:46
@Lander931 дерьмовый хостер. Ты уверен, что нельзя версию РНР поменять в панели управления?
Lander931
@Lander931
Jul 10 2016 11:47
@jhaoda согласен
@jhaoda нельзя менять
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 11:47
@greabock дада, что случилось?
JhaoDa
@jhaoda
Jul 10 2016 11:47
@Lander931 что за хостер?
Lander931
@Lander931
Jul 10 2016 11:47
hitex.by
JhaoDa
@jhaoda
Jul 10 2016 11:48
@Lander931 ну или меняй хостера, или ставь 5.0
Lander931
@Lander931
Jul 10 2016 11:50
Хостера напряжно менять, идти в соответствующую инстанцию, писать заяву, и т.д. Беларусь она такая )))
@jhaoda спасибо, попробую 5.0
KarmaBot
@KarmaBot
Jul 10 2016 11:50
Спасибо (+1) для @jhaoda принято! Текущая карма +1034.
JhaoDa
@jhaoda
Jul 10 2016 11:51
@Lander931 а ты техподдержку спрашивал?
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 11:51
учитывай, что 5.0 не LTS
как следствие - её уже не поддерживают
Roman Fandeev
@mrFANRA
Jul 10 2016 11:51
Всем привет. Подскажите по поводу Paginate. Если пользователь попал на страницу где нет записей, например в ручную указал ?page=9999. Это нужно в ручную проверять и выбивать 404 или есть какая настройка для автоматической проверки?
KarmaBot
@KarmaBot
Jul 10 2016 11:51
@mrFANRA даров!
Lander931
@Lander931
Jul 10 2016 11:51
@jhaoda нет
@SerafimArts что такое LTS
JhaoDa
@jhaoda
Jul 10 2016 11:52
Я вот тоже один раз столкнулся с 5.3, написал хостеру, он говорит «ой, не должно такого быть, глюк какой-то». И правда, через минут 10 появился и 5.4, и 5.5, и 5.6 на выбор
@Lander931 а ты спроси
Lander931
@Lander931
Jul 10 2016 11:52
@jhaoda ага, спрошу
JhaoDa
@jhaoda
Jul 10 2016 11:52
@Lander931 ну вот сначала спроси, а потом уже на 5.0 смотри :)
Ну ничо, в свете последних законов и у нас скоро будет Белоруссия
Lander931
@Lander931
Jul 10 2016 12:02
@jhaoda что-то на счет хранения переписок и данных от пользователей?
JhaoDa
@jhaoda
Jul 10 2016 12:02
@Lander931 ага
mikelyashenko
@mikelyashenko
Jul 10 2016 12:09
Всем привет. Не отправляется почта. Логи пустые. Использую SMTP провайдера. Ставил рядом PHPMailer, все работает. Кто знает в чем может быть проблема? Готов оплатить консультацию.
KarmaBot
@KarmaBot
Jul 10 2016 12:09
Будь как дома, @mikelyashenko, я ни в чем не откажу. Много мануалов, коль желаешь, покажу :)
Gevorg Baghdasaryan
@vvmgev
Jul 10 2016 12:10
This message was deleted
WMAnAn
@WMAnAn
Jul 10 2016 12:10
всем привет
KarmaBot
@KarmaBot
Jul 10 2016 12:11
@WMAnAn и тебе не хворать :)
WMAnAn
@WMAnAn
Jul 10 2016 12:13
извените что вопрос не по технический но в теме
кто нибудь знает open source проект на laravel 5.0>=
желателно не большой
mikelyashenko
@mikelyashenko
Jul 10 2016 12:14
WMAnAn
@WMAnAn
Jul 10 2016 12:16
@mikelyashenko это ларавле<4
mikelyashenko
@mikelyashenko
Jul 10 2016 12:16
@WMAnAn Извиняй
WMAnAn
@WMAnAn
Jul 10 2016 12:17
а второй резултат уже смотрел
Lander931
@Lander931
Jul 10 2016 12:18
@jhaoda 5.0 не пашет :smile: , ну на >=4 это совсем жестоко
Romeo
@webds
Jul 10 2016 12:18
Добрый день всем.
KarmaBot
@KarmaBot
Jul 10 2016 12:18
@webds, привет, как настроение?
JhaoDa
@jhaoda
Jul 10 2016 12:18
@mikelyashenko ссылку заверни в код
@Lander931 почему не пашет, что говорит?
Lander931
@Lander931
Jul 10 2016 12:19
та же ошибка 500
JhaoDa
@jhaoda
Jul 10 2016 12:19
@Lander931 и? Это не проясняет ситуацию
Lander931
@Lander931
Jul 10 2016 12:20
на 5.2.3 ругалось на упоминание ::class
JhaoDa
@jhaoda
Jul 10 2016 12:20
@Lander931 и что? Теперь же не 5.2.3
@mikelyashenko ау, парень
Romeo
@webds
Jul 10 2016 12:22
Народ, подскажите пожалуйста, где можно посмотреть пример запроса в базу данных с фильтром выборки данных. Или вообще как лучше динамически добавлять в запрос условия для получения данных с базы. Использую Query Builder в Laravel 5.2
JhaoDa
@jhaoda
Jul 10 2016 12:23
@webds не поверишь — https://laravel.com/docs/5.2/queries#where-clauses
Lander931
@Lander931
Jul 10 2016 12:25
@webds так понятнее - https://laravel.ru/docs/v5/queries
Vitaliy D
@actorius
Jul 10 2016 12:25
@greabock реализовал я эти методы, в сессию как писать токен? Что то подобного метода не вижу
mikelyashenko
@mikelyashenko
Jul 10 2016 12:25
@jhaoda уже не могу
JhaoDa
@jhaoda
Jul 10 2016 12:25
@mikelyashenko а надо было сразу заворачивать, а не ждать напоминаний
mikelyashenko
@mikelyashenko
Jul 10 2016 12:26
@jhaoda новичок. больше не буду.
Romeo
@webds
Jul 10 2016 12:26
@jhaoda , спасибо, но я это и использую. Вопрос как динамически добавить/убрать условия выборки?
$users = DB::table('users')
                ->where('name', 'like', 'T%')
 ->where('id', '>', '123')     (это условие к примеру добавить если в запросе поиска есть параметр id)
                ->get();
KarmaBot
@KarmaBot
Jul 10 2016 12:26
Спасибо (+1) для @jhaoda принято! Текущая карма +1035.
JhaoDa
@jhaoda
Jul 10 2016 12:26
@mikelyashenko а ты правила проигнорировал, что ли?
mikelyashenko
@mikelyashenko
Jul 10 2016 12:26
@jhaoda да нет, просто забыл. Непривычно.
JhaoDa
@jhaoda
Jul 10 2016 12:27
@mikelyashenko http://laravel.su/articles/nine-circles-of-chat для закрепления
@webds ты прочитай, что там написано
@webds ещё прямее ссылка — https://laravel.com/docs/5.2/queries#conditional-statements
mikelyashenko
@mikelyashenko
Jul 10 2016 12:28
@jhaoda спасибо
KarmaBot
@KarmaBot
Jul 10 2016 12:28
Спасибо (+1) для @jhaoda принято! Текущая карма +1036.
Taras Lisennk
@Lisennk
Jul 10 2016 12:32

Здравствуйте!

Есть код, работающий с веб-сокетами и обрабатывающий пришедшие по веб-сокету данные. Код (т.е. открыто соединение с удаленным сервером через веб-сокеты) может быть запущен очень много раз.

Куда правильнее всего поместить этот код? В Commands, Jobs, Listeners?

KarmaBot
@KarmaBot
Jul 10 2016 12:32
@Taras-S и тебе не хворать :)
Lander931
@Lander931
Jul 10 2016 12:34
@jhaoda жесть какая-то, 4.0.0 не пашет, проблема не в пхп
JhaoDa
@jhaoda
Jul 10 2016 12:34
@Taras-S а с помощью чего сокеты слушаешь?
@Lander931 парень, логи читай
Taras Lisennk
@Lisennk
Jul 10 2016 12:36
@jhaoda специальный пакет на основе React
JhaoDa
@jhaoda
Jul 10 2016 12:36
@Taras-S ага, он ловит соединение и передаёт его на обработку какому-то коду. Ты про этот код-обработчик и спрашиваешь?
Taras Lisennk
@Lisennk
Jul 10 2016 12:39

в каком смысле передает? Ты о каком-то более низком уровне что ли?

Клиентский код у меня такой
$this->loop = Factory::create();
$this->client = new RealTimeClient($this->loop);
$this->client->on('event_name', [$this, 'methodName']);

Это не чистый React, а пакет на его основе. Могу дать сслыку на GitHub, если это важно.
RealTimeClient это как раз класс из этого пакета, а не React
Romeo
@webds
Jul 10 2016 12:41
@jhaoda мммм.. спасибо за ссылку, я там читал но не совсем опнял как это делать... или может быть я странное что то хочу. Но если по простому то нужно что то типа этого
/**
* Я же не могу добавить вот так?
*/
$users = DB::table('users')
        ->where('votes', '>=', 100)

        if (isset($yyyyy)){
        ->where('xxxx', '>=', $yyyyy)
        }

        if (isset($zzzzz)){
        ->where('kkkkk', '<', $zzzzz)
        }

        ->get();
JhaoDa
@jhaoda
Jul 10 2016 12:41
@webds ты плохо читал, похоже
Romeo
@webds
Jul 10 2016 12:42
@jhaoda Наведи плиз пример в чат.
JhaoDa
@jhaoda
Jul 10 2016 12:42
@webds я тебе дал прямую ссылку, повторю ещё раз — https://laravel.com/docs/5.2/queries#conditional-statements
Taras Lisennk
@Lisennk
Jul 10 2016 12:43
@jhaoda поможешь мне?
JhaoDa
@jhaoda
Jul 10 2016 12:43
@Taras-S я не понимаю, что ты хочешь куда-то вынести
Taras Lisennk
@Lisennk
Jul 10 2016 12:44
ты с WebSocket/Ratchet знаком?
JhaoDa
@jhaoda
Jul 10 2016 12:44
@Taras-S да
Romeo
@webds
Jul 10 2016 12:45
@jhaoda аа все разобрался. Спасибо.
KarmaBot
@KarmaBot
Jul 10 2016 12:45
Спасибо (+1) для @jhaoda принято! Текущая карма +1037.
Romeo
@webds
Jul 10 2016 12:46
@Taras-S я как то тестировал.
JhaoDa
@jhaoda
Jul 10 2016 12:47
@Taras-S у меня WS-сервер работал как консольное приложение, слушал соединения и зажигал события. События слушались обработчиками и они уже что-то делали
Taras Lisennk
@Lisennk
Jul 10 2016 12:55

@jhaoda @webds

Давай я тебе тогда подробно опишу, что мне нужно. Я создаю бота для Slack, который использует Slack RTM API. Грубо говоря, RTM API это WebSocket соединение к Slack, в которое Slack пушит какие-то ивенты.

Я использую RTM API не напрямую, а на более высоком уровне, с помощью вот этого пакета: https://github.com/coderstephen/slack-client

Мне нужно, чтобы для каждой команды (грубо говоря, для каждого зарегистрированого на сайте пользователя), которая добавила моего бота, открывалось web-socket соединение к Slack RTM со специальным токеном. И на основе ивентов, который приходят по этому соединению, обрабатывалась какая-то логика непосредственно бота. Пакет coderstephen/slack-client позволяет сделать это вот так:

http://pastebin.com/CHKNAdG1

С точки зрения реализации обработки у меня вопросов нет. Меня интересует, куда эту реализацию (т.е. работу с сокетом) лучше всего поместить. Точно не в роутер и не в контроллер.

Command (папка Commands и возможный запуск из консоли) вроде бы не очень подходит, потому что нужно
1) открывать таких соединений очень много (чит. выше: на каждого пользователя)
2) нужно мониторить, чтобы соединения не падали (или при падении восстанавливались)

Вроде как должен подойти тип Event или Listener, но, судя по документации, он совсем для другого используется.

В общем, как правильнее всего сделать? Сам на Ларавеле кодю только неделю

KarmaBot
@KarmaBot
Jul 10 2016 12:55
@Taras-S, у нас тут принято писать кратко и по делу. А если нужно показать длинный код, то можно использовать pastebin-сервис, например gist.github.com или laravel.io/bin.
JhaoDa
@jhaoda
Jul 10 2016 12:57

@Taras-S т.е. куда вынести, образно говоря, echo "Someone typed a message: ".$data['text']."\n"; из

$client->on('message', function ($data) use ($client) {
    echo "Someone typed a message: ".$data['text']."\n";
    $client->disconnect();
});

?

Taras Lisennk
@Lisennk
Jul 10 2016 12:58
И это тоже. Но изначально, где расположить
$loop = React\EventLoop\Factory::create(); 
$client = new Slack\RealTimeClient($loop);
$client->setToken('YOUR-TOKEN-HERE');
Но оно вроде как связано
JhaoDa
@jhaoda
Jul 10 2016 13:01
@Taras-S поправь форматирование
@Taras-S и я не понял, это ТВОЁ приложение подключается к слаку, что ли?
Taras Lisennk
@Lisennk
Jul 10 2016 13:02
да
JhaoDa
@jhaoda
Jul 10 2016 13:02
Я почему-то думал, что слак рассылает ивенты, как телеграм
Taras Lisennk
@Lisennk
Jul 10 2016 13:02
ну так и есть
т.е. ты открываешь веб-сокет к слаку и он пушит в него ивенты
JhaoDa
@jhaoda
Jul 10 2016 13:04
Значит не рассылает и не как телеграм
Taras Lisennk
@Lisennk
Jul 10 2016 13:05
а как телеграмм делает?
JhaoDa
@jhaoda
Jul 10 2016 13:05
@Taras-S просто посылает сообщение на callback-адрес, никаких сокетов
Taras Lisennk
@Lisennk
Jul 10 2016 13:06
ну а в Slack используются Socketы
можешь по моему вопросу помочь>?
JhaoDa
@jhaoda
Jul 10 2016 13:07
@Taras-S нет, я пока не понимаю эту идеологию, а вникать не хочется
Taras Lisennk
@Lisennk
Jul 10 2016 13:08
жаль, я думал ты эксперт в Laravel
JhaoDa
@jhaoda
Jul 10 2016 13:10
@Taras-S но не в слаке
Taras Lisennk
@Lisennk
Jul 10 2016 13:10
а причем тут слак
я же написан, что по реализации работы со слаком у меня вопросов нет
мне интересно, куда поместить код для работы с веб-сокетами?
JhaoDa
@jhaoda
Jul 10 2016 13:11
@Taras-S я не понимаю, зачем куда-то выносить код подключения, это же одноразовая операция, подключился и всё?
Taras Lisennk
@Lisennk
Jul 10 2016 13:12
ну и, куда мне её поместить?
JhaoDa
@jhaoda
Jul 10 2016 13:12
Обработку входящих сообщений делай через job или через события, в зависимости от потребностей твоего приложения
@Taras-S ты прикалываешься? Я НЕ понимаю, зачем её куда-то выносить, поэтому НЕ могу сказать, куда её вынести
Taras Lisennk
@Lisennk
Jul 10 2016 13:15
ну ок, давай откажемся от слова 'вынести'. Где мне поместить код создания подключения? Если я, например, буду сразу вызывать его из контроллера, то это будет равносильно помещению в него while(true), я прав?
JhaoDa
@jhaoda
Jul 10 2016 13:18
@Taras-S надо полагать, что эти три строчки фактически запускают ratchet, а там уже event-loop?
Taras Lisennk
@Lisennk
Jul 10 2016 13:18
какие именно? Думаю строка $loop = React\EventLoop\Factory::create(); точно запускает Event-Loop)
вернее, запускает $loop->run();
JhaoDa
@jhaoda
Jul 10 2016 13:19
@Taras-S ну тогда это надо делать в артизан-команде
А потом ещё и супервизор настроить, что бы мониторил её
Taras Lisennk
@Lisennk
Jul 10 2016 13:22
а событие запускать как-то так
$client->on('message', Event::fire())
?
JhaoDa
@jhaoda
Jul 10 2016 13:22
@Taras-S типа того, но не совсем
Там же колбэк надо передать, а уж из него зажигать событие
Taras Lisennk
@Lisennk
Jul 10 2016 13:24
Получается, нужно тогда будет эти команды из кода запускать, и у нас будет много-много этих команд запущенных, да?
JhaoDa
@jhaoda
Jul 10 2016 13:26
@Taras-S ты хочешь на много каналов подписываться, что ли?
Taras Lisennk
@Lisennk
Jul 10 2016 13:27
ну вроде того. Каждый новый пользователь = новое websocket соединение (уникальное для пользователя)
JhaoDa
@jhaoda
Jul 10 2016 13:29
@Taras-S ну тут я хз, с таким работать не приходилось
Taras Lisennk
@Lisennk
Jul 10 2016 13:30
А Jobs/Queue это не то, что мне нужно?
Taras Lisennk
@Lisennk
Jul 10 2016 13:43
Ладно, можешь просто на пару вопросов по Jobs/Queue ответить? Спасибо
KarmaBot
@KarmaBot
Jul 10 2016 13:43
@Taras-S, в этом чате принято добавлять имя пользователя, чтобы его поблагодарить.
adminko
@adminko
Jul 10 2016 13:48
Не подскажите для работы с IMAP что-либо под лару?
censoredgit
@censoredgit
Jul 10 2016 13:54
@adminko https://github.com/ddeboer/imap лучше этой либы не нашел
adminko
@adminko
Jul 10 2016 14:17
@censoredgit спасибо
KarmaBot
@KarmaBot
Jul 10 2016 14:17
Спасибо (+1) для @censoredgit принято! Текущая карма +55.
Maxim
@Big-Shark
Jul 10 2016 14:25
https://github.com/gabrielbull/omnimail интересная штука
Dave
@aios
Jul 10 2016 15:57
Ребят кто знается на OpenResty Nginx
поздравьте меня) Я собрал на версии 1.11.2 просто с луа модулем. без бандла)
в докере....
Kirill Nesmeyanov
@SerafimArts
Jul 10 2016 16:02
@aios поздравляю тебя!
Dave
@aios
Jul 10 2016 16:03
@SerafimArts ток не говори что это очередной велик? или так все умеют.. это меня убьет. я по крупицам дня три собирал инфу по исходам либам Lua и прочей лабуде.
@SerafimArts кста го в личку.
вопрос есть
Taras Lisennk
@Lisennk
Jul 10 2016 17:16
@dave поздравляю! :3
JhaoDa
@jhaoda
Jul 10 2016 17:31
@Taras-S не того поздравляешь
Orel
@2byte
Jul 10 2016 20:19
Во вложенной группе роута, группа не обращает внимание на middleware так и задумано?