{"action":"created","comment":{"url":"https://api.github.com/repos/calzoneman/sync/pulls/comments/178441438","pull_request_review_id":108502068,"id":178441438,"diff_hunk":"@@ -418,6 +418,14 @@ Channel.prototype.acceptUser = function (user) {\n \n         this.logger.log(\"[login] Accepted connection from Tor exit at \" +\n                         user.displayip);\n+    } \n+    else if(user.isAnonymous()){\n+        var anonymousBanned = this.modules.options && this.modules.options.get(\"block_anonymous_users\");\n+        if (anonymousBanned) {\n+            user.kick(\"This channel has banned anonymous users. Please register if you'd like to join.\");","path":"src/channel/channel.js","position":8,"original_position":8,"commit_id":"7dd6357c7c9f69fcc1c14c97a08948cbc32cbabc","original_commit_id":"7dd6357c7c9f69fcc1c14c97a08948cbc32cbabc","user":{"login":"calzoneman","id":385672,"avatar_url":"https://avatars2.githubusercontent.com/u/385672?v=4","gravatar_id":"","url":"https://api.github.com/users/calzoneman","html_url":"https://github.com/calzoneman","followers_url":"https://api.github.com/users/calzoneman/followers","following_url":"https://api.github.com/users/calzoneman/following{/other_user}","gists_url":"https://api.github.com/users/calzoneman/gists{/gist_id}","starred_url":"https://api.github.com/users/calzoneman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calzoneman/subscriptions","organizations_url":"https://api.github.com/users/calzoneman/orgs","repos_url":"https://api.github.com/users/calzoneman/repos","events_url":"https://api.github.com/users/calzoneman/events{/privacy}","received_events_url":"https://api.github.com/users/calzoneman/received_events","type":"User","site_admin":false},"body":"In terms of the code, \"anonymous\" and \"guest\" are separate ranks with subtly different permissions; anonymous users have no name and hence do not appear in the userlist (unless they choose to enter a guest name later, in which case they become a guest).\r\n\r\nSupporting blocking either one as options would be a possibility; I guess it depends on what your motivation is for using the feature.  Maybe I am missing some context on why the distinction between registered and guest name is important.  My goal here is to find the right balance between giving channel owners control of their channel and minimizing frustration and annoyance for users -- unless the channel has good reason to block guest names, I think \"please enter a name to join\" would be less annoying than \"please register an account\".\r\n\r\nThis also raises a question of whether channels which choose to enable this restriction should be disallowed from also setting the channel to \"public\" (i.e., list it on the index page).  It's a pretty annoying experience to browse the index page, click on something interesting, and immediately get a \"You must register to continue\" prompt.  It seems to me like this feature is mostly useful for private channels wishing to have a higher degree of accountability for who is joining.\r\n\r\nAgree that whitelist is a separate feature.","created_at":"2018-03-31T20:31:46Z","updated_at":"2018-03-31T20:31:47Z","html_url":"https://github.com/calzoneman/sync/pull/740#discussion_r178441438","pull_request_url":"https://api.github.com/repos/calzoneman/sync/pulls/740","author_association":"OWNER","_links":{"self":{"href":"https://api.github.com/repos/calzoneman/sync/pulls/comments/178441438"},"html":{"href":"https://github.com/calzoneman/sync/pull/740#discussion_r178441438"},"pull_request":{"href":"https://api.github.com/repos/calzoneman/sync/pulls/740"}},"in_reply_to_id":178423121},"pull_request":{"url":"https://api.github.com/repos/calzoneman/sync/pulls/740","id":178485323,"html_url":"https://github.com/calzoneman/sync/pull/740","diff_url":"https://github.com/calzoneman/sync/pull/740.diff","patch_url":"https://github.com/calzoneman/sync/pull/740.patch","issue_url":"https://api.github.com/repos/calzoneman/sync/issues/740","number":740,"state":"open","locked":false,"title":"Add Admin Setting - Block anonymous connections","user":{"login":"OneEighteenNoTwo","id":33336994,"avatar_url":"https://avatars3.githubusercontent.com/u/33336994?v=4","gravatar_id":"","url":"https://api.github.com/users/OneEighteenNoTwo","html_url":"https://github.com/OneEighteenNoTwo","followers_url":"https://api.github.com/users/OneEighteenNoTwo/followers","following_url":"https://api.github.com/users/OneEighteenNoTwo/following{/other_user}","gists_url":"https://api.github.com/users/OneEighteenNoTwo/gists{/gist_id}","starred_url":"https://api.github.com/users/OneEighteenNoTwo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OneEighteenNoTwo/subscriptions","organizations_url":"https://api.github.com/users/OneEighteenNoTwo/orgs","repos_url":"https://api.github.com/users/OneEighteenNoTwo/repos","events_url":"https://api.github.com/users/OneEighteenNoTwo/events{/privacy}","received_events_url":"https://api.github.com/users/OneEighteenNoTwo/received_events","type":"User","site_admin":false},"body":"Hey. This was a feature that I thought might be nice to have and so I'm posting it here for consideration. I hope this is the right avenue for suggesting this sort of thing. Any feedback is most appreciated! ","created_at":"2018-03-30T03:04:32Z","updated_at":"2018-03-31T20:31:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":"aca4d7082438821110312bdae7e607117926a768","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/calzoneman/sync/pulls/740/commits","review_comments_url":"https://api.github.com/repos/calzoneman/sync/pulls/740/comments","review_comment_url":"https://api.github.com/repos/calzoneman/sync/pulls/comments{/number}","comments_url":"https://api.github.com/repos/calzoneman/sync/issues/740/comments","statuses_url":"https://api.github.com/repos/calzoneman/sync/statuses/7dd6357c7c9f69fcc1c14c97a08948cbc32cbabc","head":{"label":"OneEighteenNoTwo:3.0","ref":"3.0","sha":"7dd6357c7c9f69fcc1c14c97a08948cbc32cbabc","user":{"login":"OneEighteenNoTwo","id":33336994,"avatar_url":"https://avatars3.githubusercontent.com/u/33336994?v=4","gravatar_id":"","url":"https://api.github.com/users/OneEighteenNoTwo","html_url":"https://github.com/OneEighteenNoTwo","followers_url":"https://api.github.com/users/OneEighteenNoTwo/followers","following_url":"https://api.github.com/users/OneEighteenNoTwo/following{/other_user}","gists_url":"https://api.github.com/users/OneEighteenNoTwo/gists{/gist_id}","starred_url":"https://api.github.com/users/OneEighteenNoTwo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OneEighteenNoTwo/subscriptions","organizations_url":"https://api.github.com/users/OneEighteenNoTwo/orgs","repos_url":"https://api.github.com/users/OneEighteenNoTwo/repos","events_url":"https://api.github.com/users/OneEighteenNoTwo/events{/privacy}","received_events_url":"https://api.github.com/users/OneEighteenNoTwo/received_events","type":"User","site_admin":false},"repo":{"id":127370968,"name":"sync","full_name":"OneEighteenNoTwo/sync","owner":{"login":"OneEighteenNoTwo","id":33336994,"avatar_url":"https://avatars3.githubusercontent.com/u/33336994?v=4","gravatar_id":"","url":"https://api.github.com/users/OneEighteenNoTwo","html_url":"https://github.com/OneEighteenNoTwo","followers_url":"https://api.github.com/users/OneEighteenNoTwo/followers","following_url":"https://api.github.com/users/OneEighteenNoTwo/following{/other_user}","gists_url":"https://api.github.com/users/OneEighteenNoTwo/gists{/gist_id}","starred_url":"https://api.github.com/users/OneEighteenNoTwo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OneEighteenNoTwo/subscriptions","organizations_url":"https://api.github.com/users/OneEighteenNoTwo/orgs","repos_url":"https://api.github.com/users/OneEighteenNoTwo/repos","events_url":"https://api.github.com/users/OneEighteenNoTwo/events{/privacy}","received_events_url":"https://api.github.com/users/OneEighteenNoTwo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/OneEighteenNoTwo/sync","description":"Node.JS Server and JavaScript/HTML Client for synchronizing online media","fork":true,"url":"https://api.github.com/repos/OneEighteenNoTwo/sync","forks_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/forks","keys_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/keys{/key_id}","collaborators_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/teams","hooks_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/hooks","issue_events_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/issues/events{/number}","events_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/events","assignees_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/assignees{/user}","branches_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/branches{/branch}","tags_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/tags","blobs_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/git/refs{/sha}","trees_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/git/trees{/sha}","statuses_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/statuses/{sha}","languages_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/languages","stargazers_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/stargazers","contributors_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/contributors","subscribers_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/subscribers","subscription_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/subscription","commits_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/commits{/sha}","git_commits_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/git/commits{/sha}","comments_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/comments{/number}","issue_comment_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/issues/comments{/number}","contents_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/contents/{+path}","compare_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/compare/{base}...{head}","merges_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/merges","archive_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/downloads","issues_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/issues{/number}","pulls_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/pulls{/number}","milestones_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/milestones{/number}","notifications_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/labels{/name}","releases_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/releases{/id}","deployments_url":"https://api.github.com/repos/OneEighteenNoTwo/sync/deployments","created_at":"2018-03-30T02:26:03Z","updated_at":"2018-03-30T06:31:16Z","pushed_at":"2018-03-30T06:31:15Z","git_url":"git://github.com/OneEighteenNoTwo/sync.git","ssh_url":"git@github.com:OneEighteenNoTwo/sync.git","clone_url":"https://github.com/OneEighteenNoTwo/sync.git","svn_url":"https://github.com/OneEighteenNoTwo/sync","homepage":null,"size":8898,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":0,"open_issues":0,"watchers":0,"default_branch":"3.0"}},"base":{"label":"calzoneman:3.0","ref":"3.0","sha":"20879210723f859ce90fec52a1ad47389452c8e7","user":{"login":"calzoneman","id":385672,"avatar_url":"https://avatars2.githubusercontent.com/u/385672?v=4","gravatar_id":"","url":"https://api.github.com/users/calzoneman","html_url":"https://github.com/calzoneman","followers_url":"https://api.github.com/users/calzoneman/followers","following_url":"https://api.github.com/users/calzoneman/following{/other_user}","gists_url":"https://api.github.com/users/calzoneman/gists{/gist_id}","starred_url":"https://api.github.com/users/calzoneman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calzoneman/subscriptions","organizations_url":"https://api.github.com/users/calzoneman/orgs","repos_url":"https://api.github.com/users/calzoneman/repos","events_url":"https://api.github.com/users/calzoneman/events{/privacy}","received_events_url":"https://api.github.com/users/calzoneman/received_events","type":"User","site_admin":false},"repo":{"id":8231654,"name":"sync","full_name":"calzoneman/sync","owner":{"login":"calzoneman","id":385672,"avatar_url":"https://avatars2.githubusercontent.com/u/385672?v=4","gravatar_id":"","url":"https://api.github.com/users/calzoneman","html_url":"https://github.com/calzoneman","followers_url":"https://api.github.com/users/calzoneman/followers","following_url":"https://api.github.com/users/calzoneman/following{/other_user}","gists_url":"https://api.github.com/users/calzoneman/gists{/gist_id}","starred_url":"https://api.github.com/users/calzoneman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calzoneman/subscriptions","organizations_url":"https://api.github.com/users/calzoneman/orgs","repos_url":"https://api.github.com/users/calzoneman/repos","events_url":"https://api.github.com/users/calzoneman/events{/privacy}","received_events_url":"https://api.github.com/users/calzoneman/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/calzoneman/sync","description":"Node.JS Server and JavaScript/HTML Client for synchronizing online media","fork":false,"url":"https://api.github.com/repos/calzoneman/sync","forks_url":"https://api.github.com/repos/calzoneman/sync/forks","keys_url":"https://api.github.com/repos/calzoneman/sync/keys{/key_id}","collaborators_url":"https://api.github.com/repos/calzoneman/sync/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/calzoneman/sync/teams","hooks_url":"https://api.github.com/repos/calzoneman/sync/hooks","issue_events_url":"https://api.github.com/repos/calzoneman/sync/issues/events{/number}","events_url":"https://api.github.com/repos/calzoneman/sync/events","assignees_url":"https://api.github.com/repos/calzoneman/sync/assignees{/user}","branches_url":"https://api.github.com/repos/calzoneman/sync/branches{/branch}","tags_url":"https://api.github.com/repos/calzoneman/sync/tags","blobs_url":"https://api.github.com/repos/calzoneman/sync/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/calzoneman/sync/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/calzoneman/sync/git/refs{/sha}","trees_url":"https://api.github.com/repos/calzoneman/sync/git/trees{/sha}","statuses_url":"https://api.github.com/repos/calzoneman/sync/statuses/{sha}","languages_url":"https://api.github.com/repos/calzoneman/sync/languages","stargazers_url":"https://api.github.com/repos/calzoneman/sync/stargazers","contributors_url":"https://api.github.com/repos/calzoneman/sync/contributors","subscribers_url":"https://api.github.com/repos/calzoneman/sync/subscribers","subscription_url":"https://api.github.com/repos/calzoneman/sync/subscription","commits_url":"https://api.github.com/repos/calzoneman/sync/commits{/sha}","git_commits_url":"https://api.github.com/repos/calzoneman/sync/git/commits{/sha}","comments_url":"https://api.github.com/repos/calzoneman/sync/comments{/number}","issue_comment_url":"https://api.github.com/repos/calzoneman/sync/issues/comments{/number}","contents_url":"https://api.github.com/repos/calzoneman/sync/contents/{+path}","compare_url":"https://api.github.com/repos/calzoneman/sync/compare/{base}...{head}","merges_url":"https://api.github.com/repos/calzoneman/sync/merges","archive_url":"https://api.github.com/repos/calzoneman/sync/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/calzoneman/sync/downloads","issues_url":"https://api.github.com/repos/calzoneman/sync/issues{/number}","pulls_url":"https://api.github.com/repos/calzoneman/sync/pulls{/number}","milestones_url":"https://api.github.com/repos/calzoneman/sync/milestones{/number}","notifications_url":"https://api.github.com/repos/calzoneman/sync/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/calzoneman/sync/labels{/name}","releases_url":"https://api.github.com/repos/calzoneman/sync/releases{/id}","deployments_url":"https://api.github.com/repos/calzoneman/sync/deployments","created_at":"2013-02-16T05:01:57Z","updated_at":"2018-03-26T20:20:09Z","pushed_at":"2018-03-30T06:31:16Z","git_url":"git://github.com/calzoneman/sync.git","ssh_url":"git@github.com:calzoneman/sync.git","clone_url":"https://github.com/calzoneman/sync.git","svn_url":"https://github.com/calzoneman/sync","homepage":null,"size":8865,"stargazers_count":643,"watchers_count":643,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":146,"mirror_url":null,"archived":false,"open_issues_count":29,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":146,"open_issues":29,"watchers":643,"default_branch":"3.0"}},"_links":{"self":{"href":"https://api.github.com/repos/calzoneman/sync/pulls/740"},"html":{"href":"https://github.com/calzoneman/sync/pull/740"},"issue":{"href":"https://api.github.com/repos/calzoneman/sync/issues/740"},"comments":{"href":"https://api.github.com/repos/calzoneman/sync/issues/740/comments"},"review_comments":{"href":"https://api.github.com/repos/calzoneman/sync/pulls/740/comments"},"review_comment":{"href":"https://api.github.com/repos/calzoneman/sync/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/calzoneman/sync/pulls/740/commits"},"statuses":{"href":"https://api.github.com/repos/calzoneman/sync/statuses/7dd6357c7c9f69fcc1c14c97a08948cbc32cbabc"}},"author_association":"NONE"}}
{"actor":{"display_login":"calzoneman"}}