X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/d520023fc76a522650b7561f2a4fc7a95fb5a04d..c49b05cd75dd8cee795859b6045fbec0040d4144:/src/main/java/org/asamk/signal/Main.java diff --git a/src/main/java/org/asamk/signal/Main.java b/src/main/java/org/asamk/signal/Main.java index 16d9e0dc..a547e026 100644 --- a/src/main/java/org/asamk/signal/Main.java +++ b/src/main/java/org/asamk/signal/Main.java @@ -32,6 +32,7 @@ import org.asamk.signal.commands.DbusCommand; import org.asamk.signal.commands.ExtendedDbusCommand; import org.asamk.signal.commands.LocalCommand; import org.asamk.signal.commands.ProvisioningCommand; +import org.asamk.signal.dbus.DbusSignalImpl; import org.asamk.signal.manager.Manager; import org.asamk.signal.manager.ProvisioningManager; import org.asamk.signal.manager.ServiceConfig; @@ -42,6 +43,7 @@ import org.freedesktop.dbus.connections.impl.DBusConnection; import org.freedesktop.dbus.exceptions.DBusException; import org.whispersystems.signalservice.api.push.exceptions.AuthorizationFailedException; import org.whispersystems.signalservice.api.util.PhoneNumberFormatter; +import org.whispersystems.signalservice.internal.configuration.SignalServiceConfiguration; import java.io.File; import java.io.IOException; @@ -82,8 +84,8 @@ public class Main { busType = DBusConnection.DBusBusType.SESSION; } try (DBusConnection dBusConn = DBusConnection.getConnection(busType)) { - Signal ts = dBusConn.getRemoteObject( - DbusConfig.SIGNAL_BUSNAME, DbusConfig.SIGNAL_OBJECTPATH, + Signal ts = dBusConn.getRemoteObject(DbusConfig.SIGNAL_BUSNAME, + DbusConfig.SIGNAL_OBJECTPATH, Signal.class); return handleCommands(ns, ts, dBusConn); @@ -101,14 +103,17 @@ public class Main { dataPath = getDefaultDataPath(); } + final SignalServiceConfiguration serviceConfiguration = ServiceConfig.createDefaultServiceConfiguration( + BaseConfig.USER_AGENT); + if (username == null) { - ProvisioningManager pm = new ProvisioningManager(dataPath, ServiceConfig.createDefaultServiceConfiguration(BaseConfig.USER_AGENT), BaseConfig.USER_AGENT); + ProvisioningManager pm = new ProvisioningManager(dataPath, serviceConfiguration, BaseConfig.USER_AGENT); return handleCommands(ns, pm); } Manager manager; try { - manager = Manager.init(username, dataPath, ServiceConfig.createDefaultServiceConfiguration(BaseConfig.USER_AGENT), BaseConfig.USER_AGENT); + manager = Manager.init(username, dataPath, serviceConfiguration, BaseConfig.USER_AGENT); } catch (Throwable e) { System.err.println("Error loading state file: " + e.getMessage()); return 2; @@ -179,7 +184,7 @@ public class Main { if (command instanceof LocalCommand) { return ((LocalCommand) command).handleCommand(ns, m); } else if (command instanceof DbusCommand) { - return ((DbusCommand) command).handleCommand(ns, m); + return ((DbusCommand) command).handleCommand(ns, new DbusSignalImpl(m)); } else if (command instanceof ExtendedDbusCommand) { System.err.println(commandKey + " only works via dbus"); } @@ -221,21 +226,14 @@ public class Main { .description("Commandline interface for Signal.") .version(BaseConfig.PROJECT_NAME + " " + BaseConfig.PROJECT_VERSION); - parser.addArgument("-v", "--version") - .help("Show package version.") - .action(Arguments.version()); + parser.addArgument("-v", "--version").help("Show package version.").action(Arguments.version()); parser.addArgument("--config") .help("Set the path, where to store the config (Default: $XDG_DATA_HOME/signal-cli , $HOME/.local/share/signal-cli)."); MutuallyExclusiveGroup mut = parser.addMutuallyExclusiveGroup(); - mut.addArgument("-u", "--username") - .help("Specify your phone number, that will be used for verification."); - mut.addArgument("--dbus") - .help("Make request via user dbus.") - .action(Arguments.storeTrue()); - mut.addArgument("--dbus-system") - .help("Make request via system dbus.") - .action(Arguments.storeTrue()); + mut.addArgument("-u", "--username").help("Specify your phone number, that will be used for verification."); + mut.addArgument("--dbus").help("Make request via user dbus.").action(Arguments.storeTrue()); + mut.addArgument("--dbus-system").help("Make request via system dbus.").action(Arguments.storeTrue()); Subparsers subparsers = parser.addSubparsers() .title("subcommands")