Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add setting a in-app event listener #147

Merged
merged 6 commits into from Jan 18, 2023

Conversation

levibostian
Copy link
Member

@levibostian levibostian commented Nov 15, 2022

Closes: https://github.com/customerio/issues/issues/8360

QA: Instructions on testing here

docs updates

Complete each step to get your pull request merged in. Learn more about the workflow this project uses.

  • Assign members of your team to review the pull request.
  • Wait for pull request status checks to complete. If there are problems, fix them until you see that all status checks are passing.
  • Wait until the pull request has been reviewed and approved by a teammate
  • After pull request is approved, and you determine it's ready add the label "Ready to merge" to the pull request and it will automatically be merged.

@ami-oss-ci
Copy link

ami-oss-ci commented Nov 15, 2022

Pull request title looks good 👍!

If this pull request gets merged, it will cause a new release of the software. Example: If this project's latest release version is 1.0.0. If this pull request gets merged in, the next release of this project will be 1.1.0. This pull request is not a breaking change.

All merged pull requests will eventually get deployed. But some types of pull requests will trigger a deployment (such as features and bug fixes) while some pull requests will wait to get deployed until a later time.

To merge this pull request, add the label Ready to merge to this pull request and I'll merge it for you.

This project uses a special format for pull requests titles. Expand this section to learn more (expand by clicking the ᐅ symbol on the left side of this sentence)...

This project uses a special format for pull requests titles. Don't worry, it's easy!

This pull request title should be in this format:

<type>: short description of change being made

If your pull request introduces breaking changes to the code, use this format:

<type>!: short description of breaking change

where <type> is one of the following:

  • feat: - A feature is being added or modified by this pull request. Use this if you made any changes to any of the features of the project.

  • fix: - A bug is being fixed by this pull request. Use this if you made any fixes to bugs in the project.

  • docs: - This pull request is making documentation changes, only.

  • refactor: - A change was made that doesn't fix a bug or add a feature.

  • test: - Adds missing tests or fixes broken tests.

  • style: - Changes that do not effect the code (whitespace, linting, formatting, semi-colons, etc)

  • perf: - Changes improve performance of the code.

  • build: - Changes to the build system (maven, npm, gulp, etc)

  • ci: - Changes to the CI build system (Travis, GitHub Actions, Circle, etc)

  • chore: - Other changes to project that don't modify source code or test files.

  • revert: - Reverts a previous commit that was made.

Examples:

feat: edit profile photo
refactor!: remove deprecated v1 endpoints
build: update npm dependencies
style: run formatter 

Need more examples? Want to learn more about this format? Check out the official docs.

Note: If your pull request does multiple things such as adding a feature and makes changes to the CI server and fixes some bugs then you might want to consider splitting this pull request up into multiple smaller pull requests.

@codecov
Copy link

codecov bot commented Nov 15, 2022

Codecov Report

Merging #147 (cbe8dd3) into develop (51af98f) will increase coverage by 0.33%.
The diff coverage is 81.39%.

@@              Coverage Diff              @@
##             develop     #147      +/-   ##
=============================================
+ Coverage      60.23%   60.56%   +0.33%     
- Complexity       187      198      +11     
=============================================
  Files             90       91       +1     
  Lines           1984     2026      +42     
  Branches         257      257              
=============================================
+ Hits            1195     1227      +32     
- Misses           690      695       +5     
- Partials          99      104       +5     
Impacted Files Coverage Δ
...ustomer/messaginginapp/provider/GistApiProvider.kt 0.00% <0.00%> (ø)
...ssaginginapp/provider/GistInAppMessagesProvider.kt 56.25% <64.28%> (+6.25%) ⬆️
...io/customer/messaginginapp/ModuleMessagingInApp.kt 51.02% <80.00%> (+1.02%) ⬆️
...tomer/messaginginapp/MessagingInAppModuleConfig.kt 87.50% <100.00%> (-12.50%) ⬇️
...va/io/customer/messaginginapp/type/InAppMessage.kt 100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@github-actions
Copy link

Build available to test
Version: levi-inapp-event-listener-SNAPSHOT
Repository: https://s01.oss.sonatype.org/content/repositories/snapshots/

@levibostian levibostian marked this pull request as ready for review November 15, 2022 14:38
@levibostian levibostian self-assigned this Nov 15, 2022
@levibostian levibostian requested review from mrehan27 and Shahroz16 and removed request for mrehan27 November 15, 2022 14:38
val deliveryId: String? // (Currently taken from Gist's campaignId property). Can be null when sending test in-app messages
) {
companion object {
internal fun getFromGistMessage(gistMessage: Message): InAppMessage {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You already created Message extension earlier, do you think it would make more sense if we add it there?

fun Message.getFromGistMessage(): InAppMessage {
    val gistProperties = GistMessageProperties.getGistProperties(this)
    val campaignId = gistProperties.campaignId

    return InAppMessage(
        instanceId = this.instanceId,
        messageId = this.messageId,
        deliveryId = campaignId
    )
}

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do enjoy extensions and see value in creating a fun Message.getFromGistMessage(): InAppMessage extension function.

However, I do like encapsulating the construction of a InAppMessage object existing inside of the InAppMessage object.

If we want to leverage extensions, I vote we keep InAppMessage.getFromGistMessage() as-is but create an extension:

fun Message.getFromGistMessage() = InAppMessage.getFromGistMessage(this)

)
)
)
)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like we aren't using the receiver Message, so this should have been on InAppMessage instead?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I don't understand your question.

Is the question you have a question that Shahroz asked in this PR or a different question?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think what Rehan meant to say is, is an extension method on build.gist.data.model.Message and we aren't using the receiver "build.gist.data.model.Message" but we are using the InAppMessage model only.

So would it make more sense to have "InAppMessage" as a receiver rather than "build.gist.data.model.Message" which isn't being used.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shahroz got this right. I was suggesting this method to be following instead:

fun InAppMessage.getNewMessage(): Message

As I don't see this receiver used anywhere in the extension.

@Shahroz16
Copy link
Contributor

Shahroz16 commented Nov 24, 2022

@levibostian I think this point is still pending.

@levibostian
Copy link
Member Author

Do not merge until this change is made.

Remove instanceId from the listener events.

message-shown/dismissed/error:
{
   messageId: string,
   deliveryId: string
}
message-action:
{
   messageId: string,
   deliveryId: string,
   action: string,
   name: string, // what are examples of name/action?
}

Learn more

@matt-frizzell matt-frizzell requested a review from a team January 18, 2023 01:23
Copy link
Contributor

@matt-frizzell matt-frizzell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From what I can see the outstanding pieces were dealt with and if the branch has been updated from develop this looks ready to merge to me. (I had to study up on Kotlin a little bit, but that was fine)

@Shahroz16 Shahroz16 merged commit 5fd9559 into develop Jan 18, 2023
@Shahroz16 Shahroz16 deleted the levi/inapp-event-listener branch January 18, 2023 11:56
ami-ci pushed a commit that referenced this pull request Feb 6, 2023
## [3.3.0-alpha.1](3.2.0...3.3.0-alpha.1) (2023-02-06)

### Features

* add setting a in-app event listener ([#147](#147)) ([5fd9559](5fd9559))
* in-app feature no longer requires orgId ([#163](#163)) ([fc2a08e](fc2a08e))

### Bug Fixes

* moved shared wrapper code ([#158](#158)) ([51af98f](51af98f))
* remove currentRoute parameter in in-app event listener ([#159](#159)) ([688e4a5](688e4a5))
* rename in app listener keys ([#164](#164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([#162](#162)) ([44cc4d1](44cc4d1))
* upgrade dependencies ([#146](#146)) ([6da8b8d](6da8b8d))
@ami-ci
Copy link
Contributor

ami-ci commented Feb 6, 2023

🎉 This PR is included in version 3.3.0-alpha.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

ami-ci pushed a commit that referenced this pull request Feb 7, 2023
## [3.3.0-beta.1](3.2.0...3.3.0-beta.1) (2023-02-07)

### Features

* add setting a in-app event listener ([#147](#147)) ([5fd9559](5fd9559))
* in-app feature no longer requires orgId ([#163](#163)) ([fc2a08e](fc2a08e))

### Bug Fixes

* moved shared wrapper code ([#158](#158)) ([51af98f](51af98f))
* remove currentRoute parameter in in-app event listener ([#159](#159)) ([688e4a5](688e4a5))
* rename in app listener keys ([#164](#164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([#162](#162)) ([44cc4d1](44cc4d1))
* upgrade dependencies ([#146](#146)) ([6da8b8d](6da8b8d))
@ami-ci
Copy link
Contributor

ami-ci commented Feb 7, 2023

🎉 This PR is included in version 3.3.0-beta.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

github-actions bot pushed a commit to nunofgs/customerio-android that referenced this pull request Feb 10, 2023
## 1.0.0 (2023-02-10)

### ⚠ BREAKING CHANGES

* android 12 deep link fix
* get current FCM token on SDK startup
* register device attributes when set
* create background queue to make API synchronous

### Features

* add device and profile attribute setters ([789f09f](789f09f))
* add device_manufacturer device attribute ([6a60f39](6a60f39))
* add setting a in-app event listener ([customerio#147](https://github.com/nunofgs/customerio-android/issues/147)) ([5fd9559](5fd9559))
* added option to customize push notification from app ([68010f8](68010f8))
* added shared instance for independent components ([70fa8cd](70fa8cd))
* added support for custom track url ([b61a64b](b61a64b))
* added support for device attributes ([customerio#71](https://github.com/nunofgs/customerio-android/issues/71)) ([5fedf26](5fedf26))
* added support to modify notification small icon ([b93c2dc](b93c2dc))
* automatic screen tracking ([customerio#52](https://github.com/nunofgs/customerio-android/issues/52)) ([8f95ebb](8f95ebb))
* changes for react native package ([2f20ac3](2f20ac3))
* create background queue to make API synchronous ([2524460](2524460))
* delete expired background queue tasks ([8dca8b7](8dca8b7))
* event tracking, identify customer ([customerio#29](https://github.com/nunofgs/customerio-android/issues/29)) ([5181268](5181268))
* get current FCM token on SDK startup ([dda443d](dda443d))
* in app sdk ([1036c80](1036c80))
* in-app feature no longer requires orgId ([customerio#163](https://github.com/nunofgs/customerio-android/issues/163)) ([fc2a08e](fc2a08e))
* manual screen tracking ([customerio#51](https://github.com/nunofgs/customerio-android/issues/51)) ([213a278](213a278))
* Push notification  ([customerio#31](https://github.com/nunofgs/customerio-android/issues/31)) ([c639802](c639802))
* register device attributes when set ([0f5159e](0f5159e))
* Rich push support  ([customerio#34](https://github.com/nunofgs/customerio-android/issues/34)) ([2480127](2480127))
* sdk initialization re-architecture ([9e21960](9e21960))
* set log level via SDK config ([81eea4e](81eea4e))
* support for custom device attributes and config ([customerio#77](https://github.com/nunofgs/customerio-android/issues/77)) ([a7dbaba](a7dbaba))
* updated client to support react native user agent ([7588526](7588526))

### Bug Fixes

* added alternative route to fetch screen name for automatic tracking ([customerio#92](https://github.com/nunofgs/customerio-android/issues/92)) ([37a20b5](37a20b5))
* added java compatibility in public constructors and methods ([2bb73be](2bb73be))
* added java compatibility in public constructors and methods ([acdec46](acdec46))
* added support for big decimal ([customerio#56](https://github.com/nunofgs/customerio-android/issues/56)) ([58c791b](58c791b))
* allow http requests in host app ([customerio#74](https://github.com/nunofgs/customerio-android/issues/74)) ([1035648](1035648))
* android 12 deep link fix ([fd7ae28](fd7ae28))
* cio sdk version attribute using client value ([bb90f35](bb90f35))
* code cleanup ([c651ee6](c651ee6))
* crash using invalid characters in HTTP header ([customerio#75](https://github.com/nunofgs/customerio-android/issues/75)) ([81a065e](81a065e))
* delete device token when clear identify ([72f9753](72f9753))
* deploy code script commands ([customerio#124](https://github.com/nunofgs/customerio-android/issues/124)) ([fe817d1](fe817d1))
* events are tracked to identified customer ([71634ed](71634ed))
* in-app messages instant delivery ([customerio#150](https://github.com/nunofgs/customerio-android/issues/150)) ([a6dcf3c](a6dcf3c))
* in-app messages stop delivering ([4027502](4027502))
* in-app system link causes app reopen ([6349081](6349081))
* moved shared wrapper code ([customerio#158](https://github.com/nunofgs/customerio-android/issues/158)) ([51af98f](51af98f))
* number parsing coverts to double ([customerio#57](https://github.com/nunofgs/customerio-android/issues/57)) ([72a80fe](72a80fe))
* parsing exception for expired tasks ([440bb13](440bb13))
* pro-guarding removal of enums  ([customerio#39](https://github.com/nunofgs/customerio-android/issues/39)) ([dd27d35](dd27d35))
* queue attempts to run all tasks on each run ([e180dea](e180dea))
* register device tokens http request ([b1c6872](b1c6872))
* remove currentRoute parameter in in-app event listener ([customerio#159](https://github.com/nunofgs/customerio-android/issues/159)) ([688e4a5](688e4a5))
* rename in app listener keys ([customerio#164](https://github.com/nunofgs/customerio-android/issues/164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([customerio#162](https://github.com/nunofgs/customerio-android/issues/162)) ([44cc4d1](44cc4d1))
* timestamp conversion issue ([customerio#37](https://github.com/nunofgs/customerio-android/issues/37)) ([d986f54](d986f54))
* track opens fcm notification payload ([ab3cd18](ab3cd18))
* updated host endpoints ([customerio#53](https://github.com/nunofgs/customerio-android/issues/53)) ([efe2b9e](efe2b9e))
* updated json adapter usage to safe parsing ([f72280b](f72280b))
* upgrade dependencies ([customerio#146](https://github.com/nunofgs/customerio-android/issues/146)) ([6da8b8d](6da8b8d))
* user agent ([customerio#42](https://github.com/nunofgs/customerio-android/issues/42)) ([37af83e](37af83e))
* user agent client support in preferences repo ([454a18e](454a18e))
* version bump for gist sdk to resolve messaging not showing bug ([05dad42](05dad42))
github-actions bot pushed a commit to nunofgs/customerio-android that referenced this pull request Feb 13, 2023
## 1.0.0 (2023-02-13)

### ⚠ BREAKING CHANGES

* android 12 deep link fix
* get current FCM token on SDK startup
* register device attributes when set
* create background queue to make API synchronous

### Features

* add device and profile attribute setters ([789f09f](789f09f))
* add device_manufacturer device attribute ([6a60f39](6a60f39))
* add setting a in-app event listener ([customerio#147](https://github.com/nunofgs/customerio-android/issues/147)) ([5fd9559](5fd9559))
* added option to customize push notification from app ([68010f8](68010f8))
* added shared instance for independent components ([70fa8cd](70fa8cd))
* added support for custom track url ([b61a64b](b61a64b))
* added support for device attributes ([customerio#71](https://github.com/nunofgs/customerio-android/issues/71)) ([5fedf26](5fedf26))
* added support to modify notification small icon ([b93c2dc](b93c2dc))
* automatic screen tracking ([customerio#52](https://github.com/nunofgs/customerio-android/issues/52)) ([8f95ebb](8f95ebb))
* changes for react native package ([2f20ac3](2f20ac3))
* create background queue to make API synchronous ([2524460](2524460))
* delete expired background queue tasks ([8dca8b7](8dca8b7))
* event tracking, identify customer ([customerio#29](https://github.com/nunofgs/customerio-android/issues/29)) ([5181268](5181268))
* get current FCM token on SDK startup ([dda443d](dda443d))
* in app sdk ([1036c80](1036c80))
* in-app feature no longer requires orgId ([customerio#163](https://github.com/nunofgs/customerio-android/issues/163)) ([fc2a08e](fc2a08e))
* manual screen tracking ([customerio#51](https://github.com/nunofgs/customerio-android/issues/51)) ([213a278](213a278))
* Push notification  ([customerio#31](https://github.com/nunofgs/customerio-android/issues/31)) ([c639802](c639802))
* register device attributes when set ([0f5159e](0f5159e))
* Rich push support  ([customerio#34](https://github.com/nunofgs/customerio-android/issues/34)) ([2480127](2480127))
* sdk initialization re-architecture ([9e21960](9e21960))
* set log level via SDK config ([81eea4e](81eea4e))
* support for custom device attributes and config ([customerio#77](https://github.com/nunofgs/customerio-android/issues/77)) ([a7dbaba](a7dbaba))
* updated client to support react native user agent ([7588526](7588526))

### Bug Fixes

* added alternative route to fetch screen name for automatic tracking ([customerio#92](https://github.com/nunofgs/customerio-android/issues/92)) ([37a20b5](37a20b5))
* added java compatibility in public constructors and methods ([2bb73be](2bb73be))
* added java compatibility in public constructors and methods ([acdec46](acdec46))
* added support for big decimal ([customerio#56](https://github.com/nunofgs/customerio-android/issues/56)) ([58c791b](58c791b))
* allow http requests in host app ([customerio#74](https://github.com/nunofgs/customerio-android/issues/74)) ([1035648](1035648))
* android 12 deep link fix ([fd7ae28](fd7ae28))
* cio sdk version attribute using client value ([bb90f35](bb90f35))
* code cleanup ([c651ee6](c651ee6))
* crash using invalid characters in HTTP header ([customerio#75](https://github.com/nunofgs/customerio-android/issues/75)) ([81a065e](81a065e))
* delete device token when clear identify ([72f9753](72f9753))
* deploy code script commands ([customerio#124](https://github.com/nunofgs/customerio-android/issues/124)) ([fe817d1](fe817d1))
* events are tracked to identified customer ([71634ed](71634ed))
* in-app messages instant delivery ([customerio#150](https://github.com/nunofgs/customerio-android/issues/150)) ([a6dcf3c](a6dcf3c))
* in-app messages stop delivering ([4027502](4027502))
* in-app system link causes app reopen ([6349081](6349081))
* moved shared wrapper code ([customerio#158](https://github.com/nunofgs/customerio-android/issues/158)) ([51af98f](51af98f))
* number parsing coverts to double ([customerio#57](https://github.com/nunofgs/customerio-android/issues/57)) ([72a80fe](72a80fe))
* parsing exception for expired tasks ([440bb13](440bb13))
* pro-guarding removal of enums  ([customerio#39](https://github.com/nunofgs/customerio-android/issues/39)) ([dd27d35](dd27d35))
* queue attempts to run all tasks on each run ([e180dea](e180dea))
* register device tokens http request ([b1c6872](b1c6872))
* remove currentRoute parameter in in-app event listener ([customerio#159](https://github.com/nunofgs/customerio-android/issues/159)) ([688e4a5](688e4a5))
* rename in app listener keys ([customerio#164](https://github.com/nunofgs/customerio-android/issues/164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([customerio#162](https://github.com/nunofgs/customerio-android/issues/162)) ([44cc4d1](44cc4d1))
* timestamp conversion issue ([customerio#37](https://github.com/nunofgs/customerio-android/issues/37)) ([d986f54](d986f54))
* track opens fcm notification payload ([ab3cd18](ab3cd18))
* updated host endpoints ([customerio#53](https://github.com/nunofgs/customerio-android/issues/53)) ([efe2b9e](efe2b9e))
* updated json adapter usage to safe parsing ([f72280b](f72280b))
* upgrade dependencies ([customerio#146](https://github.com/nunofgs/customerio-android/issues/146)) ([6da8b8d](6da8b8d))
* user agent ([customerio#42](https://github.com/nunofgs/customerio-android/issues/42)) ([37af83e](37af83e))
* user agent client support in preferences repo ([454a18e](454a18e))
* version bump for gist sdk to resolve messaging not showing bug ([05dad42](05dad42))
github-actions bot pushed a commit to nunofgs/customerio-android that referenced this pull request Feb 13, 2023
## 1.0.0 (2023-02-13)

### ⚠ BREAKING CHANGES

* android 12 deep link fix
* get current FCM token on SDK startup
* register device attributes when set
* create background queue to make API synchronous

### Features

* add device and profile attribute setters ([789f09f](789f09f))
* add device_manufacturer device attribute ([6a60f39](6a60f39))
* add setting a in-app event listener ([customerio#147](https://github.com/nunofgs/customerio-android/issues/147)) ([5fd9559](5fd9559))
* added option to customize push notification from app ([68010f8](68010f8))
* added shared instance for independent components ([70fa8cd](70fa8cd))
* added support for custom track url ([b61a64b](b61a64b))
* added support for device attributes ([customerio#71](https://github.com/nunofgs/customerio-android/issues/71)) ([5fedf26](5fedf26))
* added support to modify notification small icon ([b93c2dc](b93c2dc))
* automatic screen tracking ([customerio#52](https://github.com/nunofgs/customerio-android/issues/52)) ([8f95ebb](8f95ebb))
* changes for react native package ([2f20ac3](2f20ac3))
* create background queue to make API synchronous ([2524460](2524460))
* delete expired background queue tasks ([8dca8b7](8dca8b7))
* event tracking, identify customer ([customerio#29](https://github.com/nunofgs/customerio-android/issues/29)) ([5181268](5181268))
* get current FCM token on SDK startup ([dda443d](dda443d))
* in app sdk ([1036c80](1036c80))
* in-app feature no longer requires orgId ([customerio#163](https://github.com/nunofgs/customerio-android/issues/163)) ([fc2a08e](fc2a08e))
* manual screen tracking ([customerio#51](https://github.com/nunofgs/customerio-android/issues/51)) ([213a278](213a278))
* Push notification  ([customerio#31](https://github.com/nunofgs/customerio-android/issues/31)) ([c639802](c639802))
* register device attributes when set ([0f5159e](0f5159e))
* Rich push support  ([customerio#34](https://github.com/nunofgs/customerio-android/issues/34)) ([2480127](2480127))
* sdk initialization re-architecture ([9e21960](9e21960))
* set log level via SDK config ([81eea4e](81eea4e))
* support for custom device attributes and config ([customerio#77](https://github.com/nunofgs/customerio-android/issues/77)) ([a7dbaba](a7dbaba))
* updated client to support react native user agent ([7588526](7588526))

### Bug Fixes

* added alternative route to fetch screen name for automatic tracking ([customerio#92](https://github.com/nunofgs/customerio-android/issues/92)) ([37a20b5](37a20b5))
* added java compatibility in public constructors and methods ([2bb73be](2bb73be))
* added java compatibility in public constructors and methods ([acdec46](acdec46))
* added support for big decimal ([customerio#56](https://github.com/nunofgs/customerio-android/issues/56)) ([58c791b](58c791b))
* allow http requests in host app ([customerio#74](https://github.com/nunofgs/customerio-android/issues/74)) ([1035648](1035648))
* android 12 deep link fix ([fd7ae28](fd7ae28))
* cio sdk version attribute using client value ([bb90f35](bb90f35))
* code cleanup ([c651ee6](c651ee6))
* crash using invalid characters in HTTP header ([customerio#75](https://github.com/nunofgs/customerio-android/issues/75)) ([81a065e](81a065e))
* delete device token when clear identify ([72f9753](72f9753))
* deploy code script commands ([customerio#124](https://github.com/nunofgs/customerio-android/issues/124)) ([fe817d1](fe817d1))
* events are tracked to identified customer ([71634ed](71634ed))
* in-app messages instant delivery ([customerio#150](https://github.com/nunofgs/customerio-android/issues/150)) ([a6dcf3c](a6dcf3c))
* in-app messages stop delivering ([4027502](4027502))
* in-app system link causes app reopen ([6349081](6349081))
* moved shared wrapper code ([customerio#158](https://github.com/nunofgs/customerio-android/issues/158)) ([51af98f](51af98f))
* number parsing coverts to double ([customerio#57](https://github.com/nunofgs/customerio-android/issues/57)) ([72a80fe](72a80fe))
* parsing exception for expired tasks ([440bb13](440bb13))
* pro-guarding removal of enums  ([customerio#39](https://github.com/nunofgs/customerio-android/issues/39)) ([dd27d35](dd27d35))
* queue attempts to run all tasks on each run ([e180dea](e180dea))
* register device tokens http request ([b1c6872](b1c6872))
* remove currentRoute parameter in in-app event listener ([customerio#159](https://github.com/nunofgs/customerio-android/issues/159)) ([688e4a5](688e4a5))
* rename in app listener keys ([customerio#164](https://github.com/nunofgs/customerio-android/issues/164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([customerio#162](https://github.com/nunofgs/customerio-android/issues/162)) ([44cc4d1](44cc4d1))
* timestamp conversion issue ([customerio#37](https://github.com/nunofgs/customerio-android/issues/37)) ([d986f54](d986f54))
* track opens fcm notification payload ([ab3cd18](ab3cd18))
* updated host endpoints ([customerio#53](https://github.com/nunofgs/customerio-android/issues/53)) ([efe2b9e](efe2b9e))
* updated json adapter usage to safe parsing ([f72280b](f72280b))
* upgrade dependencies ([customerio#146](https://github.com/nunofgs/customerio-android/issues/146)) ([6da8b8d](6da8b8d))
* user agent ([customerio#42](https://github.com/nunofgs/customerio-android/issues/42)) ([37af83e](37af83e))
* user agent client support in preferences repo ([454a18e](454a18e))
* version bump for gist sdk to resolve messaging not showing bug ([05dad42](05dad42))
github-actions bot pushed a commit to nunofgs/customerio-android that referenced this pull request Feb 13, 2023
## 1.0.0 (2023-02-13)

### ⚠ BREAKING CHANGES

* android 12 deep link fix
* get current FCM token on SDK startup
* register device attributes when set
* create background queue to make API synchronous

### Features

* add device and profile attribute setters ([789f09f](789f09f))
* add device_manufacturer device attribute ([6a60f39](6a60f39))
* add setting a in-app event listener ([customerio#147](https://github.com/nunofgs/customerio-android/issues/147)) ([5fd9559](5fd9559))
* added option to customize push notification from app ([68010f8](68010f8))
* added shared instance for independent components ([70fa8cd](70fa8cd))
* added support for custom track url ([b61a64b](b61a64b))
* added support for device attributes ([customerio#71](https://github.com/nunofgs/customerio-android/issues/71)) ([5fedf26](5fedf26))
* added support to modify notification small icon ([b93c2dc](b93c2dc))
* automatic screen tracking ([customerio#52](https://github.com/nunofgs/customerio-android/issues/52)) ([8f95ebb](8f95ebb))
* changes for react native package ([2f20ac3](2f20ac3))
* create background queue to make API synchronous ([2524460](2524460))
* delete expired background queue tasks ([8dca8b7](8dca8b7))
* event tracking, identify customer ([customerio#29](https://github.com/nunofgs/customerio-android/issues/29)) ([5181268](5181268))
* get current FCM token on SDK startup ([dda443d](dda443d))
* in app sdk ([1036c80](1036c80))
* in-app feature no longer requires orgId ([customerio#163](https://github.com/nunofgs/customerio-android/issues/163)) ([fc2a08e](fc2a08e))
* manual screen tracking ([customerio#51](https://github.com/nunofgs/customerio-android/issues/51)) ([213a278](213a278))
* Push notification  ([customerio#31](https://github.com/nunofgs/customerio-android/issues/31)) ([c639802](c639802))
* register device attributes when set ([0f5159e](0f5159e))
* Rich push support  ([customerio#34](https://github.com/nunofgs/customerio-android/issues/34)) ([2480127](2480127))
* sdk initialization re-architecture ([9e21960](9e21960))
* set log level via SDK config ([81eea4e](81eea4e))
* support for custom device attributes and config ([customerio#77](https://github.com/nunofgs/customerio-android/issues/77)) ([a7dbaba](a7dbaba))
* updated client to support react native user agent ([7588526](7588526))

### Bug Fixes

* added alternative route to fetch screen name for automatic tracking ([customerio#92](https://github.com/nunofgs/customerio-android/issues/92)) ([37a20b5](37a20b5))
* added java compatibility in public constructors and methods ([2bb73be](2bb73be))
* added java compatibility in public constructors and methods ([acdec46](acdec46))
* added support for big decimal ([customerio#56](https://github.com/nunofgs/customerio-android/issues/56)) ([58c791b](58c791b))
* allow http requests in host app ([customerio#74](https://github.com/nunofgs/customerio-android/issues/74)) ([1035648](1035648))
* android 12 deep link fix ([fd7ae28](fd7ae28))
* cio sdk version attribute using client value ([bb90f35](bb90f35))
* code cleanup ([c651ee6](c651ee6))
* crash using invalid characters in HTTP header ([customerio#75](https://github.com/nunofgs/customerio-android/issues/75)) ([81a065e](81a065e))
* delete device token when clear identify ([72f9753](72f9753))
* deploy code script commands ([customerio#124](https://github.com/nunofgs/customerio-android/issues/124)) ([fe817d1](fe817d1))
* events are tracked to identified customer ([71634ed](71634ed))
* in-app messages instant delivery ([customerio#150](https://github.com/nunofgs/customerio-android/issues/150)) ([a6dcf3c](a6dcf3c))
* in-app messages stop delivering ([4027502](4027502))
* in-app system link causes app reopen ([6349081](6349081))
* moved shared wrapper code ([customerio#158](https://github.com/nunofgs/customerio-android/issues/158)) ([51af98f](51af98f))
* number parsing coverts to double ([customerio#57](https://github.com/nunofgs/customerio-android/issues/57)) ([72a80fe](72a80fe))
* parsing exception for expired tasks ([440bb13](440bb13))
* pro-guarding removal of enums  ([customerio#39](https://github.com/nunofgs/customerio-android/issues/39)) ([dd27d35](dd27d35))
* queue attempts to run all tasks on each run ([e180dea](e180dea))
* register device tokens http request ([b1c6872](b1c6872))
* remove currentRoute parameter in in-app event listener ([customerio#159](https://github.com/nunofgs/customerio-android/issues/159)) ([688e4a5](688e4a5))
* rename in app listener keys ([customerio#164](https://github.com/nunofgs/customerio-android/issues/164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([customerio#162](https://github.com/nunofgs/customerio-android/issues/162)) ([44cc4d1](44cc4d1))
* timestamp conversion issue ([customerio#37](https://github.com/nunofgs/customerio-android/issues/37)) ([d986f54](d986f54))
* track opens fcm notification payload ([ab3cd18](ab3cd18))
* updated host endpoints ([customerio#53](https://github.com/nunofgs/customerio-android/issues/53)) ([efe2b9e](efe2b9e))
* updated json adapter usage to safe parsing ([f72280b](f72280b))
* upgrade dependencies ([customerio#146](https://github.com/nunofgs/customerio-android/issues/146)) ([6da8b8d](6da8b8d))
* user agent ([customerio#42](https://github.com/nunofgs/customerio-android/issues/42)) ([37af83e](37af83e))
* user agent client support in preferences repo ([454a18e](454a18e))
* version bump for gist sdk to resolve messaging not showing bug ([05dad42](05dad42))
github-actions bot pushed a commit to nunofgs/customerio-android that referenced this pull request Feb 13, 2023
## 1.0.0 (2023-02-13)

### ⚠ BREAKING CHANGES

* android 12 deep link fix
* get current FCM token on SDK startup
* register device attributes when set
* create background queue to make API synchronous

### Features

* add device and profile attribute setters ([789f09f](789f09f))
* add device_manufacturer device attribute ([6a60f39](6a60f39))
* add setting a in-app event listener ([customerio#147](https://github.com/nunofgs/customerio-android/issues/147)) ([5fd9559](5fd9559))
* added option to customize push notification from app ([68010f8](68010f8))
* added shared instance for independent components ([70fa8cd](70fa8cd))
* added support for custom track url ([b61a64b](b61a64b))
* added support for device attributes ([customerio#71](https://github.com/nunofgs/customerio-android/issues/71)) ([5fedf26](5fedf26))
* added support to modify notification small icon ([b93c2dc](b93c2dc))
* automatic screen tracking ([customerio#52](https://github.com/nunofgs/customerio-android/issues/52)) ([8f95ebb](8f95ebb))
* changes for react native package ([2f20ac3](2f20ac3))
* create background queue to make API synchronous ([2524460](2524460))
* delete expired background queue tasks ([8dca8b7](8dca8b7))
* event tracking, identify customer ([customerio#29](https://github.com/nunofgs/customerio-android/issues/29)) ([5181268](5181268))
* get current FCM token on SDK startup ([dda443d](dda443d))
* in app sdk ([1036c80](1036c80))
* in-app feature no longer requires orgId ([customerio#163](https://github.com/nunofgs/customerio-android/issues/163)) ([fc2a08e](fc2a08e))
* manual screen tracking ([customerio#51](https://github.com/nunofgs/customerio-android/issues/51)) ([213a278](213a278))
* Push notification  ([customerio#31](https://github.com/nunofgs/customerio-android/issues/31)) ([c639802](c639802))
* register device attributes when set ([0f5159e](0f5159e))
* Rich push support  ([customerio#34](https://github.com/nunofgs/customerio-android/issues/34)) ([2480127](2480127))
* sdk initialization re-architecture ([9e21960](9e21960))
* set log level via SDK config ([81eea4e](81eea4e))
* support for custom device attributes and config ([customerio#77](https://github.com/nunofgs/customerio-android/issues/77)) ([a7dbaba](a7dbaba))
* updated client to support react native user agent ([7588526](7588526))

### Bug Fixes

* added alternative route to fetch screen name for automatic tracking ([customerio#92](https://github.com/nunofgs/customerio-android/issues/92)) ([37a20b5](37a20b5))
* added java compatibility in public constructors and methods ([2bb73be](2bb73be))
* added java compatibility in public constructors and methods ([acdec46](acdec46))
* added support for big decimal ([customerio#56](https://github.com/nunofgs/customerio-android/issues/56)) ([58c791b](58c791b))
* allow http requests in host app ([customerio#74](https://github.com/nunofgs/customerio-android/issues/74)) ([1035648](1035648))
* android 12 deep link fix ([fd7ae28](fd7ae28))
* cio sdk version attribute using client value ([bb90f35](bb90f35))
* code cleanup ([c651ee6](c651ee6))
* crash using invalid characters in HTTP header ([customerio#75](https://github.com/nunofgs/customerio-android/issues/75)) ([81a065e](81a065e))
* delete device token when clear identify ([72f9753](72f9753))
* deploy code script commands ([customerio#124](https://github.com/nunofgs/customerio-android/issues/124)) ([fe817d1](fe817d1))
* events are tracked to identified customer ([71634ed](71634ed))
* in-app messages instant delivery ([customerio#150](https://github.com/nunofgs/customerio-android/issues/150)) ([a6dcf3c](a6dcf3c))
* in-app messages stop delivering ([4027502](4027502))
* in-app system link causes app reopen ([6349081](6349081))
* moved shared wrapper code ([customerio#158](https://github.com/nunofgs/customerio-android/issues/158)) ([51af98f](51af98f))
* number parsing coverts to double ([customerio#57](https://github.com/nunofgs/customerio-android/issues/57)) ([72a80fe](72a80fe))
* parsing exception for expired tasks ([440bb13](440bb13))
* pro-guarding removal of enums  ([customerio#39](https://github.com/nunofgs/customerio-android/issues/39)) ([dd27d35](dd27d35))
* queue attempts to run all tasks on each run ([e180dea](e180dea))
* register device tokens http request ([b1c6872](b1c6872))
* remove currentRoute parameter in in-app event listener ([customerio#159](https://github.com/nunofgs/customerio-android/issues/159)) ([688e4a5](688e4a5))
* rename in app listener keys ([customerio#164](https://github.com/nunofgs/customerio-android/issues/164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([customerio#162](https://github.com/nunofgs/customerio-android/issues/162)) ([44cc4d1](44cc4d1))
* timestamp conversion issue ([customerio#37](https://github.com/nunofgs/customerio-android/issues/37)) ([d986f54](d986f54))
* track opens fcm notification payload ([ab3cd18](ab3cd18))
* updated host endpoints ([customerio#53](https://github.com/nunofgs/customerio-android/issues/53)) ([efe2b9e](efe2b9e))
* updated json adapter usage to safe parsing ([f72280b](f72280b))
* upgrade dependencies ([customerio#146](https://github.com/nunofgs/customerio-android/issues/146)) ([6da8b8d](6da8b8d))
* user agent ([customerio#42](https://github.com/nunofgs/customerio-android/issues/42)) ([37af83e](37af83e))
* user agent client support in preferences repo ([454a18e](454a18e))
* version bump for gist sdk to resolve messaging not showing bug ([05dad42](05dad42))
github-actions bot pushed a commit to nunofgs/customerio-android that referenced this pull request Feb 13, 2023
## 1.0.0 (2023-02-13)

### ⚠ BREAKING CHANGES

* android 12 deep link fix
* get current FCM token on SDK startup
* register device attributes when set
* create background queue to make API synchronous

### Features

* add device and profile attribute setters ([789f09f](789f09f))
* add device_manufacturer device attribute ([6a60f39](6a60f39))
* add setting a in-app event listener ([customerio#147](https://github.com/nunofgs/customerio-android/issues/147)) ([5fd9559](5fd9559))
* added option to customize push notification from app ([68010f8](68010f8))
* added shared instance for independent components ([70fa8cd](70fa8cd))
* added support for custom track url ([b61a64b](b61a64b))
* added support for device attributes ([customerio#71](https://github.com/nunofgs/customerio-android/issues/71)) ([5fedf26](5fedf26))
* added support to modify notification small icon ([b93c2dc](b93c2dc))
* automatic screen tracking ([customerio#52](https://github.com/nunofgs/customerio-android/issues/52)) ([8f95ebb](8f95ebb))
* changes for react native package ([2f20ac3](2f20ac3))
* create background queue to make API synchronous ([2524460](2524460))
* delete expired background queue tasks ([8dca8b7](8dca8b7))
* event tracking, identify customer ([customerio#29](https://github.com/nunofgs/customerio-android/issues/29)) ([5181268](5181268))
* get current FCM token on SDK startup ([dda443d](dda443d))
* in app sdk ([1036c80](1036c80))
* in-app feature no longer requires orgId ([customerio#163](https://github.com/nunofgs/customerio-android/issues/163)) ([fc2a08e](fc2a08e))
* manual screen tracking ([customerio#51](https://github.com/nunofgs/customerio-android/issues/51)) ([213a278](213a278))
* Push notification  ([customerio#31](https://github.com/nunofgs/customerio-android/issues/31)) ([c639802](c639802))
* register device attributes when set ([0f5159e](0f5159e))
* Rich push support  ([customerio#34](https://github.com/nunofgs/customerio-android/issues/34)) ([2480127](2480127))
* sdk initialization re-architecture ([9e21960](9e21960))
* set log level via SDK config ([81eea4e](81eea4e))
* support for custom device attributes and config ([customerio#77](https://github.com/nunofgs/customerio-android/issues/77)) ([a7dbaba](a7dbaba))
* updated client to support react native user agent ([7588526](7588526))

### Bug Fixes

* added alternative route to fetch screen name for automatic tracking ([customerio#92](https://github.com/nunofgs/customerio-android/issues/92)) ([37a20b5](37a20b5))
* added java compatibility in public constructors and methods ([2bb73be](2bb73be))
* added java compatibility in public constructors and methods ([acdec46](acdec46))
* added support for big decimal ([customerio#56](https://github.com/nunofgs/customerio-android/issues/56)) ([58c791b](58c791b))
* allow http requests in host app ([customerio#74](https://github.com/nunofgs/customerio-android/issues/74)) ([1035648](1035648))
* android 12 deep link fix ([fd7ae28](fd7ae28))
* cio sdk version attribute using client value ([bb90f35](bb90f35))
* code cleanup ([c651ee6](c651ee6))
* crash using invalid characters in HTTP header ([customerio#75](https://github.com/nunofgs/customerio-android/issues/75)) ([81a065e](81a065e))
* delete device token when clear identify ([72f9753](72f9753))
* deploy code script commands ([customerio#124](https://github.com/nunofgs/customerio-android/issues/124)) ([fe817d1](fe817d1))
* events are tracked to identified customer ([71634ed](71634ed))
* in-app messages instant delivery ([customerio#150](https://github.com/nunofgs/customerio-android/issues/150)) ([a6dcf3c](a6dcf3c))
* in-app messages stop delivering ([4027502](4027502))
* in-app system link causes app reopen ([6349081](6349081))
* moved shared wrapper code ([customerio#158](https://github.com/nunofgs/customerio-android/issues/158)) ([51af98f](51af98f))
* number parsing coverts to double ([customerio#57](https://github.com/nunofgs/customerio-android/issues/57)) ([72a80fe](72a80fe))
* parsing exception for expired tasks ([440bb13](440bb13))
* pro-guarding removal of enums  ([customerio#39](https://github.com/nunofgs/customerio-android/issues/39)) ([dd27d35](dd27d35))
* queue attempts to run all tasks on each run ([e180dea](e180dea))
* register device tokens http request ([b1c6872](b1c6872))
* remove currentRoute parameter in in-app event listener ([customerio#159](https://github.com/nunofgs/customerio-android/issues/159)) ([688e4a5](688e4a5))
* rename in app listener keys ([customerio#164](https://github.com/nunofgs/customerio-android/issues/164)) ([f540eaf](f540eaf))
* set gist user token incase identifier exists ([customerio#162](https://github.com/nunofgs/customerio-android/issues/162)) ([44cc4d1](44cc4d1))
* timestamp conversion issue ([customerio#37](https://github.com/nunofgs/customerio-android/issues/37)) ([d986f54](d986f54))
* track opens fcm notification payload ([ab3cd18](ab3cd18))
* updated host endpoints ([customerio#53](https://github.com/nunofgs/customerio-android/issues/53)) ([efe2b9e](efe2b9e))
* updated json adapter usage to safe parsing ([f72280b](f72280b))
* upgrade dependencies ([customerio#146](https://github.com/nunofgs/customerio-android/issues/146)) ([6da8b8d](6da8b8d))
* user agent ([customerio#42](https://github.com/nunofgs/customerio-android/issues/42)) ([37af83e](37af83e))
* user agent client support in preferences repo ([454a18e](454a18e))
* version bump for gist sdk to resolve messaging not showing bug ([05dad42](05dad42))
github-actions bot pushed a commit that referenced this pull request Feb 22, 2023
## [3.3.0](3.2.0...3.3.0) (2023-02-22)

### Features

* add setting a in-app event listener ([#147](#147)) ([5fd9559](5fd9559))
* in-app feature no longer requires orgId ([#163](#163)) ([fc2a08e](fc2a08e))

### Bug Fixes

* image not shown when image url in notification payload ([#172](#172)) ([0abdc85](0abdc85))
* moved shared wrapper code ([#158](#158)) ([51af98f](51af98f))
* remove currentRoute parameter in in-app event listener ([#159](#159)) ([688e4a5](688e4a5))
* rename in app listener keys ([#164](#164)) ([f540eaf](f540eaf))
* set gist dependency to use latest 3.X.Y version ([#170](#170)) ([a019c36](a019c36))
* set gist user token incase identifier exists ([#162](#162)) ([44cc4d1](44cc4d1))
* update CustomerIOFirebaseMessagingService to open ([#174](#174)) ([edce7f5](edce7f5))
* upgrade dependencies ([#146](#146)) ([6da8b8d](6da8b8d))
* use maven style dependency range syntax ([#171](#171)) ([ba83214](ba83214))
@github-actions
Copy link

🎉 This PR is included in version 3.3.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants