{"action":"reopened","issue":{"url":"https://api.github.com/repos/ellxc/piperbot/issues/23","labels_url":"https://api.github.com/repos/ellxc/piperbot/issues/23/labels{/name}","comments_url":"https://api.github.com/repos/ellxc/piperbot/issues/23/comments","events_url":"https://api.github.com/repos/ellxc/piperbot/issues/23/events","html_url":"https://github.com/ellxc/piperbot/issues/23","id":57817116,"number":23,"title":"Add Module specific configuration and more error checking into config file","user":{"login":"graymalkin","id":3636294,"avatar_url":"https://avatars.githubusercontent.com/u/3636294?v=3","gravatar_id":"","url":"https://api.github.com/users/graymalkin","html_url":"https://github.com/graymalkin","followers_url":"https://api.github.com/users/graymalkin/followers","following_url":"https://api.github.com/users/graymalkin/following{/other_user}","gists_url":"https://api.github.com/users/graymalkin/gists{/gist_id}","starred_url":"https://api.github.com/users/graymalkin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/graymalkin/subscriptions","organizations_url":"https://api.github.com/users/graymalkin/orgs","repos_url":"https://api.github.com/users/graymalkin/repos","events_url":"https://api.github.com/users/graymalkin/events{/privacy}","received_events_url":"https://api.github.com/users/graymalkin/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ellxc/piperbot/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-02-16T15:27:13Z","updated_at":"2015-04-13T14:01:55Z","closed_at":null,"body":"#2 being fixed now means we can specify servers, and logins in a non-code file, which is nice. However it's a little fragile and doesn't have all the defaults it should.\r\n\r\nIt would also be nice if you could pass through configs to various plugins. E.g. mongo db settings to `markov`, again with sensible defaults.\r\n\r\nSimilarly it should be extensible. Potentially with a global list of API keys, accessible by other plugins to safely grab a key without needing to in-line it in code, or have a custom solution.\r\n\r\nThis could also be per-server, where instead of a list of auto-load plugin names, there's a list of plugin configs.\r\n\r\n```javascript\r\n{\r\n    /* other config lines ... */\r\n    \"Plugins\": [\r\n        {\r\n            \"Name\" : \"markov\",\r\n            \"DBName\" : \"markov\"\r\n        },\r\n        {\r\n            \"Name\" : \"seval\",\r\n            \"timeout\" : 3\r\n        }\r\n    ]\r\n}\r\n```"}}