作者 刘锟

update

... ... @@ -206,8 +206,10 @@ class RelayInquiryForward extends Command
*/
public function completeDetail($inquiry_detail)
{
//urls
$urls = $this->getUrls($inquiry_detail['is_v6'], $inquiry_detail['website'], $inquiry_detail['email']);
//visit urls
$visit_urls = $this->getUrls($inquiry_detail['is_v6'], $inquiry_detail['website'], $inquiry_detail['email']);
$inquiry_url = json_decode($inquiry_detail['urls'], true);
$urls = array_merge($visit_urls, $inquiry_url);
//lang
if (is_numeric($inquiry_detail['message'])) { //数字会被识别为中文
... ... @@ -258,16 +260,17 @@ class RelayInquiryForward extends Command
}
/**
* 获取访问及询盘url
* 获取访问url
* @param $is_v6
* @param $domain
* @param $website
* @param $email
* @return array
* @author Akun
* @date 2025/02/25 15:45
*/
public function getUrls($is_v6, $domain, $email)
public function getUrls($is_v6, $website, $email)
{
$domain = 'https://' . $website . '/';
// v6:有邮箱推送主站,没有邮箱推送AMP站;v5:仅推送有邮箱到主站
if ($is_v6) {
// 获取访问明细和着陆页
... ... @@ -290,29 +293,22 @@ class RelayInquiryForward extends Command
}
// 所有可用url
$urls = $inquiry_urls = [];
$urls = [];
//入口url 首页30%,单页10%,聚合页60%
$type = getRandByRatio([30, 10, 60]);
$inlet = $domain;
$type == 1 && $inlet = $page_url ? Arr::random($page_url) : $domain;
$type == 2 && $inlet = $keywords_url ? Arr::random($keywords_url) : $domain;
$urls[] = $inquiry_urls[] = $inlet;
$urls[] = $inlet;
$all_urls = array_merge($urls, $product_url, $product_cate_url, $keywords_url, $page_url);
$inquiry_urls = array_merge($urls, $product_cate_url, $keywords_url, $page_url);
if (count($all_urls) > 1) {
// 随机访问1-6个页面
$deep = rand(1, 6);
if(count($all_urls) > 1){
$visit_urls = Arr::random($all_urls, $deep > count($all_urls) ? count($all_urls) : $deep);
$urls = array_merge($urls, $visit_urls);
}
// 推送着落页只能是 首页、产品分类、单页面、聚合页
if (!in_array(end($urls), $inquiry_urls)) {
$urls[] = Arr::random($inquiry_urls);
}
return $urls;
}
... ...
... ... @@ -84,7 +84,7 @@ class InquiryForwardLogic extends BaseLogic
}
//获取站点对应项目版本
$project_version = InquiryProject::select(['version'])->where('domain', 'like', '%' . $website . '%')->orWhere('test_domain', 'like', '%' . $website . '%')->first();
$project_version = InquiryProject::select(['version'])->where('domain', 'like', '%' . $website . '%')->first();
if (!$project_version) {
continue;
}
... ...