>From the log extract, this what I see as the payload

{
    "applicationID": "18",
    "applicationName": "CO2app",
    "deviceName": "CO2device",
    "devEUI": "2cf7f12122500013",
    "txInfo": {
        "frequency": 903900000,
        "dr": 0
    },
    "adr": true,
    "fCnt": 220,
    "fPort": 2,
    "data": "AQQQaJsGAAqz",
    "object": {
        "err": 0,
        "messages": [
            {
                "CO2_Value_PPM": 433,
                "measurementId": 4100,
                "type": "report_telemetry"
            }
        ],
        "payload": "010410689B06000AB3",
        "valid": true
    }
}

On Sunday, 28 November 2021 at 14:07:59 UTC-5 vince wrote:

> Agree.  Pre-process it to a format that works with weewx.
>
> Again, can you give us a vanilla "mosquitto_sub -t whatever -h the_host" 
> output so we can see what you have a little more clearly ?   Piping it to " | 
>  jq . " sometimes helps show the nesting and structure a little better 
> for the eyes.
>
> On Sunday, November 28, 2021 at 10:51:17 AM UTC-8 [email protected] 
> wrote:
>
>> Since you are using Node Red, a possible solution is to use a Change Node 
>> and delete the payload that you don't want to include in weewx.
>>
>> On Sunday, November 28, 2021 at 1:41:56 PM UTC-5 [email protected] wrote:
>>
>>> I looked more closely at the payload format and I don't think that 
>>> format is currently supported. specifically the 'nested array'..
>>>
>>> "object":{"err":0,"messages":[{"CO2_Value_PPM":433,"measurementId":4100,"type":"report_telemetry"}]
>>> Busy time of the year, so not sure when I'll have time to delve into a 
>>> solution.
>>> rich
>>> On Sunday, 28 November 2021 at 12:22:22 UTC-5 [email protected] wrote:
>>>
>>>>
>>>> Bob,
>>>> Since you have a lot of fields that you want to ignore, try setting the 
>>>> ignore flag to true at the 'topic' level. Also I don’t think you want to 
>>>> set contains_total.  So you would end up with something like this, 
>>>>     [[topics]]
>>>>         [[[application/18/device/2cf7f12122500013/rx]]]
>>>>             ignore = true
>>>>     [[[[CO2_Value_PPM]]]]
>>>>         name = co2
>>>>                         ignore = false
>>>>
>>>> Since the data is published so infrequently, once you get the basic 
>>>> configuration working, you might want to look into the expires_after 
>>>> option. This will cache the value between publications. For additional 
>>>> information see, 
>>>> https://github.com/bellrichm/WeeWX-MQTTSubscribe/wiki/Configuring-additional-options#expires_after
>>>>
>>>> rich
>>>>
>>>> On Sunday, 28 November 2021 at 11:21:43 UTC-5 [email protected] wrote:
>>>>
>>>>> Thanks for coming back so soon with help Storm and Vince.
>>>>> I am attaching three things in a .txt file rather than pasting in as 
>>>>> the format seems messy and I'm not sure how to make it easier to read.
>>>>>
>>>>> 1.  My modified section of weewx.conf . Among other things, there 
>>>>> seems to be a problem with float.
>>>>>
>>>>> 2.  The data sent from the LoRa server when I subscribe 
>>>>> to applications/18/devices/2cf7f12122500013/rx  (using MQTT-explorer). 
>>>>> Lots 
>>>>> of unneeded things  but it contains the CO2_Value_PPM data.
>>>>>
>>>>> 3.  A listing of weewx.log in debug mode showing the problems (I 
>>>>> hope). The data seems to be getting there but is not being parsed out for 
>>>>> what I need.
>>>>>
>>>>> Hopefully this will give you an idea of what's going on.  Thanks again 
>>>>> for your help.
>>>>> Bob
>>>>>
>>>>> On Saturday, November 27, 2021 at 5:36:51 PM UTC-5 vince wrote:
>>>>>
>>>>>> My example:
>>>>>>
>>>>>> [MQTTSubscribeService]
>>>>>>     enable = True
>>>>>>     host = 192.168.1.171
>>>>>>     port = 1883
>>>>>>     keepalive = 60
>>>>>>     username = None
>>>>>>     password = None
>>>>>>     binding = loop
>>>>>>     [[message_callback]]
>>>>>>         type = json
>>>>>>     [[topics]]
>>>>>>         unit_system = US
>>>>>>         #
>>>>>>         #--- these are emitted every 5 minutes ---
>>>>>>         # mosquitto_sub -t BaseballRoomConditions -h nuc2
>>>>>>         #     {"dateTime": 1621715702, "extraTemp1": 63.16, 
>>>>>> "extraTemp2": 63.5, "pi": 100.28}
>>>>>>         #
>>>>>>         [[[BaseballRoomConditions]]]    <=== the topic to subscribe to
>>>>>>             [[[[dateTime]]]]            <=== the element in that topic
>>>>>>                 ignore = True           <=== optionally ignore this 
>>>>>> item within the topic
>>>>>>             [[[[extraTemp1]]]]
>>>>>>                 name = extraTemp1       <=== db element to map the 
>>>>>> item to
>>>>>>                 units = degree_F        <=== its units
>>>>>>             [[[[extraTemp2]]]]
>>>>>>                 name = extraTemp2
>>>>>>                 units = degree_F
>>>>>>             [[[[pi]]]]
>>>>>>                 ignore = True
>>>>>>
>>>>>>
>>>>>> On Saturday, November 27, 2021 at 2:26:46 PM UTC-8 [email protected] 
>>>>>> wrote:
>>>>>>
>>>>>>>  I believe you need to add the topic you subscribing to in 
>>>>>>> [[[first/topic]]]. 
>>>>>>>
>>>>>>> Example:
>>>>>>>
>>>>>>>
>>>>>>> ##########################################################################################
>>>>>>>   #              Acurite-5n1 Sensors
>>>>>>>   #              SDR # 1 
>>>>>>>   #              433 MHz
>>>>>>>   
>>>>>>> ##########################################################################################
>>>>>>>   
>>>>>>>      
>>>>>>>
>>>>>>>         
>>>>>>>         [[[Acurite-Tower/8785/]]]
>>>>>>>            
>>>>>>>            [[[[temperature_F]]]]
>>>>>>>             name = extraTemp7
>>>>>>>             ignore = False
>>>>>>>             contains_total = False
>>>>>>>             conversion_type = float
>>>>>>>             units = degree_F
>>>>>>>
>>>>>>> On Saturday, November 27, 2021 at 5:15:24 PM UTC-5 [email protected] 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>> I'm running a RAK7244 LoRaWAN server/gateway on a local network to 
>>>>>>>> which my weewx server is connected. Weeex is the latest stable on 
>>>>>>>> Ubuntu 
>>>>>>>> with extended db.
>>>>>>>>
>>>>>>>> A CO2 sensor is sending data to the LoRa server. I have node-red on 
>>>>>>>> my weewx server with a flow  connecting to the RAK7244. I want to have 
>>>>>>>> the 
>>>>>>>> CO2 data put into the co2 slot that is available on the weewx db.
>>>>>>>>
>>>>>>>> I have installed the weewx extension Mosquitto-subscribe and 
>>>>>>>> attempted to configure weewx.conf as:
>>>>>>>> #################################################
>>>>>>>> # Options for 'MQTTSubscribeService'
>>>>>>>> [MQTTSubscribeService]
>>>>>>>>     # This section is for the MQTTSubscribe service.
>>>>>>>>         # Turn the service on and off.
>>>>>>>>     # Default is: true
>>>>>>>>     # Only used by the service.
>>>>>>>>     enable = true    # false
>>>>>>>>     
>>>>>>>>     # The MQTT server.
>>>>>>>>     # Default is localhost.
>>>>>>>>     host = localhost  #192.168.1.10    #localhost
>>>>>>>>     
>>>>>>>>     # The port to connect to.
>>>>>>>>     # Default is 1883.
>>>>>>>>     port = 1883
>>>>>>>>     
>>>>>>>>     # Maximum period in seconds allowed between communications with 
>>>>>>>> the broker.
>>>>>>>>     # Default is 60.
>>>>>>>>     keepalive = 60
>>>>>>>>     
>>>>>>>>     # username for broker authentication.
>>>>>>>>     # Default is None.
>>>>>>>>     username = None
>>>>>>>>     
>>>>>>>>     # password for broker authentication.
>>>>>>>>     # Default is None.
>>>>>>>>     password = None 
>>>>>>>>     
>>>>>>>>     # The binding, loop or archive.
>>>>>>>>     # Default is: loop
>>>>>>>>     # Only used by the service.
>>>>>>>>     binding = loop
>>>>>>>>     
>>>>>>>>     # The message handler to use
>>>>>>>>     [[message_callback]]
>>>>>>>>         # The format of the MQTT payload.
>>>>>>>>         # Currently support: individual, json, keyword
>>>>>>>>         # Must be specified.
>>>>>>>>         type = json    #REPLACE_ME
>>>>>>>>     
>>>>>>>>     # The application/18/device/2cf7f12122500013/rx  topics to 
>>>>>>>> subscribe to.
>>>>>>>>     [[topics]]
>>>>>>>>         # Units for MQTT payloads without unit value.
>>>>>>>>         # Valid values: US, METRIC, METRICWX
>>>>>>>>         # Default is: US
>>>>>>>>         unit_system = US
>>>>>>>>         
>>>>>>>>         [[[first/topic]]]
>>>>>>>>
>>>>>>>> #value sent from RAK7244
>>>>>>>>
>>>>>>>> [[[[CO2_Value_PPM]]]]
>>>>>>>>         #weewx db name
>>>>>>>> name = co2
>>>>>>>> ignore = false
>>>>>>>>                 contains total = True
>>>>>>>> conversion type = float
>>>>>>>>                 
>>>>>>>>         #[[[SECOND/REPLACE_ME]]]
>>>>>>>> ################################################
>>>>>>>>
>>>>>>>> The message (data) every 60 minutes coming from the node-red 
>>>>>>>> function is:
>>>>>>>>
>>>>>>>> {"CO2_Value_PPM":401} 
>>>>>>>>
>>>>>>>> I may have too many things going here but, as I'm not a programmer, 
>>>>>>>> I'm stuck trying to figure out the problem. The node-red flow is 
>>>>>>>> connected 
>>>>>>>> on both ends (RAK7244-->weewx) but I don't see any data reaching the 
>>>>>>>> db.
>>>>>>>>
>>>>>>>> Thanks in advance if anyone can help on this.
>>>>>>>> Cheers'
>>>>>>>> Bob
>>>>>>>>
>>>>>>>>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/550aa65b-9a54-4431-a5e9-d5e37ad1a601n%40googlegroups.com.

Reply via email to