We've now used CI to build some very sophisticated tools for our website, which give it some significant functionality.
Firstly, we used CI's ftp
class to simplify and automate file transfer operations. Initially, we've just used this class to check the files we expect to find on our site, to see that nothing unexpected has been added. This is a valuable check, as many of the problems websites throw at you involve unexpected alterations of files—usually by site admins and sometimes by hackers. This function will regularly check our remote websites and also offers the possibility of remote maintenance and updating the sites.
Then we looked at developing our own private web services using CI's XML-RPC
classes. These allow us to automatically call functions on a remote site, pass parameters if necessary, and have the results returned to us—the same as if we were logged on to the remote site, instead of our test site. We used this to have the remote site optimize a table in its database...