1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-11-29 16:43:09 +03:00

Merge pull request #189 from matrix-org/rav/get_olm_sessions_for_user

Add debug methods to get the state of OlmSessions
This commit is contained in:
Richard van der Hoff
2016-09-05 10:38:57 +01:00
committed by GitHub
2 changed files with 62 additions and 0 deletions

View File

@@ -488,6 +488,36 @@ Crypto.prototype.setDeviceVerification = function(userId, deviceId, verified, bl
};
/**
* Get information on the active olm sessions with a user
* <p>
* Returns a map from device id to an object with keys 'deviceIdKey' (the
* device's curve25519 identity key) and 'sessions' (an array of objects in the
* same format as that returned by {@link module:OlmDevice#getSessionInfoForDevice}).
* <p>
* This method is provided for debugging purposes.
*
* @param {string} userId id of user to inspect
*
* @return {Object.<string, {deviceIdKey: string, sessions: object[]}>}
*/
Crypto.prototype.getOlmSessionsForUser = function(userId) {
var devices = this.getStoredDevicesForUser(userId);
var result = {};
for (var j = 0; j < devices.length; ++j) {
var device = devices[j];
var deviceKey = device.getIdentityKey();
var sessions = this._olmDevice.getSessionInfoForDevice(deviceKey);
result[device.deviceId] = {
deviceIdKey: deviceKey,
sessions: sessions,
};
}
return result;
};
/**
* Identify a device by curve25519 identity key and determine its verification state
*