6DGS云-云短信解决方案

如何使用6DGS云-云短信?

第1步:注册帐户


点击上面的按钮,如下图:

如果未注册帐户,请先注册帐户:

注意:一定要使用自己的手机号码注册,否则后续将无法改密。
其中英文名为您的nodeid(亦节点用户ID)--非常重要,建议填写与团队名、公司名相关。

第2步:创建G节点

我们使用第一步注册得到的帐号登录6DGS云控制台,登录后如下图:

我们看到有免费的1GB的G节点额度,这个额度可以立即使用,直接点击【创建G节点】或点击下图菜单:

点击创建G节点链接或菜单,进入创建G节点页面:

按上述内容填写(注意配置只能选择1GB,合约按流程我们先体验COIN-记帐型合约;
token命名可以直接使用自动生成的coin,如果已经创建过coin的G节点,须修改);
COIN币的数量上限可以随便选,这里因为我们仅仅是测试,设置为1个亿;
云服务商是指G节点集群托管所在地,推荐次序为:华为云-百度云-阿里云-腾讯云;
购买数量为月份数量,也就是这个G节点开通的月数,这里因为是免费额度只能选择1个月;
付款方式这里因为余额还没充值(充值了可以使用余额支付),只能选择会员特权(VIP0也是会员,特权为免费1个GB)
上述内容填写完成后,点击【确定购买】,出现下述弹窗:

可以看到需要支付60元,由于使用了会员特权,所以帐户没钱也是可以直接点击【确定购买】,如下图所未:

购买成功后,等待5秒钟,通过【刷新】按钮可刷新出下图数据,代表创建G节点成功:

至此,一个COIN-记帐型合约的G节点已经创建成功!

第3步:熟悉G节点的菜单功能

依据第2步创建了G节点,现在我们找到管理G节点的菜单:

因为刚才创建的这个G节点托管在了华为云,所以我们点击【G节点】华为云也可以找到它

找到它了,下面我们看一下G节点控制台页面的功能,如下图:

其中API接口和API接口密钥,在下页使用/fork等API接口时需要用到;
我们现在看一下如何管理数据,点击【管理】进入链数据管理操作台界面如下图:

注解:操作区【1】重启仅重启进程,【2】重启会更新代码逻辑并重启,
【3】清空cahe是清空状态缓存,清空数据是将链上的数据清除(会重新构建该G节点)
【4】会删除该G节点,删除后在G节点控制台就找不到它了。
对于数据区,我们看到token-id、height、txid、txjson、hash、sign、timestamp即为一个txid交易纪录在token-id这个高度为height上的一行链纪录;
这里值得注意的是,一个txid会分别出现在多个token-id上,代表了tx交易纪录在有关系的token上的六度共识同步!
下面我们使用G节点的API接口来实现helloworld功能,从而了解到G节点发挥作用的过程!

第4步,使用/fork接口API创建token帐户(token-id)

在使用/fork接口之前,先阅读API文档的接口规范,点击查看API接口文档
如下图所示:

这里可以看到,拼接一个可用的API接口,先在G节点控制台拿到API接口地址和接口密钥,如下图:

API接口地址复制到这里:https://c0.6dgs.opencom.cn/node.testphone.coin
API接口密钥复制到这里:appid=10001&secret_key=bfc51077860b2927be95c0807766ca56
按规范拼接API的接口URL:https://c0.6dgs.opencom.cn/node.testphone.coin/fork?appid=10001&secret_key=bfc51077860b2927be95c0807766ca56

这里在【API接口地址】后面添加了/fork?,还有API接口密钥,这样,一个有效的/fork接口地址就生产了。
我们看API文档,/fork接口需要哪些参数,如下图:

使用dst_token,例如dst_token=coin_6dgscloudsms0001,API接口拼接如下:
https://c0.6dgs.opencom.cn/node.testphone.coin/fork?appid=10001&secret_key=bfc51077860b2927be95c0807766ca56&token=coin_0000000000000000&dst_token=coin_6dgscloudsms0001
返回结果:{"ret":true,"msg":"success","txid":"txid_22Q9GvZAAhimEZKn","token_x":"coin_6dgscloudsms0001","token_y":"coin_0000000000000000","x_state":{"token_state_p":"[\"coin_0000000000000000\"]","token_state_val":"0","token_height":0,"pre_txid":"null","private_key":"rgA2SjjAM5XeDHXezAnAyLX915YRfx4EVGHnXu56idn","public_key":"jACDVWxhmMf2vQbiUDJf2fZTJxveBFWiJzVSJCQDzhaK","token":"coin_6dgscloudsms0001"},"y_state":{"token_state_p":"[]","token_state_val":"20","token_height":13,"private_key":"8egL8ivrhE3KkpW639f1fXv1Qb97psiudMqs5Kfb2WmL","public_key":"yizNoHddKNvchoikGRdrTaqeDJptUh9XvpnRiDfb85vz","token":"coin_0000000000000000"}}
可以看到ret=true,代表fork新帐户调用成功,同时返回token_x=coin_6dgscloudsms0001;
这里注意,因为token-id的唯一性,所以多次调用同一个/fork接口URL,创建dst_token=coin_6dgscloudsms0001会在第二次调用以后全部返回失败结果如下:
{"ret":false,"msg":"wallet new token failed! "}
意思是:token-id已经存在于G节点中了,所以fork创建该dst_token失败了(不能多次fork同一个目标token-id)。

第5步,使用/op接口sms指令发送短信

在使用/op接口之前,先阅读接口API文档,点击查看/op的API接口文档
如下图所示:

交易纪录数据结构为:token_x op(sms) token_y opval(phone and code) extra_data ;(非转帐推荐使用assert、config、notice等指令)
一般情况下,除非是send消息,令token_x=coin_0000000000000000(即token_root)
令token_y=coin_6dgscloudsms0001(我们使用上面fork接口API创建的token-id)
#1 发送短信须使用sms指令
并且令opval={"phone":"17324139805","code":"356123","sms_sign":"群老大APP","order_number":"your-order-no","version":1}(其中phone参数为手机号码,code为验证码,sms_sign为短信签名--建议为公司名或者产品名(可选,不填写签名自动设置为“6DGS云”),version暂时只能为1,order_number为订单号非必填)
因为在浏览器里直接使用该参数,所以我们进行urlencode转码:转码工具
转码得到opval:%7b%22phone%22%3a%2217324139805%22%2c%22code%22%3a%22356123%22%2c%22sms_sign%22%3a%22%e7%be%a4%e8%80%81%e5%a4%a7APP%22%2c%22order_number%22%3a%22your-order-no%22%2c%22version%22%3a1%7d
接口API的URL拼接如下:
https://c0.6dgs.opencom.cn/node.testphone.coin/op?appid=10001&secret_key=bfc51077860b2927be95c0807766ca56&token_x=coin_0000000000000000&token_y=coin_6dgscloudsms0001&opcode=sms&opval=%7b%22phone%22%3a%2217324139805%22%2c%22code%22%3a%22356123%22%2c%22sms_sign%22%3a%22%e7%be%a4%e8%80%81%e5%a4%a7APP%22%2c%22order_number%22%3a%22your-order-no%22%2c%22version%22%3a1%7d&extra_data=sms-helloworld
得到的返回结果如下:
{"ret":true,"msg":"success","txid":"txid_31R5xnoUs44b9J2S","token_x":"coin_0000000000000000","token_y":"coin_6dgscloudsms0001","x_state":{"token_state_p":"[]","token_state_val":"20","token_height":14,"pre_txid":"txid_21EfrwpDyD5MfHVq","public_key":"yizNoHddKNvchoikGRdrTaqeDJptUh9XvpnRiDfb85vz","token":"coin_0000000000000000"},"y_state":{"token_state_p":"[\"coin_0000000000000000\"]","token_state_val":"0","token_height":1,"public_key":"jACDVWxhmMf2vQbiUDJf2fZTJxveBFWiJzVSJCQDzhaK","token":"coin_6dgscloudsms0001"},"x6dgs_cloud_func_ret":{"ret":false,"msg":"account last sms-number is zero"}}
ret=true代表op接口调用和写入数据成功,这里判断短信是否发送成功是通过x6dgs_cloud_func_ret的回参数判断:
如这里所示:"x6dgs_cloud_func_ret":{"ret":false,"msg":"account last sms-number is zero"},意思是短信帐户为0,须先充值短信帐户

充值或者找客服沟通索取免费短信之后,可继续点击该发送短信API的URL,得到下述结果:
{"ret":true,"msg":"success","txid":"txid_271raEFYESTtnruw","token_x":"coin_0000000000000000","token_y":"coin_6dgscloudsms0001","x_state":{"token_state_p":"[]","token_state_val":"20","token_height":16,"pre_txid":"txid_21EfrwpDyD5MfHVq","public_key":"yizNoHddKNvchoikGRdrTaqeDJptUh9XvpnRiDfb85vz","token":"coin_0000000000000000"},"y_state":{"token_state_p":"[\"coin_0000000000000000\"]","token_state_val":"0","token_height":2,"public_key":"jACDVWxhmMf2vQbiUDJf2fZTJxveBFWiJzVSJCQDzhaK","token":"coin_6dgscloudsms0001"},"x6dgs_cloud_func_ret":{"ret":true,"msg":"success","sms_last_num":"3999"}}
可以看到,"x6dgs_cloud_func_ret":{"ret":true,"msg":"success","sms_last_num":"3999"}代表已经发送短信成功,并且帐户余额3999条。
#2 使用模板发送验证码短信:
令opval={"phone":"17324139805","sms_sign":"群老大APP","template":"尊敬的用户:欢迎登录群老大APP,您的验证码为123456,有效期5分钟,请尽快完成登录","order_number":"your-order-no","version":1}(其中phone参数为手机号码,template为验证码的模板(包含了验证码),sms_sign为短信签名--建议为公司名或者产品名(可选,不填写签名自动设置为“6DGS云”),version暂时只能为1,order_number为订单号非必填)
转码得到opval:%7b%22phone%22%3a%2217324139805%22%2c%22sms_sign%22%3a%22%e7%be%a4%e8%80%81%e5%a4%a7APP%22%2c%22template%22%3a%22%e5%b0%8a%e6%95%ac%e7%9a%84%e7%94%a8%e6%88%b7%3a%e6%ac%a2%e8%bf%8e%e7%99%bb%e5%bd%95%e7%be%a4%e8%80%81%e5%a4%a7APP%2c%e6%82%a8%e7%9a%84%e9%aa%8c%e8%af%81%e7%a0%81%e4%b8%ba123456%2c%e6%9c%89%e6%95%88%e6%9c%9f5%e5%88%86%e9%92%9f%ef%bc%8c%e8%af%b7%e5%b0%bd%e5%bf%ab%e5%ae%8c%e6%88%90%e7%99%bb%e5%bd%95%22%2c%22order_number%22%3a%22your-order-no%22%2c%22version%22%3a1%7d
接口API的URL拼接如下:
https://c0.6dgs.opencom.cn/node.testphone.coin/op?appid=10001&secret_key=bfc51077860b2927be95c0807766ca56&token_x=coin_0000000000000000&token_y=coin_6dgscloudsms0001&opcode=sms&opval=%7b%22phone%22%3a%2217324139805%22%2c%22sms_sign%22%3a%22%e7%be%a4%e8%80%81%e5%a4%a7APP%22%2c%22template%22%3a%22%e5%b0%8a%e6%95%ac%e7%9a%84%e7%94%a8%e6%88%b7%3a%e6%ac%a2%e8%bf%8e%e7%99%bb%e5%bd%95%e7%be%a4%e8%80%81%e5%a4%a7APP%2c%e6%82%a8%e7%9a%84%e9%aa%8c%e8%af%81%e7%a0%81%e4%b8%ba123456%2c%e6%9c%89%e6%95%88%e6%9c%9f5%e5%88%86%e9%92%9f%ef%bc%8c%e8%af%b7%e5%b0%bd%e5%bf%ab%e5%ae%8c%e6%88%90%e7%99%bb%e5%bd%95%22%2c%22order_number%22%3a%22your-order-no%22%2c%22version%22%3a1%7d&extra_data=sms-helloworld
得到的返回结果如下:
{"ret":true,"msg":"success","txid":"txid_24iPkGvScLwWYPkq","token_x":"coin_0000000000000000","token_y":"coin_6dgscloudsms0001","x_state":{"token_state_p":"[]","token_state_val":"30","token_height":76,"pre_txid":"txid_z4qz1uWSGJ8w4cG4","public_key":"yizNoHddKNvchoikGRdrTaqeDJptUh9XvpnRiDfb85vz","token":"coin_0000000000000000"},"y_state":{"token_state_p":"[\"coin_0000000000000000\"]","token_state_val":"0","token_height":12,"public_key":"jACDVWxhmMf2vQbiUDJf2fZTJxveBFWiJzVSJCQDzhaK","token":"coin_6dgscloudsms0001"},"x6dgs_cloud_func_ret":{"ret":true,"msg":"success","sms_last_num":"3989"}}
【注意】使用短信模板,参数为template,不使用短信模板,则使用code参数(当template参数不为空且文本长度超过10个字符时,才会认为是有效的模板)。
通过6DGS云控制台的【短信帐户】管理,可以看到以下短信发送纪录:

当然,因为是op操作,也可通过/chain/opcode可以查询到op接口的每一条存储纪录点击查看/chain接口文档

其它:短信帐户的发送纪录管理和充值

通过6DGS云控制台,可以查询帐户余额信息(并且充值短信帐户余额,每条短信2.5分钱),如下图所示:

充值100元如下图:


充值成功后:

索取免费短信包,详见下面的教程!

【重要】免费领取测试短信包的客服联系方式

领取前,须要先完成【认证任务】:

认证审核客服联系方式:
QQ:251499600
手机:17324139805



Copyright © 2012-2019 广州六度共识科技有限公司. All Rights Reserved.
粤ICP备14035184号