Page 20 of 23

Re: GarbageCalendar (new version) lua scripts

Posted: Tuesday 20 June 2023 21:00
by jvdz
Send me your iconset (zip file) you are trying to upload and I will have a look when you want.
You can also add them to the garbagecalendar\icons subdirectory under an name this isn't uploaded to domoticz yet, and use that name in the config. That way the scripts will do the upload for you when it isn't available yet.

Re: GarbageCalendar (new version) lua scripts

Posted: Tuesday 20 June 2023 21:41
by mvveelen
Thanks for the push (via PM) in the right direction, everything is working fine now.

Great script, thanks for your hard work!
Scherm­afbeelding 2023-06-20 om 21.39.29.png
Scherm­afbeelding 2023-06-20 om 21.39.29.png (48.54 KiB) Viewed 3357 times

Re: GarbageCalendar (new version) lua scripts

Posted: Tuesday 27 June 2023 10:02
by rensbr
Since last week the GargageCalender did not update itself, i was using quite a old version. So I deleted it an added it again. But it still does not work.

I have Blink.nl as oud garbage collector

This is my script:

Code: Select all

------------------------------------------------------------------------------------------------------------------------------------
-- garbagecalendarconfig.lua
------------------------------------------------------------------------------------------------------------------------------------
-- Specify your information here as needed for your needs
myGarbageDevice = 'Afvalkalender' -- The Text devicename in Domoticz. eg 'Container'
Zipcode = '1234AA' 			-- Your zipcode  eg '1234AB'
Housenr = '36' 			-- Your housnr. eg '99'
Housenrsuf = '' 		-- Your housnr suffix  ('a', 'b'  etc)
Hostname = 'mijnblink.nl' 			-- m_opzet & m_opzet_api: Specify the hostname of your website. eg 'inzamelkalender.hvcgroep.nl'
Street = 'STRAAT' 			-- Street name Only needed for: m_recycleapp
Companycode = ''		-- m_ximmio Companycode. (See m_ximmio.lua file for how to find this code).

-- ==============================
-- choose one of these modules ==
-- ==============================
--websitemodule = "m_deafvalapp"
--websitemodule = 'm_mijnafvalwijzer_API'
--websitemodule = 'm_mijnafvalwijzer'
--websitemodule = "m_montferland"
--websitemodule = "m_ophaalkalender-be"
--websitemodule = "m_omrin"
websitemodule = "m_opzet_api"
--websitemodule = "m_opzet"
--websitemodule = "m_recycleapp-be"
--websitemodule = "m_rova_api"
--websitemodule = "m_ximmio"
--websitemodule = "m_zuidlimburg"
------------------------------------------------------------------------------------------------------------------------------------
-- When using a CSV input file uncomment the next 2 lines and specify the location and name of the file.
-- check the m_csv_file.lua file for the appropriate format.
--websitemodule = "m_csv_file"
--input_csv_file = "c:/data/garbage_input.csv"
--input_csv_file = "/home/pi/garbage_input.csv"
-- =================================================================================================================================

-- Switch on mydebug in case of issues and initially and check the domoticz log for any issues or missing
-- set to true or false
mydebug = true            -- run the script as it normally does when any of the scheduled times is the current time
testdataload = false       -- run the web update module in the foreground with each run for debugging.
testdataloadbatch = false  -- run the web update module in the background with each run for debugging. (testdataload takes presedence)
testnotification = false   -- trigger a test notification each run for the first record for testing the notification system

-- Specify the directoy used for the Data and Log files.
-- It will default to the gabagecalendar/data directory when invalid or missing.
datafilepath = '/var/tmp/'    -- Linux/RPI example
--datafilepath = 'D:/temp' -- windows example

------------------------------------------------------------------------------------------------------------------------------------
-- ### define format for text device in Domoticz
-- date options:
--    wd   = weekday in 3 characters as defined in the daysoftheweek table below. eg zon;maa;din
--    wdd  = weekday as defined in the Longdaysoftheweek table below. eg zondag;maandag;dinsdag
--    dd   = day in 2 digits   eg 31
--    mm   = month in 2 digits eg 01
--    mmm  = month abbreviation in 3 characters as defined in the ShortMonth table below. eg : jan
--    mmmm = month  as defined in the LongMonth table below. eg: januari
--    yy   = year in 2 digits eg 19
--    yyyy = year in 4 digits eg 2019
-- Garbage type description options
--    sdesc = short garbage type description from Website  eg pmd
--    ldesc = long garbage type description from Website when available, will be replaced by table description when not
--    tdesc = Use the description available in the table text field
textformat = 'tdesc: wd dd mmm'
-- One can also add some html formatting formating to the output when the used interface supports that:eg:
--    textformat = '<font color="red" size=1>tdesc: wd dd mmm</font>'

-- ### define  what to show in the domoticz text device
-- !!! ShowSinglePerType will be forced to false when Combine_Garbage_perDay = true
ShowSinglePerType = true -- (default) false => show multiple occurrences of a garbagetype (default)
-- true  => show one the next occurrence for a unique garbagetype
ShowNextEvents = 5 -- indicate the next x eventlines to show in the TEXT Sensor in Domoticz
Combine_Garbage_perDay = false -- (default) false will show each garbagetype on its own line
-- true will show multiple garbagetype on a single line when collected the same day

------------------------------------------------------------------------------------------------------------------------------------
-- Configuration for the Notificaton system:
-- IcalDesc:
--   @GARBAGETYPE@ ==> Will be replaced by the GarbageType definion from the WebSite
--   @GARBAGETEXT@ ==> Will be replaced by the text from garbagetype_cfg[].text field
IcalEnable = true -- false/true: When true, a garbagecalendar_Modulename.ics will be created in the datafilepath which can be used in a calendar application.
IcalTitle = 'GarbageCalendar' -- title of the calendar
IcalDesc = '@GARBAGETEXT@ wordt opgehaald.' -- text for the events in the calendar
IcalEvents = 10 -- max number of upcomming events to save to icalfile, but could be less when less events are provided by the website.
IcalNotify = 12 -- Notification Time in hours before event. 0=no notification
------------------------------------------------------------------------------------------------------------------------------------
-- Configuration for the Notificaton system:
NotificationEmailAdress = {'', ''} -- Specify multiple Email Addresses for the notifications. Leave empty to skip email notification
Notificationsystem = 'telegram' -- Specify notification system eg "telegram/pushover/gcm/http/kodi/lms/nma/prowl/pushalot/pushbullet/pushsafer" leave empty to skip

-- Specify personal notification script/command eg:  lua sendmessage.lua "@TEXT@"  (where @TEXT@ will be replaced by the notification text.)
--Notificationscript = 'lua /home/pi/domoticz/scripts/lua/garbage_notification.lua Beide "@TEXT@" "@REMINDER@" > /tmp/garbage_notification.log 2>&1 '  -- Specify personal notification script/command eg:  lua sendmessage.lua

-- Specify personal notification event script
-- This example is provided and will work in DzVents and regular Lua Time Events
EventNotificationscript = 'notification_event_script.lua' -- Specify personal notification script event eg: my_event_script.lua  (This needs to be placed in the GarbageCalendar directory together with the modules)

-- Supported variables for Title and Body
-- @DAY@         ==> Will be replaced by notificationtoday; notificationtomorrow; notificationlonger depending on the days difference.
-- @GARBAGETYPE@ ==> Will be replaced by the GarbageType definition from the WebSite
-- @GARBAGEDATE@ ==> Will be replaced by the pickup date found on the schedule data
-- @GARBAGETEXT@ ==> Will be replaced by the text from garbagetype_cfg[].text field
-- @REMINDER@    ==> Will be set to "" for first notification and "notificationreminder" for the reminder run
-- @TEXT@        ==> Will be replaced by the finalised notificationtext and can be used in the notification script
-- @TITLE@       ==> Will be replaced by the finalised notificationtitle and can be used in the notification script
--### Dutch example
-- Define how the title and bodytext should look
notificationreminder = ' (herinnering)'
notificationtitle = 'GarbageCalendar: @DAY@ de @GARBAGETEXT@ aan de weg zetten!'
notificationtext = '@GARBAGETEXT@ wordt @DAY@ opgehaald!@REMINDER@'
notificationtoday = 'vandaag'
notificationtomorrow = 'morgen'
notificationlonger = 'over @DAYS@ dagen'
notificationdate = 'wd dd mmmm yyyy' -- @GARBAGEDATE@ format -> Options are the same as available for textformat date options

--### English example
--~ notificationreminder = ' (reminder)'
--~ notificationtitle    = 'GarbageCalendar: @GARBAGETEXT@ will be picked up in @DAY@!'
--~ notificationtext     = 'Put the @GARBAGETEXT@ out as it will be picked up @DAY@.!@REMINDER@'
--~ notificationtoday    = 'today'
--~ notificationtomorrow = 'tomorrow'
--~ notificationlonger   = 'in @DAYS@ days'
--~ notificationdate     = 'wd dd mmmm yyyy'      -- Options are the same as available for textformat date options
------------------------------------------------------------------------------------------------------------------------------------
-- Configuration for the generation of an ics file:
-- IcalDesc:
--   @GARBAGETYPE@ ==> Will be replaced by the GarbageType definion from the WebSite
--   @GARBAGETEXT@ ==> Will be replaced by the text from garbagetype_cfg[].text field
IcalEnable = false -- false/true: When true, a garbagecalendar_Modulename.ics will be created in the datafilepath which can be used in a calendar application.
IcalTitle = 'GarbageCalendar' -- title of the calendar
IcalDesc = '@GARBAGETEXT@ wordt opgehaald.' -- text for the events in the calendar
IcalEvents = 10 -- max number of upcomming events to save to icalfile, but could be less when less events are provided by the website.
IcalNotify = 12 -- Notification Time in hours before event. 0=no notification
------------------------------------------------------------------------------------------------------------------------------------
-- ### define a line for each garbage type returned by the webrequest.
-- Look at the Domoticz log for any missing records as they will be displayed there and can be just copy/pasted in.
-- Fields description:
-- hour & min ==> the time the check needs to be performed and notification send when daysbefore is true
-- daysbefore ==> 0 means that the notification is send on the day of the planned garbage collection
-- daysbefore ==> X means that the notification is send X day(s) before the day of the planned garbage collection
-- reminder   ==> Will send a second reminder after x hours. 0=no reminder (can be between 0 - 24 hours)
-- text       ==> define the text for the notification and Text Device.
-- active     ==> (optional)  default="on"
--           active="on"   Both will show in Domoticz Text Device and Send notifications
--           active="off"  Will show in Domoticz Text Device but not send notifications
--           active="skip" Will not show in Domoticz Text Device and not send notifications
-- The "reloaddata" entry is required to run the background process to update the data one time per day.
-- The "dummy" entry can be used to force reading the data, update the Domoticz text device and see if there are any errors or missing garbadge types.

garbagetype_cfg = {
	-- Add any missing records below this line -----------------------------------------------------
	['PMD - PLAATS'] = {hour = 19, min = 22, daysbefore = 1, reminder = 0, text = 'plastic bak', icon = 'garbagecalendar_yellow'},
	['GFT - PLAATS'] = {hour = 19, min = 22, daysbefore = 1, reminder = 0, text = 'groene bak', icon = 'garbagecalendar_green'},
	['Papier en karton - PLAATS'] = {hour = 19, min = 22, daysbefore = 1, reminder = 0, text = 'blauwe bak', icon = 'garbagecalendar_blue'},
	['Restafval - PLAATS'] = {hour = 19, min = 22, daysbefore = 1, reminder = 0, text = 'grijze bak', icon = 'garbagecalendar_grey'},
	-- ['Kerstbomen']     = {hour = 21, min = 00, daysbefore = 1, reminder = 10, text = 'Kerstbomen'},
	-- Add any missing records above this line -----------------------------------------------------
	--  "reloaddata" is used to start the background update process at this given time.
	['reloaddata'] = {hour = 02, min = 30, daysbefore = 0, reminder = 0, text = 'trigger for reloading data from website into garbagecalendar.data'},
	['dummy'] = {hour = 02, min = 31, daysbefore = 0, reminder = 0, text = 'dummy to trigger update of textdevice after Webupdate ran'}
}

------------------------------------------------------------------------------------------------------------------------------------
-- Taal opties Nederlands
-- Datum / dag informatie:
-- Gebruikt door functie getdate voor formats "mmmm" & "mmm"
daysoftheweek = {'zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'}
Longdaysoftheweek = {'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'}
ShortMonth = {'jan', 'feb', 'maa', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'}
LongMonth = {'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'}
-- Wordt gebruikt om de maand afkorting van de ontvangen kalender data te vertalen naar het maandnummer. Meerder opties mogelijk.
-- Pas deze tabellen aan indien de afvalverwerker andere afkortingen gebruikt.
InputMonth = {jan = 1, feb = 2, mrt = 3, maa = 3, apr = 4, mei = 5, jun = 6, jul = 7, aug = 8, sep = 9, okt = 10, nov = 11, dec = 12}
------------------------------------------------------------------------------------------------------------------------------------
-- Language options English
-- Date/day info:
--~ daysoftheweek={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"}
--~ Longdaysoftheweek={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}
--~ ShortMonth={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"}
--~ LongMonth={"January","February","March","April","May","June","July","August","September","October","November","December"}
-- Used to translate the month abbreviation back to the month number. Can contain multiple options for abbreviations.
-- Adapt when your GarbageCollector is using different abbreviations.
--~ InputMonth={jan = 1, feb = 2, mar = 3, apr = 4, may = 5, jun = 6, jul = 7, aug = 8, sep = 9, oct = 10, nov = 11, dec = 12}
I have changed the different types to PMD / PMD - PLAATS / Plastic, metaal, drankkartons, but nothing seems to work.

The logger produces the following:

Re: GarbageCalendar (new version) lua scripts

Posted: Tuesday 27 June 2023 10:08
by rensbr

Code: Select all

2023-06-27 09:27:00.234  Status: dzVents: Info: ------ Start external script: script_time_garbagecalendar.lua:, trigger: "Every 1 minutes"
2023-06-27 09:27:00.236  Status: dzVents: 09:27:00 gc_main: 132: Loaded /opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/garbagecalendarconfig.lua.
2023-06-27 09:27:00.237  Status: dzVents: 09:27:00 gc_main: 148: Loaded /opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/gc_generalfuncs.lua.
2023-06-27 09:27:00.237  Status: dzVents: 09:27:00 gc_func: 194: -> Loading module JSON
2023-06-27 09:27:00.237  Status: dzVents: 09:27:00 gc_func: 209: -< Loaded JSON.lua.  ->moduleobject type:table
2023-06-27 09:27:00.237  Status: dzVents: 09:27:00 gc_main: 166: -> Start processing garbagecalendarconfig.lua information.
2023-06-27 09:27:00.238  Status: dzVents: 09:27:00 gc_main: 224: !> Debuging dataload each cycle in batch because "testdataloadbatch=true" in garbagecalendarconfig.lua
2023-06-27 09:27:00.238  Status: dzVents: 09:27:00 gc_main: 225: !>    please change it back to "testdataloadbatch=false" when done testing.
2023-06-27 09:27:00.238  Status: dzVents: 09:27:00 gc_main: 229: !> Debuging with extra messages because "mydebug=true" in garbagecalendarconfig.lua
2023-06-27 09:27:00.238  Status: dzVents: 09:27:00 gc_main: 230: !>    please change it back to "mydebug=false" when done testing to avoid growing a big domoticz log.
2023-06-27 09:27:00.238  Status: dzVents: 09:27:00 gc_main: 251: -< End processing garbagecalendarconfig.lua information.
2023-06-27 09:27:00.253  Status: dzVents: 09:27:00 gc_main: 281: => Found LUA version:   > Lua check output:sh: 1: lua: not found
2023-06-27 09:27:00.253  Status: dzVents: 09:27:00 gc_main: 298: => check LUA not found -> Run foreground to use internal LUA.
2023-06-27 09:27:00.253  Status: dzVents: 09:27:00 gc_main: 330: -> Start module m_opzet_api.lua (v??)
2023-06-27 09:27:00.253  Status: dzVents: 09:27:00 m_opzet: 139: !!! perform web data update to /opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/data/garbagecalendar_m_opzet_api.data for Zipcode 1234AA - 36
2023-06-27 09:27:00.253  Status: dzVents: 09:27:00 m_opzet:  44: ---- web update ----------------------------------------------------------------------------
2023-06-27 09:27:00.253  Status: dzVents: 09:27:00 gc_func: 264: sQuery=curl -k "https://mijnblink.nl/rest/adressen/1234AA-36" 2>/opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/data/webquery_err.log
2023-06-27 09:27:04.396  Status: dzVents: 09:27:04 gc_func: 270: ---- web data ----------------------------------------------------------------------------
2023-06-27 09:27:04.396  Status: dzVents: 09:27:04 gc_func: 271: [{"bagId":"0848200000006019","postcode":"1234AA","huisnummer":36,"huisletter":"","huisnummerToevoeging":"","openbareRuimteNaam":"XXXXXXX","woonplaatsNaam":"Plaats","latitude":yy.xxxx,"longitude":yy.xxxxx,"woonplaatsId":XXXX,"gemeenteId":848}]
2023-06-27 09:27:04.396  Status: dzVents: 09:27:04 gc_func: 274: ---- web err ------------------------------------------------------------------------
2023-06-27 09:27:04.396  Status: dzVents: 09:27:04 gc_func: 282: Web_Err=  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:04 --:--:--     0
100   258    0   258    0     0     62      0 --:--:--  0:00:04 --:--:--    62

2023-06-27 09:27:04.396  Status: dzVents: 09:27:04 gc_func: 284: ---- end web data ------------------------------------------------------------------------
2023-06-27 09:27:04.399  Status: dzVents: 09:27:04 m_opzet:  60: Address options: =->0848200000006019
2023-06-27 09:27:04.399  Status: dzVents: 09:27:04 m_opzet:  72: bagId:0848200000006019
2023-06-27 09:27:04.399  Status: dzVents: 09:27:04 gc_func: 264: sQuery=curl -k "https://mijnblink.nl/rest/adressen/0848200000006019/afvalstromen" 2>/opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/data/webquery_err.log
2023-06-27 09:27:07.374  Domoticz Server: Temp (Internal Temperature)
2023-06-27 09:27:07.382  Domoticz Server: General/Percentage (HDD /boot)
2023-06-27 09:27:08.903  Status: dzVents: 09:27:08 gc_func: 270: ---- web data ----------------------------------------------------------------------------
2023-06-27 09:27:08.906  Status: dzVents: 09:27:08 gc_func: 271: [{"id":1,"parent_id":0,"title":"Papier","slug":null,"tags":null,"page_title":"Papier en karton","content":"<p>BLABLABLA.<\/p>","menu_title":"Papier en karton","icon":"doos-karton-papier","icon_data":"data:image\/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI\/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE1LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGFhZ18xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9Ijg1LjA0cHgiIGhlaWdodD0iODUuMDRweCIgdmlld0JveD0iMCAwIDg1LjA0IDg1LjA0IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA4NS4wNCA4NS4wNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiDQoJPg0KPHBvbHlnb24gc3R5bGU9ImZpbGw6I0M5QTI3QjtzdHJva2U6IzIzMUYyNDtzdHJva2Utd2lkdGg6MS40MTczO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgcG9pbnRzPSI2OS4yNzcsNTcuMTU4IDY5LjMxNiwyMy41MjEgDQoJNDEuNzg2LDE4Ljc4NiAxNC4yNTMsMjMuNTIxIDE0LjI5NSw1Ny4xNTggNDEuNzc0LDY2LjMxMyAiLz4NCjxsaW5lIHN0eWxlPSJmaWxsOiNGRkZGRkY7c3Ryb2tlOiMyMzFGMjQ7c3Ryb2tlLXdpZHRoOjEuNDE3MzsiIHgxPSI0MS43OTYiIHkxPSI2Ni4zMTMiIHgyPSI0MS43MDkiIHkyPSIxOS4zNzMiLz4NCjxwb2x5Z29uIHN0eWxlPSJmaWxsOiNDOUEyN0I7c3Ryb2tlOiMyMzFGMjQ7c3Ryb2tlLXdpZHRoOjEuNDE3MztzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIHBvaW50cz0iMi45ODQsMzQuMzU0IDMwLjU5Myw0Mi4yNzMgDQoJNDEuMTM4LDI5LjU2IDEzLjYwMywyMy44MzcgIi8+DQo8cG9seWdvbiBzdHlsZT0iZmlsbDojQzlBMjdCO3N0cm9rZTojMjMxRjI0O3N0cm9rZS13aWR0aDoxLjQxNzM7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBwb2ludHM9IjgwLjgyMiwzNC4zNTQgNTMuMjEzLDQyLjI3MyANCgk0Mi42NjgsMjkuNTYgNzAuMjAzLDIzLjgzNyAiLz4NCjxwb2x5Z29uIHN0eWxlPSJmaWxsOiNGMUU2REM7c3Ryb2tlOiMyMzFGMjQ7c3Ryb2tlLXdpZHRoOjEuMjc1NDtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIHBvaW50cz0iNjYuNTYsMjQuMTI5IDQxLjc4NiwxOS44NjggDQoJMTcuMDEsMjQuMTI5IDQxLjc3NSwyOS42MzEgIi8+DQo8cG9seWdvbiBzdHlsZT0iZmlsbDojRjFFNkRDO3N0cm9rZTojMjMxRjI0O3N0cm9rZS13aWR0aDoxLjI3NTQ7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBwb2ludHM9IjY2LjU2LDIwLjc3OSA0MS43ODYsMTYuNTE4IA0KCTE3LjAxLDIwLjc3OSA0MS43NzUsMjYuMjgxICIvPg0KPHBvbHlnb24gc3R5bGU9ImZpbGw6I0YxRTZEQztzdHJva2U6IzIzMUYyNDtzdHJva2Utd2lkdGg6MS4yNzU0O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgcG9pbnRzPSI2Ni41NiwxNy4xMTMgNDEuNzg2LDEyLjg1MiANCgkxNy4wMSwxNy4xMTMgNDEuNzc1LDIyLjYxNSAiLz4NCjwvc3ZnPg0K","ophaaldatum":"2023-07-06"},{"id":108,"parent_id":1,"title":"Papier en karton - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","content":"<section class=\"simplebox box\">\r\n<header class=\"std-accent\">\r\n<h1 class=\"simplebox-title\">Inzameling<\/h1>\r\n<\/header>\r\n\r\n<div class=\"simplebox-content\">\r\n<p><strong>Wat is het?&nbsp;<\/strong><br \/>\r\nAlles&nbsp;van papier en karton. Denk aan kranten en reclamefolders, maar ook aan verpakkingen. Drankenkartons horen er niet bij, daar zit een plastic of aluminium laagje in en horen bij PMD.&nbsp;<\/p>\r\n\r\n<p><strong>Waar kan het heen?<\/strong>&nbsp;<br \/>\r\nPapier en karton wordt huis-aan-huis ingezameld door Blink. Zorg ervoor dat uw oud papier op de ophaaldag steeds uiterlijk om 7.30 uur aan de weg staat. Zorg ervoor dat papier en karton goed bij elkaar gebonden wordt zodat het niet kan wegwaaien. U kunt uw oud papier ook gratis naar de milieustraat brengen.&nbsp;<\/p>\r\n\r\n<p>BLABLABLA.<\/p>\r\n\r\n<p><strong>Wat gebeurt ermee?&nbsp;<\/strong><br \/>\r\nBLABLABLA.&nbsp;<\/p>\r\n\r\n<p><img alt=\"\" src=\"\/https:\/\/www.mijnblink.nl\/media\/custom\/scheidingswijzer.jpg\" \/><img alt=\"\" src=\"https:\/\/www.mijnblink.nl\/media\/custom\/scheidingswijzer.jpg\" \/><\/p>\r\n\r\n<p><strong>NIET&nbsp;<\/strong><br \/>\r\nGebruikte papieren zakdoekjes en keukenpapier horen in het restafval<\/p>\r\n\r\n<p class=\"MsoNoSpacing\">Wanneer oudpapier en karton bij u wordt opgehaald, kunt u zien in uw persoonlijke afvalkalender.<o:p><\/o:p><\/p>\r\n<\/div>\r\n<\/section>\r\n\r\n<section class=\"simplebox box\">\r\n<header class=\"std-accent\">\r\n<h1 class=\"simplebox-title\">Wat mag wel bij papier?<\/h1>\r\n<\/header>\r\n\r\n<div class=\"simplebox-content\">\r\n<ul class=\"wel\">\r\n\t<li>\r\n\t<p>Kranten en reclamefolders zonder folie<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Printjes, fax-, kopieer-, schrijf- en tekenpapier<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>(Venster-) enveloppen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Cadeaupapier en wenskaarten<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Telefoongidsen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Eierdozen, wc- en keukenrollen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Kartonnen dozen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Papieren zakken &nbsp;<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Schone pizzadoos&nbsp;<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Kartonnen en papieren verpakkingen (bijvoorbeeld van hagelslag, koekjes, waspoeder&nbsp;en rijst)<\/p>\r\n\t<\/li>\r\n<\/ul>\r\n<\/div>\r\n<\/section>\r\n\r\n<section class=\"simplebox box\">\r\n<header class=\"std-accent\">\r\n<h1 class=\"simplebox-title\">Wat mag niet bij papier?<\/h1>\r\n<\/header>\r\n\r\n<div class=\"simplebox-content\">\r\n<ul>\r\n\t<li>Behang en vinyl<\/li>\r\n\t<li>Bubbeltjes envelop<\/li>\r\n\t<li>Broodzak met plastic<\/li>\r\n\t<li>Gebruikte koffiebekers<\/li>\r\n\t<li>Drankenkartons<\/li>\r\n\t<li>Melk- en sappakken<\/li>\r\n\t<li>Geplastificeerd papier<\/li>\r\n\t<li>Gebruikt keukenpapier<\/li>\r\n\t<li>Gebruikt sanitair papier (papieren zakdoekjes, toiletpapier en luiers)<\/li>\r\n\t<li>Pizzadoos met etensresten<\/li>\r\n\t<li>Verontreinigd papier (pi
2023-06-27 09:27:08.908  Status: dzVents: 09:27:08 gc_func: 274: ---- web err ------------------------------------------------------------------------
2023-06-27 09:27:08.908  Status: dzVents: 09:27:08 gc_func: 282: Web_Err=  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0
100  170k    0  170k    0     0  39073      0 --:--:--  0:00:04 --:--:-- 39073

2023-06-27 09:27:08.908  Status: dzVents: 09:27:08 gc_func: 284: ---- end web data ------------------------------------------------------------------------
2023-06-27 09:27:08.918  Status: dzVents: 09:27:08 m_opzet:  83: ==== Stripped 1 ========================================================
2023-06-27 09:27:08.920  Status: dzVents: 09:27:08 m_opzet:  84: [{"id":1,"parent_id":0,"title":"Papier","slug":null,"tags":null,"page_title":"Papier en karton","content":"<p>BLABLABLA.<\/p>","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":"2023-07-06"},{"id":108,"parent_id":1,"title":"Papier en karton - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","content":"<section class=\"simplebox box\">\r\n<header class=\"std-accent\">\r\n<h1 class=\"simplebox-title\">Inzameling<\/h1>\r\n<\/header>\r\n\r\n<div class=\"simplebox-content\">\r\n<p><strong>Wat is het?&nbsp;<\/strong><br \/>\r\nAlles&nbsp;van papier en karton. Denk aan kranten en reclamefolders, maar ook aan verpakkingen. Drankenkartons horen er niet bij, daar zit een plastic of aluminium laagje in en horen bij PMD.&nbsp;<\/p>\r\n\r\n<p><strong>Waar kan het heen?<\/strong>&nbsp;<br \/>\r\nPapier en karton wordt huis-aan-huis ingezameld door Blink. Zorg ervoor dat uw oud papier op de ophaaldag steeds uiterlijk om 7.30 uur aan de weg staat. Zorg ervoor dat papier en karton goed bij elkaar gebonden wordt zodat het niet kan wegwaaien. U kunt uw oud papier ook gratis naar de milieustraat brengen.&nbsp;<\/p>\r\n\r\n<p>BLABLABLA.<\/p>\r\n\r\n<p><strong>Wat gebeurt ermee?&nbsp;<\/strong><br \/>\r\nBLABLABLA.&nbsp;<\/p>\r\n\r\n<p><img alt=\"\" src=\"\/https:\/\/www.mijnblink.nl\/media\/custom\/scheidingswijzer.jpg\" \/><img alt=\"\" src=\"https:\/\/www.mijnblink.nl\/media\/custom\/scheidingswijzer.jpg\" \/><\/p>\r\n\r\n<p><strong>NIET&nbsp;<\/strong><br \/>\r\nGebruikte papieren zakdoekjes en keukenpapier horen in het restafval<\/p>\r\n\r\n<p class=\"MsoNoSpacing\">Wanneer oudpapier en karton bij u wordt opgehaald, kunt u zien in uw persoonlijke afvalkalender.<o:p><\/o:p><\/p>\r\n<\/div>\r\n<\/section>\r\n\r\n<section class=\"simplebox box\">\r\n<header class=\"std-accent\">\r\n<h1 class=\"simplebox-title\">Wat mag wel bij papier?<\/h1>\r\n<\/header>\r\n\r\n<div class=\"simplebox-content\">\r\n<ul class=\"wel\">\r\n\t<li>\r\n\t<p>Kranten en reclamefolders zonder folie<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Printjes, fax-, kopieer-, schrijf- en tekenpapier<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>(Venster-) enveloppen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Cadeaupapier en wenskaarten<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Telefoongidsen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Eierdozen, wc- en keukenrollen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Kartonnen dozen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Papieren zakken &nbsp;<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Schone pizzadoos&nbsp;<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Kartonnen en papieren verpakkingen (bijvoorbeeld van hagelslag, koekjes, waspoeder&nbsp;en rijst)<\/p>\r\n\t<\/li>\r\n<\/ul>\r\n<\/div>\r\n<\/section>\r\n\r\n<section class=\"simplebox box\">\r\n<header class=\"std-accent\">\r\n<h1 class=\"simplebox-title\">Wat mag niet bij papier?<\/h1>\r\n<\/header>\r\n\r\n<div class=\"simplebox-content\">\r\n<ul>\r\n\t<li>Behang en vinyl<\/li>\r\n\t<li>Bubbeltjes envelop<\/li>\r\n\t<li>Broodzak met plastic<\/li>\r\n\t<li>Gebruikte koffiebekers<\/li>\r\n\t<li>Drankenkartons<\/li>\r\n\t<li>Melk- en sappakken<\/li>\r\n\t<li>Geplastificeerd papier<\/li>\r\n\t<li>Gebruikt keukenpapier<\/li>\r\n\t<li>Gebruikt sanitair papier (papieren zakdoekjes, toiletpapier en luiers)<\/li>\r\n\t<li>Pizzadoos met etensresten<\/li>\r\n\t<li>Verontreinigd papier (pizzadozen en gebruikte koffiefilters)<\/li>\r\n<\/ul>\r\n\r\n<p>Twijfel? Weet u niet zeker of iets bij het oudpapier&nbsp;hoort? Check het in de &nbsp;Afvalscheidingswijzer.<a href=\"\/www.afvalscheidingswijzer.nl\"> www.afvalscheidingswijzer.nl.&nbsp;<\/a><\/p>\r\n\r\n<p>Download de Afvalscheidingswijzer in de Playstore of Apple Store.<\/p>\r\n<\/div>\r\n<\/section>","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":null},{"id":4,"parent_id":0,"title":"Plastic, Metaal en Drankkartons","slug":null,"tags":null,"page_title":"Plastic, Metaal en Drankkartons","content":"<p>PMD is een afkorting voor plastic verpakkingen (zoals plastic flessen, flacons, folies en zakken), metalen verpakkingen (zoals drinkblikjes en conservenblikken) en drankenkartons (zoals van sappen en zuivel).&nbsp;Deze verpakkingen worden gesorteerd bij onze eindverwerker en omgezet in grondstoffen die we weer kunnen gebruiken voor nieuwe verpakkingen. Hoe meer verpakkingsmateriaal er verzameld wordt, hoe beter!<\/p>","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":"2023-07-03"},{"id":109,"parent_id":4,"title":"PMD - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","content":"<section class=\"simplebox box\">\r\n<div class=\"simplebox-content\">\r\n<p>U kunt PMD-afval aanbieden in de daarvoor bestemde PMD-zak.&nbsp;De zakken moeten aan dezelfde kant van de weg worden geplaatst als&nbsp;de containers.<\/p>\r\n\r\n<p>Wanneer PMD bij u wordt opgehaald, kunt u zien in uw persoonlijke afvalkalender. in de MijnBlinkApp. U kunt het PMD afval ook gratis naar de milieustraat brengen in uw gemeente.<\/p>\r\n\r\n<p>PMD staat voor&nbsp;<strong>P<\/strong>lastic,&nbsp;<strong>M<\/strong>etaal en&nbsp;<strong>D<\/strong>rankkartons&nbsp;<\/p>\r\n\r\n<p><strong>Wat is het?&nbsp;<\/strong><\/p>\r\n\r\n<p>PMD is huishoudelijk verpakkingsafval zoals plastic, blikjes of drankkartons.<\/p>\r\n\r\n<p><strong>Plastic verpakkingen:<\/strong><\/p>\r\n\r\n<p>Lege plastic flessen, flacons en folio&rsquo;s van afval voortgekomen uit klein huishoudelijk afval.<\/p>\r\n\r\n<p><strong>
2023-06-27 09:27:08.927  Status: dzVents: 09:27:08 m_opzet:  88: ==== Stripped 2 ========================================================
2023-06-27 09:27:08.929  Status: dzVents: 09:27:08 m_opzet:  89: [{"id":1,"parent_id":0,"title":"Papier","slug":null,"tags":null,"page_title":"Papier en karton","content":"<p>BLABLABLA.<\/p>","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":"2023-07-06"},{"id":108,"parent_id":1,"title":"Papier en karton - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","content":"<section class="simplebox box">\r\n<header class="std-accent">\r\n<h1 class="simplebox-title">Inzameling<\/h1>\r\n<\/header>\r\n\r\n<div class="simplebox-content">\r\n<p><strong>Wat is het?&nbsp;<\/strong><br \/>\r\nAlles&nbsp;van papier en karton. Denk aan kranten en reclamefolders, maar ook aan verpakkingen. Drankenkartons horen er niet bij, daar zit een plastic of aluminium laagje in en horen bij PMD.&nbsp;<\/p>\r\n\r\n<p><strong>Waar kan het heen?<\/strong>&nbsp;<br \/>\r\nPapier en karton wordt huis-aan-huis ingezameld door Blink. Zorg ervoor dat uw oud papier op de ophaaldag steeds uiterlijk om 7.30 uur aan de weg staat. Zorg ervoor dat papier en karton goed bij elkaar gebonden wordt zodat het niet kan wegwaaien. U kunt uw oud papier ook gratis naar de milieustraat brengen.&nbsp;<\/p>\r\n\r\n<p>BLABLABLA.<\/p>\r\n\r\n<p><strong>Wat gebeurt ermee?&nbsp;<\/strong><br \/>\r\nBLABLABLA.&nbsp;<\/p>\r\n\r\n<p><img alt="" src="\/https:\/\/www.mijnblink.nl\/media\/custom\/scheidingswijzer.jpg" \/><img alt="" src="https:\/\/www.mijnblink.nl\/media\/custom\/scheidingswijzer.jpg" \/><\/p>\r\n\r\n<p><strong>NIET&nbsp;<\/strong><br \/>\r\nGebruikte papieren zakdoekjes en keukenpapier horen in het restafval<\/p>\r\n\r\n<p class="MsoNoSpacing">Wanneer oudpapier en karton bij u wordt opgehaald, kunt u zien in uw persoonlijke afvalkalender.<o:p><\/o:p><\/p>\r\n<\/div>\r\n<\/section>\r\n\r\n<section class="simplebox box">\r\n<header class="std-accent">\r\n<h1 class="simplebox-title">Wat mag wel bij papier?<\/h1>\r\n<\/header>\r\n\r\n<div class="simplebox-content">\r\n<ul class="wel">\r\n\t<li>\r\n\t<p>Kranten en reclamefolders zonder folie<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Printjes, fax-, kopieer-, schrijf- en tekenpapier<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>(Venster-) enveloppen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Cadeaupapier en wenskaarten<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Telefoongidsen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Eierdozen, wc- en keukenrollen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Kartonnen dozen<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Papieren zakken &nbsp;<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Schone pizzadoos&nbsp;<\/p>\r\n\t<\/li>\r\n\t<li>\r\n\t<p>Kartonnen en papieren verpakkingen (bijvoorbeeld van hagelslag, koekjes, waspoeder&nbsp;en rijst)<\/p>\r\n\t<\/li>\r\n<\/ul>\r\n<\/div>\r\n<\/section>\r\n\r\n<section class="simplebox box">\r\n<header class="std-accent">\r\n<h1 class="simplebox-title">Wat mag niet bij papier?<\/h1>\r\n<\/header>\r\n\r\n<div class="simplebox-content">\r\n<ul>\r\n\t<li>Behang en vinyl<\/li>\r\n\t<li>Bubbeltjes envelop<\/li>\r\n\t<li>Broodzak met plastic<\/li>\r\n\t<li>Gebruikte koffiebekers<\/li>\r\n\t<li>Drankenkartons<\/li>\r\n\t<li>Melk- en sappakken<\/li>\r\n\t<li>Geplastificeerd papier<\/li>\r\n\t<li>Gebruikt keukenpapier<\/li>\r\n\t<li>Gebruikt sanitair papier (papieren zakdoekjes, toiletpapier en luiers)<\/li>\r\n\t<li>Pizzadoos met etensresten<\/li>\r\n\t<li>Verontreinigd papier (pizzadozen en gebruikte koffiefilters)<\/li>\r\n<\/ul>\r\n\r\n<p>Twijfel? Weet u niet zeker of iets bij het oudpapier&nbsp;hoort? Check het in de &nbsp;Afvalscheidingswijzer.<a href="\/www.afvalscheidingswijzer.nl"> www.afvalscheidingswijzer.nl.&nbsp;<\/a><\/p>\r\n\r\n<p>Download de Afvalscheidingswijzer in de Playstore of Apple Store.<\/p>\r\n<\/div>\r\n<\/section>","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":null},{"id":4,"parent_id":0,"title":"Plastic, Metaal en Drankkartons","slug":null,"tags":null,"page_title":"Plastic, Metaal en Drankkartons","content":"<p>PMD is een afkorting voor plastic verpakkingen (zoals plastic flessen, flacons, folies en zakken), metalen verpakkingen (zoals drinkblikjes en conservenblikken) en drankenkartons (zoals van sappen en zuivel).&nbsp;Deze verpakkingen worden gesorteerd bij onze eindverwerker en omgezet in grondstoffen die we weer kunnen gebruiken voor nieuwe verpakkingen. Hoe meer verpakkingsmateriaal er verzameld wordt, hoe beter!<\/p>","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":"2023-07-03"},{"id":109,"parent_id":4,"title":"PMD - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","content":"<section class="simplebox box">\r\n<div class="simplebox-content">\r\n<p>U kunt PMD-afval aanbieden in de daarvoor bestemde PMD-zak.&nbsp;De zakken moeten aan dezelfde kant van de weg worden geplaatst als&nbsp;de containers.<\/p>\r\n\r\n<p>Wanneer PMD bij u wordt opgehaald, kunt u zien in uw persoonlijke afvalkalender. in de MijnBlinkApp. U kunt het PMD afval ook gratis naar de milieustraat brengen in uw gemeente.<\/p>\r\n\r\n<p>PMD staat voor&nbsp;<strong>P<\/strong>lastic,&nbsp;<strong>M<\/strong>etaal en&nbsp;<strong>D<\/strong>rankkartons&nbsp;<\/p>\r\n\r\n<p><strong>Wat is het?&nbsp;<\/strong><\/p>\r\n\r\n<p>PMD is huishoudelijk verpakkingsafval zoals plastic, blikjes of drankkartons.<\/p>\r\n\r\n<p><strong>Plastic verpakkingen:<\/strong><\/p>\r\n\r\n<p>Lege plastic flessen, flacons en folio&rsquo;s van afval voortgekomen uit klein huishoudelijk afval.<\/p>\r\n\r\n<p><strong>Metalen verpakkingen (blik):<\/strong><br 
2023-06-27 09:27:08.934  Status: dzVents: 09:27:08 m_opzet:  93: ==== Stripped 3 ========================================================
2023-06-27 09:27:08.934  Status: dzVents: 09:27:08 m_opzet:  94: [{"id":1,"parent_id":0,"title":"Papier","slug":null,"tags":null,"page_title":"Papier en karton","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":"2023-07-06"},{"id":108,"parent_id":1,"title":"Papier en karton - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":null},{"id":4,"parent_id":0,"title":"Plastic, Metaal en Drankkartons","slug":null,"tags":null,"page_title":"Plastic, Metaal en Drankkartons","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":"2023-07-03"},{"id":109,"parent_id":4,"title":"PMD - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":null},{"id":110,"parent_id":0,"title":"GFT - Plaats","slug":null,"tags":null,"page_title":"GFT","menu_title":"GFT","icon":"appel-gft","ophaaldatum":"2023-06-30"},{"id":81,"parent_id":0,"title":"Restafval","slug":null,"tags":null,"page_title":"Restafval","menu_title":"Restafval","icon":"zak-grijs-rest","ophaaldatum":"2023-07-07"},{"id":111,"parent_id":81,"title":"Restafval - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Restafval","icon":"zak-grijs-rest","ophaaldatum":null},{"id":5,"parent_id":0,"title":"Glas","slug":null,"tags":null,"page_title":"Glas","menu_title":"Glas","icon":"fles-groen-glas","ophaaldatum":null},{"id":7,"parent_id":0,"title":"Textiel","slug":null,"tags":null,"page_title":"Textiel","menu_title":"Textiel","icon":"shirt-textiel","ophaaldatum":null},{"id":112,"parent_id":7,"title":"Textiel - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Textiel","icon":"shirt-textiel","ophaaldatum":null},{"id":9,"parent_id":0,"title":"Kringloopgoederen","slug":null,"tags":null,"page_title":"Kringloopgoederen","menu_title":"Kringloopgoederen","icon":"kringloop-logo","ophaaldatum":null},{"id":113,"parent_id":9,"title":"Kringloopgoederen - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Kringloopgoederen","icon":"kringloop-logo","ophaaldatum":null},{"id":10,"parent_id":0,"title":"Milieustraat","slug":null,"tags":null,"page_title":"Milieustraat","menu_title":"Milieustraat","icon":"aanhanger-afvalbrengstation","ophaaldatum":null},{"id":114,"parent_id":10,"title":"Milieustraat - Plaats","slug":null,"tags":null,"page_title":"Gemeente Plaats","menu_title":"Milieustraat","icon":"aanhanger-afvalbrengstation","ophaaldatum":null},{"id":11,"parent_id":0,"title":"Elektrische apparaten","slug":null,"tags":null,"page_title":"Elektrische apparaten","menu_title":"Elektrische apparaten","icon":"apparaten-witgoed-bruingoed","ophaaldatum":null},{"id":14,"parent_id":0,"title":"(Grof) snoeiafval","slug":null,"tags":null,"page_title":"(Grof) snoeiafval","menu_title":"(Grof) snoeiafval","icon":"tak-snoeiafval","ophaaldatum":null},{"id":116,"parent_id":14,"title":"(Grof) snoeiafval - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"(Grof) snoeiafval","icon":"tak-snoeiafval","ophaaldatum":null},{"id":6,"parent_id":0,"title":"Klein chemisch afval","slug":null,"tags":null,"page_title":"Klein chemisch afval","menu_title":"Klein chemisch afval","icon":"batterij-kwast-kca","ophaaldatum":null},{"id":120,"parent_id":6,"title":"Klein chemisch afval - Son & Breugel","slug":null,"tags":null,"page_title":"Meer informatie",serif;}\r\n<\/style>\r\n<![endif]--><strong>KCA route 28 en 29 juni 2023:<\/strong><\/p>\r\n\r\n<p>Dag 1 :<\/p>\r\n\r\n<p>13.00 &ndash; 13.45: parkeerstrook De Bontstraat tussen Cameliastraat en Jasmijnstraat<br \/>\r\n<br \/>\r\n14.00 &ndash; 14.45: Vuurvlinderlaan in de parkeerstrook bij de speeltuin<br \/>\r\n<br \/>\r\n15.00 &ndash; 15.45: Azi&euml;laan ter hoogte van de nummers 50- 52<br \/>\r\n<br \/>\r\n16.00 &ndash; 16.45: Breugel, Sint Genovevastraat bij de kerk<br \/>\r\n<br \/>\r\n17.00 &ndash; 18.00: Astero&iuml;denlaan bij het winkelcentrum<\/p>\r\n\r\n<p>&nbsp;Dag 2 :<\/p>\r\n\r\n<p>14.00 &ndash; 14.45 Sonniuspark, hoek Keverlaan\/Penseelkever<\/p>\r\n\r\n<p>15.00 &ndash; 15.45 Hoek Ganzenbloemlaan\/Heriklaan<\/p>\r\n\r\n<p>16.00 &ndash; 16.45 Berlagelaan<\/p>\r\n\r\n<p class="xmsonormal"><span lang="NL" style="mso-ansi-language:NL">17.00 &ndash; 18.00 17 septemberplein bij de glasbakken<\/span><\/p>\r\n\r\n<p><strong>Wat mag wel bij KCA?<\/strong><\/p>\r\n\r\n<ul class="wel">\r\n\t<li>Batterijen<\/li>\r\n\t<li>Led- en spaarlampen en tl-buizen<\/li>\r\n\t<li>Vloeibare gootsteenontstopper<\/li>\r\n\t<li>Lampenolie en petroleum<\/li>\r\n\t<li>Bestrijdingsmiddelen<\/li>\r\n\t<li>Medicijnen, injectienaalden en kwikthermometers<\/li>\r\n\t<li>Fotofixeer- en ontwikkelvloeistoffen<\/li>\r\n\t<li>Etsvloeistoffen, zwavel- en zoutzuur<\/li>\r\n\t<li>Verf, lak, beits en bijbehorende oplos- en reinigingsmiddelen<\/li>\r\n\t<li>Kwikschakelaars<\/li>\r\n\t<li>Accu&#39;s, benzine, olie(filters) en koelvloeistof<\/li>\r\n<\/ul>\r\n\r\n<p><strong>Wat mag niet bij KCA?<\/strong><\/p>\r\n\r\n<ul class="niet">\r\n\t<li>Lege verfblikken<\/li>\r\n\t<li>Lege spuitbussen<\/li>\r\n<\/ul>","menu_title":"Klein chemisch afval","icon":"batterij-kwast-kca","ophaaldatum":null},{"id":21,"parent_id":0,"title":"Frituurvet en olie","slug":null,"tags":null,"page_title":"Frituurvet en olie","menu_title":"Frituurvet en olie","icon":"frituurvet","ophaaldatum":null},{"id":17,"parent_id":0,"title":"Incontinentiemateriaal en luiers","slug":null,"tags":null,"page_title":"Incontinentiemateriaal en luiers","menu_title":"Incontinentiemateriaal en luiers","icon":"luier","ophaaldatum":null},{"id":118,"parent_id":17,"title":"Incontinentiemateriaal - Plaats","slug":null,"tags":null,"page_title":"Incontinentiemateriaal en luiers","menu_title":"Incontinentiemateriaal en luiers","icon":"luier","ophaaldatum":null},{"id":16,"parent_id":0,"title":"Asbest","slug":null,"tags":null,"page_title":"Asbest","menu_title"
2023-06-27 09:27:08.934  Status: dzVents: 09:27:08 m_opzet:  95: ============================================================
2023-06-27 09:27:08.934  Status: dzVents: 09:27:08 m_opzet:  98: - start looping through received data -----------------------------------------------------------
2023-06-27 09:27:08.940  Status: dzVents: 09:27:08 gc_main: 337: !! Module m_opzet_api had hard error. check log:/opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/data/garbagecalendar_m_opzet_api_run.log
/opt/domoticz/dzVents/runtime/JSON.lua:1234: /opt/domoticz/dzVents/runtime/JSON.lua:808: expected string's opening quote at byte 3588 of: [{"id":1,"parent_id":0,"title":"Papier","slug":null,"tags":null,"page_title":"Papier en karton","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":"2023-07-06"},{"id":108,"parent_id":1,"title":"Papier en karton - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":null},{"id":4,"parent_id":0,"title":"Plastic, Metaal en Drankkartons","slug":null,"tags":null,"page_title":"Plastic, Metaal en Drankkartons","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":"2023-07-03"},{"id":109,"parent_id":4,"title":"PMD - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":null},{"id":110,"parent_id":0,"title":"GFT - Plaats","slug":null,"tags":null,"page_title":"GFT","menu_title":"GFT","icon":"appel-gft","ophaaldatum":"2023-06-30"},{"id":81,"parent_id":0,"title":"Restafval","slug":null,"tags":null,"page_title":"Restafval","menu_title":"Restafval","icon":"zak-grijs-rest","ophaaldatum":"2023-07-07"},{"id":111,"parent_id":81,"title":"Restafval - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Restafval","icon":"zak-grijs-rest","ophaaldatum":null},{"id":5,"parent_id":0,"title":"Glas","slug":null,"tags":null,"page_title":"Glas","menu_title":"Glas","icon":"fles-groen-glas","ophaaldatum":null},{"id":7,"parent_id":0,"title":"Textiel","slug":null,"tags":null,"page_title":"Textiel","menu_title":"Textiel","icon":"shirt-textiel","ophaaldatum":null},{"id":112,"parent_id":7,"title":"Textiel - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Textiel","icon":"shirt-textiel","ophaaldatum":null},{"id":9,"parent_id":0,"title":"Kringloopgoederen","slug":null,"tags":null,"page_title":"Kringloopgoederen","menu_title":"Kringloopgoederen","icon":"kringloop-logo","ophaaldatum":null},{"id":113,"parent_id":9,"title":"Kringloopgoederen - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Kringloopgoederen","icon":"kringloop-logo","ophaaldatum":null},{"id":10,"parent_id":0,"title":"Milieustraat","slug":null,"tags":null,"page_title":"Milieustraat","menu_title":"Milieustraat","icon":"aanhanger-afvalbrengstation","ophaaldatum":null},{"id":114,"parent_id":10,"title":"Milieustraat - Plaats","slug":null,"tags":null,"page_title":"Gemeente Plaats","menu_title":"Milieustraat","icon":"aanhanger-afvalbrengstation","ophaaldatum":null},{"id":11,"parent_id":0,"title":"Elektrische apparaten","slug":null,"tags":null,"page_title":"Elektrische apparaten","menu_title":"Elektrische apparaten","icon":"apparaten-witgoed-bruingoed","ophaaldatum":null},{"id":14,"parent_id":0,"title":"(Grof) snoeiafval","slug":null,"tags":null,"page_title":"(Grof) snoeiafval","menu_title":"(Grof) snoeiafval","icon":"tak-snoeiafval","ophaaldatum":null},{"id":116,"parent_id":14,"title":"(Grof) snoeiafval - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"(Grof) snoeiafval","icon":"tak-snoeiafval","ophaaldatum":null},{"id":6,"parent_id":0,"title":"Klein chemisch afval","slug":null,"tags":null,"page_title":"Klein chemisch afval","menu_title":"Klein chemisch afval","icon":"batterij-kwast-kca","ophaaldatum":null},{"id":120,"parent_id":6,"title":"Klein chemisch afval - Son & Breugel","slug":null,"tags":null,"page_title":"Meer informatie",serif;}\r\n<\/style>\r\n<![endif]--><strong>KCA route 28 en 29 juni 2023:<\/strong><\/p>\r\n\r\n<p>Dag 1 :<\/p>\r\n\r\n<p>13.00 &ndash; 13.45: parkeerstrook De Bontstraat tussen Cameliastraat en Jasmijnstraat<br \/>\r\n<br \/>\r\n14.00 &ndash; 14.45: Vuurvlinderlaan in de parkeerstrook bij de speeltuin<br \/>\r\n<br \/>\r\n15.00 &ndash; 15.45: Azi&euml;laan ter hoogte van de nummers 50- 52<br \/>\r\n<br \/>\r\n16.00 &ndash; 16.45: Breugel, Sint Genovevastraat bij de kerk<br \/>\r\n<br \/>\r\n17.00 &ndash; 18.00: Astero&iuml;denlaan bij het winkelcentrum<\/p>\r\n\r\n<p>&nbsp;Dag 2 :<\/p>\r\n\r\n<p>14.00 &ndash; 14.45 Sonniuspark, hoek Keverlaan\/Penseelkever<\/p>\r\n\r\n<p>15.00 &ndash; 15.45 Hoek Ganzenbloemlaan\/Heriklaan<\/p>\r\n\r\n<p>16.00 &ndash; 16.45 Berlagelaan<\/p>\r\n\r\n<p class="xmsonormal"><span lang="NL" style="mso-ansi-language:NL">17.00 &ndash; 18.00 17 septemberplein bij de glasbakken<\/span><\/p>\r\n\r\n<p><strong>Wat mag wel bij KCA?<\/strong><\/p>\r\n\r\n<ul class="wel">\r\n\t<li>Batterijen<\/li>\r\n\t<li>Led- en spaarlampen en tl-buizen<\/li>\r\n\t<li>Vloeibare gootsteenontstopper<\/li>\r\n\t<li>Lampenolie en petroleum<\/li>\r\n\t<li>Bestrijdingsmiddelen<\/li>\r\n\t<li>Medicijnen, injectienaalden en kwikthermometers<\/li>\r\n\t<li>Fotofixeer- en ontwikkelvloeistoffen<\/li>\r\n\t<li>Etsvloeistoffen, zwavel- en zoutzuur<\/li>\r\n\t<li>Verf, lak, beits en bijbehorende oplos- en reinigingsmiddelen<\/li>\r\n\t<li>Kwikschakelaars<\/li>\r\n\t<li>Accu&#39;s, benzine, olie(filters) en koelvloeistof<\/li>\r\n<\/ul>\r\n\r\n<p><strong>Wat mag niet bij KCA?<\/strong><\/p>\r\n\r\n<ul class="niet">\r\n\t<li>Lege verfblikken<\/li>\r\n\t<li>Lege spuitbussen<\/li>\r\n<\/ul>","menu_title":"Klein chemisch afval","icon":"batterij-kwast-kca","ophaaldatum":null},{"id":21,"parent_id":0,"title":"Frituurvet en olie","slug":null,"tags":null,"page_title":"Frituurvet en olie","menu_title":"Frituurvet en olie","icon":"frituurvet","ophaaldatum":null},{"id":17,"parent_id":0,"title":"Incontinentiemateriaal en luiers","slug":null,"tags":null,"page_title":"Incontinentiemateriaal en luiers","menu_title":"Incontinentiemateriaal en luiers","icon":"luier","ophaaldatum":null},{"id":118,"parent_id":17,"title":"Inco
2023-06-27 09:27:08.941  Status: dzVents: 09:27:08 gc_main: 338: /opt/domoticz/userdata/scripts/dzVents/scripts/garbagecalendar/data/garbagecalendar_m_opzet_api_run.log
2023-06-27 09:27:08.941  Status: dzVents: 09:27:08 gc_main: 339: 
%%%%% LUA Hardcrash log %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2023-06-27 09:27:08.941  Status: dzVents: 09:27:08 gc_main: 340: nil?
2023-06-27 09:27:08.941  Status: dzVents: 09:27:08 gc_main: 341: /opt/domoticz/dzVents/runtime/JSON.lua:1234: /opt/domoticz/dzVents/runtime/JSON.lua:808: expected string's opening quote at byte 3588 of: [{"id":1,"parent_id":0,"title":"Papier","slug":null,"tags":null,"page_title":"Papier en karton","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":"2023-07-06"},{"id":108,"parent_id":1,"title":"Papier en karton - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Papier en karton","icon":"doos-karton-papier","ophaaldatum":null},{"id":4,"parent_id":0,"title":"Plastic, Metaal en Drankkartons","slug":null,"tags":null,"page_title":"Plastic, Metaal en Drankkartons","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":"2023-07-03"},{"id":109,"parent_id":4,"title":"PMD - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Plastic, Metaal en Drankkartons","icon":"blik-metaal-melkpak-drankpak-zak-oranje-plastic","ophaaldatum":null},{"id":110,"parent_id":0,"title":"GFT - Plaats","slug":null,"tags":null,"page_title":"GFT","menu_title":"GFT","icon":"appel-gft","ophaaldatum":"2023-06-30"},{"id":81,"parent_id":0,"title":"Restafval","slug":null,"tags":null,"page_title":"Restafval","menu_title":"Restafval","icon":"zak-grijs-rest","ophaaldatum":"2023-07-07"},{"id":111,"parent_id":81,"title":"Restafval - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Restafval","icon":"zak-grijs-rest","ophaaldatum":null},{"id":5,"parent_id":0,"title":"Glas","slug":null,"tags":null,"page_title":"Glas","menu_title":"Glas","icon":"fles-groen-glas","ophaaldatum":null},{"id":7,"parent_id":0,"title":"Textiel","slug":null,"tags":null,"page_title":"Textiel","menu_title":"Textiel","icon":"shirt-textiel","ophaaldatum":null},{"id":112,"parent_id":7,"title":"Textiel - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Textiel","icon":"shirt-textiel","ophaaldatum":null},{"id":9,"parent_id":0,"title":"Kringloopgoederen","slug":null,"tags":null,"page_title":"Kringloopgoederen","menu_title":"Kringloopgoederen","icon":"kringloop-logo","ophaaldatum":null},{"id":113,"parent_id":9,"title":"Kringloopgoederen - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"Kringloopgoederen","icon":"kringloop-logo","ophaaldatum":null},{"id":10,"parent_id":0,"title":"Milieustraat","slug":null,"tags":null,"page_title":"Milieustraat","menu_title":"Milieustraat","icon":"aanhanger-afvalbrengstation","ophaaldatum":null},{"id":114,"parent_id":10,"title":"Milieustraat - Plaats","slug":null,"tags":null,"page_title":"Gemeente Plaats","menu_title":"Milieustraat","icon":"aanhanger-afvalbrengstation","ophaaldatum":null},{"id":11,"parent_id":0,"title":"Elektrische apparaten","slug":null,"tags":null,"page_title":"Elektrische apparaten","menu_title":"Elektrische apparaten","icon":"apparaten-witgoed-bruingoed","ophaaldatum":null},{"id":14,"parent_id":0,"title":"(Grof) snoeiafval","slug":null,"tags":null,"page_title":"(Grof) snoeiafval","menu_title":"(Grof) snoeiafval","icon":"tak-snoeiafval","ophaaldatum":null},{"id":116,"parent_id":14,"title":"(Grof) snoeiafval - Plaats","slug":null,"tags":null,"page_title":"Meer informatie","menu_title":"(Grof) snoeiafval","icon":"tak-snoeiafval","ophaaldatum":null},{"id":6,"parent_id":0,"title":"Klein chemisch afval","slug":null,"tags":null,"page_title":"Klein chemisch afval","menu_title":"Klein chemisch afval","icon":"batterij-kwast-kca","ophaaldatum":null},{"id":120,"parent_id":6,"title":"Klein chemisch afval - Son & Breugel","slug":null,"tags":null,"page_title":"Meer informatie",serif;}\r\n<\/style>\r\n<![endif]--><strong>KCA route 28 en 29 juni 2023:<\/strong><\/p>\r\n\r\n<p>Dag 1 :<\/p>\r\n\r\n<p>13.00 &ndash; 13.45: parkeerstrook De Bontstraat tussen Cameliastraat en Jasmijnstraat<br \/>\r\n<br \/>\r\n14.00 &ndash; 14.45: Vuurvlinderlaan in de parkeerstrook bij de speeltuin<br \/>\r\n<br \/>\r\n15.00 &ndash; 15.45: Azi&euml;laan ter hoogte van de nummers 50- 52<br \/>\r\n<br \/>\r\n16.00 &ndash; 16.45: Breugel, Sint Genovevastraat bij de kerk<br \/>\r\n<br \/>\r\n17.00 &ndash; 18.00: Astero&iuml;denlaan bij het winkelcentrum<\/p>\r\n\r\n<p>&nbsp;Dag 2 :<\/p>\r\n\r\n<p>14.00 &ndash; 14.45 Sonniuspark, hoek Keverlaan\/Penseelkever<\/p>\r\n\r\n<p>15.00 &ndash; 15.45 Hoek Ganzenbloemlaan\/Heriklaan<\/p>\r\n\r\n<p>16.00 &ndash; 16.45 Berlagelaan<\/p>\r\n\r\n<p class="xmsonormal"><span lang="NL" style="mso-ansi-language:NL">17.00 &ndash; 18.00 17 septemberplein bij de glasbakken<\/span><\/p>\r\n\r\n<p><strong>Wat mag wel bij KCA?<\/strong><\/p>\r\n\r\n<ul class="wel">\r\n\t<li>Batterijen<\/li>\r\n\t<li>Led- en spaarlampen en tl-buizen<\/li>\r\n\t<li>Vloeibare gootsteenontstopper<\/li>\r\n\t<li>Lampenolie en petroleum<\/li>\r\n\t<li>Bestrijdingsmiddelen<\/li>\r\n\t<li>Medicijnen, injectienaalden en kwikthermometers<\/li>\r\n\t<li>Fotofixeer- en ontwikkelvloeistoffen<\/li>\r\n\t<li>Etsvloeistoffen, zwavel- en zoutzuur<\/li>\r\n\t<li>Verf, lak, beits en bijbehorende oplos- en reinigingsmiddelen<\/li>\r\n\t<li>Kwikschakelaars<\/li>\r\n\t<li>Accu&#39;s, benzine, olie(filters) en koelvloeistof<\/li>\r\n<\/ul>\r\n\r\n<p><strong>Wat mag niet bij KCA?<\/strong><\/p>\r\n\r\n<ul class="niet">\r\n\t<li>Lege verfblikken<\/li>\r\n\t<li>Lege spuitbussen<\/li>\r\n<\/ul>","menu_title":"Klein chemisch afval","icon":"batterij-kwast-kca","ophaaldatum":null},{"id":21,"parent_id":0,"title":"Frituurvet en olie","slug":null,"tags":null,"page_title":"Frituurvet en olie","menu_title":"Frituurvet en olie","icon":"frituurvet","ophaaldatum":null},{"id":17,"parent_id":0,"title":"Incontinentiemateriaal en luiers","slug":null,"tags":null,"page_title":"Incontinentiemateriaal en luiers","menu_title":"Incontinentiemateriaal en luiers","icon":"luier","ophaaldatum":null},{"id":118,"parent_id":17,"title":"Incontinentiemateriaal - Plaats","slug":null,"tags":null,"page_title":"Incontinentiemateriaal en luiers","menu_title":"Incontinentiemateriaal en lui
2023-06-27 09:27:08.942  Status: dzVents: 09:27:08 gc_main: 342: stack traceback:
	...data/scripts/dzVents/scripts/garbagecalendar/gc_main.lua:342: in function 'GetWebData'
	...data/scripts/dzVents/scripts/garbagecalendar/gc_main.lua:845: in function 'gc_main'
	[C]: in function 'pcall'
	.../scripts/dzVents/scripts/script_time_garbagecalendar.lua:20: in function 'run_garbagecalendar'
	.../scripts/dzVents/scripts/script_time_garbagecalendar.lua:35: in function 'script_time_garbagecalendar.execute'
	[C]: in function 'pcall'
	/opt/domoticz/dzVents/runtime/EventHelpers.lua:312: in field 'callEventHandler'
	/opt/domoticz/dzVents/runtime/EventHelpers.lua:477: in field 'handleEvents'
	/opt/domoticz/dzVents/runtime/EventHelpers.lua:1035: in field 'dispatchTimerEventsToScripts'
	/opt/domoticz/dzVents/runtime/dzVents.lua:64: in main chunk
2023-06-27 09:27:08.943  Status: dzVents: 09:27:08 gc_main: 344: -< End module m_opzet_api.lua (v20230620-1630)
2023-06-27 09:27:08.943  Status: dzVents: 09:27:08 gc_main: 846: => End run because testdataloadbatch=true and job submitted.
2023-06-27 09:27:08.943  Status: dzVents: !Info: ------ Finished script_time_garbagecalendar.lua after >8 seconds. (using 0.336 seconds CPU time !)
Can you help me?

Re: GarbageCalendar (new version) lua scripts

Posted: Tuesday 27 June 2023 13:32
by jvdz
The 2 examples Postalcodes I have for mijnblink.nl work fine, so please PM me your details so I can test myself as it seems the data you received isn't properly readable by the JSON routines.
They put all kind of "invalid JSON content" in their returned data which needs to be filtered out before it can be processed, so I need to check the data you get returned to see what in your case is causing the issue.

I figured out how I can get it wrong as you sort of left your location in another way, which i removed now. ;)

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 17:20
by mvveelen
Need a little push I think.

Tomorrow is "oud papier" here and I've made an iconset and uploaded it to the icons folder. I adjusted the rights so it's the same as the other icons.

I now receive

Code: Select all

2023-06-28 17:13:02.460 Status: LUA: 17:13:02 gc_func: 102: garbagecalendar_oud_papier idx still not found in Domoticz custom icons, even after upload?
2023-06-28 17:13:02.460 Status: LUA: 17:13:02 gc_main: 759: ==> FirstGTypeIconIdx:?
2023-06-28 17:13:02.460 Status: LUA: 17:13:02 gc_main: 763: ==> Set FirstGTypeIcon:garbagecalendar_oud_papier
2023-06-28 17:13:02.460 Status: LUA: 17:13:02 gc_func: 160: !! Icon not update, idx = nil
2023-06-28 17:13:02.460 Status: LUA: 17:13:02 gc_main: 789: No updated text for TxtDevice.
2023-06-28 17:13:02.460 Status: LUA: 17:13:02 gc_main: 931: ### TimeEvent: End garbagecalendar script v20230620-1630
and the icon hasn't changed, it's still the "groene bak" from last Tuesday.

In the config file I have

Code: Select all

["plastic, blik & drinkpakken"] ={hour=19,min=02,daysbefore=0,reminder=0,text="Plastic bak", icon="garbagecalendar_orange"},
["gft & etensresten"] ={hour=19,min=02,daysbefore=0,reminder=0,text="Groene bak", icon="garbagecalendar_green"},
["papier en karton"] ={hour=19,min=02,daysbefore=0,reminder=0,text="Oud papier", icon="garbagecalendar_oud_papier"},
["restafval"] ={hour=19,min=02,daysbefore=0,reminder=0,text="Grijze bak", icon="garbagecalendar_grey"},
Also I see this:

Code: Select all

2023-06-28 17:24:02.850 "description" : "Used by Garbagecalendar",
2023-06-28 17:24:02.850 "idx" : 130,
2023-06-28 17:24:02.850 "imageSrc" : "garbagecalendar_oudpapier",
2023-06-28 17:24:02.850 "text" : "garbagecalendar oud papier"
And changed the filenames into:

garbagecalendar_oudpapier.png
garbagecalendar_oudpapier.zip

and tried

garbagecalendar_oud_papier.png
garbagecalendar_oud_papier.zip

What am I doing wrong?


Scherm­afbeelding 2023-06-28 om 17.26.48.png
Scherm­afbeelding 2023-06-28 om 17.26.48.png (49.59 KiB) Viewed 3296 times
Edit:

I do see the iconset uploaded when I check the custom icons. Why doesn't it use the iconset then?

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 17:51
by jvdz
The zip file needs to be correct and naming consequent throughout!
This means that not only the filename of the icon is important but also the name in the file icons.txt needs to be correct!
Just do a API call manually yourself: /json.htm?type=command&param=uploadcustomicon which will list all available icons and "garbagecalendar_oud_papier" in not one of them at them moment!

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 17:55
by mvveelen
The text file contains this:

garbagecalendar_oudpapier;garbagecalendar oud papier;Used by Garbagecalendar

Scherm­afbeelding 2023-06-28 om 17.56.27.png
Scherm­afbeelding 2023-06-28 om 17.56.27.png (28.97 KiB) Viewed 3283 times

When I do the JSON call you tell me to do I get:

{
"status" : "ERR",
"title" : "UploadCustomIcon"
}

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 17:57
by jvdz
Well my JSON link as well which should be: /json.htm?type=command&param=custom_light_icons :D

EDIT: So that means the "garbagecalendar_oudpapier" should be available after upload.

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 17:58
by mvveelen
Asjemenou..... what is exactly wrong in the file?

The (new) JSON gives me:

{
"description" : "Used by Garbagecalendar",
"idx" : 130,
"imageSrc" : "garbagecalendar_oudpapier",
"text" : "garbagecalendar oud papier"
},

The iconset is uploaded also:
Scherm­afbeelding 2023-06-28 om 17.59.35.png
Scherm­afbeelding 2023-06-28 om 17.59.35.png (53.62 KiB) Viewed 3279 times

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 18:00
by jvdz
Sorry the txt is correct but the config is wrong and should be the exact name you gave it in the TXT file :

Code: Select all

["papier en karton"] ={hour=19,min=02,daysbefore=0,reminder=0,text="Oud papier", icon="garbagecalendar_oudpapier"},

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 18:06
by mvveelen
That was indeed the push I needed, thanks!

It now displays the right uploaded custom icon.

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 18:07
by jvdz
nice! ... and the zip file should be named "garbagecalendar_oudpapier.zip" too, but that will not be needed as it is already uploaded. ;)

Re: GarbageCalendar (new version) lua scripts

Posted: Wednesday 28 June 2023 21:54
by jvdz
jvdz wrote: Tuesday 27 June 2023 13:32 I figured out how I can get it wrong as you sort of left your location in another way, which i removed now. ;)
@rensbr,
As i wrote in a pm yesterday to you: the current version on GitHub should fix this issue with the invalid lezing of the json data with the latest json.lua version it is updated to. Let me know if things work for you as well.

Re: GarbageCalendar (new version) lua scripts

Posted: Monday 03 July 2023 14:59
by lsp242
I used on my this weekend crashed (fully) domoticz system the old script.. Now I'm rewriting everything i want to use the new one.. but...

1. When i put the files from github in the dzVents folder as mentioned, I won't see this script in Domoticz dzVents. I would expect to change the script in Domoitcz.
2. Is Cyclus nv also included as party https://afvalkalender.cyclusnv.nl/overzicht

thank you for bringing me up to speed

Re: GarbageCalendar (new version) lua scripts

Posted: Monday 03 July 2023 18:23
by jvdz
lsp242 wrote: Monday 03 July 2023 14:59 1. When i put the files from github in the dzVents folder as mentioned, I won't see this script in Domoticz dzVents. I would expect to change the script in Domoitcz.
More a general Domoticz/DzVents question I guess, but I don't think that script that are put into the directory are shown in the Web interface.
I have only limited dzVent knowledge, as I am only using regula LUA scripts up till now, and those aren't either shown in the interface.
The scripts shown in the interface are stored in the database as far as I understand.
lsp242 wrote: Monday 03 July 2023 14:59 2. Is Cyclus nv also included as party https://afvalkalender.cyclusnv.nl/overzicht
Sure, I hope something like this will work for you:

Code: Select all

wmodule==m_opzet_api
Hostname=afvalkalender.cyclusnv.nl
Zipcode=1111AA
Housenr=123
Housenrsuf=
Street=
If not then PM me your zipcode/housenr info so I can test. :)

GarbageCalendar (new version) lua scripts

Posted: Friday 28 July 2023 13:57
by Fredom
Hi Josh,
I have tried a few times to get your garbage calendar working,
but no luck. I get the same error every time I change the false to true.
I cannot open the text files in the tmp folder to see if they contain anything.
The only things I've changed are my home data and removed the -- for tmp.

Code: Select all

2023-07-27 11:26:00.858 Error: dzVents: 11:26:00 gc_main: 607: #### Error: There are 0 data records in Datafile:/tmp/garbagecalendar_m_mijnafvalwijzer.data
2023-07-27 11:27:00.552 Error: dzVents: 11:27:00 gc_func: 453: ### Error: Empty result from curl command
2023-07-27 11:27:00.553 Error: dzVents: 11:27:00 gc_main: 607: #### Error: There are 0 data records in Datafile:/tmp/garbagecalendar_m_mijnafvalwijzer.data
2023-07-27 11:28:00.719 Error: dzVents: 11:28:00 gc_func: 453: ### Error: Empty result from curl command
2023-07-27 11:28:00.723 Error: dzVents: 11:28:00 gc_main: 607: #### Error: There are 0 data records in Datafile:/tmp/garbagecalendar_m_mijnafvalwijzer.data

Code: Select all

------------------------------------------------------------------------------------------------------------------------------------
-- garbagecalendarconfig.lua
------------------------------------------------------------------------------------------------------------------------------------
-- Specify your information here as needed for your needs

-- Domoticz URL to communicate with Domoticz for version & Icon updates Default http://127.0.0.1:8080
-- Ensure that you are allowing access to Domoticz from 127.0.0.1 without an userid/password!
DomoticzURL     = 'http://127.0.0.1:7575'
myGarbageDevice = 'Container' -- The Text devicename in Domoticz. eg 'Container'
Zipcode = 'xxxxxx' 			-- Your zipcode  eg '1234AB'
Housenr = 'xx' 			-- Your housnr. eg '99'
Housenrsuf = '' 		-- Your housnr suffix  ('a', 'b'  etc)
Hostname = 'afvalkalender.cyclusnv.nl' 			-- m_opzet & m_opzet_api: Specify the hostname of your website. eg 'inzamelkalender.hvcgroep.nl'
Street = '' 			-- Street name Only needed for: m_recycleapp
Companycode = ''		-- m_ximmio Companycode. (See m_ximmio.lua file for how to find this code).

-- ==============================
-- choose one of these modules ==
-- ==============================
--websitemodule = "m_deafvalapp"
--websitemodule = 'm_mijnafvalwijzer_API'
websitemodule = 'm_mijnafvalwijzer'
--websitemodule = "m_montferland"
--websitemodule = "m_ophaalkalender-be"
--websitemodule = "m_omrin"
--websitemodule = "m_opzet_api"
--websitemodule = "m_opzet"
--websitemodule = "m_recycleapp-be"
--websitemodule = "m_rmn_api"
--websitemodule = "m_rova_api"
--websitemodule = "m_ximmio"
--websitemodule = "m_zuidlimburg"
------------------------------------------------------------------------------------------------------------------------------------
-- When using a CSV input file uncomment the next 2 lines and specify the location and name of the file.
-- check the m_csv_file.lua file for the appropriate format.
--websitemodule = "m_csv_file"
--input_csv_file = "c:/data/garbage_input.csv"
--input_csv_file = "/home/pi/garbage_input.csv"
-- =================================================================================================================================

-- Switch on mydebug in case of issues and initially and check the domoticz log for any issues or missing
-- set to true or false
mydebug = false            -- run the script as it normally does when any of the scheduled times is the current time
testdataload = false       -- run the web update module in the foreground with each run for debugging.
testdataloadbatch = false  -- run the web update module in the background with each run for debugging. (testdataload takes presedence)
testnotification = false   -- trigger a test notification each run for the first record for testing the notification system

-- Specify the directoy used for the Data and Log files.
-- It will default to the gabagecalendar/data directory when invalid or missing.
datafilepath = '/tmp'    -- Linux/RPI example
--datafilepath = 'D:/temp' -- windows example

------------------------------------------------------------------------------------------------------------------------------------
-- ### define format for text device in Domoticz
-- date options:
--    wd   = weekday in 3 characters as defined in the daysoftheweek table below. eg zon;maa;din
--    wdd  = weekday as defined in the Longdaysoftheweek table below. eg zondag;maandag;dinsdag
--    dd   = day in 2 digits   eg 31
--    mm   = month in 2 digits eg 01
--    mmm  = month abbreviation in 3 characters as defined in the ShortMonth table below. eg : jan
--    mmmm = month  as defined in the LongMonth table below. eg: januari
--    yy   = year in 2 digits eg 19
--    yyyy = year in 4 digits eg 2019
-- Garbage type description options
--    sdesc = short garbage type description from Website  eg pmd
--    ldesc = long garbage type description from Website when available, will be replaced by table description when not
--    tdesc = Use the description available in the table text field
--textformat = 'tdesc: wd dd mmm'
textformat = 'wd dd mmm: tdesc'
-- One can also add some html formatting formating to the output when the used interface supports that:eg:
--    textformat = '<font color="red" size=1>tdesc: wd dd mmm</font>'

-- ### define  what to show in the domoticz text device
-- !!! ShowSinglePerType will be forced to false when Combine_Garbage_perDay = true
ShowSinglePerType = true        -- (default) false => show multiple occurrences of a garbagetype (default)
--                               --	          true  => show one the next occurrence for a unique garbagetype
ShowNextEvents = 3               -- indicate the next x eventlines to show in the TEXT Sensor in Domoticz
Combine_Garbage_perDay = false   -- (default) false will show each garbagetype on its own line
--                               --            true will show multiple garbagetype on a single line when collected the same day

------------------------------------------------------------------------------------------------------------------------------------
-- Configuration for the Notificaton system:
-- IcalDesc:
--   @GARBAGETYPE@ ==> Will be replaced by the GarbageType definion from the WebSite
--   @GARBAGETEXT@ ==> Will be replaced by the text from garbagetype_cfg[].text field
IcalEnable = true -- false/true: When true, a garbagecalendar_Modulename.ics will be created in the datafilepath which can be used in a calendar application.
IcalTitle = 'GarbageCalendar' -- title of the calendar
IcalDesc = '@GARBAGETEXT@ wordt opgehaald.' -- text for the events in the calendar
IcalEvents = 10 -- max number of upcomming events to save to icalfile, but could be less when less events are provided by the website.
IcalNotify = 12 -- Notification Time in hours before event. 0=no notification
------------------------------------------------------------------------------------------------------------------------------------
-- Configuration for the Notificaton system:
NotificationEmailAdress = {'', ''} -- Specify multiple Email Addresses for the notifications. Leave empty to skip email notification
Notificationsystem = 'telegram' -- Specify notification system eg "telegram/pushover/gcm/http/kodi/lms/nma/prowl/pushalot/pushbullet/pushsafer" leave empty to skip

-- Specify external personal notification script/command (Shelled async)
--Notificationscript = 'lua /home/pi/domoticz/scripts/lua/garbagecalendar/notification_external_script.lua "@GARBAGETYPE@" > /tmp/GC_Notify.log 2> /tmp/GC_Notify.log'

-- Specify personal notification event script
-- This example is provided and will work in DzVents and regular Lua Time Events
-- EventNotificationscript = 'notification_event_script.lua' -- Specify personal notification script event eg: my_event_script.lua  (This needs to be placed in the GarbageCalendar directory together with the modules)

-- Supported variables for Title and Body
-- @DAY@         ==> Will be replaced by notificationtoday; notificationtomorrow; notificationlonger depending on the days difference.
-- @GARBAGETYPE@ ==> Will be replaced by the GarbageType definition from the WebSite
-- @GARBAGEDATE@ ==> Will be replaced by the pickup date found on the schedule data
-- @GARBAGETEXT@ ==> Will be replaced by the text from garbagetype_cfg[].text field
-- @REMINDER@    ==> Will be set to "" for first notification and "notificationreminder" for the reminder run
-- @TEXT@        ==> Will be replaced by the finalised notificationtext and can be used in the notification script
-- @TITLE@       ==> Will be replaced by the finalised notificationtitle and can be used in the notification script
--### Dutch example
-- Define how the title and bodytext should look
notificationreminder = ' (herinnering)'
notificationtitle = 'GarbageCalendar: @DAY@ de @GARBAGETEXT@ aan de weg zetten!'
notificationtext = '@GARBAGETEXT@ wordt @DAY@ opgehaald!@REMINDER@'
notificationtoday = 'vandaag'
notificationtomorrow = 'morgen'
notificationlonger = 'over @DAYS@ dagen'
notificationdate = 'wd dd mmmm yyyy' -- @GARBAGEDATE@ format -> Options are the same as available for textformat date options

--### English example
-- notificationreminder = ' (reminder)'
-- notificationtitle    = 'GarbageCalendar: @GARBAGETEXT@ will be picked up in @DAY@!'
-- notificationtext     = 'Put the @GARBAGETEXT@ out as it will be picked up @DAY@.!@REMINDER@'
-- notificationtoday    = 'today'
-- notificationtomorrow = 'tomorrow'
-- notificationlonger   = 'in @DAYS@ days'
-- notificationdate     = 'wd dd mmmm yyyy'      -- Options are the same as available for textformat date options
------------------------------------------------------------------------------------------------------------------------------------
-- Configuration for the generation of an ics file:
-- IcalDesc:
--   @GARBAGETYPE@ ==> Will be replaced by the GarbageType definion from the WebSite
--   @GARBAGETEXT@ ==> Will be replaced by the text from garbagetype_cfg[].text field
IcalEnable = false -- false/true: When true, a garbagecalendar_Modulename.ics will be created in the datafilepath which can be used in a calendar application.
IcalTitle = 'GarbageCalendar' -- title of the calendar
IcalDesc = '@GARBAGETEXT@ wordt opgehaald.' -- text for the events in the calendar
IcalEvents = 10 -- max number of upcomming events to save to icalfile, but could be less when less events are provided by the website.
IcalNotify = 12 -- Notification Time in hours before event. 0=no notification
------------------------------------------------------------------------------------------------------------------------------------
-- ### define a line for each garbage type returned by the webrequest.
-- Look at the Domoticz log for any missing records as they will be displayed there and can be just copy/pasted in.
-- Fields description:
-- hour & min ==> the time the check needs to be performed and notification send when daysbefore is true
-- daysbefore ==> 0 means that the notification is send on the day of the planned garbage collection
-- daysbefore ==> X means that the notification is send X day(s) before the day of the planned garbage collection
-- reminder   ==> Will send a second reminder after x hours. 0=no reminder (can be between 0 - 24 hours)
-- text       ==> define the text for the notification and Text Device.
-- active     ==> (optional)  default="on"
--           active="on"   Both will show in Domoticz Text Device and Send notifications
--           active="off"  Will show in Domoticz Text Device but not send notifications
--           active="skip" Will not show in Domoticz Text Device and not send notifications
-- The "reloaddata" entry is required to run the background process to update the data one time per day.
-- The "dummy" entry can be used to force reading the data, update the Domoticz text device and see if there are any errors or missing garbadge types.

garbagetype_cfg = {
	-- Add any missing records below this line -----------------------------------------------------
	['pmd'] 	= {hour = 19, min = 22, daysbefore = 1, reminder = 3, text = 'plastic bak', icon = 'garbagecalendar_yellow'},
	['gft'] 	= {hour = 19, min = 22, daysbefore = 1, reminder = 3, text = 'groene bak', icon = 'garbagecalendar_green'},
	['papier'] 	= {hour = 19, min = 22, daysbefore = 1, reminder = 3, text = 'blauwe bak', icon = 'garbagecalendar_blue'},
	--['restafval'] 	= {hour = 19, min = 22, daysbefore = 1, reminder = 3, text = 'grijze bak', icon = 'garbagecalendar_grey'},
	-- Add any missing records above this line -----------------------------------------------------
	--  "reloaddata" is used to start the background update process at this given time.
	['reloaddata'] 	= {hour = 02, min = 30, daysbefore = 0, reminder = 0, text = 'trigger for reloading data from website into garbagecalendar.data'},
	['dummy'] 	= {hour = 04, min = 01, daysbefore = 0, reminder = 0, text = 'dummy to trigger update of textdevice early morning'}
}

------------------------------------------------------------------------------------------------------------------------------------
-- Taal opties Nederlands
-- Datum / dag informatie:
-- Gebruikt door functie getdate voor formats "mmmm" & "mmm"
daysoftheweek = {'zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'}
Longdaysoftheweek = {'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'}
ShortMonth = {'jan', 'feb', 'maa', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'}
LongMonth = {'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'}
-- Wordt gebruikt om de maand afkorting van de ontvangen kalender data te vertalen naar het maandnummer. Meerder opties mogelijk.
-- Pas deze tabellen aan indien de afvalverwerker andere afkortingen gebruikt.
InputMonth = {jan = 1, feb = 2, mrt = 3, maa = 3, apr = 4, mei = 5, jun = 6, jul = 7, aug = 8, sep = 9, okt = 10, nov = 11, dec = 12}
------------------------------------------------------------------------------------------------------------------------------------
-- Language options English
-- Date/day info:
--daysoftheweek={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"}
--Longdaysoftheweek={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}
--ShortMonth={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"}
--LongMonth={"January","February","March","April","May","June","July","August","September","October","November","December"}
-- Used to translate the month abbreviation back to the month number. Can contain multiple options for abbreviations.
-- Adapt when your GarbageCollector is using different abbreviations.
--InputMonth={jan = 1, feb = 2, mar = 3, apr = 4, may = 5, jun = 6, jul = 7, aug = 8, sep = 9, oct = 10, nov = 11, dec = 12}

Re: GarbageCalendar (new version) lua scripts

Posted: Friday 28 July 2023 16:40
by jvdz
Hoi Fred,
Pretty sure you are using the wrong module as I believe that cyclusnv uses opzet .Try first the m_opzet_api module to see if that works, and when in doesn't work email me your logs and config in a zip file so I can have a look at the details.

Jos

Re: GarbageCalendar (new version) lua scripts

Posted: Friday 28 July 2023 19:43
by Fredom
jvdz wrote: Friday 28 July 2023 16:40 Hoi Fred,
Pretty sure you are using the wrong module as I believe that cyclusnv uses opzet .Try first the m_opzet_api module to see if that works, and when in doesn't work email me your logs and config in a zip file so I can have a look at the details.

Jos
Hi Jos,
Thanks for the quick response, I'll get to work on it and let you know the outcome.

Re: GarbageCalendar (new version) lua scripts

Posted: Thursday 10 August 2023 20:33
by mvveelen
I keep getting this error whenever the garbage type and icon changes and I've searched for a solution to stop it, but haven't found it.
As far as I know I haven't activated any messages and I think (..) I've checked it all. But what do I overlook?

Code: Select all

Error: !!!!> notification_event_script.lua ended with errors: /home/pi/domoticz/scripts/lua/garbagecalendar/gc_main.lua:488: attempt to call a nil value (global 'Notification_Event')