Class: Github::Client::Activity::Notifications

Inherits:
API
  • Object
show all
Defined in:
lib/github_api/client/activity/notifications.rb

Constant Summary

Constants included from MimeType

MimeType::MEDIA_LOOKUP

Constants included from Github::Constants

Github::Constants::ACCEPT, Github::Constants::ACCEPTED_OAUTH_SCOPES, Github::Constants::ACCEPT_CHARSET, Github::Constants::CACHE_CONTROL, Github::Constants::CONTENT_LENGTH, Github::Constants::CONTENT_TYPE, Github::Constants::DATE, Github::Constants::ETAG, Github::Constants::HEADER_LAST, Github::Constants::HEADER_LINK, Github::Constants::HEADER_NEXT, Github::Constants::LOCATION, Github::Constants::META_FIRST, Github::Constants::META_LAST, Github::Constants::META_NEXT, Github::Constants::META_PREV, Github::Constants::META_REL, Github::Constants::OAUTH_SCOPES, Github::Constants::PARAM_PAGE, Github::Constants::PARAM_PER_PAGE, Github::Constants::PARAM_START_PAGE, Github::Constants::RATELIMIT_LIMIT, Github::Constants::RATELIMIT_REMAINING, Github::Constants::RATELIMIT_RESET, Github::Constants::SERVER, Github::Constants::USER_AGENT

Instance Attribute Summary

Attributes inherited from API

#current_options

Instance Method Summary collapse

Methods inherited from API

after_callbacks, after_request, #api_methods_in, #arguments, before_callbacks, before_request, clear_request_methods!, #disable_redirects, #execute, extend_with_actions, extra_methods, #extract_basic_auth, extract_class_name, #filter_callbacks, inherited, #initialize, internal_methods, method_added, #method_missing, #module_methods_in, namespace, request_methods, require_all, #respond_to?, root!, #run_callbacks, #set, #yield_or_eval

Methods included from Request::Verbs

#delete_request, #get_request, #head_request, #options_request, #patch_request, #post_request, #put_request

Methods included from RateLimit

#ratelimit, #ratelimit_remaining, #ratelimit_reset

Methods included from MimeType

#lookup_media, #parse

Methods included from Authorization

#auth_code, #authenticated?, #authentication, #authorize_url, #basic_authed?, #client, #get_token

Constructor Details

This class inherits a constructor from Github::API

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Github::API

Instance Method Details

#create(*args) ⇒ Object

Create a thread subscription

This lets you subscribe to a thread, or ignore it. Subscribing to a thread is unnecessary if the user is already subscribed to the repository. Ignoring a thread will mute all future notifications (until you comment or get @mentioned).

Examples:

github = Github.new oauth_token: 'token'
github.activity.notifications.create 'thread-id',
  subscribed: true
  ignored: false

Parameters:

See Also:



159
160
161
162
163
# File 'lib/github_api/client/activity/notifications.rb', line 159

def create(*args)
  arguments(args, required: [:thread_id])

  put_request("/notifications/threads/#{arguments.thread_id}/subscription", arguments.params)
end

#delete(*args) ⇒ Object Also known as: remove

Delete a thread subscription

Examples:

github = Github.new oauth_token: 'token'
github.activity.notifications.delete 'thread_id'

See Also:



174
175
176
177
178
# File 'lib/github_api/client/activity/notifications.rb', line 174

def delete(*args)
  arguments(args, required: [:thread_id])

  delete_request("/notifications/threads/#{arguments.thread_id}/subscription", arguments.params)
end

#get(*args) ⇒ Object Also known as: find

View a single thread

Examples:

github = Github.new oauth_token: 'token'
github.activity.notifications.get 'thread_id'
github.activity.notifications.get 'thread_id' { |thread| ... }

See Also:



63
64
65
66
67
68
69
# File 'lib/github_api/client/activity/notifications.rb', line 63

def get(*args)
  arguments(args, required: [:thread_id])

  response = get_request("/notifications/threads/#{arguments.thread_id}", arguments.params)
  return response unless block_given?
  response.each { |el| yield el }
end

#list(*args) ⇒ Object Also known as: all

List your notifications

List all notifications for the current user, grouped by repository.

List your notifications in a repository

Examples:

github = Github.new oauth_token: 'token'
github.activity.notifications.list
github = Github.new
github.activity.notifications.list user: 'user-name', repo: 'repo-name'

Parameters:

See Also:



38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/github_api/client/activity/notifications.rb', line 38

def list(*args)
  arguments(args)
  params = arguments.params

  response = if ( (user_name = params.delete('user')) &&
                  (repo_name = params.delete('repo')) )
    get_request("/repos/#{user_name}/#{repo_name}/notifications", params)
  else
    get_request('/notifications', params)
  end
  return response unless block_given?
  response.each { |el| yield el }
end

#mark(*args) ⇒ Object

Mark as read

Marking a notification as “read” removes it from the default view on GitHub.com.

Mark notifications as read in a repository

Mark a thread as read

Examples:

github = Github.new oauth_token: 'token'
github.activity.notifications.mark
github.activity.notifications.mark user: 'user-name', repo: 'repo-name'
github.activity.notifications.mark id: 'thread-id'

Parameters:

See Also:



104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'lib/github_api/client/activity/notifications.rb', line 104

def mark(*args)
  arguments(args)
  params = arguments.params

  if ( (user_name = params.delete('user')) &&
       (repo_name = params.delete('repo')) )

    put_request("/repos/#{user_name}/#{repo_name}/notifications", params)
  elsif (thread_id = params.delete("id"))
    patch_request("/notifications/threads/#{thread_id}", params)
  else
    put_request('/notifications', params)
  end
end

#subscribed?(*args) ⇒ Boolean

Check to see if the current user is subscribed to a thread.

Examples:

github = Github.new oauth_token: 'token'
github.activity.notifications.subscribed? 'thread-id'
github.activity.notifications.subscribed? id: 'thread-id'

Returns:

  • (Boolean)

See Also:



131
132
133
134
135
# File 'lib/github_api/client/activity/notifications.rb', line 131

def subscribed?(*args)
  arguments(args, required: [:thread_id])

  get_request("/notifications/threads/#{arguments.thread_id}/subscription", arguments.params)
end
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy