They're working on this over at
JspWiki:
And I've implemented this for TWiki over here:
I can upload some files and post more details here as things approach non-experimental status. Or, if anyone wants... I could do it sooner. Let me know if you're interested.
It seems wiki-general enough to possibly be of use for TWiki. Maybe in an alternative non-browser editor, maybe in a wiki-to-wiki converter/sync tool, maybe interfaced as a log channel. Quoting from that entry for context:
- getRecentChanges( Date timestamp ):
- Get list of changed pages since timestamp, which should be in UTC. The result is an array, where each element is a struct:
- name (string) : Name of the page. The name is UTF-8 with URL encoding to make it ASCII.
- lastModified (date) : Date of last modification, in UTC.
- author (string) : Name of the author (if available). Again, name is UTF-8 with URL encoding.
- version (int) : Current version.
- base64 getPage( String pagename ):
- Get the raw Wiki text of page, latest version. Page name must be UTF-8, with URL encoding. Returned value is a binary object, with UTF-8 encoded page data.
- base64 getPage( String pagename, int version ):
- Get the raw Wiki text of page. Returns UTF-8, expects UTF-8 with URL encoding.
- base64 getPageHTML( String pagename ):
- Return page in rendered HTML. Returns UTF-8, expects UTF-8 with URL encoding.
- base64 getPageHTML( String pagename, int version ):
- Return page in rendered HTML, UTF-8.
- array getAllPages():
- Returns a list of all pages. The result is an array of strings, again UTF-8 in URL encoding.
- struct getPageInfo( string pagename ) :
- returns a struct with elements
- name (string): the canonical page name, URL-encoded UTF-8.
- lastModified (date): Last modification date, UTC.
- version (int): current version
- author (string): author name, URL-encoded UTF-8.
- struct getPageInfo( string pagename, int version ) :
- returns a struct just like plain getPageInfo(), but this time for a specific version.
--
LesOrchard - 21 Feb 2002
Also take a look at
TWikiAsWebServicesServer and the
WebServicesAddOn - IMO
WebServices is the way to do this. Indeed, it could provide a framework for
TWikiArchitectureNG
--
MartinCleaver - 21 Feb 2002
This could also be useful for integrating web-based tools written in different languages, e.g. PHP and Perl, even if running on the same system.
WebLogs are a classic example, since almost all of them are written in PHP -
XmlRpc would allow TWiki to be included as a module in
PostNuke,
PhpNuke or whatever, simply by writing a stub module that could make the right
XmlRpc calls.
At the moment I'm looking at integration between TWiki and Newsportal (a PHP-based web UI for
NewsGroups) - it would actually be in the reverse direction, calling Newsportal to return information from the newsgroups into a TWiki page, but you can also imagine a TWiki-to-Newsgroups export whereby the Newsportal code calls into TWiki to get recent changes or perhaps a complete article.
Another interesting application is to allow low-end PDAs and Java-based mobile phones (there are 10 million already in use in Japan) to have a simple, specialised UI into TWiki without needing a full web browser - e.g. you could quickly search TWiki based on keyword, or use the
CommentPlugin to add notes to a page for a 'mobile blogging' application.
RSS (
RichSiteSummary) is a good way of presenting
WebChanges directly to the user or a
WebLog that aggregates RSS feeds;
XmlRpc or
SOAP seem like a good way of integrating server applications, or low-end client apps.
--
RichardDonkin - 22 Feb 2002
Related pages
Category:
TWikiPatches