README.md in keen-0.4.3 vs README.md in keen-0.4.4
- old
+ new
@@ -87,12 +87,11 @@
Keen.project_id = 'your-project-id'
Keen.api_key = 'your-api-key'
You can also configure individual client instances as follows:
- keen = Keen::Client.new(:project_id => 'your-project-id',
- :api_key => 'your-api-key')
+ keen = Keen::Client.new(:project_id => 'your-project-id', :api_key => 'your-api-key')
#### em-synchrony
keen-gem can be used with [em-synchrony](https://github.com/igrigorik/em-synchrony).
If you call `publish_async` and `EM::Synchrony` is defined the method will return the response
directly. (It does not return the deferrable on which to register callbacks.) Likewise, it will raise
@@ -104,17 +103,26 @@
This is useful for situations like tracking email opens using [image beacons](http://en.wikipedia.org/wiki/Web_bug).
In this situation, the JSON event data is passed by encoding it base-64 and adding it as a request parameter called `data`.
The `beacon_url` method found on the `Keen::Client` does this for you. Here's an example:
- keen = Keen::Client.new(:project_id => '12345',
- :api_key => 'abcde')
+ keen = Keen::Client.new(:project_id => '12345', :api_key => 'abcde')
keen.beacon_url("sign_ups", :recipient => "foo@foo.com")
- # => "https://api.keen.io/3.0/projects/50e5ffa6897a2c319b000000/events/ \
- email_opens?api_key=f806128f31c349fda124b62d1f4cf4b2&data=eyJyZWNpcGllbnQiOiJmb29AZm9vLmNvbSJ9"
+ # => "https://api.keen.io/3.0/projects/12345/events/email_opens?api_key=abcde&data=eyJyZWNpcGllbnQiOiJmb29AZm9vLmNvbSJ9"
To track email opens, simply add an image to your email template that points to this URL.
+
+### Changelog
+
+##### 0.4.4
++ Event collections are URI escaped to account for spaces.
++ User agent of API calls made more granular to aid in support cases.
++ Throw arguments error for nil event_collection and properties arguments.
+
+##### 0.4.3
++ Added beacon_url support
++ Add support for using em-synchrony with asynchronous calls
### Questions & Support
If you have any questions, bugs, or suggestions, please
report them via Github Issues. Or, come chat with us anytime