Proving to be a bit of a challenge. Does anyone have any socket.io Python 
experience? I'm following the dev guides but the endpoint keeps coming up 
as 404. If I try it with an online socket.io test tool, it works fine 
(using javascript). Hmm...

On Tuesday, August 14, 2018 at 11:55:50 AM UTC-4, Douglas Krug wrote:
>
> That sounds amazing. I haven’t requested the key yet, but will now and 
> send to you.
>
> On Tue, Aug 14, 2018 at 11:49 AM Pat <p...@obrienphoto.net <javascript:>> 
> wrote:
>
>> It should be doable. Just need to get Python connected to their websocket 
>> realtime endpoint and the rest of it (weewx driver wise) should be similar 
>> to the drivers I've written in the past. 
>>
>> I haven't played with Python websockets yet, but sounds fun to tinker 
>> with and figure out!
>>
>> If you're comfortable I may need your Ambient Weather API and APP keys 
>> (sent as a private message so its not public) to be able to read the data 
>> as a way to validate the driver. You should be able to change these when 
>> done to re-secure your keys. 
>>
>> On Tuesday, August 14, 2018 at 10:06:09 AM UTC-4, Douglas Krug wrote:
>>>
>>> *I no longer am using my Ambient ObserverIP, so I don't have test data 
>>> to use.* 
>>>
>>> I do of course, so let me know if I could help in this regard.
>>>
>>> On Tuesday, August 14, 2018 at 9:44:33 AM UTC-4, Douglas Krug wrote:
>>>>
>>>> *So maybe the thought here is to have your station submit to 
>>>> AmbientWeather natively, and create a driver which gets the data from 
>>>> Ambient's real-time subscribe system and submits it to weewx for archival?*
>>>>
>>>> Yes, that's the idea exactly! Ambient doesn't let you upload to their 
>>>> server unless you buy a $150 license from them. But if you own their 
>>>> equipment, there's no charge to upload. Since there's a way to subscribe 
>>>> to 
>>>> Ambientweather.net via their API, there's for sure a possibility to bring 
>>>> it into Weewx. In fact, there doesn't even need to be node servers and 
>>>> routers passing the data, but I don't know how to code, so I wouldn't be 
>>>> able to execute the concept. The ambient2pwsweather server is needed if 
>>>> you're not running Weewx, but if you are, it's redundant since you can 
>>>> just 
>>>> post to PWSweather from Weewx. It's the ambientweather.net piece that 
>>>> is tricky due to their restrictions. However, everyone with any internet 
>>>> connected Ambient Weather device and up-to-date firmware can upload to 
>>>> ambientweather.net for free. So if there was just a way to subscribe 
>>>> to data from ambientweather.net and bring it into Weewx, there would 
>>>> be no need for Ambient Weather IP sniffing or listening, just an internet 
>>>> connection, Weewx and a plugin.
>>>>
>>>> But I'm a home automation geek. I already have an always on Node.js 
>>>> server running. I was reluctant to add another router, but I have several 
>>>> of them and it was the easiest way to get data into Weewx. So adding 
>>>> another piece to the puzzle doesn't phase me that much. It *can* all 
>>>> be so simple, but it takes talented developers to do the work.
>>>>
>>>> On Tue, Aug 14, 2018 at 9:14 AM Pat <p...@obrienphoto.net> wrote:
>>>>
>>> Taking a look at the ambient2pwsweather project, it looks like he's 
>>>>> really using the ambient-weather-api 
>>>>> <https://github.com/owise1/ambient-weather-api> project as his heavy 
>>>>> lifting for ambient. And looking at the project it looks like what we 
>>>>> talked about where AmbientWeather's API documentation 
>>>>> <https://ambientweather.docs.apiary.io/#> talks about how to 
>>>>> subscribe to data, but not how to submit data. 
>>>>>
>>>>> So maybe the thought here is to have your station submit to 
>>>>> AmbientWeather natively, and create a driver which gets the data from 
>>>>> Ambient's real-time subscribe system and submits it to weewx for 
>>>>> archival? 
>>>>>
>>>>> I've also upgraded to a Davis Vantage Pro 2, so I no longer am using 
>>>>> my Ambient ObserverIP, so I don't have test data to use. 
>>>>>
>>>>>
>>>>> On Tuesday, August 14, 2018 at 8:57:42 AM UTC-4, Pat wrote:
>>>>>>
>>>>>> The API into weewx would be a driver. Typically the weather equipment 
>>>>>> is directly connected and the driver would control the weather station. 
>>>>>> That's why I wrote the socket driver a few years ago because my 
>>>>>> equipment 
>>>>>> isn't directly connected. 
>>>>>>
>>>>>> The good news is the interceptor driver has multiple ways to input 
>>>>>> data into weewx, so it's probably as much of an API as you're going to 
>>>>>> find. By sending HTTP data to the driver's web server, it can then pass 
>>>>>> it 
>>>>>> to weewx like a standard driver would.
>>>>>>
>>>>>> That being said, I can't help but to think about others who may want 
>>>>>> to publish data to Ambient as well. As mentioned on wxforum, the Ambient 
>>>>>> documentation is kind of lacking for a developer and what the value 
>>>>>> names 
>>>>>> are to submit (and how... GET vs. POST). But if there's a project that's 
>>>>>> successfully posting data to Ambient, then maybe a weewx extension could 
>>>>>> be 
>>>>>> created to post to Ambient. An extension like the one for wunderground 
>>>>>> or 
>>>>>> PWSWeather might be easy enough to fork for Ambient. This would save the 
>>>>>> need of setting up and maintaining a node server (and help those here 
>>>>>> who 
>>>>>> don't know what node is). The more complicated things get, the more 
>>>>>> potential for something to break and you not catching it (like your node 
>>>>>> server crashing and you don't know it for a few days). 
>>>>>>
>>>>>> I'm working on a skin for weewx now, but this could be a fun project 
>>>>>> to think about - forking a PWSWeather extension to the AmbientWeather 
>>>>>> service - (unless someone else reading this wants to give it a try).
>>>>>>
>>>>>>
>>>>>> On Monday, August 13, 2018 at 10:34:09 PM UTC-4, Douglas Krug wrote:
>>>>>>>
>>>>>>> Hello again Pat,
>>>>>>>
>>>>>>> Thanks for commenting. This is basically a continuation of the 
>>>>>>> conversation we had on wxforum. I've got experience setting up node.js, 
>>>>>>> that shouldn't be a problem. I stumble across the ambient2pwsweather 
>>>>>>> node 
>>>>>>> project and reached out to see if he would consider modifying it. He 
>>>>>>> wasn't 
>>>>>>> really interested if there was no API for Weewx, which to the best of 
>>>>>>> my 
>>>>>>> understanding, there is not. I suggested Matthew Wall's interceptor 
>>>>>>> plugin, 
>>>>>>> to just capture html traffic from the node server. He said it should 
>>>>>>> not be 
>>>>>>> too difficult, but wants info on how it should be formatted. You say it 
>>>>>>> shouldn't be difficult, and that's cool. @mwall hasn't commented yet 
>>>>>>> and 
>>>>>>> I'm not a developer, so my understanding of it all is pretty 
>>>>>>> rudimentary.
>>>>>>>
>>>>>>> I've got a lot of brilliant minds here, but the data is passing 
>>>>>>> through me and packets are being dropped ;-)
>>>>>>> Appreciate the link to Matt's python code. I'll forward this info 
>>>>>>> and see if he can modify from that.
>>>>>>>
>>>>>>> On Monday, August 13, 2018 at 10:00:29 PM UTC-4, Pat wrote:
>>>>>>>>
>>>>>>>> @G Hammer - It's not too bad if you have the extra hardware to do 
>>>>>>>> the iptables redirect. The $6 dongle is surely cheaper than a new 
>>>>>>>> router 
>>>>>>>> though. Also I notice you're local to me in Western MA (based off the 
>>>>>>>> weewx 
>>>>>>>> map). Glad I'm not the only one using weewx around here anymore :)
>>>>>>>>
>>>>>>>> I don't have any experience with the interceptor driver, but since 
>>>>>>>> mwall's given me credit for the observer portion 
>>>>>>>> <https://github.com/matthewwall/weewx-interceptor/blob/master/bin/user/interceptor.py#L16>,
>>>>>>>>  
>>>>>>>> I thought that maybe I can help a little?
>>>>>>>>
>>>>>>>> I read the code for the interceptor driver and it looks like if you 
>>>>>>>> use the device_type = observer in your weewx.conf file, then the 
>>>>>>>> data received to the driver's built in web server needs to be in the 
>>>>>>>> Observer format in this example within the code 
>>>>>>>> <https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fmatthewwall%2Fweewx-interceptor%2Fblob%2Fmaster%2Fbin%2Fuser%2Finterceptor.py%23L881&sa=D&sntz=1&usg=AFQjCNHlyqeOp8RM5pr4RRaU3tcxMsv11w>,
>>>>>>>>  
>>>>>>>> and similar to the format on my site (which you already linked). 
>>>>>>>>
>>>>>>>> Since each variable in the URL has a corresponding value (like 
>>>>>>>> tempf=43.3 means temperature in Fahrenheit is 43.3), this should 
>>>>>>>> be pretty simple for the ambient2pwsweather dev to figure out how to 
>>>>>>>> format 
>>>>>>>> the observations being sent to the weewx driver. 
>>>>>>>>
>>>>>>>> Hope this helps a little...
>>>>>>>>
>>>>>>>>
>>>>>>>> On Monday, August 13, 2018 at 9:19:34 AM UTC-4, Douglas Krug wrote:
>>>>>>>>>
>>>>>>>>> I've been discussing the possibility to have the author of "a
>>>>>>>>> mbient2pwsweather 
>>>>>>>>> <https://github.com/killroyboy/ambient2pwsweather>" modify his 
>>>>>>>>> node.js service to allow input to Matthew Wall's Interceptor plugin. 
>>>>>>>>> The 
>>>>>>>>> idea is to allow the continued use of Ambientweather.net, while still 
>>>>>>>>> capturing weather data for Weewx, so that it can be published to the 
>>>>>>>>> supported weather services and used with Hubitat or other home 
>>>>>>>>> automation 
>>>>>>>>> systems. I'm already able to listen to my WS-0900-IP bridge and get 
>>>>>>>>> the 
>>>>>>>>> data into Weewx, but currently that comes at the cost of no longer 
>>>>>>>>> being 
>>>>>>>>> able to use Ambientweather.net or any of their services such as 
>>>>>>>>> IFTTT, Alex 
>>>>>>>>> Voice Services and Google Assistant.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Is there a guide for how the data must be formatted for input to 
>>>>>>>>> the interceptor.py plugin? Hoping anyone with knowledge of 
>>>>>>>>> interceptor or 
>>>>>>>>> @mwall could comment please.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Here's what the ambient2pwsweather 
>>>>>>>>> <https://github.com/killroyboy/ambient2pwsweather> developer 
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *"If I'm understanding it correctly, it wouldn't be that difficult 
>>>>>>>>> to enhance this utility to send the data to a different url/port. You 
>>>>>>>>> would 
>>>>>>>>> then need to run a new interceptor instance running in "listen mode" 
>>>>>>>>> that 
>>>>>>>>> would handle the insertion into weewx.*
>>>>>>>>>
>>>>>>>>> *The minor difficulty would be in ensuring the data is in a format 
>>>>>>>>> that the interceptor would understand. If you can work that out and 
>>>>>>>>> get me 
>>>>>>>>> some documentation (or point me to a URL), I can 
>>>>>>>>> enhance ambient2pwsweather."*
>>>>>>>>>
>>>>>>>> -- 
>>>>> 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/As-rZOD0_Lo/unsubscribe.
>>>>>
>>>> To unsubscribe from this group and all its topics, send an email to 
>>>>> weewx-user+...@googlegroups.com.
>>>>
>>>>
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> -- 
>> 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/As-rZOD0_Lo/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> weewx-user+...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to