# specs_messenger message passing component for specs ```rust let mut world = World::new(); let mut dispatcher = SpecsBundler::new(&mut world, DispatcherBuilder::new()) .bundle(MessengerBundle::::new()).unwrap() .build(); let entity0 = world .create_entity() .with(Messenger::::new()) .build(); let entity1 = world .create_entity() .with(Messenger::::new()) .build(); let entity2 = world .create_entity() .with(Messenger::::new()) .build(); { let mut messengers = world.write_storage::>(); messengers .get_mut(entity0) .unwrap() .send(entity1, "Direct".into()); messengers .get_mut(entity2) .unwrap() .broadcast("Broadcast".into()); } dispatcher.dispatch(&mut world.res); ```