Skip to content

Releases: watzenare/PushApi

Bumblebee

01 Apr 15:32
Compare
Choose a tag to compare

Updates

  • Added log system to find errors faster. While debugging there are more logs and it is easier to follow the stack trace.
  • Removed exceptions from Models, all exceptions are generated only by Controllers.
  • Added a new exception.
  • Code refactored && syntax updated.
  • Added new param for mail trakings.

Fixes

  • Solved bug that does not let workers send mots of the notifications because an exception was not being catched.
  • Avoided to send mails through a closed socket.

Dragon-fly

17 Dec 09:33
Compare
Choose a tag to compare

New documentation

Visit the new documentation site

Min updates:

  • Updated delete calls, now return boolean result.
  • Added copyright and license documentation.
  • Updated creation DB script.

Big updates:

  • Bugs prevented and corrected.
  • Added a migration tool to update old database contents to the new Push API version (it is only needed if you are using some of the old versions).
  • Hard code refactoring (now models will support all required methods and controllers just call them).
  • Added new call to add various devices identifications per user (more than one email, android id, ...).
  • GET users, themes, channels and subjects call now supports pagination system.
  • Updated UserController with the new calls and new refactored model system.
  • Added a Device model and updated User system (both models should work as one model).
  • PushApi is able to handle more than one device identifications per user in order to send notifications to all of them.
  • Added new method to remove all devices of the same type (emails not available).
  • Removed functionalities from LogController to QueueController.

New calls:

Available methods Route Description
POST && GET /user/:id/device POST: Adds devices to user :id.
GET: Retrives user :id device unique id given its reference by param.
GET && DELETE /user/:id/device/:idDevice GET: Retrives user :id device unique id given its reference by param.
DELETE: Removes the device :idDevice from user :id.
DELETE /user/:id/device/type/:type Removes all user devices given its type.
PUT /user/:id/preferences Updates all user preferences to the same option. It can enable/disable all or choose to which device wants to receive all the notifications.

Fly

06 Nov 16:22
Compare
Choose a tag to compare
Fly

New

  • Added Ios Push
  • Added PUT call to set the same option value to all preferences (i.e. disable all notifications, enable all to all devices, enable all but only by email, ...).
  • Added option in order to restrict unicast notifications send per day from the same theme.
  • Added delay time to all workers if the notification requires it.
  • Added new route that retrives the smartphones that user has registered.
  • Added a redirect restriction on push notifications messages.
  • Added 'time_to_live' to send params. By default, messages have a TTL of one day. This is done in order to avoid send messages when workers fail and they are reactivated late (for example). It is better no notification than a late notification.

Updates

  • Updated documentation && now using a new documentation page
  • Updated base structure in order to update the debug mode via configuration file
  • Updated LogController function removing params and passing them into an array.

Fixes

  • Preventing to set the same device id to diferent users while updating user data.
  • Preventing to set the same mail that another user while updating user data.

Wasp

23 Jun 10:08
Compare
Choose a tag to compare

Updates:

  • Corrected some bugs.
  • Corrected syntax and removed magic number.
  • Updated some strings to constants or added into the config file.
  • Patched DB overload and reduced the run time of each send call (from an average of 30 sec per call to an average of 14 ms per call).
  • Updated DB structure
  • Updated the push notifications for Android devices, now it is prepared to send notifications to Android devices.

Info:

  • It is being tested handling a database of more than 400k users.
  • It is sending an average of 50k daily mails.
  • The same values than before with android smartphones.

Bug correction and new features

01 Apr 15:27
Compare
Choose a tag to compare
  • Code refactored
  • Syntax corrected
  • Updated documentation
  • Added sample mail template
  • Added another sending limitation for mail service
  • Introduced mail tracking system using hidden pixel (stores user connection when it opens the mail)
  • Corrected heavy bug that was updating preferences for all users at the same time and they weren't individual preferences stored
  • Added a blocking redis call in order to keep alive the sending scripts
  • Prevented to send twice a day the same notification type in order to avoid send too much spam
  • Introduced 2 new sending params:
    • 'subject', it is available to set a custom notification subject instead of using the default DB subject
    • 'delay', it is available to set a delay before send any type of notification (maximum 1 hour of delay)

Improved code quality

22 Jan 10:14
Compare
Choose a tag to compare
  • Updated documentation
  • Corrected syntax
  • Code refactored
  • Added sample config file
  • Corrected bugs
  • Added 2 new calls
  • Upgraded some results
  • Updated broadcast send, default value is send to all devices but if user has set preferences it is used that value

Preparing for tests but only tested by manual testing.

Initial release

23 Dec 09:33
Compare
Choose a tag to compare
  • PushApi practically finished and operative but not tested with any testing tool (tested only if the routes are working).
  • Targets that currently sends notifications: Mail & Android.
  • Authentication system using the API.
  • Sending workers prepared for the working targets.