Thanks for the suggestion Gary. But in that case, with a service in archive_ services (after StdArchive) or in report_services , it is a read-only access to the full archive record.
The idea of my service was to read some GW1000 sensor archive record values, and depending on these value modify another non-GW1000 archive record value. If I understand well, this has to be done before StdArchive, i.e before the archive record is finalized and written to the database. > Le 5 déc. 2023 à 20:27, gjr80 <gjroder...@gmail.com> a écrit : > > Not quite true. If you include your service in archive_services (after > StdArchive) or anywhere in report_services it will have access to the > augmented archive record (even restful_services will work but that just > doesn't sound right to me). > > Gary > > On Wednesday, 6 December 2023 at 03:50:02 UTC+10 jterr...@gmail.com wrote: >> Yes, this is the case. The GW1000 gateway service only adds sensor values to >> the LOOP packets. So in that case, there is no way to capture the archive >> record of GW1000 sensors using a custom service. >> >> Thanks for your reply >> >> >> >>> Le 5 déc. 2023 à 16:38, Tom Keffer <tke...@gmail.com <>> a écrit : >>> >> >>> As you're hinting, it depends on details of how GatewayService adds >>> outTemp5. >>> >>> Service StdArchive is responsible for taking the accumulated LOOP packets >>> and turning them into an archive record. So, if GatewayService only adds >>> outTemp5 to the LOOP packets and depends on StdArchive to turn them into >>> archive records, outTemp5 won't appear until after StdArchive has run. >>> >>> On the other hand, if GatewayService puts outTemp5 in the archive record, >>> it should be in there by the time MyService sees the record. >>> >>> >>> On Tue, Dec 5, 2023 at 2:32 AM jterr...@gmail.com <> <jterr...@gmail.com >>> <>> wrote: >>>> I have weewx (4.10.2) configured with the Davis Vantage 2 driver, and >>>> additionally the GW1000 gateway service provides values for some more >>>> temperature sensors. >>>> Everything is working properly , and GW1000 temperature values (mapped as >>>> extraTempX) are recorded in the archive database and appear in LOOP >>>> packets. >>>> >>>> I am working on a new service, triggered by the NEW_ARCHIVE_RECORD event, >>>> that needs to read the record values of the some of the extraTemp captured >>>> by the GW10000. >>>> >>>> In this exemple : >>>> >>>> class MyService(StdService): >>>> def __init__(self, engine, config_dict): >>>> super(MyService self).__init__(engine, config_dict) >>>> manager_dict = >>>> weewx.manager.get_manager_dict_from_config(config_dict, 'wx_binding') >>>> self.db_manager = weewx.manager.open_manager(manager_dict) >>>> self.bind(weewx.NEW_ARCHIVE_RECORD, self.newArchiveRecord) >>>> >>>> def newArchiveRecord(self, event): >>>> if event.record.get('extraTemp5') is not None: >>>> loginf("record extraTemp5 is : %f " % (event.record['extraTemp5'])) >>>> else: >>>> loginf("no extraTemp5 in record" ) >>>> if event.record.get('OutTemp') is not None: >>>> loginf("record OutTemp is : %f " % (event.record['outTemp'])) >>>> else: >>>> loginf("no outTemp in record" ) >>>> >>>> When this new service is running, I have always in the log "no extraTemp5 >>>> in record" ( the outTemp value is correctly logged) , but ultimately the >>>> value of extraTemp5 is written in the archive table of the database. So at >>>> the time weewx triggers a NEW_ARCHIVE_RECORD event, there is no data >>>> coming from the GW1000 in the archive record. >>>> >>>> Does it means that the archive values of the parameters coming from GW1000 >>>> service, and presumably generated by weewx since the GW1000 service is >>>> generating LOOP packets only, are inserted in the archive record after the >>>> NEW_ARCHIVE_RECORD event is triggered? >>>> >>>> in weewx.conf, the services are as follows : >>>> data_services = user.gw1000.GatewayService >>>> process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, >>>> weewx.engine.StdQC, weewx.wxservices.StdWXCalculate, >>>> user.sunduration.SunshineDuration, user.myservice.MyService >>>> >>>> -- >>>> You received this message because you are subscribed to the Google Groups >>>> "weewx-user" group. >>>> To unsubscribe from this group and stop receiving emails from it, send an >>>> email to weewx-user+...@googlegroups.com <>. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/weewx-user/99eadb93-8622-4663-b511-cb2477d5c4fen%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/weewx-user/99eadb93-8622-4663-b511-cb2477d5c4fen%40googlegroups.com?utm_medium=email&utm_source=footer>. >>> >>> >>> -- >> >>> You received this message because you are subscribed to a topic in the >>> Google Groups "weewx-user" group. >>> To unsubscribe from this topic, visit >>> https://groups.google.com/d/topic/weewx-user/sStF634U7Rw/unsubscribe. >>> To unsubscribe from this group and all its topics, send an email to >>> weewx-user+...@googlegroups.com <>. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/weewx-user/CAPq0zECMS9hMGQSgNK4_mSfP4MyxpXLqR1WXhACE9-0spssX2g%40mail.gmail.com >>> >>> <https://groups.google.com/d/msgid/weewx-user/CAPq0zECMS9hMGQSgNK4_mSfP4MyxpXLqR1WXhACE9-0spssX2g%40mail.gmail.com?utm_medium=email&utm_source=footer>. >> > > > -- > You received this message because you are subscribed to a topic in the Google > Groups "weewx-user" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/weewx-user/sStF634U7Rw/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > weewx-user+unsubscr...@googlegroups.com > <mailto:weewx-user+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/weewx-user/abec7d74-1320-4c8a-9d86-e1d5a941bbe4n%40googlegroups.com > > <https://groups.google.com/d/msgid/weewx-user/abec7d74-1320-4c8a-9d86-e1d5a941bbe4n%40googlegroups.com?utm_medium=email&utm_source=footer>. -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/9DD35824-B27B-4AD6-9945-EDB56B9BA8E1%40gmail.com.