
Иван
22.01.2018
14:10:15
ну и там не работает

Arch
22.01.2018
14:10:49

BlackTrojan
22.01.2018
14:13:29
/help@voicybot

Voicy
22.01.2018
14:13:30
? Voicy переводит в текст все голосовые сообщения, которые получает. Вы можете говорить с ботом напрямую или добавить его в группу.
/help — Показать это сообщение ?
/engine — Выбрать движок распознавания речи: wit.ai (бесплатный), Яндекс SpeechKit (бесплатный) или Google Speech (платный) ⚙
/language — Выбрать язык распознавания речи ?
/balance — Посмотреть, сколько секунд Google Speech осталось ?
/lock — Включить или выключить доступ не-админов к командам бота ?
/files — Включить или выключить распознавание аудио файлов ?
/silent — Включить или выключить тихий режим, когда бот не посылает сообщения типа Распознавание речи инициировано ?
Нравится бот? Оставьте свой отзыв по ссылке: https://telegram.me/storebot?start=voicybot
Вопросы и предложения направляйте моему создателю — @borodutch ?

Google

BlackTrojan
22.01.2018
14:13:50
/engine@voicybot

Voicy
22.01.2018
14:13:50
? Теперь Voicy использует Google Speech в этом чате. Спасибо! Не забудьте установить /language (язык).

BlackTrojan
22.01.2018
14:14:04
/language@voicybot

Voicy
22.01.2018
14:14:04
? Now Voicy speaks English (Canada) (Google Speech) in this chat. Thank you!

BlackTrojan
22.01.2018
14:14:26
/help@voicybot

Voicy
22.01.2018
14:14:27
? Voicy converts speech to text from any voice messages and audio files (.ogg, .flac, .wav, .mp3) it receives. You can either talk to Voicy in the private chat or add it to a group.
/help — Shows this message ?
/engine — Lets you pick a voice recognition engine: wit.ai (free), Yandex SpeechKit (free) or Google Speech (not free) ⚙
/language — Lets you pick a voice recognition language ?
/balance — Shows how many Google Speech voice recognition seconds are left for this chat ?
/lock — Toggles lock or unlock of non-admins using commands ?
/files — Toggles if the bot should attempt to convert audio files or just ignore them ?
/silent — Toggles silent mode when no extra messages like Voice recognition is initiated are sent ?
Like this bot? Leave a review here: https://telegram.me/storebot?start=voicybot
Address any concerns and questions to my creator — @borodutch ?

Иван
22.01.2018
14:14:53
началось

Alexey
22.01.2018
14:15:11
/testStupidity

Voicy
22.01.2018
14:15:30
? Now Voicy speaks Galego (España) (Google Speech) in this chat. Thank you!

Michael
22.01.2018
14:15:59
как это отключить?

Иван
22.01.2018
14:16:06
удалить
а что именно?

Michael
22.01.2018
14:16:29
как это удалить?

Google

Иван
22.01.2018
14:16:34
адми скорее всего должен язык выбрать

yuriy
22.01.2018
14:17:22
хочу быстро создавать бинарные деревья в го
так вот в го нет оптимизации хвостовой рекурсии, НО! при этом она работает быстрее чем цикл
What da fuuuuuck?????

Daniel
22.01.2018
14:18:39
вопрос же не с в скорости работы, а в глубине стека

yuriy
22.01.2018
14:18:56
более-менее сравнимо работает цикл с пресозданным массивом размером с полное дерево
но, тогда начинает подлагивать GC
либо я вас не понял
а да, понял

Daniel
22.01.2018
14:19:41
при определенной глубине рекурсия просто упадет с переполнением стека

yuriy
22.01.2018
14:20:00
да это я понимаю, то есть перфоманс тут не оптимизировать?

Slach
22.01.2018
15:06:05
А кто как делает yaml.Unmarshal в наследуемые структуры?
ну то есть есть чтото типа
type BaseConfig struct {
BaseField string
}
type NestedConfig struct {
BaseConfig
NestedField string
}
хочу иметь код в который бы передавал любую "отнаследованную структуру"
и Unmarshal заполнял бы все поля
а не только BaseField
если просто сделать
func LoadYaml(c *BaseConfig, yaml []byte) (error) {
return yaml.Unmarshal(yaml, config)
}
то грузится только BaseField
да, я понял что в golang нет наследования, но как выкручиваться то?

John
22.01.2018
15:09:32

Slach
22.01.2018
15:11:17

John
22.01.2018
15:12:09
и пакет gopkg.in/yaml.v2

Slach
22.01.2018
15:13:55
а как передавали в функцию загрузчик?

John
22.01.2018
15:18:56
это кусок одного из старых проектов ... могу пошарить весь парсер, мне не жалко :))
только чутка стыдно :D

Demuz
22.01.2018
15:23:15
Что стыдного? Каждый чем-то интересуется, показывает либо правильный, или неочень код, не важно, но я лучше например поинтересуюсь и облажаюсь, чем вобще ничего не спрошу и не покажу.

Google

Demuz
22.01.2018
15:23:46
Заинтересованность - сестра таланта. Ц.

John
22.01.2018
15:23:52

Demuz
22.01.2018
15:24:06
Группа для этого и существует.
Мне уже круто здесь помогли и помогают. Пусть даже иногда всего лишь в & проблема, но она есть )

Slach
22.01.2018
15:25:34
т.е.
вот такой код будет работать?
func LoadYaml(config *BaseConfig, yaml []byte) (error) {
return yaml.Unmarshal(yaml, config)
}
config = &NestedConfig{}
LoadYaml(config, []byte{`nestedfield:"value"`}
??

John
22.01.2018
15:26:36
Теги только проставь правильные

Александр
22.01.2018
15:58:09
такс у меня тут вечная проблема
делаю кастомные валидаторы, который проверяют в бд уникальность
но потом мне эту запись надо дальше получить
не охото два запроса делать
как там с областью видимости в замыканиях? по ссылке же не получится туда скормить ничего?

John
22.01.2018
15:59:48

Demuz
22.01.2018
16:00:14

Александр
22.01.2018
16:00:36
validate := validator.New()
validate.RegisterValidation("unique", func(fl validator.FieldLevel) bool {
dbRow := db.Search(.....)
if dbRow.test == "aaaa" {
}
})
...
а тут надо dbRow

Demuz
22.01.2018
16:00:41
Точно незнаю, но почти уверен что можно.

John
22.01.2018
16:01:19

Demuz
22.01.2018
16:01:23
По логике работы ссылок - можно так сделать, то что вы описываете.

John
22.01.2018
16:01:39
можно, конечно же )

Demuz
22.01.2018
16:01:40
Прикольная идея кстати.

Google

Александр
22.01.2018
16:01:44
я просто хз как там с областями видимости в замыканиях

Demuz
22.01.2018
16:02:02

Александр
22.01.2018
16:02:07
по хорошему если объявить выше как var db db.Row

Demuz
22.01.2018
16:02:18
Я гоню? Сейчас вопрос про рэндом тут был )))

John
22.01.2018
16:03:27

Demuz
22.01.2018
16:03:55
Я тоже сегодня с этим столкнулся. Смс коды попробовал генерить. Прям вот символ в символ.

Александр
22.01.2018
16:04:05
только засада в том что если валидация не выполниться, все рухнет ?

Admin
ERROR: S client not available

Dim
22.01.2018
16:04:14

Demuz
22.01.2018
16:04:27

Александр
22.01.2018
16:04:38
потому что переменная не будет иницилизирована

John
22.01.2018
16:05:03

Александр
22.01.2018
16:05:13
вы подумайте, мы юзаем dbRow ниже по коду, а валидация забила на каллбек
сразу паника

Demuz
22.01.2018
16:06:02
isPreviousValidated bool )

John
22.01.2018
16:06:16
сразу паника
Да разные варианты есть :) Можно даже mutex/channel добавить, если нужно подождать до валидации :)

Александр
22.01.2018
16:06:38
далее там моделька кормиться вообще для сохранения

Demuz
22.01.2018
16:07:12
Я сейчас столкнулся с проблемой теста веб сокета. Что то долго догонял, почему он мне уведомления не присылает )

Google

Александр
22.01.2018
16:07:37
а поискать запись до валидации нельзя, она ищется по этому же полю

Demuz
22.01.2018
16:08:28

Александр
22.01.2018
16:08:29
хотя если только рекваер поставить

Demuz
22.01.2018
16:09:30
Я просто сам валидатор не понял немного.

Александр
22.01.2018
16:10:14

Demuz
22.01.2018
16:11:29
А в базу сразу давать запрос не пойдет? Типа WHERE field = ? AND

Александр
22.01.2018
16:12:03
и что мы пользователю скажем если он скормит хрень?
"мы не сохранились по какой то странной причине"? ?

Demuz
22.01.2018
16:12:26

Александр
22.01.2018
16:12:33
идеально!

Demuz
22.01.2018
16:12:47
А что в вашем случае говорится если он прислал хрень?

Александр
22.01.2018
16:13:04
"поле XXX содержит значение которое не бьется по базе"
ниосилил конвертирование ?
другими словами

Demuz
22.01.2018
16:13:55
А давайте ваш код посмотрим.

Александр
22.01.2018
16:14:11
я задачу уже по русски объяснил
валидатор там gopkg.in/go-playground/validator.v9 и куча кастомных моделей и прочее, суда сейчас все копипастить невозможно будет