Using cloud functions, how to send an FCM notification on a specific topic at a scheduled time of recipient time zone?
I can see that option in notification composer in firebase console, but is there any helper method to send it through code?
Related
I'm integrating Stripe into one of the apps. When I send invoices through Node.js SDK it's not sending invoice emails to customers when I use the test environment API key. But when I use a live environment API key with the exact same code, it sends the invoice email to the customer.
Also when I send invoices from the Stripe dashboard in test mode, it is sending emails to customers. The issue seems to be only with SDK/API in the test mode.
Is it possible to send emails to customers even in test mode using Node.js SDK/API?
Stripe doesn't send email in test mode.
From https://support.stripe.com/questions/not-receiving-email-sent-from-stripe:
Stripe only sends email receipts for payments that are made with your live API key or through your live Dashboard. If you are expecting an email for a test transaction, one will not be sent.
I want to send FCM to everyone who installed the app. Is it essential to get everyone's tokens from the database every time?
My app is using firebase firestore overall. If there are 100,000 users,
do I have to read 100,000 from database to send fcm each time? (I think it`s little heavy stuff isn`t it?)
another workroad exists?
I wonder Is the only way to send it by putting it in the registration ID?
And can you send it on time? All apps on the market send push messages on time, but if you read 100,000 and send fcm separately, shouldn't it arrive like this at 9:01 or 9:02? But why do I always get messages at 9 o'clock?
What are the methods, logic, algorithms they use (the way companies usually use)
I still have no clue at all.
There is no "send to all users" operation in FCM. You either will have to send to each token (that's not a heave operation for FCM, which handles billions of such calls every second), or you have to subscribe all instances to a specific topic and then send to that topics (which ends up the same behind the scenes, just with Firebase loading the tokens for the topic for you).
This has been covered a few times before, so I recommend checking:
How do you send a Firebase Notification to all devices via CURL?
How to send notifications to all devices using Firebase Cloud Messaging
Firebase Cloud Messaging - Send message to all users
The notifications panel in the Firebase console has an option to deliver messages at a specific time, but no such option exists in the Firebase Cloud Messaging API. You'll have to either implement your own mechanism to schedule the delivery, or you can deliver a data message right away and then only display the notification on the device when it's time.
This also has been covered a few times before, so check:
Firebase Messaging FCM Distribution over configurable time interval
How can scheduled Firebase Cloud Messaging notifications be made outside of the Firebase Console?
Flutter Firebase Messaging: How to send push notifications to users at specified time
I am using the official DocuSign java client 3.2.0. I have set the envelope level notification as listed below. Say the webhook URL is https://A.
EventNotification eventNotification = new EventNotification();
eventNotification.setIncludeHMAC("true");
eventNotification.setIncludeDocuments("true");
eventNotification.setRequireAcknowledgment("true");
eventNotification.setUrl("https://A");
EnvelopeEvent envelopeEvent = new EnvelopeEvent();
envelopeEvent.setEnvelopeEventStatusCode("completed");
eventNotification.setEnvelopeEvents(Arrays.asList(envelopeEvent));
envelopeDefinition.setEventNotification(eventNotification);
I am trying to test the retry logic for this webhook. After few successful push requests, I intentionally made the service to return non 200 code (Example 404) for one of the request. Then I reverted the logic, so that the service continue to return 200 response for new requests.
I checked after more than 24 hours, the failed request was never retried.
Is there any reason why the request was never retried eventhough there were successful requests after the failure?
I also have a connect listener configured to push the complete notification for all the envelopes to webhook URL https://B
Currently we have come issue with this webhook URL, so all the push notification to https://B is getting failed.
Is the continuous failure with the https://B connect webhook stop retries to envelope level notification webhook https://A ?
Also Is there any difference between the connect retry vs envelope notification retries?
For for global account events (all users and envelopes) make sure "Require Acknowledgement" option is selected in your Connect settings for the specific webhook for the failed to be re-pushed.
Connect webhook is global (all users and envelopes) for the account and you can select when is triggered for example "Envelope Sent", "Envelope Voided" etc. In this way you can have multiple webhooks handling different account events.
In your case you are setting webhook notification only for the specified envelope.
Also this could help you
https://developers.docusign.com/docs/esign-rest-api/reference/Connect/ConnectEvents/
Connect retries at the account level for Aggregate Messages (the default) after 24 hours after a subsequent message is sent. I will ask about envelope-level connect retries.
Better is to switch to Send Intermediate Messages (SIM) queuing. It retries faster.
Best is to have a 100% always up listener (server). An easy and cheap (free) technique for this is to use AWS PaaS to receive and enqueue the messages. See blog post and sample code. We also have sample code for Google Cloud and Azure.
I am looking for a solution where I need my bot to send notifications to all the users that have interacted with the bot before. This should happen on time demand, for example I would like to send notification only for alternate Friday at 5pm CDT.
I have trie the sample 16.proactive-messages but the the notification trigger is based on a controller so we have to send explicit request to
http://localhost:3978/api/notify to proactively message users from the bot.
I am using bot builder Nodejs sdk 4.x to build the bot.
I would like notifications to go on demand based on the set time and date.
The fastest way to meet your requirement is following the official sample that you tried. To send a notification to uses, you should send a request to api/notify endpoint.
You can create a scheduled webjobs to send this request to your bot so that your bot will send notifications to your users.
Hope it helps.
I'm building a Slack (instant messaging) chat client, I'm looking for a way to trigger a notification to receipent when a new message is sent to him, push notification of course.
What's the endpoint or stream API to be able to trigger a push notification to devices?
I think it should be some backend microservice listening for incoming messages in a channel with a list for users to notify.
If you want to get instant notifications about new messages posted to a channel you can either use the Real Time Messaging API (RTM API) or the Events API.
The main difference:
RTM API uses Websockets and you will receive a constant stream of events about everything that happens on the connected workspace.
Events API uses standard HTTP requests and Slack will only send events to your endpoint that you subscribed too.
There are many factors to consider when choosing the right API for a project. Please also see the official FAQ from Slack on the topic for more details.