Module: Xtify::Commands
- Included in:
- Xtify
- Defined in:
- lib/xtify/commands.rb
Constant Summary collapse
- API_V2 =
"http://api.xtify.com/2.0"
Instance Method Summary collapse
-
#push(opts = {}) ⇒ Object
The Xtify Push API allows you to immediately send a message to a set of users that you can select by Device, positive or negative tags, or a “send to all” flag.
-
#register_device(opts = {}) ⇒ Object
Register and return a device with the provided details which can be used to refer to this device in the Xtify system.
Instance Method Details
#push(opts = {}) ⇒ Object
The Xtify Push API allows you to immediately send a message to a set of users that you can select by Device, positive or negative tags, or a “send to all” flag. By exposing our push interface via API, you can generate timely one-off notifications and event-based messages from within your own service either by hand or automatically.
-
devices -> A device or array of devices to send message to
-
has_tags -> All devices with these tags will receive message
-
not_tags -> All devices without these tags will receive message
-
send_all -> All users of the application will recieve message
-
index_only -> Index only indicator for rich message
-
content -> Message or Hash of message
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/xtify/commands.rb', line 77 def push(opts={}) xids = Array.wrap(opts.delete(:devices)).map {|d| d.is_a?(Device) ? d.xid : d} device_type = opts.delete(:device_type) = Array.wrap(opts.delete(:has_tags)) = Array.wrap(opts.delete(:not_tags)) content = opts.delete(:content) unless content.is_a?(Message) content = Message.new(content) end args = convert_to_args(opts) args[:apiKey] = config.api_key args[:content] = content args[:xids] = xids unless xids.empty? args[:hasTags] = unless .empty? args[:notTags] = unless .empty? args['type'] = device_type post('push', args) end |
#register_device(opts = {}) ⇒ Object
Register and return a device with the provided details which can be used to refer to this device in the Xtify system. Calling this endpoint with a device that is already registered will result in the existing device being returned.
Parameters:
-
install_id -> (Required) This id along with your application key will
uniquely identify your user in our system and is used to manage uninstalls/reinstalls and mapping registrations to existing users. It does not have to be the device -
type -> (Required) The SDK device type you have implemented in your app.
Values restricted to: Xtify::Device::TYPES -
device_token -> The Apple provided deviceToken received by registering
with APNS -
registration_id -> The Google provided registrationId received by
registering with google -
blackberry_pin -> The RIM provided device PIN received by registering
with the BlackBerry Push service. -
user_key -> An optional customer defined key which can be
associated with this user. Available to premium/enterprise customers. -
install_date -> Install date of this user.
-
badge -> Current badge for iOS only
-
v_os -> The operating system version of the device.
-
model -> The model name/number of the device.
-
carrier -> The carrier in use by the device.
-
Returns a Xtify ID for device
53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/xtify/commands.rb', line 53 def register_device(opts={}) validate_arguments('register_device', opts, :install_id, :type) validate_in_set('register_device', :type, opts, Device::TYPES.values) args = convert_to_args(opts, :blackberry_pin => 'blackberryPIN', :v_os => 'vOS' ) result = post('users/register', args) Device.new(result) end |