mirror of
https://github.com/oxen-io/session-android.git
synced 2025-08-21 10:47:41 +00:00
wip
This commit is contained in:
@@ -7,19 +7,35 @@ message IncomingPushMessageSignal {
|
||||
optional uint32 type = 1;
|
||||
optional string source = 2;
|
||||
optional string relay = 3;
|
||||
repeated string destinations = 4;
|
||||
// repeated string destinations = 4; // No longer supported
|
||||
optional uint64 timestamp = 5;
|
||||
optional bytes message = 6; // Contains an encrypted PushMessageContent
|
||||
}
|
||||
|
||||
message PushMessageContent {
|
||||
optional string body = 1;
|
||||
|
||||
message AttachmentPointer {
|
||||
optional fixed64 id = 1;
|
||||
optional string contentType = 2;
|
||||
optional bytes key = 3;
|
||||
}
|
||||
|
||||
message GroupContext {
|
||||
enum Type {
|
||||
UNKNOWN = 0;
|
||||
CREATE = 1;
|
||||
MODIFY = 2;
|
||||
DELIVER = 3;
|
||||
ADD = 4;
|
||||
QUIT = 5;
|
||||
}
|
||||
optional bytes id = 1;
|
||||
optional Type type = 2;
|
||||
optional string name = 3;
|
||||
repeated string members = 4;
|
||||
optional AttachmentPointer avatar = 5;
|
||||
}
|
||||
|
||||
optional string body = 1;
|
||||
repeated AttachmentPointer attachments = 2;
|
||||
optional GroupContext group = 3;
|
||||
}
|
@@ -21,9 +21,6 @@ import android.os.Parcelable;
|
||||
|
||||
import org.whispersystems.textsecure.push.PushMessageProtos.IncomingPushMessageSignal;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
public class IncomingPushMessage implements PushMessage, Parcelable {
|
||||
|
||||
public static final Parcelable.Creator<IncomingPushMessage> CREATOR = new Parcelable.Creator<IncomingPushMessage>() {
|
||||
@@ -40,7 +37,6 @@ public class IncomingPushMessage implements PushMessage, Parcelable {
|
||||
|
||||
private int type;
|
||||
private String source;
|
||||
private List<String> destinations;
|
||||
private byte[] message;
|
||||
private long timestamp;
|
||||
private String relay;
|
||||
@@ -51,21 +47,17 @@ public class IncomingPushMessage implements PushMessage, Parcelable {
|
||||
this.timestamp = message.timestamp;
|
||||
this.relay = message.relay;
|
||||
this.message = body;
|
||||
this.destinations = new LinkedList<String>();
|
||||
this.destinations.addAll(message.destinations);
|
||||
}
|
||||
|
||||
public IncomingPushMessage(IncomingPushMessageSignal signal) {
|
||||
this.type = signal.getType();
|
||||
this.source = signal.getSource();
|
||||
this.destinations = signal.getDestinationsList();
|
||||
this.message = signal.getMessage().toByteArray();
|
||||
this.timestamp = signal.getTimestamp();
|
||||
this.relay = signal.getRelay();
|
||||
}
|
||||
|
||||
public IncomingPushMessage(Parcel in) {
|
||||
this.destinations = new LinkedList<String>();
|
||||
this.type = in.readInt();
|
||||
this.source = in.readString();
|
||||
|
||||
@@ -73,19 +65,16 @@ public class IncomingPushMessage implements PushMessage, Parcelable {
|
||||
this.relay = in.readString();
|
||||
}
|
||||
|
||||
in.readStringList(destinations);
|
||||
this.message = new byte[in.readInt()];
|
||||
in.readByteArray(this.message);
|
||||
this.timestamp = in.readLong();
|
||||
}
|
||||
|
||||
public IncomingPushMessage(int type, String source,
|
||||
List<String> destinations,
|
||||
byte[] body, long timestamp)
|
||||
{
|
||||
this.type = type;
|
||||
this.source = source;
|
||||
this.destinations = destinations;
|
||||
this.message = body;
|
||||
this.timestamp = timestamp;
|
||||
}
|
||||
@@ -106,10 +95,6 @@ public class IncomingPushMessage implements PushMessage, Parcelable {
|
||||
return message;
|
||||
}
|
||||
|
||||
public List<String> getDestinations() {
|
||||
return destinations;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
@@ -123,7 +108,6 @@ public class IncomingPushMessage implements PushMessage, Parcelable {
|
||||
if (relay != null) {
|
||||
dest.writeString(relay);
|
||||
}
|
||||
dest.writeStringList(destinations);
|
||||
dest.writeInt(message.length);
|
||||
dest.writeByteArray(message);
|
||||
dest.writeLong(timestamp);
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,7 @@ package org.whispersystems.textsecure.util;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.telephony.TelephonyManager;
|
||||
import android.widget.EditText;
|
||||
|
||||
import java.io.ByteArrayOutputStream;
|
||||
@@ -169,6 +170,22 @@ public class Util {
|
||||
return results;
|
||||
}
|
||||
|
||||
public static String getDeviceE164Number(Context context) {
|
||||
String localNumber = ((TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE))
|
||||
.getLine1Number();
|
||||
|
||||
if (!org.whispersystems.textsecure.util.Util.isEmpty(localNumber) &&
|
||||
!localNumber.startsWith("+"))
|
||||
{
|
||||
if (localNumber.length() == 10) localNumber = "+1" + localNumber;
|
||||
else localNumber = "+" + localNumber;
|
||||
|
||||
return localNumber;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public static SecureRandom getSecureRandom() {
|
||||
try {
|
||||
return SecureRandom.getInstance("SHA1PRNG");
|
||||
|
Reference in New Issue
Block a user