
Nikolay
03.09.2016
10:15:31
логи как обычно, а гейт еще не прикручивал
ждет своего часа

Alex
03.09.2016
10:16:03
"логи как обычно" сказал как ничего не сказал.

Danila
03.09.2016
10:16:41
как он выглядит?

Google

Danila
03.09.2016
10:16:44
смс гейт?
сложно ли поднять свой?
что для этого нужно?

Alex
03.09.2016
10:17:00
хттп апи не?

Danila
03.09.2016
10:17:02
пришел твой черед отвечать на вопросы, Николай

Alex
03.09.2016
10:17:29
Вы зря смеетесь, я пишу гем по отправке смс и думаю какую архитектуру построить.
Т.е есть у меня например метод отправки смс, что он возвращает? кидает ли он эксепшены? как логировать? и так далее.
Мне все эти вопросы надо решить и запилить.

Nikolay
03.09.2016
10:19:21
аппаратная

Alex
03.09.2016
10:19:37
я спрашивал не про логи приложения а про логи отправки смс

Nikolay
03.09.2016
10:19:41
а турбосмс - готовый сервис, ззашел на их сайт

Alex
03.09.2016
10:19:54
также спрашивал что делать если отправка смс не доступна, обрабатываешь ли ты это или нет.

Google

Nikolay
03.09.2016
10:20:04
я это буду оформлять отдельным гемом когда очередь дойдет, у гема свой лог

Alex
03.09.2016
10:20:22
Я опять не это спрашивал ...

Nikolay
03.09.2016
10:20:23
что делать - зависит от. я бы их оставлял в очереди, например

Alex
03.09.2016
10:20:45

Nikolay
03.09.2016
10:21:44
все зависит от решения конечного смс гейта и его возможностей. зайди на пример на https://turbosms.ua/

Alex
03.09.2016
10:22:05
Бля.

Nikolay
03.09.2016
10:22:06
у меня стоит аппаратная железка, статья о работе с ней относительно недавно пробегала на хахабре

Alex
03.09.2016
10:22:11
Я спрашиваю что ты творишь если сервис не доступен
Я спрашиваю что если коннект между тобой и твоей железкой обрывается, как ты это обрабатываешь.
Nikolay and Nikolay are typing.

Nikolay
03.09.2016
10:22:45
я бы оставлял в очереди те смс, которые критичны, остальное по таймауту дропал

Nikolay
03.09.2016
10:22:50

Nikolay
03.09.2016
10:23:28

Alex
03.09.2016
10:23:30
Я пытаюсь сейчас написать чисто рубишный гем без завязки не рельсы и active job и думаю как это все устроить чтобы этим было удобно пользоваться.

Nikolay
03.09.2016
10:23:34
чо она умеет

Alex
03.09.2016
10:23:39
Пиздец.
Да все она умеет, она просто лежит прямо сейчас.

Nikolay
03.09.2016
10:24:01
записывай смску в какойнить redis/sqlite

Alex
03.09.2016
10:24:20

Google

Alex
03.09.2016
10:24:31

Nikolay
03.09.2016
10:24:51
а что, у тебя гем никаких зависимостей не юзает7

Nikolay
03.09.2016
10:24:57
да, можно и в геме, чо б нет то

Nikolay
03.09.2016
10:25:00
да хоть в csv файл

Alex
03.09.2016
10:25:02

Nikolay
03.09.2016
10:25:09
ты же не просто обертку делаешь

Alex
03.09.2016
10:25:30

Nikolay
03.09.2016
10:25:31
если просто обертку, то делай синхронное апи и не ебись, возвращай ошибки

Nikolay
03.09.2016
10:25:34

Alex
03.09.2016
10:25:42
Это нормально вполне.
Там максимум один эксепшн

Nikolay
03.09.2016
10:26:33
ну, сделай значит что-то типо resp = send_sms(…)

Alex
03.09.2016
10:26:35
Я вот думаю наверное нужно все таки кидать эксепшн, только это должен быть один конкретный класс.

Nikolay
03.09.2016
10:26:37
resp.success?

Nikolay
03.09.2016
10:26:44
не. конект к железке/серверу, нет денег на счету для отправки, ит.п

Nikolay
03.09.2016
10:26:46
как какой-нибудь фарадей

Alex
03.09.2016
10:26:49
либо вариант два, не кидать эксепшн а возвращать true или код ошибки
например :not_enough_funds
и дать возможность еще свой логгер подвязать

Google

Alex
03.09.2016
10:27:13
*обработчик.

Nikolay
03.09.2016
10:27:14
возвращай объект ответа, а в него уже все нужное запихаешь

Alex
03.09.2016
10:27:21
ООООО
Блин точняк

Nikolay
03.09.2016
10:27:26
у меня ЕРР гем вертает хеш код с кодом и текстом

Alex
03.09.2016
10:27:32
Я забыл что я могу кастомный объект написать
ухахахах.

Nikolay
03.09.2016
10:27:46
та зачем кастомный обьект? хеш да и все

Alex
03.09.2016
10:27:46
@bikolya спасиба!

Admin
ERROR: S client not available

Alex
03.09.2016
10:27:53

Nikolay
03.09.2016
10:28:06
code: 100400, text: 'matrix has you'

Alex
03.09.2016
10:28:33
resp = sms_send(phone, text)
if (resp.success?)
blabhalah
else
sorry guyz
end

Nikolay
03.09.2016
10:28:39
фсе. если code != 100 - world.destroy!

Alex
03.09.2016
10:28:50
Это рубишное апи напоминаю, там нет active job по дефолту.
Для рельс будут привязки получше.

Nikolay
03.09.2016
10:28:59
и не надо
это твой гем с отправкой должен дергаться из актив жоп

Nikolay
03.09.2016
10:29:27
ты можешь сделать конфигурируемые бэкенды для асинхронной обработки, если нужно
https://github.com/krisleech/wisper

Google

Nikolay
03.09.2016
10:29:38
вот тут юзается, например

Alex
03.09.2016
10:29:49

Nikolay
03.09.2016
10:30:00
но думаю те, кто будут юзать гем сами смогут это сделать, если нужно

Nikolay
03.09.2016
10:30:01
тоесть я считаю как - гем просто как дрова - хост, логин, пароль, порт куда конектить, номер порта/урл для отправки

Alex
03.09.2016
10:30:09
Сам по себе обработчик бэкендов только предоставляет удобный интерфейс отправки, универсальный.
Берешь любой бэкенд для смс, а отправляешь одинаково.

Nikolay
03.09.2016
10:30:45
твой гем возвращает ок, не ок, или ошибку конекта
остальное должно обрабатываться скриптом или рельсами

Alex
03.09.2016
10:31:14
Нет мой гем возвращает объект который можно в том числе спросить был ли запрос вообще успешным.

Nikolay
03.09.2016
10:31:25

Alex
03.09.2016
10:31:36

Nikolay
03.09.2016
10:31:48
хехе

Nikolay
03.09.2016
10:31:49
мы недавно ебались с кучей смс провайдеров, потому что биллинград перестал работать внезапно на два дня, а у нас бизнес сильно завязан на смсках

Alex
03.09.2016
10:31:52
Потом после того как запилю руби версию можно будет запилить враппер для гема под рельсы и использовать рельсовые ништяки.

Nikolay
03.09.2016
10:31:55
я вот тоже поэтомк свой ерр гем запилил

Alex
03.09.2016
10:32:03

Nikolay
03.09.2016
10:32:04
в итоге вроде четверых подключили

Nikolay
03.09.2016
10:32:30
тю. я бы уже договорился с каким нить турбосмс если бы отправлял тонну смсок в час
риальне дешевле будет

Alex
03.09.2016
10:32:51

Nikolay
03.09.2016
10:32:55
у меня на самом деле жсм гейт с функционалом смсок