Class: SerwerSMS::Resources::Contacts

Inherits:
Object
  • Object
show all
Defined in:
lib/serwersms/resources/contacts.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Contacts

Returns a new instance of Contacts.



4
5
6
# File 'lib/serwersms/resources/contacts.rb', line 4

def initialize(client)
  @client = client
end

Instance Method Details

#add(group_id, phone, params = {}) ⇒ Hash

Add new contact

Parameters:

  • group_id (Integer)
  • phone (String)
  • params (Hash) (defaults to: {})

    @option params [String] :email @option params [String] :first_name @option params [String] :last_name @option params [String] :company @option params [String] :tax_id @option params [String] :address @option params [String] :city @option params [String] :description

Returns:

  • (Hash)

    @option return [Boolean] :success @option return [Integer] :id



24
25
26
27
28
# File 'lib/serwersms/resources/contacts.rb', line 24

def add(group_id, phone, params = {})
  params['group_id'] = group_id
  params['phone']    = phone
  @client.call('contacts/add', params)
end

#delete(id) ⇒ Hash

Delete a contact

Parameters:

  • id (Integer)

Returns:

  • (Hash)

    @option return [Boolean] :success



111
112
113
# File 'lib/serwersms/resources/contacts.rb', line 111

def delete(id)
  @client.call('contacts/delete', 'id' => id)
end

#edit(id, group_id, phone, params = {}) ⇒ Hash

Edit a contact

Parameters:

  • id (Integer)
  • group_id (Integer, Array)
  • phone (String)
  • params (Hash) (defaults to: {})

    @option params [String] :email @option params [String] :first_name @option params [String] :last_name @option params [String] :company @option params [String] :tax_id @option params [String] :address @option params [String] :city @option params [String] :description

Returns:

  • (Hash)

    @option return [Boolean] :success @option return [Integer] :id



99
100
101
102
103
104
# File 'lib/serwersms/resources/contacts.rb', line 99

def edit(id, group_id, phone, params = {})
  params['id']       = id
  params['group_id'] = group_id
  params['phone']    = phone
  @client.call('contacts/edit', params)
end

#import(group_name, contact = []) ⇒ Hash

Import contact list

Parameters:

  • group_name (String)
  • contact (Array) (defaults to: [])

    @option contact [String] :phone @option contact [String] :email @option contact [String] :first_name @option contact [String] :last_name @option contact [String] :company

Returns:

  • (Hash)

    @option return [Boolean] :success @option return [Integer] :id @option return [Integer] :correct Number of contacts imported correctly @option return [Integer] :failed Number of errors



129
130
131
# File 'lib/serwersms/resources/contacts.rb', line 129

def import(group_name, contact = [])
  @client.call('contacts/import', 'group_name' => group_name, 'contact' => contact)
end

#index(group_id = nil, search = nil, params = {}) ⇒ Hash

List of contacts

Parameters:

  • group_id (Integer) (defaults to: nil)
  • search (String) (defaults to: nil)
  • params (Hash) (defaults to: {})

    @option params [Integer] :page The number of the displayed page @option params [Integer] :limit Limit items displayed on single page @option params [String] :sort Values: first_name|last_name|phone|company|tax_id|email|address|city|description @option params [String] :order Values: asc|desc

Returns:

  • (Hash)

    @option return [Hash] :paging @option paging [Integer] :page The number of current page @option paging [Integer] :count The number of all pages @option return [Array] :items @option item [Integer] :id @option item [String] :phone @option item [String] :email @option item [String] :company @option item [String] :first_name @option item [String] :last_name @option item [String] :tax_id @option item [String] :address @option item [String] :city @option item [String] :description @option item [Boolean] :blacklist @option item [Integer] :group_id @option item [String] :group_name



57
58
59
60
61
# File 'lib/serwersms/resources/contacts.rb', line 57

def index(group_id = nil, search = nil, params = {})
  params['group_id'] = group_id.nil? ? 'none' : group_id
  params['search']   = search
  @client.call('contacts/index', params)
end

#view(id) ⇒ Hash

View single contact

Parameters:

  • id (Integer)

Returns:

  • (Hash)

    @option return [Integer] :id @option return [String] :phone @option return [String] :email @option return [String] :company @option return [String] :first_name @option return [String] :last_name @option return [String] :tax_id @option return [String] :address @option return [String] :city @option return [String] :description @option return [Boolean] :blacklist



78
79
80
# File 'lib/serwersms/resources/contacts.rb', line 78

def view(id)
  @client.call('contacts/view', 'id' => id)
end