#!/usr/bin/env python """ A simple NMDC to ADC redirector service. """ import SocketServer # The target hub we want to redirect clients to redirect_uri = "adcs://adcs.uhub.org:1511" # A message to be sent to users while they are being redirected. message = "This hub has been permanently moved." # The chat name of the message. bot_name = "Redirector" # The local address and port to bind the redirector to. bind_addr = "0.0.0.0" bind_port = 1411 class NmdcRedirector(SocketServer.BaseRequestHandler): def setup(self): self.request.sendall("<%(botname)s> %(message)s|$ForceMove %(address)s|" % { "address": redirect_uri, "botname": bot_name, "message": message }) return False if __name__ == "__main__": server = SocketServer.TCPServer((bind_addr, bind_port), NmdcRedirector) server.allow_reuse_address = True server.serve_forever()