AABB
AlignmentBehavior
ArriveBehavior
AStar
BFS
BoundingSphere
BVH
BVHNode
Cell
CellSpacePartitioning
CohesionBehavior
CompositeGoal
ConvexHull
Corridor
CostTable
DFS
Dijkstra
Edge
EntityManager
EvadeBehavior
EventDispatcher
Behavior
FollowPathBehavior
FuzzyAND
FuzzyCompositeTerm
FuzzyFAIRLY
FuzzyModule
FuzzyOR
FuzzyRule
FuzzySet
FuzzyTerm
FuzzyVariable
FuzzyVERY
GameEntity
Goal
GoalEvaluator
Graph
GraphUtils
HalfEdge
HeuristicPolicyDijkstra
HeuristicPolicyEuclid
HeuristicPolicyEuclidSquared
HeuristicPolicyManhattan
InterposeBehavior
LeftSCurveFuzzySet
LeftShoulderFuzzySet
LineSegment
Logger
MathUtils
Matrix3
Matrix4
MemoryRecord
MemorySystem
MeshGeometry
MessageDispatcher
MovingEntity
NavEdge
NavMesh
NavMeshLoader
NavNode
Node
NormalDistFuzzySet
OBB
ObstacleAvoidanceBehavior
OffsetPursuitBehavior
OnPathBehavior
Path
Plane
Polygon
Polyhedron
PriorityQueue
PursuitBehavior
Quaternion
Ray
RectangleTriggerRegion
Regular
RightSCurveFuzzySet
RightShoulderFuzzySet
SAT
SeekBehavior
SeparationBehavior
SingletonFuzzySet
Smoother
SphericalTriggerRegion
State
StateMachine
SteeringBehavior
SteeringManager
Task
TaskQueue
Telegram
Think
Time
TriangularFuzzySet
Trigger
TriggerRegion
Vector3
Vehicle
Version
WanderBehavior

deliver

说明

deliverMessageDispatcher类中的一个方法,用于将消息发送到消息队列。deliver方法需要接收两个参数:信封和消息。

参数

  • envelope:信封。信封是一个对象,其中包含消息的元数据和消息目标的引用。信封应该包含以下属性:
    • to: 一个字符串或对象。如果目标是一个字符串,则它应该是消息接收者的名称。如果是一个对象,则它应该是一个引用,指向消息接收者在系统中的位置。
    • from: 字符串或对象。如果发送方是一个字符串,则它应该是发送者的名称。如果是一个引用,则它应该是一个指向发送者在系统中的位置的引用。此字段是可选的,如果未提供,则不使用。
    • id: 字符串或数字。消息ID。如果未提供,则由系统生成。
    • type: 字符串。消息类型。示例包括“请求”、“响应”、“广播”等。
  • message: 消息。消息是一个简单的JavaScript对象,包含有关消息内容的信息。由外部组件确定消息格式。

返回值

deliver方法将无返回值。

异常

如果无法将消息发送到消息队列,则deliver方法将引发异常。例如,如果消息目标不存在,则无法将消息路由到接收方。在这种情况下,消息将被删除,并引发DeliveryError

例子

以下示例演示了如何使用deliver方法:

// 创建信封
var envelope = {
  to: 'recipient',
  from: 'sender',
  id: '123',
  type: 'request'
};

// 创建消息
var message = {
  value: 'Hello, world!'
};

// 使用deliver方法发送消息
MessageDispatcher.deliver(envelope, message);

此代码将创建一个信封,并使用deliver方法将包含消息的消息对象发送到消息队列。