Index: trac/cia.py
===================================================================
--- trac/cia.py	(revision 0)
+++ trac/cia.py	(revision 0)
@@ -0,0 +1,25 @@
+import xmlrpclib
+
+class CIA:
+    def __init__(self, project, server="http://cia.navi.cx", module="Issue tracker"):
+        self.project=project
+        self.module=module
+        self.server=xmlrpclib.ServerProxy(server)
+
+
+    def message(self, ticket, author, message):
+        ticket=" #%s" % ticket
+        generator="<generator><name>CIA Trac plugin</name><version>0.1</version></generator>"
+        source="<source><project>%s</project><module>%s</module></source>" % \
+                    (self.project, self.module)
+        body="<body><commit><revision>%s</revision><author>%s</author><log>%s</log></commit></body>" % \
+                    (ticket, author, message)
+
+        return "<message>"+generator+source+body+"</message>"
+
+
+    def __call__(self, ticket, author, message):
+        body=self.message(ticket, author, message)
+        self.server.hub.deliver(body)
+
+
Index: trac/Notify.py
===================================================================
--- trac/Notify.py	(revision 3290)
+++ trac/Notify.py	(working copy)
@@ -24,6 +24,7 @@
 import time
 import smtplib
 
+import cia
 
 class Notify:
     """Generic notification class for Trac. Subclass this to implement
@@ -84,9 +85,27 @@
             if email:
                 self.email_map[username] = email
 
+    def send_to_cia(self):
+        if not self.newticket:
+            return
+
+        project = self.config.get('notification', 'cia_project')
+        server = self.config.get('notification', 'cia_server')
+
+        if project is None or server is None:
+            return
+
+        c = cia.CIA(project=project, server=server)
+        c(self.ticket.id, self.hdf["ticket.reporter"],
+                "[%s] %s" % (self.hdf["ticket.component"], self.hdf["ticket.summary"]))
+
+
     def notify(self, resid, subject):
         self.subject = subject
 
+        if self.config.getbool("notification", "send_to_cia"):
+            self.send_to_cia()
+
         if not self.config.getbool('notification', 'smtp_enabled'):
             return
         self.smtp_server = self.config.get('notification', 'smtp_server')
