/* * This file must be valid JSON. But comments are allowed * * Please edit settings.json, not settings.json.template * * Please note that since Etherpad 1.6.0 you can store DB credentials in a * separate file (credentials.json). */ { /* * Name your instance! */ "title": "Video Chat", /* * favicon default name * alternatively, set up a fully specified Url to your own favicon */ "favicon": "favicon.ico", /* * IP and port which etherpad should bind at */ "ip": "0.0.0.0", "port" : 9001, /* * Option to hide/show the settings.json in admin page. * * Default option is set to true */ "showSettingsInAdminPage" : true, /* * Node native SSL support * * This is disabled by default. * Make sure to have the minimum and correct file access permissions set so * that the Etherpad server can access them */ /* "ssl" : { "key" : "/path-to-your/epl-server.key", "cert" : "/path-to-your/epl-server.crt", "ca": ["/path-to-your/epl-intermediate-cert1.crt", "/path-to-your/epl-intermediate-cert2.crt"] }, */ /* * The type of the database. * * You can choose between many DB drivers, for example: dirty, postgres, * sqlite, mysql. * * You shouldn't use "dirty" for for anything else than testing or * development. * * For a complete list of the supported drivers, please consult: * https://www.npmjs.com/package/ueberdb2 */ "dbType" : "dirty", /* * Database specific settings (dependent on dbType). * * Remember that since Etherpad 1.6.0 you can also store these informations in * credentials.json. */ "dbSettings" : { "filename" : "var/dirty.db" }, /* * An Example of MySQL Configuration (commented out). * * See: https://github.com/ether/etherpad-lite/wiki/How-to-use-Etherpad-Lite-with-MySQL */ /* "dbType" : "mysql", "dbSettings" : { "user" : "etherpaduser", "host" : "localhost", "port" : 3306, "password": "PASSWORD", "database": "etherpad_lite_db", "charset" : "utf8mb4" }, */ /* * The default text of a pad */ "defaultPadText" : "Welcome to Web Chat!\n\n", /* * Default Pad behavior. * * Change them if you want to override. */ "padOptions": { "noColors": false, "showControls": true, "showChat": true, "showLineNumbers": true, "useMonospaceFont": false, "userName": false, "userColor": false, "rtl": false, "alwaysShowChat": false, "chatAndUsers": false, "lang": "en-gb" }, /* * Pad Shortcut Keys */ "padShortcutEnabled" : { "altF9" : true, /* focus on the File Menu and/or editbar */ "altC" : true, /* focus on the Chat window */ "cmdShift2" : true, /* shows a gritter popup showing a line author */ "delete" : true, "return" : true, "esc" : true, /* in mozilla versions 14-19 avoid reconnecting pad */ "cmdS" : true, /* save a revision */ "tab" : true, /* indent */ "cmdZ" : true, /* undo/redo */ "cmdY" : true, /* redo */ "cmdI" : true, /* italic */ "cmdB" : true, /* bold */ "cmdU" : true, /* underline */ "cmd5" : true, /* strike through */ "cmdShiftL" : true, /* unordered list */ "cmdShiftN" : true, /* ordered list */ "cmdShift1" : true, /* ordered list */ "cmdShiftC" : true, /* clear authorship */ "cmdH" : true, /* backspace */ "ctrlHome" : true, /* scroll to top of pad */ "pageUp" : true, "pageDown" : true }, /* * Should we suppress errors from being visible in the default Pad Text? */ "suppressErrorsInPadText" : true, /* * If this option is enabled, a user must have a session to access pads. * This effectively allows only group pads to be accessed. */ "requireSession" : false, /* * Users may edit pads but not create new ones. * * Pad creation is only via the API. * This applies both to group pads and regular pads. */ "editOnly" : false, /* * If set to true, those users who have a valid session will automatically be * granted access to password protected pads. */ "sessionNoPassword" : false, /* * If true, all css & js will be minified before sending to the client. * * This will improve the loading performance massively, but makes it difficult * to debug the javascript/css */ "minify" : true, /* * How long may clients use served javascript code (in seconds)? * * Not setting this may cause problems during deployment. * Set to 0 to disable caching. */ "maxAge" : 21600, // 60 * 60 * 6 = 6 hours /* * Absolute path to the Abiword executable. * * Abiword is needed to get advanced import/export features of pads. Setting * it to null disables Abiword and will only allow plain text and HTML * import/exports. */ "abiword" : null, /* * This is the absolute path to the soffice executable. * * LibreOffice can be used in lieu of Abiword to export pads. * Setting it to null disables LibreOffice exporting. */ "soffice" : null, /* * Path to the Tidy executable. * * Tidy is used to improve the quality of exported pads. * Setting it to null disables Tidy. */ "tidyHtml" : null, /* * Allow import of file types other than the supported ones: * txt, doc, docx, rtf, odt, html & htm */ "allowUnknownFileEnds" : true, /* * This setting is used if you require authentication of all users. * * Note: "/admin" always requires authentication. */ "requireAuthentication" : false, /* * Require authorization by a module, or a user with is_admin set, see below. */ "requireAuthorization" : false, /* * When you use NGINX or another proxy/load-balancer set this to true. */ "trustProxy" : false, /* * Privacy: disable IP logging */ "disableIPlogging" : false, /* * Time (in seconds) to automatically reconnect pad when a "Force reconnect" * message is shown to user. * * Set to 0 to disable automatic reconnection. */ "automaticReconnectionTimeout" : 0, /* * By default, when caret is moved out of viewport, it scrolls the minimum * height needed to make this line visible. */ "scrollWhenFocusLineIsOutOfViewport": { /* * Percentage of viewport height to be additionally scrolled. * * E.g.: use "percentage.editionAboveViewport": 0.5, to place caret line in * the middle of viewport, when user edits a line above of the * viewport * * Set to 0 to disable extra scrolling */ "percentage": { "editionAboveViewport": 0, "editionBelowViewport": 0 }, /* * Time (in milliseconds) used to animate the scroll transition. * Set to 0 to disable animation */ "duration": 0, /* * Flag to control if it should scroll when user places the caret in the * last line of the viewport */ "scrollWhenCaretIsInTheLastLineOfViewport": false, /* * Percentage of viewport height to be additionally scrolled when user * presses arrow up in the line of the top of the viewport. * * Set to 0 to let the scroll to be handled as default by Etherpad */ "percentageToScrollWhenUserPressesArrowUp": 0 }, /* * Users for basic authentication. * * is_admin = true gives access to /admin. * If you do not uncomment this, /admin will not be available! * * WARNING: passwords should not be stored in plaintext in this file. * If you want to mitigate this, please install ep_hash_auth and * follow the section "secure your installation" in README.md */ /* "users": { "admin": { // "password" can be replaced with "hash" if you install ep_hash_auth "password": "changeme1", "is_admin": true }, "user": { // "password" can be replaced with "hash" if you install ep_hash_auth "password": "changeme1", "is_admin": false } }, */ /* * Restrict socket.io transport methods */ "socketTransportProtocols" : ["xhr-polling", "jsonp-polling", "htmlfile"], /* * Allow Load Testing tools to hit the Etherpad Instance. * * WARNING: this will disable security on the instance. */ "loadTest": false, /* * Disable indentation on new line when previous line ends with some special * chars (':', '[', '(', '{') */ /* "indentationOnNewLine": false, */ /* * Toolbar buttons configuration. * * Uncomment to customize. */ /* "toolbar": { "left": [ ["bold", "italic", "underline", "strikethrough"], ["orderedlist", "unorderedlist", "indent", "outdent"], ["undo", "redo"], ["clearauthorship"] ], "right": [ ["importexport", "timeslider", "savedrevision"], ["settings", "embed"], ["showusers"] ], "timeslider": [ ["timeslider_export", "timeslider_returnToPad"] ] }, */ /* * The log level we are using. * * Valid values: DEBUG, INFO, WARN, ERROR */ "loglevel": "INFO", /* * Logging configuration. See log4js documentation for further information: * https://github.com/nomiddlename/log4js-node * * You can add as many appenders as you want here. */ "logconfig" : { "appenders": [ { "type": "console" //, "category": "access"// only logs pad access } /* , { "type": "file" , "filename": "your-log-file-here.log" , "maxLogSize": 1024 , "backups": 3 // how many log files there're gonna be at max //, "category": "test" // only log a specific category } */ /* , { "type": "logLevelFilter" , "level": "warn" // filters out all log messages that have a lower level than "error" , "appender": { Use whatever appender you want here } } */ /* , { "type": "logLevelFilter" , "level": "error" // filters out all log messages that have a lower level than "error" , "appender": { "type": "smtp" , "subject": "An error occurred in your EPL instance!" , "recipients": "bar@blurdybloop.com, baz@blurdybloop.com" , "sendInterval": 300 // 60 * 5 = 5 minutes -- will buffer log messages; set to 0 to send a mail for every message , "transport": "SMTP", "SMTP": { // see https://github.com/andris9/Nodemailer#possible-transport-methods "host": "smtp.example.com", "port": 465, "secureConnection": true, "auth": { "user": "foo@example.com", "pass": "bar_foo" } } } } */ ] } // logconfig }