Shutdown intercom via segment when user logout - segment

I'm working in react js app .I want to remove intercom user when session expired or user logged out . I'm using intercom integration via segment.
When i were using intercom directly it's work for me using function shutdown.
But with segment i don't know how can i use it.

Related

Trouble implementing logout from laravel application when user logs out from drupal application

I already have an application built in drupal7. I am building a new extension of the application in laravel. The situation here is, I want to have drupal7 as the base application where the user logs in. I have implemented login using Oauth2-server module in drupal. In this set up after logging in to drupal app, I was able to successfully navigate to laravel and the user will be shown as logged in, also was able get some custom jwt I have exchange to laravel.
My issue is regarding logging out. How will I implement logout in this case: I want the user to be logged out from laravel app upon logging out of drupal app.
I have added a hook to delete the user's refresh token when the user logs out, but this wont help until laravel checks for a refresh token.
I want the user to be logged out instantly from laravel app upon logging out of drupal app.
I have managed to do this with adding another API call to the Laravel side and managed to logout the user when user logs out from Drupal side corresponding to the user id and token.

Parse Server, session is not created on cloud

We have migrated our production app from hosted Parse to Parse Server and when during testing we have encountered that our cloud functions are not working properly. After research we have found that session for our authenticated users is not saved to Session class on database by Parse SDK automatically. When we signup new user, session is created and it is saved to cloud. We can see it from Parse Server dashboard. But when we sign out that user and sign in again, especially after sign in, session is created but it is not saved to cloud and we cant see it from dashboard. It seems like it remains on local. Thats why our cloud code is not running, because request.user on all cloud functions is null and user is not authorized. We are using latest Parse Server with version 2.2.14 and revocable sessions.
Did you add this to your code (from the Session Migration Tutorial)
In your app's code, add this line just after the Parse initialization line where you set your application ID and client key. This line will cause all login/signups from the SDK to use revocable sessions. It will also issue a network call to Parse in the background to upgrade your user's legacy session token to the new revocable token.
iOS: [PFUser enableRevocableSessionInBackground]
Android: ParseUser.enableRevocableSessionInBackground()
.NET: ParseUser.EnableRevocableSessionAsync()
JavaScript: Parse.User.enableRevocableSession()

Pouchdb doesn´t recognize a different user

I am using PouchDB 5.3 with Couchbase Sync Gateway 1.2, with the sync function. If I login using a user that has access to 2500 documents, it sync them to my device, but, if I logout and login with the other user, that has access to only 1 document, PouchDB doesn´t recognize this change, and keep data on my device.
If PouchDB is able to sync changes on both sides, should be able to recognize when the user change?
It seems it doesn´t support this functionality.
Answer here:
https://github.com/pouchdb/pouchdb/issues/4976

Parse.com - allow only one session per user

I have an App on Parse platform. What I need:
The User logs in on first device.
The User logs in on second device.
System revokes session on the first device.
I tried to remove objects from Session/Installation classes, but it did not help.
How can I do it?
Achieving this is not quite straightforward as there is no way to intercept login events or write cloud code triggers for Parse Session class. If you delete a client session record from the Session table, it should certainly revoke it and you end up getting authentication errors on that client. To achieve what you want, you need to write your own cloud function that logs a user in instead of using the SDK login function. That way you can first go through the Session table and revoke/delete any session associated with that user before logging in your user on the new device.

Spring Social- Connect without having to constantly authorize the user

I have an application that needs to stream a specific users twitter data and search for specific hash-tag data then mass distribute an email, but if I'm understanding things correctly every time I want to connect, I have to redirect to an authorization page. All this should be in the background. Is there a way I can have the application authorize once, then always stream the data using spring social, if not, are there any alternatives?
OAuth uses tokens that expire. So no matter what, your users will still have to periodically log in via Twitter and go through the OAuth process again to get a fresh token. They will only have to authorize your app the first time, so subsequently they should get sent right back to your app (assuming this is a Web app). You might want to look at using ReconnectFilter, again assuming you're making a Web app:
http://docs.spring.io/spring-social/docs/current/apidocs/org/springframework/social/connect/web/ReconnectFilter.html

Resources