.. You may want to use the usual include line. Uncomment and adjust the path. .. include:: ../Includes.txt .. role:: underline ==================== EXT: RSS Reagregator ==================== :Author: Kasper Skårhøj :Created: 2002-11-01T00:32:00 :Changed by: Nicolas Garabedian :Changed: 2006-03-27T18:01:29 :Classification: RSS Réagrégator extension documentation :Description: Initial version extension 0.1 Revision Date : March 2006 longue vie à T3! Merci Kasper & Co --Onext--Oxcs :Keywords: RSS Fil reagregator XML channel bouquet package :Author: Onext / Nicolas Garabédian :Email: ngarabedian@onext.fr :Info 3: :Info 4: .. _EXT-RSS-Reagregator: EXT: RSS Reagregator ==================== Extension Key: **oxcs\_rssreagregator** Copyright 2000-2002, Onext / Nicolas Garabédian, This document is published under the Open Content License available from http://www.opencontent.org/opl.shtml The content of this document is related to TYPO3 \- a GNU/GPL CMS/Framework available from www.typo3.com .. _Table-of-Contents: Table of Contents ----------------- **EXT: RSS Reagregator 1** **Introduction 2** What does it do? 2 Screenshots 2 **Users manual 3** Channel : Post a wire of information 4 Package(Bouquet) : Display a RSS group 7 To post all wire 7 Select wire one by one 7 **Administration 8** Ups-TO-DATE 19 **Configuration 21** **Tutorial 24** **Known problems 24** **To-Do list 24** **Changelog 24** This document is related to version 0.1 of the extension T3 engine : v4 beta 2 Revision date: 27/03/06 *Documentation en français (une extension "doc" sera publiée)* . .. _Introduction: Introduction ------------ .. _What-does-it-do: What does it do? ^^^^^^^^^^^^^^^^ - - This extension allows you to centralize and publish news in the form of wire RSS resulting from several sources. - Reagregator RSS imports wire RSS, then allows to gather (reagregation) by the association of categories and keywords (semantic enrichment). This version currently manages the RSS in version 2.0 and 1.0 (for more details to see To-DO) .. _Screenshots: Screenshots ^^^^^^^^^^^ .. _FE-screenshot: FE screenshot """"""""""""" The result returned on the Front End (by default) looks like a traditional wire RSS |img-1| .. _Users-manual: Users manual ------------ |img-2| To edit content, insert a Plugin content type, as usually : |img-3| choose in the plugin category the element "RSS field View" a form to be filled opens : |img-4| .. _Channel-Post-a-wire-of-information: Channel : Post a wire of information ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Select a channel (a wire RSS) by the browser for records |img-5| the browser for records opens in a popup; |img-6| Select then the Sysfolder (see the administration part: prerequisite) in which wire RSS will be already indicated in the form of recordings with the icon . |img-7| Choose one, then you see : |img-8| Then, indicate the display mode; For example "LIST" mode. |img-9| |img-10| Save; the point of exclamation disappears you then carried out the basic configuration; **Other parameters:** **Template Tab:** You can define your HTML with the markers according to your needs. The «alternative write if no date» is the posted mention when wire RSS doesn't have an associated category [1] |img-11| |img-12| **Advanced Options Tab:** Principle of the reagragation: You associate this wire RSS with some parameters. |img-13| So, you can limit the items which will be displayed. .. _Package-Bouquet-Display-a-RSS-group: Package(Bouquet) : Display a RSS group ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |img-14| The operation is appreciably the same one as the next one except that here the type of source is "bouquet"(package); select this type in the listbox; it will be noticed that the elements posted in the sysfolder are preceded by the icon. |img-15| .. _To-post-all-wire: To post all wire ^^^^^^^^^^^^^^^^ |img-16| .. _Select-wire-one-by-one: Select wire one by one ^^^^^^^^^^^^^^^^^^^^^^ |img-17| |img-18| |img-19| .. _Administration: Administration -------------- 1- Plugin Installation \*\*see configuration 2- Creating a sysFolder |img-20| 3- Creating a channel (importation of a wire RSS/Channel) |img-21| |img-22| The form is posted as a new item : an importation RSS: |img-23| 1- Go on the web site which interests you 2- Seek a wire and choose the URL corresponding |img-24| Only paste the url, example : `http://epp.eurostat.cec.eu.int/cache/RSS/rss\_estat\_news.xml `_ Alternative: click on the link which opens pop-up Save and Close : the update of Xml flow will be posterior because asynchronous (to see further for synchronization) |img-25| 4- Creating a Category of Reaggregation |img-26| Then specify the name of the categories as well as principal information e-mail; etc. |img-27| As well as wire corresponding to this category. 4bis association of wire to a Category |img-28| 5- Reaggregation by item Method 1 - by the items of sysfolder (possible but we recommend to pass by the 2nd méthode=by the module \*) The first part is the recovery (reading) of item, the second is categorization (left underligned on the screen printing) |img-29| { Method 2 - since the module \*\* see below } MODULE |img-30| Item details: |img-31| |img-32| When you click on "link feed" you accede with the article on the site of origin To specify the categorization of one item it is then necessary to click on "Reaggred": |img-33| Reading of item with categorization (multi-selection) |img-34| Then select (multiple) keyword |img-35| The most important is to select «reaggregator chanel» |img-36| after the selection, click on "Send" |img-37| Come back to the list view. You can now select the "View by chanel of reaggregation" |img-38| Observe whereas wire that you categorized finds well in the desired channel .. _Ups-TO-DATE: Ups-TO-DATE ^^^^^^^^^^^ The 3rd menu allows to carry out the maintenance actions manually: |img-39| :underline:`**Note that these operations are irreversibles**` UPDATE : import the contents of recorded wire RSS DELETE : remove all flows (supression of the contents) CLEAN : remove flows former to a number of day [ according to the parameter: see Instalation \*\*] REAGBYCHANNEL : Make the rules define for the classification by category REAGBYWORD : make the rules define for the classification by keys word :underline:`**Operations of automatic updates:**` - Windows by the .bat\*\*TO-DO - Unix by the CRON .. _initial-Step: initial Step: """"""""""""" 1- creation of a user BE: one simulates a user to carry out these operations |img-40| |img-41| 2 - **"parameterize" the rights of the sysfolder** to allow this user to reach this file, either directly or by including the user in the global group |img-42| |img-43| .. _Edit-files: Edit files """""""""" Then in the directory where is your extension (in general in [ - - - - ] **/typo3conf/ext/** ) select the directory extension : " **oxcs\_rssreagregator** " then open " ***cronmod/*** " - |img-44| global\_conf.php global configuration file - **import.sh file of configuration showing the path and the file to execute** - log\_rssimport.txt log file - rssgrab\_sh.php file of execution publish import.sh: 1. then configure the relative path of the extension + the directory cronmod for variable SH\_DIR 2. 2. the file by default or the desired file name (to be modified if you have particular tasks or config) #!/bin/shSH\_DIR=/var/www/typo3conf/ext/oxcs\_rssreagregator/cronmod $SH\_DIR/rssgrab\_sh.php ***Cron is a Unix order which launches a task recursively.*** Launch job CRON in line of order: crontab -e 0 8,16,23 \* \* \* /var/www/typo3conf/ext/oxcs\_rssreagrega tor/cronmod/import.sh>>/var/www/typo3conf/ext/oxcs\_rssreagregator/cro nmod/log\_rssimport.txt .. ### BEGIN~OF~TABLE ### .. _crontab: **crontab** ~~~~~~~~~~~ .. container:: table-row Command / argument **crontab** explanation task name .. _e: -e ~~ .. container:: table-row Command / argument -e explanation option edition .. _0-zero: 0 (zero) ~~~~~~~~ .. container:: table-row Command / argument 0 (zero) explanation minutes [according to specified hours below here 8:00 16:00 etc. ] .. _8-16-23: 8,16,23 ~~~~~~~ .. container:: table-row Command / argument 8,16,23 explanation hours to which the task is launched .. _: \* \* \* ~~~~~~~~ .. container:: table-row Command / argument \* \* \* explanation successively day/month/year here the job is carried out all the time .. _import-sh: ..../import.sh ~~~~~~~~~~~~~~ .. container:: table-row Command / argument ..../import.sh explanation file containing the parameters in **absolute path.** .. _: >> ~~ .. container:: table-row Command / argument >> explanation redirect flow text generated towards a file (here log\_rssimport.txt) .. _log-rssimport-txt: .../log\_rssimport.txt ~~~~~~~~~~~~~~~~~~~~~~ .. container:: table-row Command / argument .../log\_rssimport.txt explanation file in which information relating to the operations is stored either the log .. ###### END~OF~TABLE ###### .. _Configuration: Configuration ------------- .. _generated: ((generated)) ^^^^^^^^^^^^^ .. _Installation: Installation """""""""""" |img-45| Dependances : cms, :underline:`**api\_macmade**` **,** :underline:`**oxcs\_apilistcard**` **,** :underline:`**oxcs\_fieldcontrol**` |img-46| .. _Reference: Reference """"""""" .. ### BEGIN~OF~TABLE ### .. _source: source ~~~~~~ .. container:: table-row Property source Data type Text, StdWrap Description type=options[tx\_oxcsrssreagregator\_channelsrss,tx\_oxcsrssreagregato r\_reagchannel,ALL,ITEMS] Default ALL .. _uid-list: uid\_list ~~~~~~~~~ .. container:: table-row Property uid\_list Data type List id Description Where the content come from if type "ITEMS": list of uid of RSS items or Channel or reag channe. This list change with source. Default .. _templateFile: templateFile ~~~~~~~~~~~~ .. container:: table-row Property templateFile Data type file Description type=file[html,htm,tmpl] Default EXT:oxcs\_rssreagregator/pi1/static/rss\_template.tmpl .. _linkFeed: linkFeed ~~~~~~~~ .. container:: table-row Property linkFeed Data type Text, sdtWrap Description Alternative text for link to RSS Feed Default Link Feed .. _controlThemes: controlThemes ~~~~~~~~~~~~~ .. container:: table-row Property controlThemes Data type List id Description List items of categorisation Default .. _controlPublics: controlPublics ~~~~~~~~~~~~~~ .. container:: table-row Property controlPublics Data type List id Description List items of categorisation Default .. _controlAuthors: controlAuthors ~~~~~~~~~~~~~~ .. container:: table-row Property controlAuthors Data type List id Description List items of categorisation Default .. _controlCountrys: controlCountrys ~~~~~~~~~~~~~~~ .. container:: table-row Property controlCountrys Data type List id Description List items of categorisation Default .. _controlRegions: controlRegions ~~~~~~~~~~~~~~ .. container:: table-row Property controlRegions Data type List id Description List items of categorisation Default .. _controlDepartement: controlDepartement ~~~~~~~~~~~~~~~~~~ .. container:: table-row Property controlDepartement Data type List id Description List items of categorisation Default .. _limit: limit ~~~~~ .. container:: table-row Property limit Data type Int() Description Limit records view Default 10 .. _CMD: CMD ~~~ .. container:: table-row Property CMD Data type String, stdWrap Description Comman LIST, SEARCH, SEARCHRESULT Default LIST .. _noData: noData ~~~~~~ .. container:: table-row Property noData Data type String, stdWrap Description Default Pas de données .. ###### END~OF~TABLE ###### [plugin.tx\_oxcsrssreagregator\_pi1] - " |img-47| .. _Tutorial: Tutorial -------- See above (!) .. _Known-problems: Known problems -------------- problem for the reading of some RSS to format 1.0 **RSS 0.91 not compatible** We appreciate all objective remarks which would make it possible to improve this extension ( `ngarabedian@onext.fr `_ ) As indicated in the To-DO list the translation of this document could be approximate on certain parts, (apologies); If you have courage of it, send us corrections which we will publish in the version following, thank you. If you want, you can use "evolution tracking" directly in OOo (you know... Menu: Edit>Modifications>...) .. _To-Do-list: To-Do list ---------- - .bat file for windows - checking English translation (language by default not always correct) - Multi PID management, importation in a single pid and reading of the channels and channels of reagregation (bouquet) on the whole of the site. - Test for RSS version to day no test Rss version - Test of url channel disponibility (if channel isn't dispo the program returns error on log files) - :underline:`**API oxcs\_rsslib part documentation (in progress).**` .. _Changelog: Changelog --------- Initial version. 0.1 |img-48| EXT: RSS Reagregator - 24/24 .. ######CUTTER_MARK_IMAGES###### .. |img-1| image:: img-1.png .. :align: left .. :border: 0 .. :height: 544 .. :id: Image1 .. :name: Image1 .. :width: 471 .. |img-2| image:: img-2.png .. :align: left .. :border: 0 .. :height: 84 .. :id: Image2 .. :name: Image2 .. :width: 451 .. |img-3| image:: img-3.png .. :align: left .. :border: 0 .. :height: 375 .. :id: Image3 .. :name: Image3 .. :width: 389 .. |img-4| image:: img-4.png .. :align: left .. :border: 0 .. :height: 334 .. :id: Image51 .. :name: Image51 .. :width: 469 .. |img-5| image:: img-5.png .. :align: left .. :border: 0 .. :height: 172 .. :id: Image4 .. :name: Image4 .. :width: 392 .. |img-6| image:: img-6.png .. :align: left .. :border: 0 .. :height: 17 .. :id: Image42 .. :name: Image42 .. :width: 23 .. |img-7| image:: img-7.png .. :align: left .. :border: 0 .. :height: 371 .. :id: Image36 .. :name: Image36 .. :width: 527 .. |img-8| image:: img-8.png .. :align: left .. :border: 0 .. :height: 152 .. :id: Image7 .. :name: Image7 .. :width: 287 .. |img-9| image:: img-9.png .. :align: left .. :border: 0 .. :height: 232 .. :id: Image39 .. :name: Image39 .. :width: 142 .. |img-10| image:: img-10.png .. :align: left .. :border: 0 .. :height: 156 .. :id: Image37 .. :name: Image37 .. :width: 400 .. |img-11| image:: img-11.png .. :align: left .. :border: 0 .. :height: 211 .. :id: Image48 .. :name: Image48 .. :width: 568 .. |img-12| image:: img-12.png .. :align: left .. :border: 0 .. :height: 76 .. :id: Image38 .. :name: Image38 .. :width: 287 .. |img-13| image:: img-13.png .. :align: left .. :border: 0 .. :height: 369 .. :id: Image49 .. :name: Image49 .. :width: 494 .. |img-14| image:: img-14.png .. :align: left .. :border: 0 .. :height: 17 .. :id: Image41 .. :name: Image41 .. :width: 22 .. |img-15| image:: img-15.png .. :align: left .. :border: 0 .. :height: 357 .. :id: Image40 .. :name: Image40 .. :width: 551 .. |img-16| image:: img-16.png .. :align: left .. :border: 0 .. :height: 61 .. :id: Image43 .. :name: Image43 .. :width: 342 .. |img-17| image:: img-17.png .. :align: left .. :border: 0 .. :height: 143 .. :id: Image44 .. :name: Image44 .. :width: 352 .. |img-18| image:: img-18.png .. :align: left .. :border: 0 .. :height: 158 .. :id: Image45 .. :name: Image45 .. :width: 139 .. |img-19| image:: img-19.png .. :align: left .. :border: 0 .. :height: 46 .. :id: Image46 .. :name: Image46 .. :width: 200 .. |img-20| image:: img-20.png .. :align: left .. :border: 0 .. :height: 503 .. :id: Image23 .. :name: Image23 .. :width: 520 .. |img-21| image:: img-21.png .. :align: left .. :border: 0 .. :height: 62 .. :id: Image11 .. :name: Image11 .. :width: 403 .. |img-22| image:: img-22.png .. :align: left .. :border: 0 .. :height: 210 .. :id: Image12 .. :name: Image12 .. :width: 300 .. |img-23| image:: img-23.png .. :align: left .. :border: 0 .. :height: 448 .. :id: Image14 .. :name: Image14 .. :width: 391 .. |img-24| image:: img-24.png .. :align: left .. :border: 0 .. :height: 323 .. :id: Image13 .. :name: Image13 .. :width: 493 .. |img-25| image:: img-25.png .. :align: left .. :border: 0 .. :height: 318 .. :id: Image16 .. :name: Image16 .. :width: 412 .. |img-26| image:: img-26.png .. :align: left .. :border: 0 .. :height: 163 .. :id: Image15 .. :name: Image15 .. :width: 210 .. |img-27| image:: img-27.png .. :align: left .. :border: 0 .. :height: 861 .. :id: Image17 .. :name: Image17 .. :width: 414 .. |img-28| image:: img-28.png .. :align: left .. :border: 0 .. :height: 245 .. :id: Image18 .. :name: Image18 .. :width: 279 .. |img-29| image:: img-29.png .. :align: left .. :border: 0 .. :height: 858 .. :id: Image19 .. :name: Image19 .. :width: 315 .. |img-30| image:: img-30.png .. :align: left .. :border: 0 .. :height: 494 .. :id: Image20 .. :name: Image20 .. :width: 669 .. |img-31| image:: img-31.png .. :align: left .. :border: 0 .. :height: 313 .. :id: Image21 .. :name: Image21 .. :width: 544 .. |img-32| image:: img-32.png .. :align: left .. :border: 0 .. :height: 482 .. :id: Image10 .. :name: Image10 .. :width: 568 .. |img-33| image:: img-33.png .. :align: left .. :border: 0 .. :height: 229 .. :id: Image22 .. :name: Image22 .. :width: 537 .. |img-34| image:: img-34.png .. :align: left .. :border: 0 .. :height: 749 .. :id: Image24 .. :name: Image24 .. :width: 384 .. |img-35| image:: img-35.png .. :align: left .. :border: 0 .. :height: 146 .. :id: Image26 .. :name: Image26 .. :width: 153 .. |img-36| image:: img-36.png .. :align: left .. :border: 0 .. :height: 158 .. :id: Image29 .. :name: Image29 .. :width: 172 .. |img-37| image:: img-37.png .. :align: left .. :border: 0 .. :height: 49 .. :id: Image27 .. :name: Image27 .. :width: 70 .. |img-38| image:: img-38.png .. :align: left .. :border: 0 .. :height: 493 .. :id: Image25 .. :name: Image25 .. :width: 412 .. |img-39| image:: img-39.png .. :align: left .. :border: 0 .. :height: 249 .. :id: Image28 .. :name: Image28 .. :width: 421 .. |img-40| image:: img-40.png .. :align: left .. :border: 0 .. :height: 18 .. :id: Image8 .. :name: Image8 .. :width: 383 .. |img-41| image:: img-41.png .. :align: left .. :border: 0 .. :height: 18 .. :id: Image9 .. :name: Image9 .. :width: 388 .. |img-42| image:: img-42.png .. :align: left .. :border: 0 .. :height: 244 .. :id: Image33 .. :name: Image33 .. :width: 596 .. |img-43| image:: img-43.png .. :align: left .. :border: 0 .. :height: 338 .. :id: Image34 .. :name: Image34 .. :width: 217 .. |img-44| image:: img-44.png .. :align: left .. :border: 0 .. :height: 75 .. :id: Image35 .. :name: Image35 .. :width: 288 .. |img-45| image:: img-45.png .. :align: left .. :border: 0 .. :height: 15 .. :id: Image6 .. :name: Image6 .. :width: 669 .. |img-46| image:: img-46.png .. :align: left .. :border: 0 .. :height: 508 .. :id: Image47 .. :name: Image47 .. :width: 499 .. |img-47| image:: img-47.png .. :align: left .. :border: 0 .. :height: 588 .. :id: Image5 .. :name: Image5 .. :width: 596 .. |img-48| image:: img-48.png .. :align: left .. :border: 0 .. :height: 32 .. :id: Graphic1 .. :name: Graphic1 .. :width: 102