laravel使用自定义SDK 免登录,扫码登录,服务订阅,机器人

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: laravel使用自定义SDK 免登录,扫码登录,服务订阅消息,机器人消息

基于:

laravel


https://gitee.com/chinakaiyuan/laravelgrid

下载laravelgrid代码配置一下。安装完毕,登录后如图:

image.png

如图填写必要的信息,保存。子表会出现对应的访问地址

image.png

子表的地址是自动创建的接口,其中免登录必须在钉钉中打开。

2、https://域名/+地址  就是访问的接口。访问会出现钉钉扫码的二维码如:

image.png

主要 函数算法说明:

3、想使用机器人主动发消息  需要配置机器人

image.png

关于新增机器人这点,没得办法,目前必须自己新增。群添加机器人事件目前还没有开放。另外自定义群机器人不支持发送单聊消息。

注意,自定义机器人,不用选群聊机器人名称。如果选了加签,加签值就必须填

image.png

机器人填完后,可发送消息。下拉选项中已经定义好了支持的消息类型。消息内容中修改对应值,点击发送就完成消息发送

image.png

当然如果发送单人消息,必须在钉钉人员中同步钉钉用户。

image.png


4,订阅消息。完成钉钉配置后,子表会产生订阅消息地址。钉钉触发订阅的消息,都会出现在这个界面。多应用都设置了同样的订阅消息,每个应用都会触发。例如:截图是一次打卡消息,应用namenode2和namenode 都触发了一次。这里保存的是解密后的消息

image.png

5、日志。保存了接受消息内容,发送消息内容

image.png

是数据的原始消息。加密消息,可用postman等工具调试。

主要算法说明

使用https://gitee.com/chinakaiyuan/dingtalk SDK。

主程序源码https://gitee.com/chinakaiyuan/laravelgrid

1、文件 App\Providers\DingTalkServiceProvider

//从数据库中读取保存好的配置信息

    $this->app->singleton('DT', function ($app) {

           returnfunction ($userid, $name) {

//主要配置

               $config = DingTalkSetting::where("creator_id", $userid)->first();

//App 配置

               $ServerApp = DingTalkApp::where("creator_id", $userid)->where("name", $name)->first();

               $appconfig = $config->toArray();

               if ($ServerApp) {

//保存日志时,保存下是哪个用户的,哪个应用的日志

                   $appconfig['app_id'] = $ServerApp->id;

                   $appconfig['creator_id'] = $userid;

//设置跳转地址

                   $appconfig['redirect'] = Request::url();

                   $appconfig = array_merge($ServerApp->toArray(), $appconfig);

               }


               $ddApp = newApplication($appconfig);

//设置access_token 保存接口,实现set 和get 方法

               $ddApp->access_token->setCache($config);

               //设置日志驱动 实现debug方法

               $ddApp->logger->set($config);

               return$ddApp;

           };

       });

内部使用方法:

app("DT")(用户ID, 应用名称) 例如

我的ID 是1,机器人名叫robot。那么这个机器人调用方式是

app("DT")(1,'robot')->robot;


开放测试网站https://namenode.cn/   可以自己直接注册一个用户账户在其中测试一下。网站水管小。可能加载下载文件可能会慢点




相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
7月前
|
Java 应用服务中间件 开发工具
如何使用支付宝沙箱环境支付并公网调用sdk创建支付单服务
如何使用支付宝沙箱环境支付并公网调用sdk创建支付单服务
|
5月前
|
Web App开发 机器人
公众号爆文仿写RPA机器人,采集,仿写,发布一条龙服务
公众号爆文仿写RPA机器人,采集,仿写,发布一条龙服务
336 1
|
3月前
|
Kubernetes API 开发工具
【Azure Developer】通过SDK(for python)获取Azure服务生命周期信息
需要通过Python SDK获取Azure服务的一些通知信息,如:K8S版本需要更新到指定的版本,Azure服务的维护通知,服务处于不健康状态时的通知,及相关的操作建议等内容。
49 18
|
4月前
|
存储 机器人 API
如何使用渐变块创建自定义聊天机器人
本文是一篇使用Gradio库的Blocks API创建自定义聊天机器人界面的教程,涵盖了从基础聊天机器人到支持流式响应、用户反馈(喜欢/不喜欢)以及Markdown、图像、音频和视频等多媒体内容的高级功能实现方法。
如何使用渐变块创建自定义聊天机器人
|
4月前
|
API 开发工具 网络架构
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
|
4月前
|
API 开发工具 网络架构
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
Azure 容器实例(Azure Container Instances,简称 ACI)是一个无服务器容器解决方案,允许用户在 Azure 云环境中运行 Docker 容器,而无需设置虚拟机、集群或编排器。 ACI 适用于任何可以在隔离容器中操作的场景,包括事件驱动的应用程序、从容器开发管道快速部署、数据处理和生成作业。
|
4月前
|
机器人 C# 人工智能
智能升级:WPF与人工智能的跨界合作——手把手教你集成聊天机器人,打造互动新体验与个性化服务
【8月更文挑战第31天】聊天机器人已成为现代应用的重要组成部分,提供即时响应、个性化服务及全天候支持。随着AI技术的发展,聊天机器人的功能日益强大,不仅能进行简单问答,还能实现复杂对话管理和情感分析。本文通过具体案例分析,展示了如何在WPF应用中集成聊天机器人,并通过示例代码详细说明其实现过程。使用Microsoft的Bot Framework可以轻松创建并配置聊天机器人,增强应用互动性和用户体验。首先,需在Bot Framework门户中创建机器人项目并编写逻辑。然后,在WPF应用中添加聊天界面,实现与机器人的交互。
120 0
|
4月前
|
开发工具 数据安全/隐私保护 Python
【Azure 环境】通过Python SDK收集所有订阅简略信息,例如订阅id 名称, 资源组及组内资源信息等,如何给Python应用赋予相应的权限才能获取到信息呢?
【Azure 环境】通过Python SDK收集所有订阅简略信息,例如订阅id 名称, 资源组及组内资源信息等,如何给Python应用赋予相应的权限才能获取到信息呢?
|
5月前
|
人工智能 自然语言处理 机器人
客户在哪儿AI的ToB获客服务和AI外呼机器人的有何不同
客户在哪儿AI的ToB获客服务 VS AI外呼机器人的ToB获客服务。
|
7月前
|
机器人 PHP
QQ云端机器人登录系统php源码
QQ云端机器人登录系统php源码
392 4