Skip to content

Commit 059904f

Browse files
author
ljl
committed
Merge remote-tracking branch 'origin/main'
2 parents d59cd1b + 8755b74 commit 059904f

File tree

3 files changed

+22
-12
lines changed

3 files changed

+22
-12
lines changed

support/reach/src/reach_consts.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ pub const RBUM_SCOPE_LEVEL_APP: RbumScopeLevelKind = RbumScopeLevelKind::L2;
1717
pub const REACH_INIT_OWNER: &str = "ReachInit";
1818

1919
pub const IAM_KEY_PHONE_V_CODE: &str = "PhoneVCode";
20+
pub const IAM_KEY_MAIL_V_CODE: &str = "MailVCode";
2021

2122
pub const ACCOUNT_SPLIT: char = ';';
2223

support/reach/src/reach_init.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,15 @@ pub async fn db_init() -> TardisResult<()> {
7474
DOMAIN_REACH_ID.set(domain_id).expect("fail to set DOMAIN_REACH_ID");
7575
let db_kind = TardisFuns::reldb().backend();
7676
let compatible_type = TardisFuns::reldb().compatible_type();
77-
funs.db().init(crate::domain::message_log::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
78-
funs.db().init(crate::domain::message_signature::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
79-
funs.db().init(crate::domain::message_template::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
80-
funs.db().init(crate::domain::message::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
81-
funs.db().init(crate::domain::trigger_global_config::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
82-
funs.db().init(crate::domain::trigger_instance_config::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
83-
funs.db().init(crate::domain::trigger_scene::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
84-
funs.db().init(crate::domain::reach_vcode_strategy::ActiveModel::init(db_kind, None, compatible_type.clone())).await?;
85-
ReachTriggerSceneService::init(&funs, &ctx).await?;
77+
funs.db().init(crate::domain::message_log::ActiveModel::init(db_kind, None, compatible_type)).await?;
78+
funs.db().init(crate::domain::message_signature::ActiveModel::init(db_kind, None, compatible_type)).await?;
79+
funs.db().init(crate::domain::message_template::ActiveModel::init(db_kind, None, compatible_type)).await?;
80+
funs.db().init(crate::domain::message::ActiveModel::init(db_kind, None, compatible_type)).await?;
81+
funs.db().init(crate::domain::trigger_global_config::ActiveModel::init(db_kind, None, compatible_type)).await?;
82+
funs.db().init(crate::domain::trigger_instance_config::ActiveModel::init(db_kind, None, compatible_type)).await?;
83+
funs.db().init(crate::domain::trigger_scene::ActiveModel::init(db_kind, None, compatible_type)).await?;
84+
funs.db().init(crate::domain::reach_vcode_strategy::ActiveModel::init(db_kind, None, compatible_type)).await?;
85+
// ReachTriggerSceneService::init(&funs, &ctx).await?;
8686
funs.commit().await?;
8787
Ok(())
8888
}

support/reach/src/task/message_send_listener.rs

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,22 @@ impl MessageSendListener {
4949
let mut to = HashSet::new();
5050
let start_time = Utc::now();
5151
let owner_path = rbum_scope_helper::get_pre_paths(RBUM_SCOPE_LEVEL_TENANT as i16, &message.own_paths).unwrap_or_default();
52+
let cert_key = match message.rel_reach_channel {
53+
ReachChannelKind::Sms => IAM_KEY_PHONE_V_CODE,
54+
ReachChannelKind::Email => IAM_KEY_MAIL_V_CODE,
55+
_ => {
56+
// unsupported
57+
ReachMessageServ::update_status(&message.id, ReachStatusKind::Pending, ReachStatusKind::Fail, &self.funs, &ctx).await?;
58+
return Ok(());
59+
}
60+
};
5261
for account_id in message.to_res_ids.split(ACCOUNT_SPLIT) {
5362
if let Ok(mut resp) = iam_client.get_account(account_id, &owner_path).await {
54-
let Some(phone) = resp.certs.remove(IAM_KEY_PHONE_V_CODE) else {
55-
log::warn!("[Reach] Notify Phone channel send error, missing [PhoneVCode] parameters, resp: {resp:?}");
63+
let Some(res_id) = resp.certs.remove(cert_key) else {
64+
log::warn!("[Reach] Notify {chan} channel send error, missing [{cert_key}] parameters, resp: {resp:?}", chan = message.rel_reach_channel);
5665
continue;
5766
};
58-
to.insert(phone);
67+
to.insert(res_id);
5968
} else {
6069
log::warn!("[Reach] iam get account info error, account_id: {account_id}")
6170
}

0 commit comments

Comments
 (0)