in client.go [113:139]
func SendAgentMessage(ctx context.Context, channelID string, client *agentcommunication.Client, msg *acpb.MessageBody) (*acpb.SendAgentMessageResponse, error) {
loggerPrintf("SendAgentMessage")
resourceID, err := getResourceID()
if err != nil {
return nil, err
}
token, err := getIdentityToken()
if err != nil {
return nil, fmt.Errorf("%w: %v", ErrGettingInstanceToken, err)
}
ctx = metadata.NewOutgoingContext(ctx, metadata.New(map[string]string{
"authentication": "Bearer " + token,
"agent-communication-resource-id": resourceID,
"agent-communication-channel-id": channelID,
}))
loggerPrintf("Using ResourceID %q", resourceID)
loggerPrintf("Using ChannelID %q", channelID)
return client.SendAgentMessage(ctx, &acpb.SendAgentMessageRequest{
ChannelId: channelID,
ResourceId: resourceID,
MessageBody: msg,
})
}