Hi Everyone,
I published a RETS/IDX MLS feed module to Drupal last night, you can get it here: http://drupal.org/project/mls
Be forewarned - this is in ALPHA, meaning I wouldn't recommend it for production systems. I have been testing it for my own purposes, and am still not 100% convinced to make it live for my client - but it's very close. The module is admittedly clunky, but I needed to hack something together fairly quickly and this is what I've come up with ;)
Here's what it does:
* Integrates with the latest version of VieleRETS (1.1.6) to fetch RETS-based MLS feeds and turn individual listings and images into CCK nodes in your Drupal system
* Provides an API for IDX-based feeds with all (I think) of the functions you might need to turn IDX listings into CCK nodes, although you would have to write scripts to interact with your IDX system yourself (since there's not much of an IDX standard and every feed has to rely on one-off scripts, this seemed the best approach)
* Provides a search mechanism to search through available listings
* Includes a cron function to update individual feeds. Note that this cron function is independent of Drupal's cron mechanism (I had to do it this way to avoid weird memory issues I was encountering with Drupal's cron() function). In order to make use of this, you will need to create an additional script mimicking cron.php that calls the module's cron function rather than Drupal's cron call.
Here's what it doesn't do:
* Fully integrate with VieleRETS. You need to use VieleRETS to create your source, target and extract (for listings, map to cotnent_table_mls_listing, for images content_type_mls_image). You also will need to run your extract once through VieleRETS, telling it to download only one listing. Once it's done that, you will have a BCF created. Then, you will need to manually alter the BCF (in viele/batch_control_files/extract_name) to fetch the number of listings you actually want (0 means all of them). It would be great if anyone was interested in making this EASIER and fully integrated with VieleRETS (or found an easier way to tap into RETS servers w/o using VieleRETS that could be native to this module)
* Come with any guarantees
I could use a lot of help testing this, and if anyone knows PHP/MySQL/has experience working with Drupal modules, please help make this better and get it to a point of stability!
Let me know if you're interested at all in testing/coding.
Thanks,
Arthur
Colingo Labs, LLC.

Comments
+1 RETS/IDX MLS module
+1 RETS/IDX MLS feed module
It's a bit buggy so far
Downloaded and tested it, there seems to be issues with the creations of tables and cannot get the search function to work.
www.newmediadenver.com
Yeah - I know there are many
Yeah - I know there are many issues with the module. I have it working for my purposes, but need help finding issues other people are coming across. Can you please document the bugs/issues you find here: http://drupal.org/node/add/project_issue/mls/bug
The more specific you are the better. Thanks!
Great news.....
I will test this on the test server for ppcre.com. All of our users have an MLSNI id field, hopefully that can be utilized somehow? For agent listing pages? Let me know how I can help, and I'll be sure to report bugs!
Also, not sure how development is going on it now, but any thoughts about merging this project with : http://drupal.org/node/160059 ?? I haven't had a chance to test either, but it seems that your MLS module may be streamlining the Real estate module's node creation?
Steve Krzysiak
Prudential SourceOne Realty - Chicago
Hi Steve, The thought to
Hi Steve,
The thought to merge this project with the home module did cross my mind when I started developing this. But since I was on a time line, and already integrating a third party application (VieleRETS) with Drupal, I wanted to keep (this incredibly complicated task) as simple as possible. For now. In the future I would love it if the projects were integrated. Feel free to give it a shot ;)
Let me know how your testing goes!!! I'm curious to see how this works for other folks. I have to warn you it is particularly finicky. It currently works for my purposes, but due to the curious nature of MLS feeds, it may take some massaging to work well for others.
New to RETS & the MLS Module
and I'm planning to query my MLS for the latest listings roughly twice a day(i'm working under the assumption that 2x/day is a good schedule to keep):
What happens to my previously imported listings? Do I tell Drupal to drop my existing data table whenever I import the latest data in? is there any reason to keep the data pertaining to the older listings in mySQL?
What's is the best way to handle pictures? download the url instead?
Has anyone had experience with VieleRETS with GoDaddy hosting? Do they play nice together?
(Please understand that I'm a real estate broker first and a Drupal programmer second.)
Any insight would be greatly appreciated.
Hi paradiddle, You'll want
Hi paradiddle,
You'll want to check with the company providing you with listings that you can grab listings twice a day - I know some services have limits on how often/when you can grab listings. Also, keep in mind that VieleRETS and this module seem to be incredibly resource intensive when fetching listings - especially when fetching lots and lots of listings at once. This is something I intend to work towards improving in the future, but $$ for developing this has currently dried up and I'm out of free time. Your q's are answered below:
What happens to my previously imported listings? Do I tell Drupal to drop my existing data table whenever I import the latest data in? is there any reason to keep the data pertaining to the older listings in mySQL?
This depends on how you have VieleRETS set up. If I remember correctly, the module will skip handling any listing that's already in the database. This aspect of the module is a bit problematic and needs further work - I built it to meet my needs, which probably do not reflect everyone else's needs. Off the top of my head I can't remember exactly how it works (I haven't looked at this in a month or two) - but if you check out the code or test it, it should become obvious.
What's is the best way to handle pictures? download the url instead?
The best way to handle pictures is to download the pictures themselves. URLs cannot be trusted, and the module turns pictures into individual nodes (for better or for worse) so it expects to find actual image files on your server.
Has anyone had experience with VieleRETS with GoDaddy hosting? Do they play nice together?
I've had no experience, but I can assure you that if you're fetching lots of listings, any kind of shared hosting might not be robust enough to provide the processing resources that VieleRETS/this module will need to perform quickly and efficiently.