feat: - remove `Bot::set_state`, let user handle mutability (breaking change) - add `RetCode::RoomNotExists` and `RetCode::RoomNotInVilla` (breaking change) (maybe breaking) - add `Member::audit` and `EventData::AuditCallback` (breaking change) (maybe breaking) - sync everywhere for let event handler can be called inside multithreaded async environment (xxx: Sync) (breaking change) - add `RoomType::Live`, remove Room suffix of variants of `RoomType` (breaking change) - derive Clone for BotAccessData, and all dependencies - add `VError::RequestNonOk` - handle non Ok response in default `RequestExecutor` implementation - add `BotPermission::TransferImg` - implement transfer image api - remove utility functions in message_builder that need send request - add `MessageBuilder::transfer_image` for transfer image after message constructed - implement secret encrypt and callback sign verify (breaking change) - add log output of trace id of api request in trace level - use rustls for reqwest fix: - fix deserialize error when parsing event from web users - fix deserialize error when check bot access token when have invalid villa_id or bot auth info (breaking change) (should only need import change) - fix deserialize error when bot has no command - fix deserialize error when user has custom avatar