开发者社区> 问答> 正文

宜搭可以实现短信提醒吗?如果可以该怎么实现?

宜搭可以实现短信提醒吗?如果可以该怎么实现?

展开
收起
1782726068927217 2023-03-16 09:19:23 1108 0
来自:钉钉宜搭
4 条回答
写回答
取消 提交回答
  • 天下风云出我辈,一入江湖岁月催,皇图霸业谈笑中,不胜人生一场醉。

    目前宜搭消息通知暂时不支持通过手机短信推送。可以找他们反馈一下,应该有解决办法,大家的回答五花八门,但是尽量从宜搭官网客服处理,外接的短信不知道接口是不是兼容:https://www.dingtalk.com/qidian/help-detail-1061016283.html

    2023-03-16 17:52:04
    赞同 展开评论 打赏
  • 月移花影,暗香浮动

    宜搭平台可以通过第三方短信服务接口实现短信提醒功能。你可以选择与各大短信服务商(如阿里云、腾讯云等)合作,根据他们提供的 API 接口文档实现接口调用。

    在宜搭平台中,可以在云函数中集成短信提醒的逻辑。通过使用 HTTP 触发器,将需要进行短信提醒的事件通过 HTTP 请求发送到云函数中,再进行相应的处理并调用第三方短信服务接口发送短信。

    同时,宜搭平台还提供了自带的短信服务集成,可以快速搭建短信提醒服务,方便快捷。具体操作可以参考宜搭官方文档中短信服务的相关章节。

    2023-03-16 14:34:02
    赞同 展开评论 打赏
  • 今天也要加油吖~

    您好,是可以的,具体实现步骤可以参照这个博客https://blog.csdn.net/m0_61300098/article/details/128409951。

    2023-03-16 10:53:23
    赞同 展开评论 打赏
  • 十年摸盘键,代码未曾试。 今日码示君,谁有上云事。

    宜搭可以实现短信提醒,需要利用宜搭的连接器功能,就可以做到轻松自动发送短信。

    首先需要在阿里云官网注册一个阿里云的账号,然后在阿里云官网上面购买短信服务,有两种渠道购买,一种是购买阿里云官方的短信服务,一种是购买阿里云三方服务商的短信服务。

    购买成功后,在 短信服务工作台 就可以看到已经购买的套餐包余量。按照阿里云的官方文档,设置短信“模板”和短信“签名”。需要审核,一般2小时内完成。模板和签名审核通过之后,可以在签名和模板管理中看到。

    购买阿里云三方服务商的短信服务,购买成功之后,在 云市场工作台 可以看到购买成功的服务。

    添加客服为好友联系

    访问产品购买页面:https://market.aliyun.com/products/57126001/cmapi030445.html?#sku=yuncode2444500003

    找到对应的服务商联系信息,添加联系人为好友,可以选择钉钉联系。

    设置短信的内容,将刚购买的短信服务订单编号告知客服。

    制定自己要发的短信模板,短信模板包括“签名+模板”,标注:

    【钉峰会】这个是签名; ${location}、${url}、${time}、${address} 这些是变量,到时候可动态替换成其它文案; 短信内容不宜过长,需要控制长度。

    将“短信服务订单编号”和“短信模板”告知给客服,让他们帮忙添加,添加成功后,他们会通知。

    创建宜搭应用和报名页面,在表单设计器中,拖入需要使用的字段、图片、文字等。其中联系方式字段(手机号)必填,否则短信无法发送。

    设置报名页短链 切换到“页面发布”的tab,然后打开“公开访问”的开关,填入短链接名字。这样,访问:https://ycu74v.aliwork.com/o/message_test,即可看到报名页的实际效果。

    image.png

    配置短信连接器 因为阿里云官方短信和三方服务商短信提供的加密方式不一样,导致连接器的配置方式也不一样。

    其中阿里云官方使用的是 AK+SK 的动态认证方式,目前宜搭连接器不支持这种认证方式,所以需要使用到 FaaS 连接器来解决。

    而三方服务商使用的是 AppCode 的加密认证方式,可以直接使用宜搭的普通连接器。接下来,讲解两种连接器的配置方式。

    阿里云官方短信 FaaS 连接器配置 操作路径如下

    连接器创建入口:宜搭官网 -> 平台管理 -> 连接器工厂 -> 连接器管理 -> 创建连接器 -> FaaS 自定义连接器

    image.png

    点击“确定”后,输入“连接器显示名称”和“连接器介绍”,再点击“下一步”

    image.png

    填写“名称”,然后将下列代码复制到 Body 中,并点击“解析 Body”。

    image.png

    image.png

    其中“accessKeyId”和“accessKeySecret”是必填选项,填入自己在阿里云注册的账号的 AK 和 SK 即可。解析 Body 后点击“保存”。

    image.png

    将下列代码复制到 Response Body 中,并点击“解析 Body”。解析 Body 后点击“保存”。

    image.png

    image.png

    image.png

    如何获取 AK 和 SK 呢?访问页面地址:https://usercenter.console.aliyun.com/?#/manage/ak

    image.png

    保存成功之后,点击“前往云 IDE 开发”按钮,跳转到阿里云 FaaS 云端开发设计器。

    image.png

    image.png

    修改设计器中的 pom.xml 和 src/FaasEntry.java 两个文件。

    pom.xml 中新增依赖

    image.png

    image.png

    src/FaasEntry.java 代码完全替换成下面这一份

    package com.alibaba.work.faas;

    import java.util.Map; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject;

    import com.alibaba.work.faas.common.AbstractEntry; import com.alibaba.work.faas.common.FaasInputs; import com.alibaba.work.faas.util.DingOpenApiUtil; import com.alibaba.work.faas.util.YidaConnectorUtil;

    import com.aliyun.fc.runtime.Context; import com.aliyun.tea.; import com.aliyun.dysmsapi20170525.; import com.aliyun.dysmsapi20170525.models.; import com.aliyun.teaopenapi.; import com.aliyun.teaopenapi.models.*;

    /** * @Description 宜搭Faas连接器函数入口,FC handler:com.alibaba.work.faas.FaasEntry::handleRequest * @Version 2.0 * @Author bufan **/ public class FaasEntry extends AbstractEntry {

    @Override
    public JSONObject execute(FaasInputs faasInputs, Context context) {
        context.getLogger().info("faasInputs: " + JSON.toJSONString(faasInputs));
        /**
         *用于调用钉钉开放平台OpenAPI的accessToken, 宜搭提供的, 仅申请了钉钉开放平台的部分OpenAPI的调用权限
         *如果此accessToken不满足您的需求, 可在钉钉开放平台创建您自己的钉钉应用并获取appKey和APPSecret并使用com.alibaba.work.faas.util.DingOpenApiUtil获取您自己的accessToken
         * @see com.alibaba.work.faas.util.DingOpenApiUtil#getCustomAccessTokenThenCache(String, String)
         */
        String accessToken = (String)faasInputs.getYidaContext().get("accessToken");
        //设置钉开放平台访问token, 后续无需再设置
        DingOpenApiUtil.setAccessToken(accessToken);
        /**
         *调用宜搭的前端消费接口时使用
         */
        String consumeCode = (String)faasInputs.getYidaContext().get("consumeCode");
        //设置连接器消费码, 后续无需再设置
        YidaConnectorUtil.setConsumeCode(consumeCode);
    
        Map<String,Object> input = faasInputs.getInputs();
        String ak = (String)input.get("accessKeyId");
        String as = (String)input.get("accessKeySecret");
        String phoneNumbers = (String)input.get("phoneNumbers");
        String signNum = (String)input.get("signNum");
        String templateCode = (String)input.get("templateCode");
        String templateParam = (String)input.get("templateParam");
    
        JSONObject result = new JSONObject();
        result.put("success",true);
        result.put("message","");
        result.put("code","");
    
        try {
            com.aliyun.dysmsapi20170525.Client client = createClient(ak, as);
            SendSmsRequest sendSmsRequest = new SendSmsRequest();
            // 复制代码运行请自行打印 API 的返回值
            sendSmsRequest.setPhoneNumbers(phoneNumbers);
            sendSmsRequest.setSignName(signNum);
            sendSmsRequest.setTemplateCode(templateCode);
            sendSmsRequest.setTemplateParam(templateParam);
            SendSmsResponse res = client.sendSms(sendSmsRequest);
            String resCode = res.getBody().getCode();
            if ("ok".equalsIgnoreCase(resCode)) {
              return result;
            }
            else {
              System.out.println("invoke failed:" + JSON.toJSONString(res));
              result.put("success",false);
              result.put("message",res.getBody().getMessage());
              result.put("code",resCode);
              return result;
            }
        }
        catch(Exception ex) {
          System.out.println("meet errot");
          ex.printStackTrace();
          result.put("success",false);
          result.put("message",ex.getMessage());
          return result;
        }
    }
    
    private static com.aliyun.dysmsapi20170525.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
        Config config = new Config()
                // 您的AccessKey ID
                .setAccessKeyId(accessKeyId)
                // 您的AccessKey Secret
                .setAccessKeySecret(accessKeySecret);
        // 访问的域名
        config.endpoint = "dysmsapi.aliyuncs.com";
        return new com.aliyun.dysmsapi20170525.Client(config);
    }
    

    }

    image.png

    切换到“源代码管理”界面,点击“暂存并提交代码”,将代码推送到远程 Git 仓库中保存。

    image.png

    切换到“设置WB”,然后选择“线上环境”,点击“部署”,将 FaaS 服务部署到线上去.

    image.png

    点击“继续部署”按钮。

    image.png

    上述操作完成后,一个 FaaS 连接器就 OK 了。

    三方服务商短信连接器配置 如果购买的是三方服务商的短信服务,那么他们会提供相对应的 API 调用和简单身份认证调用方式。

    访问地址:https://market.aliyun.com/products/57126001/cmapi030445.html?#sku=yuncode2444500001

    image.png

    操作路径如下

    连接器创建入口:宜搭官网 -> 平台管理 -> 连接器工厂 -> 连接器管理 -> 创建连接器 -> HTTP 自定义连接器

    image.png

    填写供应商给的 API 相关配置,“保存”并点击“下一步”。

    image.png

    身份验证类型选择“阿里云API网关”,然后点击“下一步”

    image.png

    根据三方提供的 API,进行参数填写。

    image.png image.png

    “保存”信息之后,然后切换到“鉴权管理”页面“添加鉴权模板”。

    其中连接器选择刚刚新建的“三方服务商短信”,“App Code”将服务商给的 Code 复制过来。

    image.png

    切换到“连接器管理”页面,找到刚刚新建的“三方服务商短信”,然后点击“测试”按钮进行测试。

    image.png

    填入“短信内容”和“手机号”,点击“测试操作”,下面 RESPONSE 会提示发送是否成功。

    image.png

    如果按照预期的返回,那么短信发送就会成功。

    使用短信连接器 5.1 阿里云官方短信 FaaS 连接器使用 首先,访问“集成&自动化”。

    点击“从空白新建”,然后输入名称,选择触发表单,点击“确认”。

    配置表单事件触发为“创建成功”。

    image.png

    新增一个“连接器”节点。选择“自定义”连接器中,自己新建的“短信发送”的连接器。

    image.png

    将连接器需要的参数配置进去,点击“保存”,然后“发布”。

    image.png

    在表单提交一条数据,输入自己姓名和手机号。

    image.png

    提交成功之后,如果连接器配置和功能都没问题的话,就会收到一条短信。

    image.png

    2023-03-16 10:10:41
    赞同 1 展开评论 打赏
问答分类:
问答标签:
问答地址:
关联地址:
相关产品:
来源圈子
更多
收录在圈子:
+ 订阅
「宜搭」是云钉原生低代码平台(钉钉 PaaS - aPaaS),让企业应用搭建更简单! 帮助中小企业降本提效,加强组织的数字化自主权; 帮助大型企业释放个体创新力,助力组织创新涌现。
相关文档: 宜搭
问答排行榜
最热
最新

相关电子书

更多
宜搭 - 企业智能化应用搭建平台 立即下载
《云市场-宜搭解决方案》 立即下载
《宜搭开发手册》 立即下载