crisp-im / crisp-sdk-ios

:package: Crisp iOS SDK, add a chat in any iOS app and communicate with your users.
https://docs.crisp.chat/guides/chatbox-sdks/ios-sdk/
Other
44 stars 19 forks source link

Notifications #17

Open csacsi opened 4 years ago

csacsi commented 4 years ago

It would be great to know if the user has some unread messages, or notifications also. Is it possible to have in the SDK? Do you have any plans about it?

JMCPH commented 4 years ago

@baptistejamin is still in the backlog?

We are very close to deciding on going forward with Crisp, but this feature is essential for our users.

baptistejamin commented 4 years ago

We are going to offer an integration with OneSignal

JMCPH commented 4 years ago

Sounds great, when can we expect this to be released?

JMCPH commented 4 years ago

@baptistejamin when can we expect this to be released?

astjohn commented 1 year ago

@baptistejamin - A year or two ago, Intercom's SDK had this functionality built-in so that a message was never missed. If the app was in the foreground, they had a nice chat bubble appear as an overlay to whatever screen the user was on. If the app was in the background, some hooks could be set up to catch it as per the normal routine of handling push notifications. No third-party required. This would be a nice addition. I believe it requires a good chunk of work on your backend to be able to accept our push credentials and use them however.

baptistejamin commented 1 year ago

Do you use FCM in your app?

On Thu 17 Aug 2023 at 18:30, Adam St. John @.***> wrote:

@baptistejamin https://github.com/baptistejamin - A year or two ago, Intercom's SDK had this functionality built-in so that a message was never missed. If the app was in the foreground, they had a nice chat bubble appear as an overlay to whatever screen the user was on. If the app was in the background, some hooks could be set up to catch it as per the normal routine of handling push notifications. No third-party required. This would be a nice addition. I believe it requires a good chunk of work on your backend to be able to accept our push credentials and use them however.

— Reply to this email directly, view it on GitHub https://github.com/crisp-im/crisp-sdk-ios/issues/17#issuecomment-1682601907, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGTRQ762RV6RIODXGDD55DXVZBJNANCNFSM4JRUN7XA . You are receiving this because you were mentioned.Message ID: @.***>

-- Baptiste Jamin Co-founder CEO, Crisp https://crisp.im/ - Connect your customers to your team.

vikalp commented 4 months ago

Yes, we use FCM. Is there a way to get this done. As right now what I can figure out it to use a webhook and do a lot of hardwork at our end :)

A Trick that many push notification systems like PinPoint Twilio SDK etc does, where-in the firebase token specific to SDK is pulled from the app and is associated with the User external SDK like of yourselves are creating at your backend for communication using push notification whenever a new message is written by Agent to a user.

lionel-alves commented 3 months ago

@baptistejamin I like Crisp on the web but it is the only one that doesn't handle push notification on iOS (unlike HelpCrunch, Customerly and of course Intercom) iOS support is not viable without notifications.

  1. the user send you a message
  2. you answer
  3. the use never sees your message since their are no push notification or badges.
  4. all support done on iOS is unless Please fix 🙏
baptistejamin commented 3 months ago

It's something we are highly considering, however it means connecting to APNS or FCM.

You guys are using APNS? FCM?

lionel-alves commented 3 months ago

APNS will work for sure. Either one is fine for me but you should do check if you can send push notification for Firebase Rest api with a regular API key. If you need the admin sdk private key of the project that's not viable.

baptistejamin commented 3 months ago

If you have an Android App it will be the way anyway...

lionel-alves commented 3 months ago

For Android Intercom asks for the Admin SDK private key, but not for iOS where they use APNS directly. Any ETA on this?

astjohn commented 3 months ago

@baptistejamin - for what it's worth, my suggestion would be to not force anyone to use FCM as some will inherently be using APNS directly. This means you would need to collect private tokens for both APNS (ios) and FCM (android) from Crisp clients and store them on the company's crisp profile in a secure way so that you can send push notifications on behalf of your clients. Your backend would integrate with both platforms and switch based on both platform and the private token of each client.

On the sdk side, you would need to collect the device push tokens and again store those on your backend associated with each chat user and what type of mobile device they are using for each token.

Then you have everything you would need to deliver push messages based on platform.

From there you would need to expose some hooks in the SDK api's so we can direct notifications that your the Crisp SDK could catch based on some data in the payload (or ignore if crisp data not present).

And from there it's a matter of UI/UX based on foreground/background/terminated app status.

It's a bunch of work, but practically mandatory for a well functioning chat SDK.

baptistejamin commented 3 months ago

@astjohn Could you send an email to baptiste@crisp.chat, I have a bunch of questions for you before we can implement this.

Franciscortega commented 2 months ago

Hi ! I'm jumping in the conversation as I'm currently choosing our Customer Support provider.

Crisp is a great candidate but because we're mobile-only, it's very important that we can provide push notification on iOS (we're using APNS). Do you have any update on this topic ?

Thanks 🙏

rlindsey2 commented 2 months ago

+1 for notifications on iOS. It seems very hard to help customers if we cannot communicate to them we've messaged them

baptistejamin commented 2 months ago

We are currently working on this :)

axldyb commented 1 month ago

+1 here too. Great that you are prioritizing this. We are considering Crisp as our support tool and this was one of the major downsides for our apps compared to your competition.

oyvindholmstad commented 1 month ago

@baptistejamin Cool to hear you are currently working on this 👏 This feature is pretty critical to us, so what I am wondering is if it is worth implementing a work around using webhooks using our own notification system while waiting, or is this right around the corner?

gixdev commented 1 month ago

@baptistejamin When are you planning to implement it? At the very least, you can implement a manual asynchronous check for new messages. The implementation is quite straightforward.

baptistejamin commented 3 weeks ago

Yes, merges are being reviewed it's definitely on the track :)

davit-b commented 1 week ago

Following the intercom docs to generate, seems I got it to verify my APNs private key.

but it says inactive. Guess that's pending this ios-sdk release? @baptistejamin

Screenshot 2024-11-03 at 2 00 18 PM
baptistejamin commented 1 week ago

Absolutely. We are jsut waiting SDKs to be updated and push notifications will be flowing :)