web services
DESIGN AND IMPLEMENTATION



Click to see the XML version of this web page.

Click here to send an email to the editor of this weblog.

© copyright 2002
by Marc Barrot.


Thursday, March 14, 2002

Radio web services

s l a m is not supposed to be dedicated to the subject of blogging or even tinkering with Radio UserLand. Still, I suppose I'm just like most geeks discovering a new technology or tool, I jump into it and put the rest on the backburner, at least for a short while.

Before I turn s l a m back to its original intent, here is a quick rundown of what I learned on the subject of web services with Radio.

When it is running, Radio acts as an XML-RPC or SOAP server.

A web service for Radio is written in UserTalk, Frontier/Radio's scripting language.

The script's source text file, when dropped in the Web Services subfolder of Radio's application folder, is automatically compiled and stored into the Radio.root object database, in the user.betty.rpcHandlers.radio (XML-RPC) and user.soap.rpcHandlers.radio (SOAP) tables.

The agent responsible for the scanning and compilling is builtins.radio.thread.agents.watchMacros(). It is scheduled every 10 seconds or so. As of the current version, it can be spooked by the .DS_Store invisible file that may appear in the Web Services folder in MacOS X. Deleting .DS_Store keeps it happy. Invalid UserTalk scripts fail compiling and are not integrated.

When making modifications to a script that is already compiled in Radio.root, it is better to manually delete the existing version in user.betty.rpcHandlers.radio and user.soap.rpcHandlers.radio. If valid, the updated version is compiled within the next 10 seconds.

To call the web service from a Radio macro, use something like <%params = {parameters_list}; xml.rpc ("127.0.0.1", 5335, "radio.script_name", @params)%> or <%params = {parameters_list}; soap ("127.0.0.1", 5335, "radio.script_name", @params)%>.

It is of course possible to make calls from other systems, provided the system running Radio is accessible by TCP/IP.

My main sources of information were Dave's tutorial, Jon's subscriptions displayservice and the Radio-dev discussion group.

8:49:38 PM    []  Google It!  


March 2002
Sun Mon Tue Wed Thu Fri Sat
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
Feb   Apr

last updated: 3/15/02; 10:26:06.

currently subscribed to:

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Dave Winer: Radio UserLand RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. John Robb's Radio Weblog RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Jon's Radio RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Linux Journal RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Linux Today RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Mac Net Journal RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. O'Reilly Network Articles RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. O'Reilly Safari RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. radio-dev RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Radio.root Updates RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. TidBITS RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Version Tracker RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. weblog-devel RSS link

Radio UserLand users: click to subscribe. Other folks: use the RSS link to acquire this channel. Wired News RSS link

Here's how this works.