Compare commits

..

3 Commits

Author SHA1 Message Date
Lukas f. Paluch
297685d39c
Merge f27a3c5206fead40d77aebac4424397b58be7f94 into e5e21518a5b0a1898e3f47334a76348f11f1a343 2026-01-20 18:15:46 +00:00
Bernhard B
e5e21518a5 reformatted code with gofmt 2026-01-13 22:23:02 +01:00
Bernhard B
354df7472c implemented unregister in json-rpc mode
see #774
2026-01-13 22:21:20 +01:00

View File

@ -761,9 +761,30 @@ func (s *SignalClient) RegisterNumber(number string, useVoice bool, captcha stri
func (s *SignalClient) UnregisterNumber(number string, deleteAccount bool, deleteLocalData bool) error {
if s.signalCliMode == JsonRpc {
return errors.New("This functionality is only available in normal/native mode!")
type Request struct {
DeleteAccount bool `json:"delete-account,omitempty"`
}
req := Request{}
if deleteAccount {
req.DeleteAccount = true
}
jsonRpc2Client, err := s.getJsonRpc2Client()
if err != nil {
return err
}
_, err = jsonRpc2Client.getRaw("unregister", &number, req)
if err != nil {
return err
}
if deleteLocalData {
return s.DeleteLocalAccountData(number, false)
}
return nil
} else {
command := []string{"--config", s.signalCliConfig, "-a", number, "unregister"}
if deleteAccount {
command = append(command, "--delete-account")
@ -783,6 +804,7 @@ func (s *SignalClient) UnregisterNumber(number string, deleteAccount bool, delet
return err
}
}
func (s *SignalClient) DeleteLocalAccountData(number string, ignoreRegistered bool) error {
if s.signalCliMode == JsonRpc {