Add peer resolution through the resolvePeer
method
This commit is contained in:
parent
fde3ccfc68
commit
62c8d332a9
6 changed files with 129 additions and 6 deletions
|
@ -15,6 +15,7 @@
|
|||
use Socialbox\Objects\ExportedSession;
|
||||
use Socialbox\Objects\PeerAddress;
|
||||
use Socialbox\Objects\RpcRequest;
|
||||
use Socialbox\Objects\Standard\Peer;
|
||||
use Socialbox\Objects\Standard\ServerDocument;
|
||||
use Socialbox\Objects\Standard\SessionState;
|
||||
|
||||
|
@ -611,4 +612,25 @@
|
|||
new RpcRequest(StandardMethods::SETTINGS_DELETE_BIRTHDAY->value, Utilities::randomCrc32())
|
||||
)->getResponse()->getResult();
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolves a peer by its address or a PeerAddress instance through a remote procedure call.
|
||||
*
|
||||
* @param string|PeerAddress $peerAddress The peer address as a string or an instance of PeerAddress.
|
||||
* @return Peer The resolved peer object.
|
||||
* @throws RpcException Thrown if the RPC request fails.
|
||||
*/
|
||||
public function resolvePeer(string|PeerAddress $peerAddress): Peer
|
||||
{
|
||||
if($peerAddress instanceof PeerAddress)
|
||||
{
|
||||
$peerAddress = $peerAddress->getAddress();
|
||||
}
|
||||
|
||||
return Peer::fromArray($this->sendRequest(
|
||||
new RpcRequest(StandardMethods::RESOLVE_PEER->value, Utilities::randomCrc32(), [
|
||||
'peer_address' => $peerAddress
|
||||
])
|
||||
)->getResponse()->getResult());
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue