View difference between Paste ID: Wk3eXDLH and 2LajUeDR
SHOW: | | - or go back to the newest paste.
1
ben = peripheral.wrap("top")
2
m = peripheral.wrap("left")
3
print("Programma avviato")
4
while true do
5
6
	local storage = false
7
	local productsRaw = http.get("http://192.168.13.103/api.php").readAll()
8
    products = textutils.unserialize(productsRaw)
9
    local orders = textutils.unserialize(http.get("http://192.168.13.103/checkOrders.php").readAll())
10
  if(type(orders) ~= "table") then
11
    os.reboot()
12
  end
13
    for k, v in pairs(products) do
14
    	for a,b in pairs(orders) do
15
			local qnt = 0
16
			local counter = 0			
17
        	if(v.id == b.id and v.modId == b.modId and tonumber(b.sendTo) ~= nil)  then
18
             --   redstone.setBundledOutput("bottom", tonumber(b.sendTo))
19
				m.setFreq(tonumber(b.sendTo))
20
				print(b.sendTo)
21
                print("Ritiro ordine")
22
                qnt = a + 1
23
				local item = ben.getItemIdentifierIDFor(tonumber(v.id), tonumber(v.modId))
24
                ben.getAvailableItems()
25
                i,j = os.pullEvent("available_items_return")
26
                for p, q in pairs(j) do
27
                    if((ben.getItemName(j[p][1]) ==  "ME 64k Storage") and b.id == "4361") then
28
                    	ben.makeRequest(j[p][1], tonumber(b.qty))
29
                    else
30
                        storage = true
31
32
                    end
33
                end
34
                if(storage) then
35
                	ben.makeRequest(item, tonumber(b.qty))
36
                end
37
                local fulfillRaw = http.get("http://192.168.13.103/fulfill_order.php?uuid=" .. tostring(b.uuid)).readAll()
38
				sleep(0.2) 
39
                
40
                local function sendDataToServer(stock)
41
    local requestStock = http.post("http://192.168.13.103/stock.php", "stock=" .. stock)
42
    print(requestStock.readAll()) --Read and print contents of page
43
end
44
45
    local productsRaw = http.get("http://192.168.13.103/api.php").readAll()
46
    local products = textutils.unserialize(productsRaw)
47
    local stock = ""
48
    
49
    ben.getAvailableItems()
50
    local eventName, eventData = os.pullEvent("available_items_return")
51
    local len = #products
52
53
    for k = 1, len do
54
        local v = products[k]
55
56
        if v.id ~= nil and v.modId ~= nil then
57
            local lp = ben.getItemIdentifierIDFor(tonumber(v.id), tonumber(v.modId))
58
            for a, b in pairs(eventData) do
59
                if b[1] == lp then
60
                    if stock == "" then
61
                        stock = v.nome .. "-" .. b[2]
62
                    else
63
                        stock = stock .. "-" .. v.nome .. "-" .. b[2]
64
                    end
65
                end
66
            end
67
        end
68
    end
69
70
    sendDataToServer(stock)
71
72
73
            end
74
        end
75
end
76
 end