Still working on my http://wwwatts.net site and am looking at what it will take to properly handle a podcast or other feed with enclosure tags. With my existing site the podcast entries get aggregated into an aggregate feed and the enclosure tags are carried along such that the aggregate feed is also a podcast aggregating the individual podcasts. This is a good thing (I think).
In the Drupal case using FeedAPI it means for the FeedAPI processing to parse the enclosure tags, copy enclosure tags into fields in the created node, and put the same data out as enclosure tags in generated RSS feeds.
Both the Exhaustive and SimplePIE parsers do indeed recognize the enclosure tags and make them available in FeedAPI Mapper. However it doesn't appear FeedAPI Mapper will do the right thing because there isn't an appropriate container to put the enclosure data into. With the exhaustive parser each enclosure tag attribute shows up and you can e.g. map the content-type and URL into a textfield and link CCK field. But then those are two separate fields and generated RSS feeds will not have the enclosure tags in them.
I've implemented a FeedAPI processor whose purpose is to map enclosure tags into a reasonable container. But I'm having trouble with what's the correct container.
My first attempt was to use the RSS Remote Enclosure module (encl_remote) and try to set the encl_remote fields .. but the values didn't get saved into the database.
My next attempt I'm working on now is to make a proper CCK Enclosure module, and I'm halfway through the implementation. This module would act as a CCK module, provide the four fields that go into an Enclosure as CCK elements, and also generate enclosure tags out of the data. I think there must be a proper programmatic way to set values of CCK fields but the API documentation of CCK is abysmal.
Comments
"I've implemented a FeedAPI
"I've implemented a FeedAPI processor whose purpose is to map enclosure tags into a reasonable container."
http://www.twitter.com/lxbarth
I may do a feedapi mapper
I may do a feedapi mapper soon at the time I didn't grok the purpose of mappers as well. However there's an issue with mappers in that it appears they have to be installed inside the feedapi module. That would make it difficult for a 3rd party module to provide a feedapi mapper. The advantage of a FeedAPI processor is that any module can provide one. At the moment I'm still debugging my CCK Enclosure module ...