Skip to main content

ExpectSidecarChannel

ExpectSidecarChannel is step 4/4 of the sidecar negotiation between the provider (the trader submitting the bid order) and the recipient (the trader receiving the sidecar channel). This step must be run by the recipient once the provider has submitted the bid order for the sidecar channel. From this point onwards the Pool trader daemon of both the provider as well as the recipient need to be online to receive and react to match making events from the server.

Source: poolrpc/trader.proto

gRPC

rpc ExpectSidecarChannel (ExpectSidecarChannelRequest) returns (ExpectSidecarChannelResponse);

REST

HTTP MethodPath
POST /v1/pool/sidecar/expect

Code Samples

const fs = require('fs');
const grpc = require('@grpc/grpc-js');
const protoLoader = require('@grpc/proto-loader');

const GRPC_HOST = 'localhost:12010'
const MACAROON_PATH = 'POOL_DIR/regtest/pool.macaroon'
const TLS_PATH = 'POOL_DIR/tls.cert'

const loaderOptions = {
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true,
};
const packageDefinition = protoLoader.loadSync('poolrpc/trader.proto', loaderOptions);
const poolrpc = grpc.loadPackageDefinition(packageDefinition).poolrpc;
process.env.GRPC_SSL_CIPHER_SUITES = 'HIGH+ECDSA';
const tlsCert = fs.readFileSync(TLS_PATH);
const sslCreds = grpc.credentials.createSsl(tlsCert);
const macaroon = fs.readFileSync(MACAROON_PATH).toString('hex');
const macaroonCreds = grpc.credentials.createFromMetadataGenerator(function(args, callback) {
let metadata = new grpc.Metadata();
metadata.add('macaroon', macaroon);
callback(null, metadata);
});
let creds = grpc.credentials.combineChannelCredentials(sslCreds, macaroonCreds);
let client = new poolrpc.Trader(GRPC_HOST, creds);
let request = {
ticket: <string>,
};
client.expectSidecarChannel(request, function(err, response) {
console.log(response);
});
// Console output:
// {
// }

Messages

poolrpc.ExpectSidecarChannelRequest

Source: poolrpc/trader.proto

FieldgRPC TypeREST TypeREST Placement
ticket
stringstringbody

poolrpc.ExpectSidecarChannelResponse

Source: poolrpc/trader.proto

note

This response has no parameters.