Talgat
01.09.2017
07:25:37
io.on('connection', function (socket) {
let data;
socket.on('my other event', function (data) {
console.log(data);
data = data.my;
});
socket.emit('news', { hello: data });
}
Как получить данные с 'my other event' в 'news'
В данном случае интересует перменная 'data'
Ilya
01.09.2017
07:34:42
свой EventEmitter завести под это говно
Google
Talgat
01.09.2017
07:37:11
C клиента мне приходят данные, и в зависимости от этих данных мне надо ему отправлять обработанные данные
Как это сделать
я не понимаю
С клиента в событии my other event приходят данные и мне их надо как то передать в событие news
Как блять это сделать ((
Nex
01.09.2017
07:40:32
херач в глобальную переменную
Vsevolod
01.09.2017
07:42:32
Nex
01.09.2017
07:44:31
io.on('connection', function (socket) {
let data;
socket.on('my other event', function (data) {
console.log(data);
data = data.my;
socket.emit('news', { hello: data });
});
}
ну или колбек сделать
Talgat
01.09.2017
07:45:33
не работает так
Nex
01.09.2017
07:46:12
поставь бряку на емит и посмотри чему data равен
может тут socket потерялся, хз
чему this равен в my other even
Google
Ilya
01.09.2017
07:50:47
и newsEmitter.on и вперед
https://nodejs.org/api/events.html
тут все написано
сокет у тебя тут величина временная. сейчас есть потом коннект проебался
зачем на него emit
dn pfxtv&
вот зачем?
Talgat
01.09.2017
07:53:11
получать данные
Ilya
01.09.2017
07:53:35
и да - еще. кто тебе сказал что data придет целиком? что что там евент отструляет не кусками?
надо проверять и клеить
Nex
01.09.2017
07:54:12
io вроде не кусками передает
Ilya
01.09.2017
07:54:39
это пока данных мало
и пока они в буфер влазят
Nex
01.09.2017
07:55:12
бред какой-то
Ilya
01.09.2017
07:55:57
это не бред. я через сокет данные гонял. :) и чтото типа внутреннего протокола делал. типа длина фрагмента - сам фрагмент
Nex
01.09.2017
07:56:26
и как тогда понять, что передача окончена?
Ilya
01.09.2017
07:56:28
и склеивалку писал и тестил.
Talgat
01.09.2017
07:56:30
у меня данных на пару байт
Ilya
01.09.2017
07:57:02
передавать длину пакета в uint на несколько байт потом сам пакет
Google
Ilya
01.09.2017
07:57:13
читать как работают буфера в ноде
и ждать пока эти байты придут
читать про drain
Talgat
01.09.2017
07:57:28
Нет времени
Nex
01.09.2017
07:57:29
какие буфера, там жсон
у него же не буфер
Ilya
01.09.2017
07:57:50
да ладно
Nex
01.09.2017
07:57:59
io сам всё должен сделать
Ilya
01.09.2017
07:58:12
https://nodejs.org/api/net.html#net_event_data
чо есть io
если он тебе сокеты отдает - это твой головняк )
Ilya
01.09.2017
08:15:12
Я сейчас разрабатываю так: nodemon --exec 'yarn lint:fix --silent && node --require babel-register ./src/start.js'
Верно или можно лучше?
Vsevolod
01.09.2017
08:16:00
запускай вс код
Ilya
01.09.2017
08:17:26
пихай иво в докир
Ilya
01.09.2017
08:38:30
Vsevolod
01.09.2017
08:39:40
ф5 жмешь
выбираешь сетап для ноды
и запускаешь без вот этих ваших нодемонов
Ilya
01.09.2017
08:43:26
какодемонов
Google
Vsevolod
01.09.2017
09:19:05
https://habrahabr.ru/post/336906/.com.js-i-ochepyatko-orie
arts
01.09.2017
09:23:45
Надо спочно назать эьо бзать!
Talgat
01.09.2017
09:24:32
request('stream-audio-urk-address').pipe(fs.createWriteStream('song.mp3'));
Андрей
01.09.2017
09:25:23
Всем привет , вопрос, а можно как-то сделать ajax - запрос на локальный файл без сервера вообще?
Talgat
01.09.2017
09:25:27
Вот я пишу стрим, как мне теперь с него вытянуть метаданные?
arts
01.09.2017
09:25:49
Talgat
01.09.2017
09:26:15
я в отчаянии (( у меня дедлайн прогорел уже
написал радио работает, но т.к. ты говорил открывается поток каждые 2 секунды, и не успевает закрыться предыдущий как открывается новый
из за этого траблы
Перевожу всё на веб сокеты
троллинг здусь не уместен
здесь
arts
01.09.2017
09:29:19
Не открывай следующий, пока не закроется предыдущий.
Talgat
01.09.2017
09:30:50
fs.createReadStream(song)
let song = request('stream-audio-urk-address').pipe(fs.createWriteStream('song.mp3'));
как мне прочитать теперь это стрим. Если крейтРидСтрим говоорит, что надо буфер или строка
song в буфер я засунуть не могу т.к. это объект
и объект к строке привести не вариант
Nex
01.09.2017
09:33:38
new Buffer(JSON.stringify({}))
Google
KlonD90
01.09.2017
09:35:45
Тебе какой-нибудь разветвитель правда нужен
Talgat
01.09.2017
09:36:33
нафиг файл можно и в буффер
какк это сделать
request('stream-audio-url').pipe(fs.createWriteStream('song.mp3'));
KlonD90
01.09.2017
09:38:24
Ты с этим буфером
Что хочешь делать?
Talgat
01.09.2017
09:38:59
через модуль musicmetadata тянуть мета данные
Вообщем есть аудио поток, в нём сразу же передаются мета данные по названию трека
мне их надо парсить
как то
Андрей
01.09.2017
11:59:58
Емнип, нет.
огромное спасибо, вы сэкономили мне несколько часов жизни)
Vsevolod
01.09.2017
12:27:59
Андрей
01.09.2017
12:29:18
Vsevolod
01.09.2017
12:30:01