Сессии в Telegram-боте на Laravel

День добрый, уважаемые читатели!

В процессе написания бота для Telegram у меня возникла необходимость сохранять сессионные данные, привязанные к пользователю, который общается с ботом. Это может потребоваться для запоминания «стадии» диалога, если процедура, которую инициировал пользователь, является многоступенчатой, и нужно помнить состояние этого диалога. С одной стороны, есть возможность решить данную проблему «сложно», в каждом подобном диалоге имея свой механизм запоминания. Но это «хардкорный» путь, имеющий множество недостатков. Гораздо более элегантным способом была бы возможность использовать встроенный в Laravel механизм сессий, который используется в обычных HTTP-запросах. Как это сделать, я и попытаюсь объяснить в данной статье.

Читать далее «Сессии в Telegram-боте на Laravel»

Мой первый Telegram-бот на Laravel

Я хоть и не миллионер, но возникла потребность в удобном отслеживании ПИФов в Альфа-Капитале, в связи с чем решил написать простенького Telegram-бота (@AlfaCapitalOPIFBot). В качестве бэкэнда выбрал Laravel — пришлось вспоминать практически все «с нуля», настолько долго я не писал на нем ничего. Код, конечно, не идеален, поскольку хотелось побыстрее получить результат, но если кому интересно, вот репа. В перспективе еще хочется добавить к этому приложение под Android ради получения уведомлений. Можно, конечно, и в Telegram слать обновления, но у них есть лимит сообщений в промежуток времени, а так — в легкую бы написал 🙂

Windows 10 и Vagrant (Virtual Box)

Есть известная проблема, которая заключается в том, что на некоторых устройствах под управлением Windows 10 не всегда стартует виртуальная машина Vagrant (совместно с Virtual Box): выводится ошибка

Как временное решение, пока не выпустили официальное обновление Virtual Box, можно проделать следующее: установите режим совместимости с Windows 8 на следующие файлы Virtual Box:

  • Virtualbox.exe
  • VBoxManage.exe
  • VBoxHeadless.exe

В большинстве случаев это помогает. Мне, например, помогло.

Удачи!

Запись Laravel Broadcasting Events Livecoding Stream

Приветствую всех посетителей моего блога!

Сегодня я провел полутора-часовой livecoding-стрим, где разобрался с broadcast-событиями в Laravel 5 на базовом уровне, с применением собственного nginx-сервера (с модулем push-stream) в качестве PubSub-сервиса.

Читать далее «Запись Laravel Broadcasting Events Livecoding Stream»

Приложения реального-времени (real-time) на Laravel 5.1, используя широковещательные события (перевод)

Оригинал: http://www.sitepoint.com/real-time-apps-laravel-5-1-event-broadcasting/

Версия Laravel 5.1 включает в себя функционал, называемый вещанием событий, который с легкостью позволяет создавать приложения реального времени (real-time) на PHP. Этот функционал позволяет приложению посылать события на различные «облачные» PubSub-сервисы, наподобие Pusher‘а, или в Redis.

В этой статье мы разберем простое TODO-приложение и превратим его в real-time приложение, используя вещание событий в Laravel.

Читать далее «Приложения реального-времени (real-time) на Laravel 5.1, используя широковещательные события (перевод)»

Немного о работе с полиморфными связями в Eloquent

Всем доброго времени суток!

В этой небольшой статье я хочу рассказать о моем опыте работы с полиморфными связями в Laravel и о том, как обойти некоторые ограничения, имеющиеся на данный момент во фреймворке.

Читать далее «Немного о работе с полиморфными связями в Eloquent»

Стримы от Кирилла [SerafimArts] Несмеянова

Всем доброго времени суток!

Пока я по-прежнему занят своими личными делами и, прежде всего, работой, хочу рассказать о полезных стримах, посвященных Laravel, от моего соратника по русскому Laravel-сообществу, а также некоторым компьютерным играм, в частности — Survarium, Кирилла Несмеянова.

Точнее рассказывать особо нечего: нужно, как говорится, один+ раз увидеть, чем сто раз услышать 🙂 На данный момент завершены и доступны в записи 2 видео, которые можно посмотреть по этой ссылке. Так что подписывайтесь на его канал, либо следите за анонсами в нашей группе в ВК.

От себя хочу сказать спасибо Кириллу за интересные трансляции и пожелать удачи и успехов в любых начинаниях 🙂

Поэтапная разработка сайта на Laravel 4: урок №5 (часть 2)

Всем доброго времени суток 🙂

Рад представить вашему вниманию продолжение пятого урока. В нем мы реализуем функционал регистрации и авторизации пользователей, рассмотрев имеющиеся в Laravel средства для этого. Но сперва предлагаю посмотреть вступительное видео, в котором будет виден конечный результат этого урока:

Читать далее «Поэтапная разработка сайта на Laravel 4: урок №5 (часть 2)»

Поэтапная разработка сайта на Laravel 4: урок №5 (часть 1, видео)

Пятый урок, точнее первую его часть, я решил попробовать сделать в форме видео. В нем я рассмотрел вариант решения домашнего задания, а также базовые возможности Laravel по настройке и отправке электронных писем.

Читать далее «Поэтапная разработка сайта на Laravel 4: урок №5 (часть 1, видео)»

Локализованный Carbon для Laravel (Localized Carbon)

Для тех, кто еще не видел, рад представить свой недавний пакет для локализации дат в Laravel: laravelrus/localized-carbon.

Он служит для вывода локализованной разницы во времени (метод diffForHumans ), к примеру «7 минут назад», «только что», «2 часа назад» и т.д.

Читать далее «Локализованный Carbon для Laravel (Localized Carbon)»