<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def init(plugin_manager, _, _2, conf):
 """ Allow to connect through a LDAP service Available configuration: :: plugins: - plugin_module": "inginious.frontend.plugins.auth.ldap_auth", host: "ldap.test.be", port: 0, encryption: "ssl", base_dn: "o=test,c=be", request: "(uid={})", name: "LDAP Login" *host* The host of the ldap server *encryption* Encryption method used to connect to the LDAP server Can be either "none", "ssl" or "tls" *request* Request made to the server in order to find the dn of the user. The characters "{}" will be replaced by the login name. """


    encryption = conf.get("encryption", "none")
    if encryption not in ["none", "ssl", "tls"]:
        raise Exception("Unknown encryption method {}".format(encryption))
    if encryption == "none":
        conf["encryption"] = None

    if conf.get("port", 0) == 0:
        conf["port"] = None

    the_method = LdapAuthMethod(conf.get("id"), conf.get('name', 'LDAP'), conf.get("imlink", ""), conf)
    plugin_manager.add_page(r'/auth/page/([^/]+)', LDAPAuthenticationPage)
    plugin_manager.register_auth_method(the_method)