diff --git a/CHANGELOG.md b/CHANGELOG.md index 6809ff3..c7abb3f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ MumbleDJ Changelog ### July 10, 2016 -- `v3.1.0` * File path for user `p12` certificate can now be provided for authenticating as a registered user via the `--p12` commandline flag or the `connection.user_p12` configuration value. +* Added `!register` command for registering the bot on the server. ### July 1, 2016 -- `v3.0.11` * Potential fix for an issue with IP SANs on PEM certs. diff --git a/README.md b/README.md index c124758..a2e5499 100644 --- a/README.md +++ b/README.md @@ -252,6 +252,13 @@ Keep in mind that values that contain commas (such as `"SuperUser,Matt"`) will b * __Admin-only by default__: No * __Example__: `!pause` +### register +* __Description__: Registers the bot on the server. +* __Default Aliases__: register, reg +* __Arguments__: None +* __Admin-only by default__: Yes +* __Example__: `!register` + ### reload * __Description__: Reloads the configuration file. * __Default Aliases__: reload, r diff --git a/bindata.go b/bindata.go index 833b010..8958f2d 100644 --- a/bindata.go +++ b/bindata.go @@ -68,7 +68,7 @@ func (fi bindataFileInfo) Sys() interface{} { return nil } -var _configYaml = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xc4\x5a\x7b\x6f\x1b\xb7\xb2\xff\xdf\x9f\x82\x55\x6e\x70\x13\xc0\x55\xe2\xdc\xbe\x60\xe4\xa6\x48\x9d\x9c\x53\x1f\xc4\x4d\x91\xb8\x05\xfa\xd7\x82\xd2\x72\x25\xd6\xbb\xe4\x9e\xe5\xae\x64\xf5\xd3\x9f\x79\x90\xdc\xa7\x2c\xc9\x29\x70\x7c\x2f\x7a\x22\xee\x70\x66\x38\x2f\xfe\x66\x76\x9f\x88\x9b\xa6\x58\xe4\xea\xdd\xbf\xce\x9e\x88\x9f\x76\xe2\x46\xd6\xf5\x5a\xab\x46\xfc\xb3\xd2\x6a\xa5\x2a\x58\xbd\xb2\xe5\xae\xd2\xab\x75\x2d\x9e\x2d\x9f\x8b\x57\x2f\x2f\xbe\x1b\x51\x89\x67\x37\xd7\xb7\xe2\x83\x5e\x2a\xe3\xd4\x73\xd8\xb3\xb4\x26\xd3\xab\xf9\x4e\x16\xf9\xd9\x99\x2c\x75\x72\xa7\x76\xee\xf2\xec\x4c\xc0\xdf\x13\xf1\x87\x6d\x6e\x9b\x85\x12\x6f\x7f\xbd\x16\xf0\x60\x4e\xcb\x3b\xdb\xd4\xb0\x78\x29\x66\xb3\x40\xf7\xd9\x36\x26\xbd\xca\x6d\x93\xf6\x49\x9f\x88\x5f\x3e\xde\xbe\xbf\x14\xb7\xeb\xc8\x43\x68\x87\x1c\x2a\xb1\xcc\xb5\x32\xb5\xb8\x7e\xc7\xa4\x0e\x59\x2c\x91\x05\x33\x3e\x4b\x55\x26\x9b\xbc\x6e\x95\x79\xc7\x0b\xa0\x72\x51\xe0\xce\xda\x0a\x50\x4d\x96\x25\x30\x4a\xe9\x97\xad\xfb\x62\xaf\x33\x14\x25\x52\x2b\x8c\xad\xc5\x56\xc2\x26\x19\xb7\x2f\x76\xc2\x8b\x38\x17\x4e\x11\x3b\x55\x94\xf5\x4e\xb8\xba\xd2\x66\x25\x9e\xcd\x66\xcf\x99\x9d\xdf\x01\x7a\xfd\xac\xf2\xdc\x7e\x25\xae\x85\x2c\x80\x13\xca\x13\xb7\xbb\x52\x89\xaf\xd6\x2a\x2f\x45\x66\x2b\x58\xcd\xb5\xab\x85\xcd\x68\x97\x34\xa9\x9b\xcf\x46\x07\x58\x4b\x63\x54\x4e\xf4\x35\x58\x06\xf8\x90\x74\x53\x83\x83\x9a\xd2\x1a\xf4\x8a\x51\xcb\x5a\x5b\x33\x79\xa0\xad\x76\xeb\xe1\x6e\xbf\x05\xff\x89\xab\x95\xb5\x51\xd0\xc1\xf3\x31\x59\xd7\xa1\x57\xac\x3c\x6e\x6a\x9c\xc2\xff\x29\x73\xb9\x13\xb2\x49\xb5\x15\x99\xce\x95\x9b\x93\x53\xeb\xad\x15\xae\x29\x4b\x5b\xd5\xe0\x83\xe5\xda\x42\x64\x39\x21\x2b\x25\x66\x59\x56\x94\x6a\x35\x13\xc8\x66\x26\x37\xa0\xdf\x66\xc6\xf2\x90\x95\xaa\x12\x6f\xa0\xcb\x48\x0a\x4e\xff\x77\xa3\x1a\x15\x3d\xfe\x49\x82\x09\xe0\x38\xb2\x16\x45\x03\x56\x05\x77\x17\x70\x12\x38\xb8\xba\x5f\x2a\x95\xb2\xdb\xe1\x38\x2b\x0c\x6d\x09\xff\x92\xcb\x3b\xe1\xee\x74\xc9\x82\xe8\x77\x82\xbf\x93\x0a\x59\x5d\x8a\x97\xf3\x6f\x1f\xcb\x1c\xb5\x26\xdf\xb6\xfc\xc3\xd2\x3e\x11\x37\xf2\x5e\x17\x4d\xe1\xf5\x4a\x1b\xa2\x30\x42\x1b\x70\x08\xd8\x03\x62\x43\x7c\x66\xcf\xbc\x24\x77\x36\xa6\x52\xe8\x9d\x25\x1a\x33\x90\xb3\xa8\x42\xde\x27\x7c\x9c\xb0\x0e\x92\x26\xe5\x38\x51\x82\xbe\x41\xb5\x87\x24\x04\x1a\x37\x10\xe1\x12\xe0\x90\x84\xa7\x97\xe2\xdb\x28\xe8\xda\x09\xb7\x6e\xb2\x2c\xc7\x00\x52\x46\x42\x3d\x4a\xc5\x76\xad\x4c\x8c\x44\x57\xcb\xaa\x76\x3f\x12\xbd\x6c\x6a\x5b\x80\xae\xcb\x84\x37\xa9\x04\xb5\xce\x64\xee\x54\x60\xf8\xd6\x18\xc8\xfb\xa5\xf2\x26\xd2\x06\x94\x2c\xd8\x4a\xe0\x17\x62\xaa\x56\xda\x18\x94\x07\x39\xc5\xf1\x87\x9a\x2d\x80\xdc\x4b\xf1\x2c\x12\xa3\xb6\x5e\xff\x4b\x60\xd7\x80\x8c\xb3\x36\x8f\x62\x4c\xbd\x4d\x53\x30\x81\x63\x65\xd7\xb6\xc9\x53\x90\x54\x63\x66\xf4\xb3\x88\x6d\x22\x99\x1a\x62\xf4\xe2\xd5\xf7\xf3\x97\xf0\x7f\x17\x31\x47\x7e\x85\xa0\x3f\x92\x0d\xe6\x07\xf0\xf8\xee\x9b\xef\xff\xef\x87\x76\xbf\x74\x6e\x6b\xab\x94\x1c\x13\x34\x85\x73\xc2\x7e\xa7\xaa\x8d\xaa\x46\xb9\x6f\xe0\xec\x7e\xd3\xa1\x9c\x0e\x74\xdd\xa4\xfe\x0d\xd8\x1a\x59\x28\x12\x18\x6e\x13\x26\x6f\xfc\x23\x20\x0f\x0f\xe2\xb6\x7f\x40\xba\x97\xb2\x5e\xfb\x62\x00\xb1\x75\xf1\x8a\x6a\x00\x17\xbc\x06\xbc\x64\xc0\xc9\x92\x94\x97\x90\xfd\xa2\x02\x9f\x39\x28\x66\x10\x1c\xb8\x61\xf2\x1c\x81\x07\x5c\x07\x86\xb2\xed\xd0\x89\x90\x53\x02\xdb\x7a\xf7\x0e\x5b\x3e\x04\x5f\xf0\x80\xc4\x1c\x83\x14\x6b\xa0\x0e\xb5\x21\xf0\x63\x8c\xb9\xa9\xa7\x70\x4b\x40\xe5\xc2\x7b\x02\x2c\xaf\xb3\x1d\x31\x5d\xaa\xaa\xd6\x19\x9e\x4d\x61\xf8\xe1\x12\xbb\x06\x8f\xee\xd9\x01\x0b\x87\xa7\x35\xcb\xdd\x5c\x5c\xd7\x78\xa0\x05\xe4\x18\x9e\x24\x57\x72\x03\xa1\xbd\x86\x25\x6b\xce\xc5\xa2\xa9\x45\xaa\x1d\x66\x8d\xd0\x40\xc8\xc5\x1c\x8b\xe5\x5a\x6e\xe0\xb0\x9e\xa1\x76\xae\x01\x55\xfa\x11\x21\x83\x60\x34\x39\xec\xa8\x1a\x4e\x8a\x02\x2e\x14\x5d\x22\x43\x03\xa9\x67\xb0\xfa\x82\xa2\x7d\xe7\x86\xd3\x0e\x72\xaf\xeb\xd7\xee\x41\xd1\x2d\x53\x2e\x1b\xd2\x1c\xef\x3a\xdc\xd9\x75\xdb\x3e\xc9\x08\x0f\xf6\x49\xf7\xd0\xe1\x38\x81\x40\xdc\x95\xf7\x76\xb9\xc4\x94\xaf\xed\x1d\xc0\x1e\xdc\xa6\x8d\xae\xb5\xcc\xf5\x5f\x2a\xc6\xce\x56\xd7\x6b\x64\x5b\x4a\x28\xaf\x10\xb8\x00\x0f\xe8\x82\x72\x53\xca\xc8\x1e\x43\xf4\xc7\x71\x7a\xf1\xbe\x84\xf7\x3d\x14\xc8\xa1\x72\xca\x3c\xdf\x75\x0b\x4b\xa5\xea\x6a\xd7\x8d\xda\x6e\x68\xc8\x0c\x01\x04\x44\x58\x1b\x3a\x1c\xf3\xb4\x2b\xf1\xf5\x3a\x14\x47\x16\xfc\xb3\xdd\x42\xe1\x37\x10\xee\xba\x50\x2e\x94\xb2\x61\x42\x91\xe4\x01\xc2\x60\xa1\x5d\x01\x9e\x1a\x0e\x76\xf1\x72\xc4\xdf\xdf\x78\x43\x09\x5b\x89\x99\x60\xbe\x5e\xa8\x7a\xab\x54\x17\xf9\xf8\xb3\x06\xa6\x5d\x41\x1a\x91\xd2\x46\x02\x62\xf9\x16\x8b\xbc\x5c\xae\x5b\xcc\x70\x85\xbf\x00\x4d\x9a\x95\xc3\x62\x04\x72\x76\xe4\xa0\xd4\x6e\x4d\x6e\x25\x38\x89\x39\x45\x6b\xf4\x72\x22\xde\xa4\xb6\x96\x39\x47\xb9\xc3\x28\x41\x3c\x47\x8c\x53\x0d\x86\xa8\x2d\x28\x06\xb7\xf8\x8d\xfe\x29\x5e\x9d\xb8\x2d\x41\x5a\x50\xea\xe2\x55\xac\xf1\x50\x4b\x6c\x4a\xb5\x03\xec\xcb\x68\xc3\x5b\x40\xe5\xb2\x74\x78\xbf\x41\x29\x51\xe8\x44\x50\x19\x23\x7c\x09\x55\x03\x2b\x67\x56\xd9\x82\x8b\x10\x0a\x3e\x47\x79\xb0\xb1\xf2\xf1\xa8\xee\x4b\xd0\x24\x41\xae\x97\xe2\xd5\x37\x7b\xe4\x05\xab\x2a\x60\x01\xe8\x4c\xc1\x15\xeb\xcb\x18\x9f\x26\x23\xb4\x83\x9c\x52\xa8\x48\xaa\x70\x24\xa6\xd0\xa6\xa9\x95\x0b\xe0\x10\x76\xf5\x2d\xee\xd1\x6c\xb4\x04\x5e\x58\x35\x1e\x82\x98\x7a\x4e\x73\xf1\xde\x6c\x74\x65\x0d\x81\xed\x8d\xac\x34\xda\x9b\x93\x85\x2a\x20\xc3\x77\xa8\xea\xa9\x58\xc3\x55\xc1\xd2\xa2\x79\x21\x39\xfe\xe7\xe7\x8f\x37\xef\x5f\xcc\x89\xe9\x8b\x82\x2a\x5a\xfa\x27\x82\xc4\x8d\xcd\x9b\x42\x8d\xfa\x02\x5e\xf6\x7c\x78\x0d\xd1\x58\xf4\xc5\x07\xbb\xc5\xba\xcc\x64\x02\x32\x0b\x7e\xa7\x4c\x9e\xd3\x23\xa4\x7e\x79\x11\x23\x17\x3a\xa9\x7d\xf4\x6b\x7e\x86\x1b\x7e\x00\x85\x64\x0a\x26\x6b\x1b\x95\xf7\x14\x5a\x82\x57\x7f\x1c\x96\x0f\xba\x0e\xe0\xff\x7d\xa5\xa0\xf0\x3b\x17\x98\x22\x1e\x10\x83\x19\x0d\x9a\x46\xdd\x43\xd5\xf6\xa5\x08\x1f\xb7\x57\xe9\x64\x26\x7f\xf0\x7d\x07\x89\x15\x78\x99\x0f\x4b\x17\xdd\x4d\x98\xc7\xd8\xce\x10\xbe\x5d\x7b\x90\x45\xd4\xe8\x7a\x52\x8e\x50\x2e\x5d\x32\xed\x3d\x6e\x09\xe2\x79\x7e\xbe\xde\x38\x0f\x9f\x75\x51\x5a\x24\x73\xa8\x39\xde\xa0\x5e\x73\xaf\x4a\x6c\x84\x68\x37\x89\xba\xa4\x7f\xe2\xdf\xd7\x62\xf6\xb9\x01\xb8\x89\xd8\x64\x46\x88\x8d\x89\xdb\x7c\x5e\x43\x41\x5e\x52\x67\xe4\x18\x92\xa7\xca\xe9\x95\xc1\xfb\x22\x10\x73\xae\x18\x84\x8e\xb9\xa8\xd5\x3d\x20\x7a\x28\xb3\x72\x35\xb4\xc0\x47\x03\xd5\xd4\x1a\x85\x1d\x8f\x67\xfa\x0c\x8f\x9f\xe9\xca\xd5\xcf\xd1\x3a\x28\xc3\x03\xa8\x4a\x65\xfa\x1e\xc2\xf0\x2b\x5f\xa4\x51\x98\x35\x49\xe0\xdc\x1e\xc1\xd8\x00\x9b\x55\x55\xd9\x0a\xb6\xdc\x62\x40\xf3\xb5\x60\x03\x28\xd7\x8c\x91\xa9\xc1\x81\x96\x30\x6c\xc6\xe8\x86\x3a\x9d\x78\x5c\x90\x46\x1e\x57\xfc\x80\x2a\x42\x53\x55\x90\x44\xa0\x7b\xa0\x6a\x7b\xca\x9f\x14\x84\x25\x12\xb5\x8d\x27\xa5\x77\xb0\x4c\xdb\x9c\x41\x14\x45\x58\x20\xde\x53\x41\xf0\xf1\xb6\x96\xce\x73\xab\xd7\x95\x52\x7e\x26\x00\x6d\x06\x46\xb1\x2d\xb1\x18\xfb\xe3\x3e\x81\x34\xd0\xd2\xc1\xe9\xc5\xdb\x28\x8f\x83\x87\x22\xc1\x47\x6e\xf0\x54\x88\x83\x8e\x46\xf3\x08\x72\x12\x8a\x0e\x8e\x61\xf1\xff\xe0\x16\xbc\xe9\x28\x65\x88\xcd\xc4\xde\x73\x4e\x16\x20\x86\x74\x20\x37\x4e\xd3\x05\x19\x10\x28\xcb\x4a\x97\xdc\x2c\xbd\x6b\x7f\x60\x05\xde\x9a\xd8\x40\x07\x33\xc4\x3e\x86\x9a\xf9\xb0\x0a\xa6\x0d\x89\x18\xf8\xc6\x10\x10\xbf\x43\x59\xb3\x8d\x8b\x2b\xbe\x9d\x84\x4e\x79\x81\x17\x24\xce\x1b\xd0\x33\xdd\x90\xec\xd4\x75\xaf\x2d\xe2\xf2\xac\xf1\xe3\x80\x4a\x1a\x97\x13\x94\xf6\xc2\xda\x3f\x46\x13\x84\x5f\x2c\xec\xaf\x44\x2e\xcd\xaa\xa1\x28\x17\xef\x2c\x86\x38\x24\x6c\x61\x01\x71\x46\x4a\xd4\x86\x1a\x28\x82\x37\x62\xf6\x74\x26\x9e\xb9\x06\x5c\x0f\x6a\xcd\x9e\xba\xd9\x39\xfc\x37\x85\xff\xaa\x7a\x39\x7f\x3e\x12\x18\xae\x4f\xd7\x2c\x5c\xad\x6b\xaa\x45\xc4\x07\xc0\x27\x5d\x2f\xa9\xac\xe5\x5c\x7c\x42\xa1\x04\x53\xa1\x26\xb6\xc2\xb7\x3a\xcf\xc1\x43\x34\x3e\x68\xc7\x14\x85\x76\x0b\x05\x70\x57\xc5\xfe\xaa\x4d\xa4\x10\x5b\x67\x1d\x1d\xb0\x40\x00\xd1\x6c\xb4\xd6\xae\xb4\xa1\xc4\x57\x79\x58\xef\xb9\x7f\x06\x7d\x9f\x8b\x23\x02\xdb\x36\xc8\xec\x0f\x09\xee\x49\x35\x5c\xc2\xba\x56\x01\xe0\x0c\x53\x75\x9c\xf9\x3e\xfb\x9b\x2a\x8f\x69\xfb\x56\xfc\xf6\xe9\x43\x1c\x28\x60\xf6\xd1\x74\x8a\xcc\x86\x4c\xe1\x2c\xd1\xf1\xb3\x21\x23\xb8\x60\x75\x3a\x2c\x26\xbf\x58\x41\xeb\xa1\x90\x6c\xb1\xb6\x64\x38\x2d\x6b\xb9\x96\x15\x78\x00\x2b\x3a\x08\x7f\xe6\x9e\x0f\x38\x7b\x86\xb5\xb5\x49\x0e\x20\x23\x72\xfe\x03\xc7\x70\xf4\x10\xf6\x30\x5f\xa5\x29\xb2\x80\x54\x20\x29\x75\x1b\x90\x63\xb8\x41\xd8\x25\x15\x22\x4c\x14\xc4\x45\x20\x13\xc1\xac\x77\x7c\x31\x17\xbf\xd8\x96\x19\x7a\x18\x0c\x00\x09\x05\x07\x56\xc3\xa3\x42\xee\xfa\x61\x06\x3d\x05\x55\x5e\x2f\xde\x3c\x75\xaf\x5f\x2c\xde\x30\xbd\x80\xdf\x17\xf4\x93\xfd\xd5\xf5\xc8\xe5\xeb\x45\xf5\xe6\xb5\x26\x7a\xfd\x86\xdd\x07\xa1\xdc\x13\x80\x88\x33\xd8\xf1\x01\x11\x4f\xd3\x56\x86\xdb\xe7\x76\xf2\x0d\x60\xbb\x81\x15\x89\x23\x28\x32\xe4\xb2\x24\x70\x87\xb7\xe0\x42\x79\x49\x69\x43\x31\xe5\xad\x58\xc1\x83\x98\x16\x8c\x4d\x83\xb9\x43\x59\x87\x6d\x06\x4a\xc6\x51\x99\x81\x84\xe3\xec\x30\x53\xe9\x41\x68\xe1\x8b\xb3\x83\xab\x82\x40\xb9\x84\xf4\xf6\xdd\x6c\x4f\xc2\x31\xf0\x3a\xe0\x3d\xb1\x4c\x02\x3c\xd3\x46\xf1\xe4\x03\xa8\xe6\xfe\x86\x45\xa4\x47\x10\xfa\xe0\xc1\x23\xe9\xe8\xe8\x4b\x77\xe2\xd1\x3f\x36\x75\xd9\xd4\xac\x60\x0f\xf0\xb7\x30\x99\xa1\x3e\x36\xec\xcb\xf6\x56\xf6\x20\xec\x60\x81\xf0\xb7\xb7\xef\x0d\x10\x1b\x84\xa5\x29\x49\x8e\xe2\x72\xfe\x6a\x83\x12\x31\xae\x42\x4c\xf8\x3d\xe4\xa1\x23\xec\xd3\xa1\x1e\x9b\x88\x1f\x62\xc3\xb1\xef\xd9\xa9\xd5\x35\x18\xb1\x37\xc0\x5b\xd8\x86\xe1\x65\x38\x6f\x18\xf2\xb5\xf1\x82\x36\xc5\x9b\x5c\xdd\xd3\x1c\xf2\x58\x5b\xb2\x15\xfa\xc6\xf4\xcc\xc1\x80\xa1\x36\x9c\xfb\xfc\x03\xe4\x13\x93\x3f\x98\x13\xd4\x84\xea\x75\xa7\xcb\xc3\xb6\x8c\xa4\x23\x63\x65\xa7\xc6\xda\x75\x41\x89\x54\x2b\xc0\x3a\xc8\xd1\x8d\xcd\x73\xd0\x06\xed\x50\xbb\xa4\xba\x36\xb6\x01\xe0\x39\xae\xbd\xa8\xb9\x5e\x78\x59\xe5\x21\x4b\xc4\x81\xef\xf1\x16\x09\x5b\x26\x2c\x53\xfe\xad\xa6\x89\xe3\xec\x23\xae\xe3\x38\x95\xef\xc0\xf1\x71\x94\x60\x85\x2e\x65\xc5\x2d\xd3\x14\x7f\xfc\xeb\x0d\xf8\xc7\xe6\x8e\x55\xf2\x34\x8b\x23\xbe\x3c\x6c\x64\xa4\x1a\xd9\x75\xfd\xd8\xc4\x6c\x1b\xbb\xfe\xab\xa9\x87\xad\x19\x08\x93\xb5\x92\xa9\xaa\xda\x3b\xef\x2a\xb4\x69\x78\x2e\x5c\xeb\x6b\x4a\x8a\x25\x7b\x77\xbf\xa5\xbe\x70\x82\x07\x31\xf9\xd3\x6a\x53\x1c\x71\x07\x30\xdd\xc8\x44\xb8\x7c\x62\xec\xdd\x00\x68\x76\xb1\x3b\x82\x02\x05\xb7\x35\xbf\xa3\xf4\x8e\x0e\x6f\xec\x74\xc6\x71\x03\x7e\xa7\x61\x37\xbd\x8e\xc0\xf1\x87\x2d\x14\x95\x31\x70\xc4\x41\xa3\x12\x78\x07\xb5\x2a\x95\xe4\x34\x38\xd6\x1d\x4c\x86\x7d\x30\x35\x8b\xd2\x30\xc8\x0f\xa2\x11\x27\x44\x72\x42\xd2\x43\x90\x02\x16\x47\xa5\x93\xf6\x75\x1e\xbd\xa7\x34\xd8\x1f\x1a\x7f\x1e\x7e\x14\x5a\xda\x3b\x80\xe8\x87\xed\x8c\x54\x23\x2b\xdf\x9d\x68\xe2\xcf\xb5\xf5\x29\x4d\x73\x45\x9c\x72\xe4\x0a\x7a\x1d\x80\x10\x6e\x38\x5a\x0b\x79\x82\xc7\xf5\x2f\x74\x0e\x2a\xd9\xd2\x8e\x54\xa5\x57\x5c\x38\x0f\x9c\x7c\x32\x5e\x7c\x6c\x8a\xf5\x3b\xf0\x00\x07\x63\xef\xbe\x07\x26\x4d\xc7\x88\x36\xdc\x0b\xe0\xdc\x6d\xa5\xaa\xb6\xbd\x30\xe1\x91\xf0\x8f\xc4\x56\xba\xd8\x67\x4c\x01\x7f\x0a\x32\xed\x01\xab\x07\xab\x97\x07\x2e\xc9\x4e\x36\x62\x43\x79\xd8\xfc\x48\x35\xb2\x64\xf1\xa8\x34\x0c\x31\x42\x59\x88\x3f\x38\x2f\x63\x22\xc4\x5e\x67\x03\x88\x54\x56\xab\x06\x07\x8c\xc7\xdc\x0b\x9e\x41\x12\x18\x74\x7a\x36\xd0\x03\x4c\xc4\xb0\x25\xc8\x19\xf5\x70\x98\x73\x76\x13\xbb\xd9\x81\xad\x03\x77\x7c\x8d\x04\x08\x85\x00\x4d\xef\x06\x8a\x7a\x07\x01\xf1\x85\x13\xd1\x0e\xd8\xa1\xa4\x04\x5a\x75\x6c\xb1\xb2\x26\xe7\x6e\x8d\xdb\xaa\x76\x15\xa2\x0a\xe9\xd2\x6e\x83\xdd\xb9\x6d\x04\x7b\x10\x31\xf8\x91\xb0\x31\x92\x8e\x7c\x89\x4f\x26\x01\x63\xbf\xff\xf8\x3b\xd0\x22\xf5\x0c\x7f\x2f\x54\x4c\x70\xba\xf4\x30\x1e\x40\x39\x34\x83\x1a\x4b\x1e\x36\x83\xa0\x5f\x0f\x81\x76\x15\x3e\x12\x7e\x42\x43\xc9\xc3\xf2\x23\x7c\x12\x48\xc7\xa6\x5f\x7e\x41\xab\x03\x6c\x17\xf8\x3a\x31\x8b\x95\x8a\x87\xf7\xf8\x26\x54\xbb\xbb\x47\x36\x3b\xd8\x28\xfb\x83\x75\xc7\xa0\x6d\x15\x6c\xfb\x65\x7a\x4b\xc0\x2f\x0e\xd2\x60\x6e\xda\xda\xb1\xd1\xb1\xd5\x3f\x92\x8e\x6d\xd4\x14\xd3\xb5\xff\xf1\x3d\xce\xb4\xf5\x1e\x57\xe7\xe3\x24\x24\x9a\xab\x37\xef\x1d\x8c\x41\x1e\x08\xca\x32\x6f\x2a\x99\xc7\xef\x1f\x0e\xd8\x7e\x7a\x26\x4d\x0c\x4b\x1c\x4d\x1c\xb6\x38\x91\x9d\x6a\xc1\x5f\x25\x8d\x02\xfa\x5f\x71\x1c\x53\xba\x69\x47\xcc\xdf\xf7\x7e\x48\x85\xe3\x34\x62\x85\xe3\xef\xbc\x02\x90\xb9\x63\xf5\xd3\x73\xc1\xb3\xdd\x63\xa7\xf0\xf1\xe0\xfd\x41\x11\xc2\x7a\x5e\x1e\xeb\x4c\x7b\x2b\x85\xaf\x14\x0f\x5b\x8b\xe9\x46\x31\x58\x9d\x98\xbf\x9f\x88\x8d\xef\x8c\xc2\x90\x9e\xaa\x27\xbd\x35\x3f\x64\x48\xd6\xa2\xed\x62\x46\x1c\xda\x3e\xa6\x77\xc7\x84\x7d\xed\xa9\x9d\x3a\xa2\x4b\x24\xb2\xf1\x99\x27\xa3\xe6\xc1\x43\x03\x1b\xd7\xb9\x07\x16\x3b\x9e\x73\x13\x02\xcf\xf3\x70\x3b\xd0\x4b\xc7\x43\x26\x20\xda\x84\x0f\x30\xf4\x34\xad\x8e\x13\x02\x96\x9b\x63\xda\x11\xa6\x3b\x35\x25\x3e\xd1\xae\x93\x73\xe2\x84\x84\xe0\x5e\xe5\x31\x19\xc1\x27\x1a\xa7\x84\x5f\xdf\x93\x13\x60\xc4\xf0\xc1\xe4\x41\x9b\xb5\xb4\xe3\x41\xd4\x9e\x75\x77\xea\xa5\xf7\x39\x44\x4f\xf8\xf0\x13\xae\x37\xfa\x02\x31\xf5\x17\xb7\x8d\x9d\xdf\xff\xba\xf8\x21\x14\xcd\xfc\x68\xf9\xa8\x26\x19\x91\x06\xbf\x7c\x69\xb3\x8b\xa5\x75\x3f\xd3\xdc\x97\x5e\xb4\x6f\x88\x27\x3d\x57\x44\x8b\xab\x47\x70\xf5\xfb\xc2\x54\x3b\xb3\xf8\xfe\x9a\xda\x00\x1c\x96\xb3\xa7\xf8\xab\xbc\x23\xdc\xc4\x84\x63\x5f\xc0\xfa\xc4\xe2\xa9\x09\x0e\xdd\xa0\x2d\xf4\x5f\x1e\xfb\x7f\xd9\x85\x0a\x78\x3a\x51\xc6\x36\xab\xf5\x43\x2f\x65\x01\x73\x13\xcd\x54\x12\x74\x5f\x5c\xca\x60\xa3\x81\x73\xfc\x6a\xf0\x0a\x27\x02\xef\x6e\xbd\xe1\x69\x62\x5e\x1c\x35\x6c\x9c\x9c\x33\x4e\x8e\x19\x1f\xbc\x68\x73\x49\xdf\xe1\x8a\x8d\xe5\xf7\x59\xc8\xf6\x11\xb3\x46\x5f\x44\x12\x64\x93\x76\xdf\x1b\x71\x27\x12\x6a\x0c\x3d\xee\x88\x41\x38\x3d\xe0\x8f\x7f\x44\x36\xaa\x26\xc3\xcd\x63\x1d\xa3\xf9\x8e\x9f\x50\x3e\x38\x9c\x9c\x9e\x4d\x7e\x99\x3d\xff\x4b\x03\xca\xc7\x3b\x68\x0f\xc3\x53\x7d\xd4\x61\x43\x7c\x6a\xbb\x5a\xe5\xea\xe8\xca\xd2\x23\x1f\x39\xaa\x7d\x3a\xf5\x68\x7a\xfd\xe4\xf2\x73\xcb\x42\xda\x6f\xee\xc2\x67\xe4\xf1\x43\x67\x6b\x5e\xd8\x2c\x3b\x3c\x98\x27\x46\x69\x02\xb4\x38\x54\x88\xec\x5a\x46\xb1\x36\x78\x52\xd1\x67\xdb\x63\x62\x8e\xe6\x61\xd0\xf6\xc4\x64\xa3\x2a\x47\xdf\x3a\x1f\x32\xbb\x27\x1c\x59\x6f\xf3\x25\x3d\x51\x08\x09\xcf\xbc\xf7\x1d\xea\x21\xdb\x05\xcd\xdb\xcf\x8f\xdb\xa5\x18\x8a\x3e\xc4\xc2\xe7\x5f\x07\x0f\x49\x74\xe3\x33\xda\x93\x27\x7c\x57\x74\x97\xf2\x29\xfd\xe7\x60\xd0\x1e\x4b\x13\xc7\x4f\x98\xaf\x61\xbe\x03\x48\x6b\xca\x28\xbc\x8d\x66\xba\x5b\x7d\xc4\x94\x18\x52\xdf\x75\x07\xc3\x58\x23\x2a\x05\x77\x8c\xc3\x54\xf4\xec\x7a\x2f\x9b\x71\xc7\xf8\x55\x7b\x53\x43\x40\x26\x15\x1e\x20\xf2\xfa\x9d\x76\xbb\x38\xe2\x0a\x9f\x09\xd2\xf9\x64\x8e\x5f\x1f\xf3\x5b\xc8\x8c\xdf\x97\x9b\xb4\xfb\x7b\x08\x54\xfc\xa0\xc5\xbb\xa5\x5f\xcd\x82\xb5\xdc\x03\x0c\x98\xa6\x03\x74\xfa\xb5\x27\x02\x99\xd6\xf8\x7e\xcc\x15\xd9\xfd\x27\x00\x00\xff\xff\x6b\x4e\xc6\x2b\x1c\x35\x00\x00") +var _configYaml = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xc4\x5a\x7b\x6f\x1b\x37\xb6\xff\xdf\x9f\x82\x55\x6e\x70\x13\xc0\x55\xe2\xdc\xbe\x60\xe4\xa6\x48\x9d\xec\xd6\x8b\xb8\x29\x12\xb7\x40\xff\x1a\x50\x1a\x8e\xc4\x7a\x86\x9c\x1d\xce\x48\x56\x3f\xfd\x9e\x07\xc9\x79\xca\x92\x9c\x02\xeb\x7b\xd1\x8d\x38\x87\xe7\x90\xe7\xc5\xdf\x39\xe4\x13\x71\xd3\x14\x8b\x5c\xbd\xfb\xd7\xd9\x13\xf1\xd3\x4e\xdc\xc8\xba\x5e\x6b\xd5\x88\x7f\x56\x5a\xad\x54\x05\xa3\x57\xb6\xdc\x55\x7a\xb5\xae\xc5\xb3\xe5\x73\xf1\xea\xe5\xc5\x77\x23\x2a\xf1\xec\xe6\xfa\x56\x7c\xd0\x4b\x65\x9c\x7a\x0e\x73\x96\xd6\x64\x7a\x35\xdf\xc9\x22\x3f\x3b\x93\xa5\x4e\xee\xd4\xce\x5d\x9e\x9d\x09\xf8\x7b\x22\xfe\xb0\xcd\x6d\xb3\x50\xe2\xed\xaf\xd7\x02\x3e\xcc\x69\x78\x67\x9b\x1a\x06\x2f\xc5\x6c\x16\xe8\x3e\xdb\xc6\xa4\x57\xb9\x6d\xd2\x3e\xe9\x13\xf1\xcb\xc7\xdb\xf7\x97\xe2\x76\x1d\x79\x08\xed\x90\x43\x25\x96\xb9\x56\xa6\x16\xd7\xef\x98\xd4\x21\x8b\x25\xb2\x60\xc6\x67\xa9\xca\x64\x93\xd7\xed\x62\xde\xf1\x00\x2c\xb9\x28\x70\x66\x6d\x05\x2c\x4d\x96\x25\x30\x4a\xe9\x97\xad\xfb\x62\xaf\x33\x14\x25\x52\x2b\x8c\xad\xc5\x56\xc2\x24\x19\xa7\x2f\x76\xc2\x8b\x38\x17\x4e\x11\x3b\x55\x94\xf5\x4e\xb8\xba\xd2\x66\x25\x9e\xcd\x66\xcf\x99\x9d\x9f\x01\xeb\xfa\x59\xe5\xb9\xfd\x4a\x5c\x0b\x59\x00\x27\x94\x27\x6e\x77\xa5\x12\x5f\xad\x55\x5e\x8a\xcc\x56\x30\x9a\x6b\x57\x0b\x9b\xd1\x2c\x69\x52\x37\x9f\x8d\x36\xb0\x96\xc6\xa8\x9c\xe8\x6b\xd0\x0c\xf0\x21\xe9\xa6\x06\x03\x35\xa5\x35\x68\x15\xa3\x96\xb5\xb6\x66\x72\x43\x5b\xed\xd6\xc3\xd9\x7e\x0a\xfe\x13\x47\x2b\x6b\xa3\xa0\x83\xfb\x63\xb2\xae\x41\xaf\x78\xf1\x38\xa9\x71\x0a\xff\xa7\xcc\xe5\x4e\xc8\x26\xd5\x56\x64\x3a\x57\x6e\x4e\x46\xad\xb7\x56\xb8\xa6\x2c\x6d\x55\x83\x0d\x96\x6b\x0b\x9e\xe5\x84\xac\x94\x98\x65\x59\x51\xaa\xd5\x4c\x20\x9b\x99\xdc\xc0\xfa\x36\x33\x96\x87\xac\x54\x95\x78\x05\x5d\x46\x52\x30\xfa\xbf\x1b\xd5\xa8\x68\xf1\x4f\x12\x54\x00\xdb\x91\xb5\x28\x1a\xd0\x2a\x98\xbb\x80\x9d\xc0\xc6\xd5\xfd\x52\xa9\x94\xcd\x0e\xdb\x59\xa1\x6b\x4b\xf8\x97\x5c\xde\x09\x77\xa7\x4b\x16\x44\xbf\x13\xfc\x9d\x54\xc8\xea\x52\xbc\x9c\x7f\xfb\x58\xe6\xb8\x6a\xb2\x6d\xcb\x3f\x0c\xed\x13\x71\x23\xef\x75\xd1\x14\x7e\x5d\x69\x43\x14\x46\x68\x03\x06\x01\x7d\x80\x6f\x88\xcf\x6c\x99\x97\x64\xce\xc6\x54\x0a\xad\xb3\x44\x65\x06\x72\x16\x55\xc8\xfb\x84\xb7\x13\xc6\x41\xd2\xa4\x1c\x27\x4a\x58\x6f\x58\xda\x43\x12\x02\x8d\x1b\x88\x70\x09\x70\x48\xc2\xd7\x4b\xf1\x6d\x14\x74\xed\x84\x5b\x37\x59\x96\xa3\x03\x29\x23\x21\x1f\xa5\x62\xbb\x56\x26\x7a\xa2\xab\x65\x55\xbb\x1f\x89\x5e\x36\xb5\x2d\x60\xad\xcb\x84\x27\xa9\x04\x57\x9d\xc9\xdc\xa9\xc0\xf0\xad\x31\x10\xf7\x4b\xe5\x55\xa4\x0d\x2c\xb2\x60\x2d\x81\x5d\x88\xa9\x5a\x69\x63\x50\x1e\xc4\x14\xfb\x1f\xae\x6c\x01\xe4\x5e\x8a\x67\x91\x18\xb5\xf5\xeb\xbf\x04\x76\x0d\xc8\x38\x6b\xe3\x28\xfa\xd4\xdb\x34\x05\x15\x38\x5e\xec\xda\x36\x79\x0a\x92\x6a\x8c\x8c\x7e\x14\xb1\x4e\x24\x53\x83\x8f\x5e\xbc\xfa\x7e\xfe\x12\xfe\xef\x22\xc6\xc8\xaf\xe0\xf4\x47\xb2\xc1\xf8\x00\x1e\xdf\x7d\xf3\xfd\xff\xfd\xd0\xce\x97\xce\x6d\x6d\x95\x92\x61\xc2\x4a\x61\x9f\x30\xdf\xa9\x6a\xa3\xaa\x51\xec\x1b\xd8\xbb\x9f\x74\x28\xa6\x03\x5d\x37\xa8\x7f\x03\xb6\x46\x16\x8a\x04\x86\xd3\x84\xc9\x1b\xff\x09\xc8\xc3\x87\x38\xed\x1f\x10\xee\xa5\xac\xd7\x3e\x19\x80\x6f\x5d\xbc\xa2\x1c\xc0\x09\xaf\x01\x2b\x19\x30\xb2\xa4\xc5\x4b\x88\x7e\x51\x81\xcd\x1c\x24\x33\x70\x0e\x9c\x30\xb9\x8f\xc0\x03\x8e\x03\x43\xd1\x76\x68\x47\xc8\x29\x81\x69\xbd\x73\x87\x35\x1f\x9c\x2f\x58\x40\x62\x8c\x41\x88\x35\x90\x87\x5a\x17\xf8\x31\xfa\xdc\xd4\x57\x38\x25\x20\x73\xe1\x39\x01\x9a\xd7\xd9\x8e\x98\x2e\x55\x55\xeb\x0c\xf7\xa6\xd0\xfd\x70\x88\x4d\x83\x5b\xf7\xec\x80\x85\xc3\xdd\x9a\xe5\x6e\x2e\xae\x6b\xdc\xd0\x02\x62\x0c\x77\x92\x2b\xb9\x01\xd7\x5e\xc3\x90\x35\xe7\x62\xd1\xd4\x22\xd5\x0e\xa3\x46\x68\x20\xe4\x64\x8e\xc9\x72\x2d\x37\xb0\x59\xcf\x50\x3b\xd7\xc0\x52\xfa\x1e\x21\x83\x60\x54\x39\xcc\xa8\x1a\x0e\x8a\x02\x0e\x14\x5d\x22\x43\x03\xa1\x67\x30\xfb\xc2\x42\xfb\xc6\x0d\xbb\x1d\xc4\x5e\xd7\xae\xdd\x8d\xa2\x59\xa6\x4c\x36\xa4\x39\xde\x74\x38\xb3\x6b\xb6\x7d\x92\x11\x1e\xec\x93\xee\xa1\xc3\x71\x02\x81\xb8\x2b\xef\xed\x72\x89\x21\x5f\xdb\x3b\x80\x3d\x38\x4d\x1b\x5d\x6b\x99\xeb\xbf\x54\xf4\x9d\xad\xae\xd7\xc8\xb6\x94\x90\x5e\xc1\x71\x01\x1e\xd0\x01\xe5\xa6\x16\x23\x7b\x0c\xd1\x1e\xc7\xad\x8b\xe7\x25\x3c\xef\x21\x47\x0e\x99\x53\xe6\xf9\xae\x9b\x58\x2a\x55\x57\xbb\xae\xd7\x76\x5d\x43\x66\x08\x20\xc0\xc3\x5a\xd7\x61\x9f\xa7\x59\x89\xcf\xd7\x21\x39\xb2\xe0\x9f\xed\x16\x12\xbf\x01\x77\xd7\x85\x72\x21\x95\x0d\x03\x8a\x24\x0f\x10\x06\x0b\xed\x0a\xf0\xd4\xb0\xb1\x8b\x97\x23\xfe\xfe\xc4\x1b\x4a\xd8\x4a\x8c\x04\xf3\xf5\x42\xd5\x5b\xa5\xba\xc8\xc7\xef\x35\x30\xed\x0a\xd2\x88\x94\x36\x12\x10\xcb\xb7\x98\xe4\xe5\x72\xdd\x62\x86\x2b\xfc\x05\x68\xd2\xac\x1c\x26\x23\x90\xb3\x23\x03\xa5\x76\x6b\x72\x2b\xc1\x48\xcc\x29\x6a\xa3\x17\x13\xf1\x24\xb5\xb5\xcc\xd9\xcb\x1d\x7a\x09\xe2\x39\x62\x9c\x6a\x50\x44\x6d\x61\x61\x70\x8a\xdf\xe8\x9f\xe2\xd1\x89\xd3\x12\xa4\x85\x45\x5d\xbc\x8a\x39\x1e\x72\x89\x4d\x29\x77\x80\x7e\x19\x6d\x78\x0d\xa8\x5c\x96\x0e\xcf\x37\x48\x25\x0a\x8d\x08\x4b\x46\x0f\x5f\x42\xd6\xc0\xcc\x99\x55\xb6\xe0\x24\x84\x82\xcf\x51\x1e\x4c\xac\xbc\x3f\xaa\xfb\x12\x56\x92\x20\xd7\x4b\xf1\xea\x9b\x3d\xf2\x82\x56\x15\xb0\x00\x74\xa6\xe0\x88\xf5\x69\x8c\x77\x93\x11\xda\x41\x4e\x29\x64\x24\x55\x38\x12\x53\x68\xd3\xd4\xca\x05\x70\x08\xb3\xfa\x1a\xf7\x68\x36\x6a\x02\x0f\xac\x1a\x37\x41\x4c\x3d\xa7\xb9\x78\x6f\x36\xba\xb2\x86\xc0\xf6\x46\x56\x1a\xf5\xcd\xc1\x42\x19\x90\xe1\x3b\x64\xf5\x54\xac\xe1\xa8\x60\x69\x51\xbd\x10\x1c\xff\xf3\xf3\xc7\x9b\xf7\x2f\xe6\xc4\xf4\x45\x41\x19\x2d\xfd\x13\x41\xe2\xc6\xe6\x4d\xa1\x46\x75\x01\x0f\x7b\x3e\x3c\x86\x68\x2c\xda\xe2\x83\xdd\x62\x5e\x66\x32\x01\x91\x05\xbf\x53\x26\xcf\xe9\x13\x52\xbf\xbc\x88\x9e\x0b\x95\xd4\x3e\xfa\x35\x7f\xc3\x09\x3f\xc0\x82\x64\x0a\x2a\x6b\x0b\x95\xf7\xe4\x5a\x82\x47\x7f\x1c\xa6\x0f\x3a\x0e\xe0\xff\x7d\xa6\x20\xf7\x3b\x17\x18\x22\x1e\x10\x83\x1a\x0d\xaa\x46\xdd\x43\xd6\xf6\xa9\x08\x3f\xb7\x47\xe9\x64\x24\x7f\xf0\x75\x07\x89\x15\x78\x98\x0f\x53\x17\x9d\x4d\x18\xc7\x58\xce\x10\xbe\x5d\x7b\x90\x45\xd4\x68\x7a\x5a\x1c\xa1\x5c\x3a\x64\xda\x73\xdc\x12\xc4\xf3\xfc\x7c\xbe\x71\x1e\x3e\xeb\xa2\xb4\x48\xe6\x70\xe5\x78\x82\xfa\x95\xfb\xa5\xc4\x42\x88\x66\x93\xa8\x4b\xfa\x27\xfe\x7d\x2d\x66\x9f\x1b\x80\x9b\x88\x4d\x66\x84\xd8\x98\xb8\x8d\xe7\x35\x24\xe4\x25\x55\x46\x8e\x21\x79\xaa\x9c\x5e\x19\x3c\x2f\x02\x31\xc7\x8a\x41\xe8\x98\x8b\x5a\xdd\x03\xa2\x87\x34\x2b\x57\x43\x0d\x7c\x34\x90\x4d\xad\x51\x58\xf1\x78\xa6\xcf\x70\xfb\x99\xae\x5c\xfd\x1c\xb5\x83\x32\x3c\x80\xaa\x54\xa6\xef\xc1\x0d\xbf\xf2\x49\x1a\x85\x59\x93\x04\xce\xed\x16\x8c\x0d\xb0\x59\x55\x95\xad\x60\xca\x2d\x3a\x34\x1f\x0b\x36\x80\x72\xcd\x18\x99\x0a\x1c\x28\x09\xc3\x64\xf4\x6e\xc8\xd3\x89\xc7\x05\x69\xe4\x71\xc5\x1f\x28\x23\x34\x55\x05\x41\x04\x6b\x0f\x54\x6d\x4d\xf9\x93\x02\xb7\x44\xa2\xb6\xf0\xa4\xf0\x0e\x9a\x69\x8b\x33\xf0\xa2\x08\x0b\xc4\x7b\x4a\x08\xde\xdf\xd6\xd2\x79\x6e\xf5\xba\x52\xca\xf7\x04\xa0\xcc\x40\x2f\xb6\x25\x26\x63\xbf\xdd\x27\x10\x06\x5a\x3a\xd8\xbd\x78\x1b\xe5\xb1\xf3\x90\x27\x78\xcf\x0d\x96\x0a\x7e\xd0\x59\xd1\x3c\x82\x9c\x84\xbc\x83\x7d\x58\xfc\x3f\x98\x05\x4f\x3a\x0a\x19\x62\x33\x31\xf7\x9c\x83\x05\x88\x21\x1c\xc8\x8c\xd3\x74\x41\x06\x38\xca\xb2\xd2\x25\x17\x4b\xef\xda\x1f\x98\x81\xb7\x26\x16\xd0\x41\x0d\xb1\x8e\xa1\x62\x3e\x8c\x82\x6a\x43\x20\x06\xbe\xd1\x05\xc4\xef\x90\xd6\x6c\xe3\xe2\x88\x2f\x27\xa1\x52\x5e\xe0\x01\x89\xfd\x06\xb4\x4c\xd7\x25\x3b\x79\xdd\xaf\x16\x71\x79\xd6\xf8\x76\x40\x25\x8d\xcb\x09\x4a\x7b\x61\xed\x1f\xa3\x09\xc2\x2f\x16\xe6\x57\x22\x97\x66\xd5\x90\x97\x8b\x77\x16\x5d\x1c\x02\xb6\xb0\x80\x38\x23\x25\xae\x86\x0a\x28\x82\x37\x62\xf6\x74\x26\x9e\xb9\x06\x4c\x0f\xcb\x9a\x3d\x75\xb3\x73\xf8\x6f\x0a\xff\x55\xf5\x72\xfe\x7c\x24\x30\x1c\x9f\xae\x59\xb8\x5a\xd7\x94\x8b\x88\x0f\x80\x4f\x3a\x5e\x52\x59\xcb\xb9\xf8\x84\x42\x09\xa6\x42\x4e\x6c\x85\x6f\x75\x9e\x83\x85\xa8\x7d\xd0\xb6\x29\x0a\xed\x16\x0a\xe0\xae\x8a\xf5\x55\x1b\x48\xc1\xb7\xce\x3a\x6b\xc0\x04\x01\x44\xb3\xd1\x58\x3b\xd2\xba\x12\x1f\xe5\x61\xbc\x67\xfe\x19\xd4\x7d\x2e\xb6\x08\x6c\x5b\x20\xb3\x3d\x24\x98\x27\xd5\x70\x08\xeb\x5a\x05\x80\x33\x0c\xd5\x71\xe4\xfb\xe8\x6f\xaa\x3c\x86\xed\x5b\xf1\xdb\xa7\x0f\xb1\xa1\x80\xd1\x47\xdd\x29\x52\x1b\x32\x85\xbd\x44\xc3\xcf\x86\x8c\xe0\x80\xd5\xe9\x30\x99\xfc\x62\x05\x8d\x87\x44\xb2\xc5\xdc\x92\x61\xb7\xac\xe5\x5a\x56\x60\x01\xcc\xe8\x20\xfc\x99\x7b\x3e\xe0\xec\x19\xd6\xd6\x26\x39\x80\x8c\xc8\xf9\x0f\x6c\xc3\xd1\x47\x98\xc3\x7c\x95\x26\xcf\x02\x52\x81\xa4\x54\x6d\x40\x8c\xe1\x04\x61\x97\x94\x88\x30\x50\x10\x17\x81\x4c\x04\xb3\xde\xf0\xc5\x5c\xfc\x62\x5b\x66\x68\x61\x50\x00\x04\x14\x6c\x58\x0d\xb7\x0a\xb1\xeb\x9b\x19\xf4\x15\x96\xf2\x7a\xf1\xe6\xa9\x7b\xfd\x62\xf1\x86\xe9\x05\xfc\xbe\xa0\x9f\x6c\xaf\xae\x45\x2e\x5f\x2f\xaa\x37\xaf\x35\xd1\xeb\x37\x6c\x3e\x70\xe5\x9e\x00\x44\x9c\x41\x8f\x0f\x88\x78\x9a\xb6\x32\xdc\x3e\xb3\x93\x6d\x00\xdb\x0d\xb4\x48\x1c\x61\x21\x43\x2e\x4b\x02\x77\x78\x0a\x2e\x94\x97\x94\x36\xe4\x53\x5e\x8b\x15\x7c\x88\x61\xc1\xd8\x34\xa8\x3b\xa4\x75\x98\x66\x20\x65\x1c\x15\x19\x48\x38\x8e\x0e\x33\x15\x1e\x84\x16\xbe\x38\x3a\x38\x2b\x08\x94\x4b\x48\x6f\xdf\xc9\xf6\x24\x6c\x03\x8f\x03\x9e\x13\xd3\x24\xc0\x33\x6d\x14\x77\x3e\x80\x6a\xee\x4f\x58\x44\x7a\x04\xa1\x0f\x6e\x3c\x92\x8e\xb6\xbe\x74\x27\x6e\xfd\x63\x53\x97\x4d\xcd\x0b\xec\x01\xfe\x16\x26\x33\xd4\xc7\x82\x7d\xd9\x9e\xca\x1e\x84\x1d\x4c\x10\xfe\xf4\xf6\xb5\x01\x62\x83\x30\x34\x25\xc9\x91\x5f\xce\x5f\x6d\x50\x22\xfa\x55\xf0\x09\x3f\x87\x2c\x74\x84\x7e\x3a\xd4\x63\x15\xf1\x47\x2c\x38\xf6\x7d\x3b\x35\xbb\x06\x25\xf6\x1a\x78\x0b\xdb\x30\xbc\x0c\xfb\x0d\x4d\xbe\xd6\x5f\x50\xa7\x78\x92\xab\x7b\xea\x43\x1e\xab\x4b\xd6\x42\x5f\x99\x9e\x39\x28\x30\xe4\x86\x73\x1f\x7f\x80\x7c\x62\xf0\x07\x75\xc2\x32\x21\x7b\xdd\xe9\xf2\xb0\x2e\x23\xe9\x48\x59\xd9\xa9\xbe\x76\x5d\x50\x20\xd5\x0a\xb0\x0e\x72\x74\x63\xf5\x1c\xd4\x41\xdb\xd4\x2e\x29\xaf\x8d\x75\x00\x78\x8e\x73\x2f\xae\x5c\x2f\xbc\xac\xf2\x90\x26\x62\xc3\xf7\x78\x8d\x84\x29\x13\x9a\x29\xff\x56\xd5\xc4\x76\xf6\x11\xc7\x71\xec\xca\x77\xe0\xf8\xd8\x4b\x30\x43\x97\xb2\xe2\x92\x69\x8a\x3f\xfe\xf5\x1a\xfc\x63\x75\xc7\x2c\x79\x9a\xc6\x11\x5f\x1e\x56\x32\x52\x8d\xf4\xba\x7e\x6c\x60\xb6\x85\x5d\xff\x6a\xea\x61\x6d\x06\xc2\x64\xad\x64\xaa\xaa\xf6\xcc\xbb\x0a\x65\x1a\xee\x0b\xc7\xfa\x2b\xa5\x85\x25\x7b\x67\xbf\xa5\xba\x70\x82\x07\x31\xf9\xd3\x6a\x53\x1c\x71\x06\x30\xdd\x48\x45\x38\x7c\xa2\xef\xdd\x00\x68\x76\xb1\x3a\x82\x04\x05\xa7\x35\xdf\x51\x7a\x43\x87\x1b\x3b\x9d\xb1\xdf\x80\xdd\xa9\xd9\x4d\xd7\x11\xd8\xfe\xb0\x85\xa2\x34\x06\x86\x38\xa8\x54\x02\xef\xb0\xac\x4a\x25\x39\x35\x8e\x75\x07\x93\x61\x1d\x4c\xc5\xa2\x34\x0c\xf2\x83\x68\xc4\x09\x91\x9c\x90\xf4\x10\xa4\x80\xc6\x71\xd1\x49\x7b\x9d\x47\xf7\x94\x06\xeb\x43\xe3\xf7\xc3\x9f\x42\x49\x7b\x07\x10\xfd\xb0\x9e\x91\x6a\xa4\xe5\xbb\x13\x55\xfc\xb9\xb6\x3e\xa4\xa9\xaf\x88\x5d\x8e\x5c\x41\xad\x03\x10\xc2\x0d\x5b\x6b\x21\x4e\x70\xbb\xfe\x42\xe7\xe0\x22\x5b\xda\xd1\x52\xe9\x8a\x0b\xfb\x81\x93\x5f\xc6\x83\x8f\x0d\xb1\x7e\x05\x1e\xe0\x60\xac\xdd\xf7\xc0\xa4\x69\x1f\xd1\x86\x6b\x01\xec\xbb\xad\x54\xd5\x96\x17\x26\x7c\x12\xfe\x93\xd8\x4a\x17\xeb\x8c\x29\xe0\x4f\x4e\xa6\x3d\x60\xf5\x60\xf5\xf2\xc0\x21\xd9\x89\x46\x2c\x28\x0f\xab\x1f\xa9\x46\x9a\x2c\x1e\x15\x86\xc1\x47\x28\x0a\xf1\x07\xc7\x65\x0c\x84\x58\xeb\x6c\x00\x91\xca\x6a\xd5\x60\x83\xf1\x98\x73\xc1\x33\x48\x02\x83\x4e\xcd\x06\xeb\x00\x15\x31\x6c\x09\x72\x46\x35\x1c\xc6\x9c\xdd\xc4\x6a\x76\xa0\xeb\xc0\x1d\xaf\x91\x00\xa1\x10\xa0\xe9\x9d\x40\x71\xdd\x41\x40\xbc\x70\x22\xda\x01\x3b\x94\x94\x40\xa9\x8e\x25\x56\xd6\xe4\x5c\xad\x71\x59\xd5\x8e\x82\x57\x21\x5d\xda\x2d\xb0\x3b\xa7\x8d\x60\x0b\x22\x06\x3f\x12\x36\x46\xd2\x91\x2d\xf1\xcb\x24\x60\xec\xd7\x1f\x7f\x07\x5a\xa4\x9a\xe1\xef\x85\x8a\x09\x76\x97\x1e\xc6\x03\x28\x87\x7a\x50\x63\xc9\xc3\x62\x10\xd6\xd7\x43\xa0\xdd\x05\x1f\x09\x3f\xa1\xa0\xe4\x66\xf9\x11\x36\x09\xa4\x63\xd5\x2f\xbf\xa0\xd4\x01\xb6\x0b\xbc\x4e\xcc\x62\xa6\xe2\xe6\x3d\xde\x84\x6a\x77\xf7\xc8\x62\x07\x0b\x65\xbf\xb1\x6e\x1b\xb4\xcd\x82\x6d\xbd\x4c\xb7\x04\x7c\x71\x90\x06\x75\xd3\xd4\x8e\x8e\x8e\xcd\xfe\x91\x74\xac\xa3\xa6\x98\xce\xfd\x8f\xaf\x71\xa6\xb5\xf7\xb8\x3c\x1f\x3b\x21\x51\x5d\xbd\x7e\xef\xa0\x0d\xf2\x80\x53\x96\x79\x53\xc9\x3c\xbe\x7f\x38\xa0\xfb\xe9\x9e\x34\x31\x2c\xb1\x35\x71\x58\xe3\x44\x76\xaa\x06\x7f\x95\xd4\x0a\xe8\xbf\xe2\x38\x26\x75\xd3\x8c\x18\xbf\xef\x7d\x93\x0a\xdb\x69\xc4\x0a\xdb\xdf\x79\x05\x20\x73\xc7\xcb\x4f\xcf\x05\xf7\x76\x8f\xed\xc2\xc7\x8d\xf7\x1b\x45\x08\xeb\x79\x78\xbc\x66\x9a\x1b\x2e\x48\x0e\xeb\x2b\x50\x8e\xfc\xb0\x52\xab\x13\xa3\xf8\x93\x67\xd5\x1e\x95\x7c\x39\x13\x5e\x8d\x1c\xd2\xa7\x57\x55\xd2\xde\xee\x44\xcd\xf2\xc3\x36\xaf\xca\xd1\xed\xcf\x58\x40\x57\x07\xa4\xbb\x88\x38\x1f\x98\xec\x35\x87\x97\xb1\xc7\xe8\x0d\xe9\xc6\x5a\x3b\x59\x67\xc8\xc6\xd7\x94\xe1\x7a\x83\xce\x1d\x7a\x6f\x70\x48\x65\xbc\x8a\xb6\xfe\x1b\x71\x68\x2b\xc0\xde\xe9\x1c\xe6\xb5\xbb\x76\xea\x88\xfa\x9a\xc8\x26\x3c\xe5\xe4\x4d\x03\x1b\xd7\x39\x41\x17\x3b\xbe\x21\xa0\xda\x25\xcf\xc3\xb9\x4a\xd7\xb5\x87\x54\x40\xb4\x09\x6f\x60\x18\x23\x34\x3a\x4e\x25\x30\xdc\x1c\x53\xc8\x31\xdd\xa9\xc9\xe4\x13\xcd\x3a\x39\x9b\x9c\x90\x4a\xb8\xca\x7b\x4c\x2e\xe1\x1d\x8d\x93\x89\x1f\xdf\x93\x4d\x40\x89\xe1\xa9\xe9\x41\x9d\xb5\xb4\xe3\x16\xde\x9e\x71\x77\x2a\x5c\xf8\x1c\xbc\x27\x3c\x99\x05\x60\x40\x6f\x37\x53\x0f\x79\x6c\xac\x99\xff\xd7\xc5\x27\x64\xd4\x2d\xa5\xe1\xa3\xda\x0b\x88\xd1\xf8\xda\xaa\x8d\x2e\x96\xd6\x7d\xe0\xba\x2f\xbc\x68\xde\x10\x89\x7b\xae\x88\xb3\x57\x8f\xe0\xea\xe7\x85\xfb\x80\xcc\xe2\xcd\x3f\x15\x50\x78\xcd\xc0\x96\xe2\xf7\x8c\x47\x98\x89\x09\xc7\xb6\x80\xf1\x89\xc1\x53\x03\x1c\xea\x68\x5b\xe8\xbf\x7c\xd5\xf4\x65\x50\x04\x2a\x91\x44\x19\xdb\xac\xd6\x0f\x5d\x67\x43\xb5\x42\x34\x53\x41\xd0\xbd\xf2\x95\x41\x47\x03\xe3\xf8\xd1\x60\x15\x0e\x04\x9e\xdd\x5a\xc3\xd3\xc4\xb8\x38\xaa\x4d\x3b\xd9\xa1\x9d\x6c\xd0\x3e\x08\x51\x72\x49\x2f\x98\xc5\xc6\xf2\x4d\x20\xb2\x7d\x44\x97\x36\x1c\xb2\xc8\x26\xed\xde\xb8\x71\x0d\x17\x72\x0c\x7d\xee\x88\xc1\x42\x64\xc0\x1f\xff\x88\x6c\x94\x4d\x86\x93\xc7\x6b\x8c\xea\x3b\xbe\xb7\xfb\x60\x5b\x77\xba\xab\xfb\x65\xfa\xfc\x2f\xb5\x76\x1f\x6f\xa0\x3d\x0c\x4f\xb5\x51\x87\x0d\xf1\xa9\xed\x6a\x95\xab\xa3\x33\x4b\x8f\x7c\x64\xa8\xf6\xeb\xd4\xa7\xe9\xf1\x93\xd3\xcf\x2d\x0b\x69\x5f\x2b\x86\x07\xf8\xf1\x89\xb8\x35\x2f\x6c\x96\x1d\xbe\xd2\x20\x46\x69\x02\xb4\xd8\x8e\x89\xec\x5a\x46\x31\x37\x78\x52\xd1\x67\xdb\x63\x62\x8e\xe6\x61\x50\xf7\xc4\x04\x90\xa9\xa3\x57\xe2\x87\xd4\xee\x09\x47\xda\xdb\x7c\x49\x35\x19\x5c\xc2\x33\xef\xbd\xe0\x3d\xa4\xbb\xb0\xf2\xf6\xe1\x76\x3b\x14\x5d\xd1\xbb\x58\x78\x38\x77\x70\x93\x44\x37\xde\xa3\x3d\xb9\x37\x7a\x45\x67\x29\xef\xd2\x3f\xa4\xd3\x19\x3e\x29\x08\x8d\x3b\x8c\xd7\xd0\x19\x03\xa4\x35\xa5\x14\x9e\x46\xdd\xf0\xad\x3e\xa2\xbf\x0e\xa1\xef\xba\x2d\x75\xcc\x11\x95\x82\x33\xc6\x61\x28\x7a\x76\xbd\x6b\x7a\x9c\x31\x7e\xa4\xd0\xd4\xe0\x90\x49\x85\x1b\x88\xbc\x7e\xa7\xd9\x2e\x36\x07\xc3\x03\x4b\xda\x9f\xcc\xf1\xdd\x36\xdf\xdf\x66\xfc\xd2\xc0\xa4\xdd\xdf\x43\xa0\xe2\x5b\x54\xde\x2c\xfd\x6c\x16\xb4\xe5\x1e\x60\xc0\x34\x1d\xa0\xd3\xcf\x3d\x11\xc8\xb4\xca\xf7\x0d\xc2\xc8\xee\x3f\x01\x00\x00\xff\xff\x03\xe4\x68\x65\x56\x36\x00\x00") func configYamlBytes() ([]byte, error) { return bindataRead( @@ -83,7 +83,7 @@ func configYaml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "config.yaml", size: 13596, mode: os.FileMode(420), modTime: time.Unix(1468207090, 0)} + info := bindataFileInfo{name: "config.yaml", size: 13910, mode: os.FileMode(420), modTime: time.Unix(1468209663, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/bot/config.go b/bot/config.go index 53d0934..eb65515 100644 --- a/bot/config.go +++ b/bot/config.go @@ -157,6 +157,12 @@ func SetDefaultConfig() { viper.SetDefault("commands.pause.messages.no_audio_error", "Either the audio is already paused, or there are no tracks in the queue.") viper.SetDefault("commands.pause.messages.paused", "%s has paused audio playback.") + viper.SetDefault("commands.register.aliases", []string{"register", "reg"}) + viper.SetDefault("commands.register.is_admin", true) + viper.SetDefault("commands.register.description", "Registers the bot on the server.") + viper.SetDefault("commands.register.messages.already_registered_error", "I am already registered on the server.") + viper.SetDefault("commands.register.messages.registered", "I am now registered on the server.") + viper.SetDefault("commands.reload.aliases", []string{"reload", "r"}) viper.SetDefault("commands.reload.is_admin", true) viper.SetDefault("commands.reload.description", "Reloads the configuration file.") diff --git a/commands/pkg_init.go b/commands/pkg_init.go index 6884668..13a7dbd 100644 --- a/commands/pkg_init.go +++ b/commands/pkg_init.go @@ -35,6 +35,7 @@ func init() { new(NumCachedCommand), new(NumTracksCommand), new(PauseCommand), + new(RegisterCommand), new(ReloadCommand), new(ResetCommand), new(ResumeCommand), diff --git a/commands/register.go b/commands/register.go new file mode 100644 index 0000000..3644899 --- /dev/null +++ b/commands/register.go @@ -0,0 +1,53 @@ +/* + * MumbleDJ + * By Matthieu Grieger + * commands/register.go + * Copyright (c) 2016 Matthieu Grieger (MIT License) + */ + +package commands + +import ( + "errors" + + "github.com/layeh/gumble/gumble" + "github.com/spf13/viper" +) + +// RegisterCommand is a command that registers the bot on the server. +type RegisterCommand struct{} + +// Aliases returns the current aliases for the command. +func (c *RegisterCommand) Aliases() []string { + return viper.GetStringSlice("commands.register.aliases") +} + +// Description returns the description for the command. +func (c *RegisterCommand) Description() string { + return viper.GetString("commands.register.description") +} + +// IsAdminCommand returns true if the command is only for admin use, and +// returns false otherwise. +func (c *RegisterCommand) IsAdminCommand() bool { + return viper.GetBool("commands.register.is_admin") +} + +// Execute executes the command with the given user and arguments. +// Return value descriptions: +// string: A message to be returned to the user upon successful execution. +// bool: Whether the message should be private or not. true = private, +// false = public (sent to whole channel). +// error: An error message to be returned upon unsuccessful execution. +// If no error has occurred, pass nil instead. +// Example return statement: +// return "This is a private message!", true, nil +func (c *RegisterCommand) Execute(user *gumble.User, args ...string) (string, bool, error) { + if DJ.Client.Self.IsRegistered() { + return "", true, errors.New(viper.GetString("commands.register.messages.already_registered_error")) + } + + DJ.Client.Self.Register() + + return viper.GetString("commands.register.messages.registered"), true, nil +} diff --git a/commands/register_test.go b/commands/register_test.go new file mode 100644 index 0000000..de163b6 --- /dev/null +++ b/commands/register_test.go @@ -0,0 +1,8 @@ +/* + * MumbleDJ + * By Matthieu Grieger + * commands/register_test.go + * Copyright (c) 2016 Matthieu Grieger (MIT License) + */ + +package commands diff --git a/config.yaml b/config.yaml index ea62a71..94beb19 100644 --- a/config.yaml +++ b/config.yaml @@ -306,6 +306,16 @@ commands: no_audio_error: "Either the audio is already paused, or there are no tracks in the queue." paused: "%s has paused audio playback." + register: + aliases: + - "register" + - "reg" + is_admin: true + description: "Registers the bot on the server." + messages: + already_registered_error: "I am already registered on the server." + registered: "I am now registered on the server." + reload: aliases: - "reload"