Crate wasmcloud_actor_messaging[−][src]
Messaging wasmCloud Actor Interface
This crate provides wasmCloud actors with an interface to the Messaging capability provider. Actors using this
interface must have the claim wasmcloud:messaging
in order to have permission to handle messages, publish
and perform request-response actions. They also must have an active, configured binding to a Messaging capability provider.
Example:
extern crate wasmcloud_actor_messaging as messaging; extern crate wasmcloud_actor_core as actor; extern crate wapc_guest as guest; use guest::prelude::*; #[actor::init] pub fn init() { messaging::Handlers::register_handle_message(handle_message); } /// Reply to a "ping" message with "pong" fn handle_message(message: messaging::BrokerMessage) -> HandlerResult<()> { if String::from_utf8(message.body)? == "ping".to_string() { messaging::default().publish(message.reply_to, "".to_string(), "pong".to_string().into_bytes())?; } Ok(()) }
Structs
BrokerMessage | Incoming message object with an optionally empty reply field |
Handlers | |
Host | |
PublishArgs | |
PublishResponse | Indicates if a publish was successful |
RequestArgs |
Constants
OP_HANDLE_MESSAGE |
Functions
default | Creates the default host binding |
deserialize | The standard function for de-serializing codec structs from a format suitable for message exchange between actor and host. Use of any other function to deserialize could result in breaking incompatibilities. |
host | Creates a named host binding |
serialize | The standard function for serializing codec structs into a format that can be used for message exchange between actor and host. Use of any other function to serialize could result in breaking incompatibilities. |