mirror of
https://github.com/xaionaro-go/streamctl.git
synced 2025-10-22 06:59:28 +08:00
Initial commit, pt. 75
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"crypto"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
"github.com/andreykaipov/goobs/api/requests/scenes"
|
||||
@@ -65,6 +66,23 @@ func (grpc *GRPCServer) MemoizeData() *memoize.MemoizeData {
|
||||
return grpc.MemoizeDataValue
|
||||
}
|
||||
|
||||
func (grpc *GRPCServer) Ping(
|
||||
ctx context.Context,
|
||||
req *streamd_grpc.PingRequest,
|
||||
) (*streamd_grpc.PingReply, error) {
|
||||
var payload strings.Builder
|
||||
extraSize := req.GetRequestExtraPayloadSize()
|
||||
totalSize := len(req.GetPayloadToReturn()) + int(extraSize)
|
||||
if totalSize > 65535 {
|
||||
return nil, fmt.Errorf("requested a too big payload")
|
||||
}
|
||||
payload.WriteString(req.GetPayloadToReturn())
|
||||
payload.WriteString(strings.Repeat("0", int(extraSize)))
|
||||
return &streamd_grpc.PingReply{
|
||||
Payload: payload.String(),
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (grpc *GRPCServer) Close() error {
|
||||
err := &multierror.Error{}
|
||||
grpc.OAuthURLHandlerLocker.Lock()
|
||||
|
Reference in New Issue
Block a user