
Влад
20.08.2017
11:01:52
мне не в файл надо - а ответ json потом разобрать

Philipp
20.08.2017
11:02:11
Ну просто пихаешь в функцию переменную из внешнего скоупа, например
require("cURL")
-- open output file
local data = ''
c = cURL.easy_init()
-- setup url
c:setopt_url("http://www.example.com/")
-- perform, invokes callbacks
c:perform({writefunction = function(str)
data = str
end})
-- close output file
f:close()
print("Done")
Типа такого

Google

Saphire
20.08.2017
11:03:01

Snusmumriken
20.08.2017
11:03:04
require("cURL")
store = {}
c = cURL.easy_init()
c:setopt_url("http://www.example.com/")
c:perform{
writefunction = function(str)
store[#store + 1] = str
end
}
store = table.concat(store)
print("Done", store)
Вот таким я когда-то пользовался.

Philipp
20.08.2017
11:03:29
Ну типа такого, да. А разве нельзя просто строку ему пихнуть? Или он именно построчно присылает данные?

Snusmumriken
20.08.2017
11:04:13
Там буфер на N байт, по кусочкам принимается.

Дмитрий
20.08.2017
11:04:32
Snusmumriken, не работает ваш пример( После того, как срабатывает правило и число меняет шрифт, оно не меняет свой шрифт на другой, если число снова меняется(

Snusmumriken
20.08.2017
11:04:54
Хех, а ты что-нибудь сказал про это? : )
Тут мысли читать не умеют )))

Saphire
20.08.2017
11:04:56

Влад
20.08.2017
11:05:09
вот что получил на выходе
"accountcode": "m",
"dialplan": {
"context": "belgorod-calls",
"exten": "2211",
"priority": 8
},
"creationtime": "2017-08-18T22:41:09.331+0300",
"language": "ru"
}
]Done

Alex
20.08.2017
11:05:12

Philipp
20.08.2017
11:05:24

Snusmumriken
20.08.2017
11:05:26

Saphire
20.08.2017
11:05:27

Snusmumriken
20.08.2017
11:05:47
Ох, ребят, три разговора - это слишком много.

Google

Philipp
20.08.2017
11:05:49

Влад
20.08.2017
11:05:50
а как я понял по коду он полсе Done должен был быть вывод

Saphire
20.08.2017
11:06:04

Дмитрий
20.08.2017
11:06:27

Philipp
20.08.2017
11:06:33
Карочи, вариант Снуса + cjson для того, чтобы из Json'а сделать табличку

Влад
20.08.2017
11:06:45
store = {}
-- create first easy handle to do the login
c = cURL.easy()
c:setopt_url("http://localhost:8088/ari/channels")
c:setopt_userpwd( "asterisk:asterisk")
-- login
--:setopt_readfunction(function()
-- count = count + 1
-- if count < 10 then
-- return "Line " .. count .. "\n"
-- end
-- end)
--print ("line ",count )
c:perform{
writefunction = function(str)
store[#store + 1] = str
end
}
store = table.concat(store)
print("Done", store)

Дмитрий
20.08.2017
11:07:04

Snusmumriken
20.08.2017
11:07:22

Philipp
20.08.2017
11:08:09
Блин, понял, что использую какой-то json-декодер, а что это за декодер – я не знаю :(
Просто какой-то размером в один файл :D
А, нашел, ура.
https://github.com/rxi/json.lua

Saphire
20.08.2017
11:09:18
https://curl.haxx.se/libcurl/c/CURLOPT_WRITEFUNCTION.html
Собственно, доки по опциям perform.
В Луа оболочке оно не выдает буффер буффер, а сразу строку.

Влад
20.08.2017
11:10:43
это конечно все хорошо но я в переменной не вижу отдачи - и json пока не причем

Snusmumriken
20.08.2017
11:13:24

Влад
20.08.2017
11:14:23
2й день ковыряю - на php я это реализовал а тут не получается
А оно именно на lua нужно так как логика системы не будет работать

Дмитрий
20.08.2017
11:17:10
Snusmumriken, мои предположения не оправдались, не получается добавить правило для всех чисел, кроме тех, что я раньше прописал. Как прописать это, я понятия не имею, мои предположения вба красным выделяет(
а тире он считает как минус

Влад
20.08.2017
11:18:28
Помочь не сможете ??

Google

Дмитрий
20.08.2017
11:19:41
Какой же это гемор оказывается(
Создатели VBA наверное укурены были, почему я не могу просто перечислить нужные мне числа через запятую, как по логике должно быть

Saphire
20.08.2017
11:20:58
c:setopt_writefunction(
function(str)
store[#store + 1] = str
end
)
c:perform()
Вместо c:perform{...

Philipp
20.08.2017
11:23:36
Так по идее c:perform тоже должен работать

Saphire
20.08.2017
11:24:35
Эм, нет
Табличка передается самому easy()
...странно.

Влад
20.08.2017
11:25:24
о получилось !!! спасибо

Philipp
20.08.2017
11:25:34

Saphire
20.08.2017
11:25:49

Philipp
20.08.2017
11:26:00
@mva_name Мы ждем тебя на суд народный

Saphire
20.08.2017
11:28:40
Агась, очепятка доков

Дмитрий
20.08.2017
11:29:33
Ребят, а мне можете помочь? @Snusmumriken вроде приблизился, но пока безрезультатно в целом

Saphire
20.08.2017
11:29:58
easy:perform() - https://github.com/Lua-cURL/Lua-cURLv3/blob/d1b6b8627f3b4086be53912867d2c76c315b434f/src/lceasy.c#L184
А вот сам easy() - https://github.com/Lua-cURL/Lua-cURLv3/blob/d1b6b8627f3b4086be53912867d2c76c315b434f/src/lceasy.c#L93
Точнее, обратите внимание на lcurl_utils_apply_options - штуку, которая проставляет опции.

Philipp
20.08.2017
11:30:00

Saphire
20.08.2017
11:30:20

Snusmumriken
20.08.2017
11:30:25
Else
cell.Font.Size = 20
End If
Бля, ну синтаксическую лабуду мог бы загуглить.

Google

Philipp
20.08.2017
11:30:53

Saphire
20.08.2017
11:31:26
Хорошо, что были старые доки =w=

Philipp
20.08.2017
11:32:40
А ткни меня в конкретную ошибку, я чего-то слепой. Давно не работал с C-кодом

Дмитрий
20.08.2017
11:33:05

Saphire
20.08.2017
11:33:25

Дмитрий
20.08.2017
11:33:30
И я пробовал похожий вариант, просто забыл слово cell добавить)
У вас есть вебмани счёт?

Snusmumriken
20.08.2017
11:34:09

Дмитрий
20.08.2017
11:34:14
я бы подкинул деньжат, а то два дня мучился, очень выручили

Saphire
20.08.2017
11:34:58
lcurl_utils_apply_options - сама функция, которая берет таблицу и из неё клепает опции.
lcurl_easy_create - сам cURL.easy()
lcurl_easy_perform - easy:perform()

Admin
ERROR: S client not available

Дмитрий
20.08.2017
11:35:10
Ок, простите, что потревожил, ещё раз огромное спасибо!

Philipp
20.08.2017
11:36:49
А, окей, я понял. lcurl_utils_apply_options просто отсутствует как факт

Saphire
20.08.2017
11:36:52

Philipp
20.08.2017
11:37:35
Позволю ответить за него. В России, программистом-задротом ))

Snusmumriken
20.08.2017
11:38:30
Если не секрет, кем работаете и где? Не организацию, страну хотя бы.
Не помешало бы еще знать, на чём работаете (по должности и фактически) и проблемы профессии.
Сколько свободного времени остается на личную жизнь? Отпуск и путешествия всякие получается проделывать, или "отоспаться недельку и работать дальше" выходит?
Москва, луа-программист.
Проблемы профессии - лигаси, с которым приходится возиться.
Должность - "разработчик", по факту - маленькая девочка, которая приходит чинить то что в очередной раз сломали.
ЗП около полтинника (кстати, пора на повышение, уже давно, хех), жопу вытираю потому что траты на жизнедеятельность - минимальные.
Личной жизни - нет. Этот чатик - моя личная жизнь.
Отпуск - потом.
Отоспаться недельку - "Мам, дай отгул на пару дней, а то последние полторы сутки чинил".

Philipp
20.08.2017
11:39:32
Моё определение лучше. Луа-программист это как-то мягко сказано

Saphire
20.08.2017
11:44:28
Родственники в руководстве, или просто оборот речи? А так, спасибо за информацию.
А, и еще, на всякое дело типа "купить новую фигню для компа/себя/дома" получается тратиться?

Snusmumriken
20.08.2017
11:44:33
Оборот речи.
На купить новую фигню - у меня за пол года с четверть ляма скопилось. Просто складываю лишнее в заначку.
Вещи особо не нужны, всё уже давно есть.

annelin
20.08.2017
11:45:03
http://huy:pizda@dev.narayana.im/tg4xmpp

Google

annelin
20.08.2017
11:45:04
так а где твой транспорт-то (код его)? ^_^ В студию, плз :)

Snusmumriken
20.08.2017
11:45:37

Saphire
20.08.2017
11:46:12
Кликабельную, или всё же рабочую? А, вижу.

annelin
20.08.2017
11:46:29
рабочая

Snusmumriken
20.08.2017
11:46:36
Рабочую = какой-то сервер всё таки что-то отвечает.

annelin
20.08.2017
11:48:07
на самом деле, там подходит любой логин/пароль
но так эпичнее

Saphire
20.08.2017
11:52:44
>author: sofia
Это кто? :3
Пшшш, чет.. пять.

Philipp
20.08.2017
11:54:31
Пять раз уже отредактировал)))

annelin
20.08.2017
12:10:08
кодерша наша
>author: sofia
Это кто? :3
Пшшш, чет.. пять.

Snusmumriken
20.08.2017
12:37:02
А я дошёл до того, чтобы обновлять только те объекты, которые влезают в камеру, и чуть подальше.
На гифке - зона слегка меньше камеры.
Сетка - spartial hash, пространственная индексация для коллизий, предоставлена коллизионной либой. Я её модифицировал, чтобы могла выдирать объекты из некоторой зоны.
Моих мозгов пока таки не хватает на такую геометрию, чтобы ещё быстрой была.

Saphire
20.08.2017
12:39:20
>spatial hash
Т.е. нечто вроде чанков?

Snusmumriken
20.08.2017
12:39:37
Ну типа просто сетка.
Когда создаётся объект - по координатам привязывается к ячейке сетки.
https://habrahabr.ru/post/135948/
Я часто в своих поделках использую sweep and prune, потому что это - просто добавить сортировку и чуть изменить цикл обсчёта, ничего внешнего.
Но скорость на большом количестве частиц таки не та.

Saphire
20.08.2017
12:40:18
Таки да.
Генерируешь чанки на лету, только когда что-то там есть?

Snusmumriken
20.08.2017
12:44:40
Ну типа они генерируются спартиалхешем, если в ряду ничего нет - все ячейки из него собираются мусорщиком (режим метатаблицы).
Позволяет делать бесконечные уровни без тотального засирания памяти.

Saphire
20.08.2017
12:48:44
Да знаю я этот приём и прелести его. Еще можно нормально взаимодействия делать, просто взять чанк и просмотреть, кто есть ,а не через глобальный список объектов.

Snusmumriken
20.08.2017
12:49:18
Хеш изначально делался ради этого. Это его предназначение.
Без этого, смысл жизни теряется, и он умирает от грусти.
Кстати, что забавно, иногда подобные методики используются в роутинге.
Ну там правда не сетка а граф, и поиск путей по сетевым узлам для сетевого пакета через дейкстру/a*

Saphire
20.08.2017
12:52:31
Мне больше по этому известно https://minecraft.gamepedia.com/Chunk :Р