module GoAcoustic::Client::Contact
Public Instance Methods
add_recipient(fields, list_id, contact_list_id=nil, created_from=1, options={})
click to toggle source
Adds one new contact to an existing database.
@param fields [Hash] The list of fields to be passed into GoAcoustic
. @param list_id [Integer] The ID of the database which you are adding the contact @param contact_list_id [Array] The id of the contact list. @return [Mash] Mashify body from the API call @example Add a new email to the database and contact list
s = GoAcoustic::Client.new(access_token) s.add_recipient({email: "test@example.com", firstname: "Hello"}, 12345, [4567])
# File lib/client/contact.rb, line 14 def add_recipient(fields, list_id, contact_list_id=nil, created_from=1, options={}) builder = Builder::XmlMarkup.new xml = builder.Envelope { builder.Body { builder.AddRecipient { builder.LIST_ID list_id builder.CREATED_FROM created_from if contact_list_id builder.CONTACT_LISTS { contact_list_id.each do |id| builder.CONTACT_LIST_ID id end } end unless options.empty? options.each do |opt| builder.tag! opt[0], opt[1] end end fields.each do |field| builder.COLUMN { builder.NAME field[0].to_s builder.VALUE field[1] } end } } } post(xml) end
get_recipient(fields, list_id, recipient_id=nil, options={})
click to toggle source
Retrieves a contact from a database
# File lib/client/contact.rb, line 47 def get_recipient(fields, list_id, recipient_id=nil, options={}) builder = Builder::XmlMarkup.new xml = builder.Envelope { builder.Body { builder.SelectRecipientData { builder.LIST_ID list_id if recipient_id builder.RECIPIENT_ID recipient_id builder.COLUMN { builder.NAME "Recipient ID" builder.VALUE recipient_id } end if fields[:email] builder.EMAIL fields[:email] end unless options.empty? options.each do |opt| builder.tag! opt[0], opt[1] end end unless fields.empty? fields.each do |field| builder.COLUMN { builder.NAME field[0].to_s builder.VALUE field[1] } end end } } } begin response = post(xml) response.Envelope.Body.RESULT rescue return false end end