开发概述
开放平台基于开发者诉求和相关平台规则,提供了两种开放模式:能力开放、行业开放。
自研开发者介绍
自研开发者是指有自己的自营业务,或是有多种加盟方的角色,可以基于用户需求,提供完整的技术解决方案。
开发要求:
-
遵守抖音平台的开发规范和技术要求,如开发文档、SDK等。
-
技术要求:掌握HTML、CSS、JavaScript、jQuery等前端技术;掌握PHP或其他后端语言;掌握数据库相关知识;熟悉SEO优化技术。
-
抖音SEO源码需要考虑页面访问速度和用户体验,需要进行优化。例如:压缩代码、缓存数据、使用CDN等。
-
SEO优化方面,需要考虑关键词分析、内容优化、网站结构优化、链接建设等,提高网站在搜索引擎中的排名。
-
掌握抖音平台的最新技术和功能,例如小程序、抖音广告等,可以在SEO优化中充分发挥作用。
使用限制
能力介绍
本能力当前为能力实验室能力,可能会有回收或能力开放范围调整,具体能力说明可在开发者后台控制台-我的应用-能力管理-能力实验室中查看详细说明。
私信、群消息管理能力,是抖音开放平台基于抖音及抖音极速版即时通讯基础功能,提供的接口&数据开放服务,支持抖音内的经营类账号通过授权第三方应用获取及发送抖音私信、群消息,并支持丰富的富媒体消息类型,包括不限于文字、图片、视频、消息卡片等。
使用场景
- 消息自动/智能/个性化回复能力,做好客户承接:经营者可在授权的第三方应用(须应用支持相关功能模块),设置消息关键词&自动回复话术,并可基于不同的用户分层(须应用支持相关功能模块)、设置不同的话术&实时/定时回复策略,及时回复用户,避免用户流失,提升留资&交易转化
- 创建多样化的消息卡片:目前支持留资卡片、小程序引导卡片,后续将支持更多样式、覆盖不同需求场景的模板卡片及授权经营组件
- 私信/群聊引流抖音小程序:发送小程序引导卡片,提升小程序曝光&活跃,促进复访复购、留资等转化率提升
- 会话内容挖掘,沉淀意向用户:通过私信/群消息webhook回调事件,经营者可获取其私信/粉丝群接收到和发出的所有消息内容,可在第三方应用提供相关功能的基础上,充分挖掘线索、用户意向标签等信息,实现精细化运营;并可基于线索&意向用户沉淀情况,进行员工/销售绩效考核
- 自动/人工回复灵活切换、支持撤回:通过第三方应用提供的功能,在无运营人力时默认自动问候/回复,引导用户进一步发问;人工客服/运营可随时打断自动回复,并可及时撤回其认为不合理的自动回复内容
- 多账号、跨平台运营策略&对话策略复用:基于第三方应用的跨平台服务,将在其他平台、账号的运营/会话策略快速复用到抖音、其他账号,同时通过跨应用消息管理,降低运营成本
- 多能力组合应用示例:通过小程序引导卡片,将更多的服务延伸呈现在小程序中,实现线上线下互导/留资、交易转化、互动、交易转化、定制活动、优惠券发放等目标。例如:品牌通过小程序为用户展示不同授权经营门店(可结合地理位置权限推荐附近门店),通过门店活动/特权(如线下专享服务/优惠)吸引用户到店,并提供一键“预约到店”功能,收集用户意向;用户到店后,可提供“线下签到”功能,用户点击后可领取相关福利,以确认用户完成到店转化,并通过小程序提供的归因能力明确门店线索的渠道来源;对于完成购买/高兴趣用户,可引导其加入品牌抖音粉丝群,后续通过粉丝群发送小程序引导卡片,通过小程序完成交易转化、互动、发券等目标
技术开发代码展示
$daid = $this->request->getIntParam('daid', 0);
//应用类型输出
$where = [
['name' => 'cl_ds_id', 'oper' => '=', 'value' => $this->sid],
];
if (!empty($daid)) {
$where[] = ['name' => 'dl_qyh_uid', 'oper' => '=', 'value' => $daid];
}
$this->output['enter_id'] = $daid;
$sort = ['cl_create_time' => 'DESC'];
$chat_list_model = new App_Model_Douyin_MysqlChatListStorage();
$chat_result = $chat_list_model->getList($where, $this->index, $this->count, $sort);
$intent_model = new App_Model_Douyin_MysqlIntentUserStorage();
#$account_model = new App_Model_Douyin_MysqlDyAccountStorage();
$chat_list = [];
foreach ($chat_result as $item) {
#$account = $account_model->getRowByIdSid($item['cl_qyh_uid'], $this->sid);
$intention = $intent_model->getUserByOpenId($this->sid, $item['cl_from_openid']);
$each = [
'user_nickname' => empty($intention) ? '匿名' : $intention['iu_nickname'],
'user_avatar' => empty($intention) ? parent::TEMPLATE_PLACEHOLDER_IMAGE : $intention['iu_avatar'],
'user_newmsg' => $item['cl_new_text'],
'user_newtime' => date('Y-m-d H:i:s', $item['cl_new_time']),
'user_openid' => $item['cl_from_openid'],
'qyh_uid' => $item['cl_qyh_uid'],
'undo_count' => $item['cl_undo_count'],
];
array_push($chat_list, $each);
}