Table of Contents

Class Agent

Namespace
Microsoft.AutoGen.Core
Assembly
Microsoft.AutoGen.Core.dll

Represents the base class for an agent in the AutoGen system.

public abstract class Agent : IHandle
Inheritance
Agent
Implements
Derived
Inherited Members
Extension Methods

Constructors

Agent(IAgentWorker, EventTypes, ILogger<Agent>?)

protected Agent(IAgentWorker worker, EventTypes eventTypes, ILogger<Agent>? logger = null)

Parameters

worker IAgentWorker
eventTypes EventTypes
logger ILogger<Agent>

Fields

EventTypes

protected readonly EventTypes EventTypes

Field Value

EventTypes

_logger

protected ILogger<Agent> _logger

Field Value

ILogger<Agent>

s_source

The activity source for tracing.

public static readonly ActivitySource s_source

Field Value

ActivitySource

Properties

AgentId

Gets the unique identifier of the agent.

public AgentId AgentId { get; }

Property Value

AgentId

Messenger

public AgentMessenger Messenger { get; }

Property Value

AgentMessenger

Methods

CallHandler(CloudEvent)

public Task CallHandler(CloudEvent item)

Parameters

item CloudEvent

Returns

Task

HandleObject(object)

public virtual Task HandleObject(object item)

Parameters

item object

Returns

Task

HandleRequestAsync(RpcRequest)

public Task<RpcResponse> HandleRequestAsync(RpcRequest request)

Parameters

request RpcRequest

Returns

Task<RpcResponse>

HandleRpcMessage(Message, CancellationToken)

protected Task HandleRpcMessage(Message msg, CancellationToken cancellationToken = default)

Parameters

msg Message
cancellationToken CancellationToken

Returns

Task

PublishEventAsync(CloudEvent, CancellationToken)

public ValueTask PublishEventAsync(CloudEvent item, CancellationToken cancellationToken = default)

Parameters

item CloudEvent
cancellationToken CancellationToken

Returns

ValueTask

PublishEventAsync(string, IMessage, CancellationToken)

public ValueTask PublishEventAsync(string topic, IMessage evt, CancellationToken cancellationToken = default)

Parameters

topic string
evt IMessage
cancellationToken CancellationToken

Returns

ValueTask

PublishMessageAsync<T>(T, string?, CancellationToken)

public ValueTask PublishMessageAsync<T>(T message, string? source = null, CancellationToken token = default) where T : IMessage

Parameters

message T
source string
token CancellationToken

Returns

ValueTask

Type Parameters

T

ReadAsync<T>(AgentId, CancellationToken)

public Task<T> ReadAsync<T>(AgentId agentId, CancellationToken cancellationToken = default) where T : IMessage, new()

Parameters

agentId AgentId
cancellationToken CancellationToken

Returns

Task<T>

Type Parameters

T

ReceiveMessage(Message)

public void ReceiveMessage(Message message)

Parameters

message Message

RequestAsync(AgentId, string, Dictionary<string, string>)

protected Task<RpcResponse> RequestAsync(AgentId target, string method, Dictionary<string, string> parameters)

Parameters

target AgentId
method string
parameters Dictionary<string, string>

Returns

Task<RpcResponse>

StoreAsync(AgentState, CancellationToken)

public Task StoreAsync(AgentState state, CancellationToken cancellationToken = default)

Parameters

state AgentState
cancellationToken CancellationToken

Returns

Task

Subscribe(string)

public List<string> Subscribe(string topic)

Parameters

topic string

Returns

List<string>