3

2017

老司机揭秘云通信的安全隐患和解决之道

江:发表于2017-03-20

2013年,大名鼎鼎的云计算安全联盟 CSA发布报告总结了云计算发展过程中可能遇到的安全隐患。这说明安全永远是互联网行业无法避免的核心问题。自从互联网诞生以来就一直伴随。作为云计算的重要应用之一——云通信已经成为主流通信方式,它的应用带给我们极大的便利,尤其是针对企业级用户大大降低了他们的成本且提高了效率。但与此同时,发展于云计算的云通信服务对于安全隐患基本上是一脉相承的。

1

2017

云服务三兄弟——公有云、私有云和混合云有何不同

江:发表于2017-01-17

某用户:请问 SUBMAIL 赛邮云通信的云服务是公有云还是私有云啊?私有云和公有云有什么不同啊?

 

上面的问题是前几天我们一个客户向小编提出来的,当时的回答比较随意,或许不够全面。今天这里想和大家详细聊聊。

 

首先可以肯定的告诉大家, SUBMAIL 赛邮云通信无论是短信服务还是邮件服务或其它的云通信类服务都属于公有云服务。

 

云通信眼中的大数据

江:发表于2017-01-11

大数据这个名词这几年突然之间火了,可以预测未来还会持续火下去。如今和一些朋友聊天,不管他们是不是真的了解大数据,总是会不经意间提到这个概念。其原因无非以下几点:一是人们对新技术的渴求期待;二就是有些人为了显示自己的高端前沿,不管是不是真懂,吹上一通再说;三是部分人的确已经在从事大数据方面的研究和应用。但更多的人其实对大数据的概念还是一知半解

12

2016

【SUBMAIL】新年新版本更新 - SUBMAIL祝您新年快乐

江:发表于2016-12-29

敬爱的 SUBMAIL 用户:

转眼之间 2016 已经过去,在这一年因为有您的支持和关注,SUBMAIL 才能茁壮成长。SUBMAIL 在此对您表示衷心的感谢。

祝您和您的家人新的一年里身体健康,万事如意,事业一帆风顺。

新的 2017,SUBMAIL 将更加努力、奋进、拼搏,我们也期待着与您有更多的交流合作,更好的为您服务。

SUBMAIL 团队祝您新年快乐 HAPPY NEW YEAR!


重要版本更新


一、SUBMAIL 启用中文名赛邮云通信

即日起,SUBMAIL 正式启用中文名称【赛邮云通信】,并同时启用新 LOGO。

12

2016

帮你理解 HTTP 和 HTTPS 的区别

江:发表于2016-12-29
这两天闲来无事,在网上看了一下,发现 HTTP 和 HTTPS 的区别很受关注,多位大牛做了很详细的阐述,非常深刻全面。但是小编还是发现一个问题,大牛们的描述太过于专业了,对于专业人士来说当然很容易看明白,可是真正需要了解的往往是一些小白,小白们一开始就接触这些专业术语其实是很难理解的。你们说是不是这个理。所以小编决定联系实际来聊聊这个话题。
 

首先我们还是简单的描述一下专业定义。 HTTP 是怎么定义的? HTTPS 又是怎么定义的?

12

2016

SUBMAIL祝您圣诞快乐

江:发表于2016-12-21

尊敬的 SUBMAIL 用户:

感谢您在即将过去的 2016 年对 SUBMAIL 的支持,愿您和您的家人圣诞节充满温馨祥和,新的一年里事业顺心,幸福美满。愿圣诞节的烛光能带给您更多的幸运和快乐。

 

 

12

2016

吃货告诉你,PAAS、IAAS和SAAS之间的区别

江:发表于2016-12-01

云计算的发展这几年大家也看到了,非常火热。各种新概念层出不穷,如果你不是专业人士,这些新概念让你一脸茫然是很正常的。

所以最近比较多的小伙伴向我咨询一个问题,那就是PAAS、IAAS和SAAS之间的区别?正好今天小编比较闲,就在这为大家解释一下。当然首先请允许小编从专业的角度来解释一下PAAS、IAAS和SAAS之间的概念区别。

用户通过Internet 可以从完善的计算机基础设施获得服务。这类服务可以称为基础设施即服务,这就是通常所说的IAAS。而相应的另外两种服务就是平台即服务和软件即服务。平台及服务提供了用户可以访问的完整或部分的应用程序开发,我们通常称之为PAAS。软件及服务则提供了完整的可直接使用的应用程序,我们通常称之为SAAS。如果把他们看作层次结构,那么第一层自然叫做IAAS,第二层就是PAAS,第三层也就是SAAS。好了专业的就说到这里,想必很多小伙伴还是一知半解。那么下面开始说人话。

12

2016

实例解析云计算的概念

江:发表于2016-12-01

甲:我们公司的资料不让存放到个人电脑上,一般都存到云上。

乙:别逗了,你们单位就十几个人,两台服务器,没有虚拟化也没有分布式,能叫云?

甲:咋了?几百块钱的西数NAS都叫云呢。

通过上述对话看得出甲大概是个普通人,乙是个技术宅,对话也反映出不同人眼中不同的云。那究竟什么是云呢?事实上已经有不下于一百种的定义(或许更多),相信对于大多数的小伙伴来说都是一脸懵逼,啥是云?云计算又是干哈的?别急,且听小编我慢慢道来。

11

2016

赛邮·云通信 双11+上线2周年庆

江:发表于2016-11-07

单笔订单金额超 5000 元返 10% 账户余额

活动期限内,订单总金额超过 5000 元(包含)即可获得订单金额 10% 的账户余额

例:活动期限内订单总金额为 5000 元,即获得 500 元的账户余额。

 

9

2016

SUBMAIL 祝您国庆长假愉快

江:发表于2016-09-28

尊敬的 SUBMAIL 用户: 

SUBMAIL祝您国庆长假快乐,感谢您一直以来的支持与合作。在您的支持和信赖下,我们才得以不断进步。

 

9

2016

关于短信验证码安全,您需要知道的几件事

Leo:发表于2016-09-22

云时代,通过对接短信API发送通知、提醒、验证、营销、推广短信是大多数企业不可或缺的需求,短信API极大的方便了企业和用户的连接。

短信验证码作为APP和网站最基础的需求,时常会被黑客恶意利用和进行短信轰炸。具体出现的状况,请看下面的截图(图片来自互联网)

如果短信验证码接口和页面不做任何限制,黑客很容易利用一些恶意的短信轰炸软件对接口进行攻击,不停的对同一个号码或者N个号码重复发送验证码短信。

短信验证码被攻击,不仅会对用户造成骚扰,引起投诉,更会浪费你的短信余额,降低品牌形象。

 

如何防范短信验证码被攻击?

一、图形验证码

大部分短信轰炸脚本基于网页爬虫,图形验证码可以简单粗暴的防御这类刷码行为。

在短信请求之前,让用户输入图形验证码,比对后发起API请求即可,如以下截图:

 

二、记录、比对IP和手机号码,做频率限制,过滤空IP头

5

2016

SUBMAIL 商店单价即将调整

Leo:发表于2016-05-13

为更好的服务用户,我们预计在2016年5月中下旬对商店内的商品单价和储值方案做出调整,本次主要针对短信和邮件许可的单价进行调整。

调整范围:

  1. 降低短信/语音小型许可包的阶梯单价,使少量短信需求的用户可以使用更低的单价购买短信/语音包
  2. 新增(事务类)短信/语音服务梯度资费调整制度
  3. 缓解持续升高的服务器成本压力,小幅提高邮件许可资费
  4. 小幅调整手机流量/物联网服务的最低储值金额

 

具体调整方案如下:

短信/语音:预计调整范围为5000-50万许可包单价,缩小购买单价阶梯,统一降价调整

邮件:预计删除2万条邮件许可包,小幅提高邮件许可的单价,增加1000万邮件许可包

手机流量/物联网:单价不受本次调价影响,最低储值由原100元调整至500元最低储值金额

 

短信/语音(事务类)服务增加梯度资费调整策略:

  1. 短信/语音(事务类)月发送量  >=  50万 商店单价调整至:0.044元/条
  2. 短信/语音(事务类)月发送量  >=  100万 商店单价调整至:0.043元/条
  3. 短信/语音(事务类)月发送量  >=  200万 商店单价调整至:0.042元/条
  4. 短信/语音(事务类)月发送量  >=  500万 商店单价调整至:0.038元/条

请注意:营销类短信不累计发送数量,不参与梯度资费调整策略

梯度调整机制:当您的账户当月累计发送量到达梯度调整范围内的任一标准时,前往商店购买短信许可即可开始享受对应梯度优惠价格

 

什么是事务类短信/语音?

事务类短信/语音包含:验证码类、订单/支付/发货/快递通知类、事件提醒类、事件通知类、不包含任何营销或推广内容的模板

3

2016

3.21 版本更新说明

Leo:发表于2016-03-21

新功能:

 

邮件:增加收件箱功能(BETA)

 

全新设计的邮件收件箱,您可以在 SUBMAIL 接收邮件,系统退信、回弹和拒收、举报邮件等通知

 

 

  1. 邮件分类功能:系统退信会自动分类为无效和错误地址、拒收、举报、软回弹和硬回弹
  2. 按域名分类邮件功能
  3. …………

3

2016

短信模板引擎 API 上线

Leo:发表于2016-03-16

短信模板引擎 API 上线


API: Message/template 

 

message/template 是 SUBMAIL 的短信模板 API。

 

使用 message/template 可以获取、创建、编辑或删除您的短信模板。

message/template API 使用 HTTP 规范中的 GETPOSTPUTDELETE 方法对模板进行操作,使用 GET 方法获取单个或全....

3

2016

3.12 版本更新

Leo:发表于2016-03-12

 

新功能:

 

短信上行(短信回复)功能图形界面化

  1. 短信上行现在可以在后台管理界面直接查看
  2. 短信上行支持搜索、整理、标记、排序、删除等操作
  3. 短信上行内容支持重复推送至 SUBHOOK,通过单击每条短信 SUBHOOK 按钮进行重复推送动作

 

 

后台管理界面调整和功能.......

 

12

2015

邮件 API 更新,增加自定义标签功能

Leo:发表于2015-12-30

新功能:

  • 邮件 API 增加自定义标签 tag 参数,现在您可以使用 tag 参数定义每封邮件的标签,应用于邮件分类、自定义分析报告(mail/send 和 mail/xsend 均支持tag 标签)
  • mail/send 和 mail/xsend 现在还会返回每封邮件的 send_id ,多个收件人时会将 send_id 集合在 retrun 节点内 ,具体请参阅 邮件API文档
  • SUBHOOK 推送的分析报告现在会同时推送 send_id 和 tag 参数

 

如您有任何建议或意见,请在官方博客评论区留言给我们,或在 SUBMAIL 工单内与我们的工程师交流。

12

2015

手机流量分发功能开放公测,PHP 2.2 SDK更新

Leo:发表于2015-12-09

SUBMAIL 手机流量分发功能现已开放公测,同时开放在线分发功能和 mobiledata/charge(充值 API),mobiledata/package(流量包获取 API),mobiledata/TOService(运营商分类 API)等 API功能。

 

 

什么是手机流量分发?

 

手机流量可作为礼品,分发给您的用户。

应用场景如:礼品赠送、流量红包、促销打折赠品、社交媒体互动礼品等方式提高您的转化率。

 

 

前往手机流量业务介绍页面

 

 

手机流量 API 开发文档:http://submail.cn/chs/documents/developer/MmVa14

PHP SDK 2.2 版本(支持手机流量API)下载地址:SUBMAIL_PHP_SDK

 

 

 

API 使用当中如遇BUG或疑问,您可以在官方博客页面下方的提出问题中提出,开发人员会一一解答,或在工单页面联系SUBMAIL的工程师

 

11

2015

固定签名申请流程大幅简化,最快3小时即可完成申请

Leo:发表于2015-11-05

固定签名申请流程简化了,最快3小时,最长1个工作日完成报备。

 

短信固定签名的功能和优点

  1. 支持营销类(推广类)短信发送
  2. 获得更好的短信发送和接收通道
  3. 更宽松的短信模板审核政策

 

如何申请固定签名

即日起您即可前往-》工单页面,提交固定签名的申请,具体申请步骤和所需资料如下:

  1. 进入工单页面后,点击“提交新问题”按钮
  2. 在提交新问题页面选择“问题类型”为“申请短信固定签名”项,在标题栏中输入要申请的固定签名,如:“【你的短信签名】”,并在问题内容中提交以下资料:用于该签名请求用的应用ID、公司名称、网址 、所属行业、营销类短信模板(建议填写至少一条);

 

填写完成以上资料后,点击“提交问题按钮”并等待SUBMAIL专员接洽您的工单,之后我们的专员会协助您取得一些需求的资料后完成申请。

 

注:申请营销类固签在工作时间(上午10:00至下午5:00点)申请最快3小时即可完成报备,非工作时间隔日生效。双休日不提供签名报备服务。

10

2015

【新功能】短信在线发送和短信模板自定义标签功能已上线

Leo:发表于2015-10-12

 

新功能:

  1. 短信现在支持在线发送功能,支持地址薄、文件导入、手动输入等方式导入联系人和变量(详见下文中的图文介绍);
  2. 短信模板现在支持自定义标题和自定义颜色标签功能;

 

功能介绍:

 

短信在线发送功能图文介绍+教程:

 

一、要使用在线发送功能,您的短信模板必须是通过审核状态的。进入短信-》项目页面,单击要发送的短信项目工具栏中的发送按钮,即可进入发送页面(如下图所示);

 

 

二、进入发送页面后,您需要在下图红色示意框未知选择一个已经创建的应用ID(如果您还没有创建应用,请单击右侧“管理应用ID”按钮,创建一个);

 

 

三、添加联系人处有3种方式可以选择,“地址簿”(操作步骤请见第四节),“文件导入”(操作步骤请见第五节),“手动输入”(操作步骤请见第六节)等方式进行导入联系人(仅支持选择一种模式,不支持多模式合并联系人)

四、地址簿模式仅需三步即可完成发送,如下图所示:第1步:选择你的应用ID;第2步:勾选一个有效的地址簿(指包含有效联系人);第3步:单击页面下方红色的“发送”按钮即可群发短信;

 

五(1)、文件导入模式:文件导入模式支持变量,进入发送页后,SUBMAIL会自动解析脚本中的变量(如您的短信中不包含变量部分,请忽略),并给出CSV文件示意,点击“浏览”或者“选择文件”按钮上传CSV文件,请参照下图所示;

 

 

五(2)、CSV文件上传后,SUBMAIL 会对文件进行解析,并将解析结果的前5条,显示在“CSV文件预览”位置,要查看全部上传的数据,点击预览位置下方的“显示全部数据”按钮,即可查看;

 

五(3)、CSV 上传文件预览示意;

 

 

六(1)、手动输入方式支持手动输入手机号码和文本变量,发送页面载入后,SUBMAIL会自动分析模板中包含的变量,仅需按照给到的表格输入即可,右侧“+”和“-”按钮可以增加或减少行数

 

 

六(2)、单击右侧“+”按钮,可增加输入的行数;

七、定时发送功能(BETA),单击日期和时间下拉框选择发送日期后,点击“确认发送”按钮即可进行定时发送;

 

 

 

短信模板自定义标题和颜色标签功能介绍:

 

一、进入短信-》项目页面后,双击模板标题栏的文字,即可为该模板添加模板标题,如图示:

 

二、双击文字后,该文字区域变为可编辑状态时即可为模板输入标题;单击下图红色圈中的按钮,可以为模板添加颜色标签;

 

三、颜色标签填出后,点击任意颜色按钮,即可为该模板定义颜色标签,如下图所示;

四、完成后效果如下图,标题和颜色标签功能在大量模板时,帮助您有效的标示模板用途和归类。

其他更新:

短信模板创建页面,新增常用问题与解答:

8

2015

一分钟快速集成短信验证码[图文教程]

Leo:发表于2015-08-23

感谢您选择 SUBMAIL 短信服务,下面这篇教程将指引您快速配置短信API服务。

 

基础知识

在进行以下步骤前,请先完成您的账户配置,并前往-》短信-》短信服务配置页面上传相关资质,确保你的短信服务协议已配置完成(短信服务资质通过审核后,需要您注销当前登录,重新登入一次)。

SUBMAIL 目前提供5个应用,分别为:邮件(MAIL),短信(MESSAGE),地址薄(ADDRESS BOOK),应用集成(DEVELOPER)和账户(ACCOUNT)

各应用提供的功能大致如下:

  • 邮件(MAIL):创建/管理 邮件模板、群发邮件、查看发送报告等功能
  • 短信(MESSAGE):创建/管理 短信模板、设置等
  • 地址薄(ADDRESS BOOK):创建/管理 邮件和短信地址薄功能
  • 应用集成(DEVELOPER):创建/管理 应用ID、查看由API发送的邮件或短信分析报告、历史明细,配置SUBHOOK等
  • 账户(ACCOUNT):用户账户设置、工单、订单管理、通知中心

 

在每个应用页面顶部工具栏“+”号按钮可以切换应用,如下图红色箭头位置所示:

 

 

单击“+”按钮可以展开应用切换菜单,单击“X”按钮关闭该菜单,如下图所示:

 


 

步骤一、前往-》开发者 -》SDK开发包下载页面,下载对应语言的SDK开发包。

SUBMAIL 提供多达9种语言的开发包,SDK 集成了 SUBMAIL 的API请求方法,并将API中的参数进行封装,开发者仅需下载对应语言的开发包即可快速配置短信服务。

如上图所示,点击您当前使用的程序语言,选择对应的开发包下载即可(本文以 PHP 语言为例)。

 


 

步骤二、创建应用获取 API 请求的应用ID和密钥(APPID 和 APPKEY)

 

SUBMAIL的API请求需要应用ID和密钥用于 API 身份鉴权,创建应用的步骤如下:

1. 前往-》应用集成-》应用页面进行创建,如下图所示:

 

 

2.  将已创建的应用ID和应用密钥复制到开发包的配置文件内

以 PHP SDK为例,请将应用页面的应用ID和应用密钥复制到 app_config.php 文件内的对应位置,如下图:

各语言的配置文件对应清单:

  • PHP => /path/to/app_config.php
  • JAVA => /path/to/app_config.properties
  • C# => /path/to/AppConfigs.cs
  • PYTHON => /path/to/app_configs.py
  • RUBY =>  /path/to/submaildemo.rb
  • GO => /path/to/main.go
  • OBJECTIVE-C => /path/to/config/SMConfig.h
  • SWIFT =>  /path/to/config/Config.swift
  • Node.js => /path/to/config.js

复制/粘贴后保存该配置文件,进行下一步;

 


 

步骤三、创建短信模板

 

前往-》短信-》新建 页面可以创建新的短信模板,如图所示:

 

  1. 在新建页面创建短信模板,输入短信内容和签名,动态内容(如验证码)请使用文本变量代替。请参阅文本变量文档
  2. 模板输入完成后,点击提交审核按钮,后台工程师将对此模板进行快速审核(模板审核时间为早8:00 至 晚12:00,审核时间一般为2-5分钟左右)
  3. 等待模板审核通过后即可进入 短信-》项目 页面,点击该模板工具栏中的应用集成“粉红色”按钮,获取该模板的项目标识,请参阅获取项目标识文档
  4. 您可以在新建页面创建多个模板,如验证码,订单通知,发货通知,各种提醒等。

 


 

步骤四、SDK 接口调用

 

本文以 PHP 开发包为例,其他语言可作为参考,具体文件和目录可能略有不同

  1. 打开下载的开发包中 DEMO 目录下的 message_xsend_demo.php 文件;
  2. 将短信-》项目中需要发送的模板的项目ID复制到 $submail->SetProject('xxxxx')方法中,替换'xxxxx'部分;
  3. 使用$submail->AddVar()方法,替换模板中申明的@var(code) 变量。addvar方法有2个必选参数,第一个参数为变量名(本实例中即 code),第二个参数为该变量的值,例如:$submail->AddVar('code','198277');  即将短信模板中 @var(code) 变量,替换为'198277'。addVar 方法可多次调用;
  4. $submail->setTo('15*********');参数中填写接收者的手机号码;

 

完整的代码如图所示:

保存该demo文件,运行即可发送该短信。

以上代码输出的短信为:您的验证码:198277,请在30分钟内输入,如非本人操作请忽略。【SUBMAIL】


 

8

2015

message/multixsend API 和 SUBMAIL PHP SDK 2.0 已上线

Leo:发表于2015-08-16

message/multixsend 是 SUBMAIL 的短信一对多(即1条API请求发送多个号码,并可以灵活控制每个联系人的文本变量)和群发 API 。

与 message/xsend API 一样,message/multixsend  提供完整且强大的短信发送功能,message/multixsend 解决开发者在应用场景中的一对多或群发的需求,极大的提高 API 并发效率。
 

message/multixsend API 开发文档

 

同时 SUBMAIL PHP SDK 2.0 现已开放下载

2.0 版本的PHP SDK 在 1.x 版本的基础上做了代码优化,整合了log/message API、邮件异步和对 message/multixsend API 的支持,以及一些更新功能的支持。

 

我们正在征集第三方SDK

如果您是一位编程爱好者,并且您有兴趣或已编写了 SUBMAIL 的 SDK,我们诚挚的欢迎您投稿。将您的劳动成果分享给其他开发者, SUBMAIL 将赛选出同类 SDK 中最优秀的作品放在 SUBMAIL 官网提供给广大开发者们下载,同时您还会获得 SUBMAIL 支付的高额稿费

我们将在各语言的 SDK 页面下载栏中标注作者的信息和网站链接等等信息。

有兴趣的开发者们可以将 SDK 开发包和作者信息、联系方式、和其他相关信息发送邮件至“service@submail.cn”或前往工单页面,与后台工程师联系。
 

8

2015

短信固定签名现已开放申请

Leo:发表于2015-08-15

SUBMAIL 将于本月20号开放短信固定签名的申请;

短信固定签名的功能和优点
 

  1. 获得更好的短信发送和接收通道
  2. 完全独立的固定短信端口号
  3. 更宽松的短信模板审核政策
  4. 支持营销类(推广类)短信发送


如何申请固定签名

即日起您即可前往-》工单页面,提交固定签名的申请,具体申请步骤如下:

1、进入工单页面后,点击“提交新问题”按钮
2、在提交新问题页面选择“问题类型”为“申请短信固定签名”项,在标题栏中输入要申请的固定签名,如:“【你的短信签名】”,并在问题内容中提交以下资料:用于该签名请求用的应用ID,公司名称、网站或应用名称,公司网址;
 

填写完成以上资料后,点击“提交问题按钮”并等待SUBMAIL专员接洽您的工单,之后我们的专员会协助您取得一些需求的资料后完成申请。

 
申请独立签名所需的资料

请将以下资料放在一个文件夹内(请将该文件夹命名为您申请的签名名称)打包在这里传给我们:

公司的营业执照扫描件(需要和签名对应的营业执照,如果你的公司名和申请的签名不对应,也可以提供商标注册证件或ICP备案名称,以上三种都可以作为申请固定签名的依据)
新建一个WORD文档:将您现有的短信模板,每行一条短信模板填写在该WORD文档内

等待您的工单被接受后,请将以上所需资料,在工单内以附件形式发给后台工程师。

 

(注:固定签名申请,需要7个工作日,特定用户可能需要新的短信订单支持,具体请咨询 SUBMAIL 签名申请专员)

8

2015

08月16日-2015 更新日志

Leo:发表于2015-08-15

新增功能:

短信应用黑名单功能

短信黑名单限制功能可以有效的防止短信API被滥用,用户可灵活控制该黑名单列表;

要激活该黑名单控制,请按照以下图示进行



步骤一、前往-》地址簿页面,找到信息地址簿栏,点击创建信息地址簿按钮进入创建页面;


 

步骤二、进入创建页面后,输入一个地址簿名字,(例如输入:SMS_blocklist)点击保存按钮;

 

步骤三、地址簿保存成功后,会进入该地址簿管理页面,单击右侧“添加联系人”按钮,在弹出的输入框填写需要屏蔽的手机号码;



 

步骤四、前往-》应用集成-》应用页面,单击MESSAGE选项卡,进入短信应用页面,选择需要添加限制黑名单的应用,单击该应用下方工具栏中的编辑按钮(“笔”图标)进入编辑模式;

 

步骤五、进入编辑模式后,在“黑名单限制”一栏的下拉框中选择刚才创建的地址簿后,点击工具栏中的保存按钮,即可启用黑名单功能;






您可以随时开启或关闭该黑名单限制,并可以随时增加、删除该地址簿的手机号码达到控制的目的,当然、您也可以使用 地址簿API 向该地址簿中添加黑名单

 

8

2015

“在线技术支持”现在更名为“工单”系统

Leo:发表于2015-08-05

08月05日-2015 更新日志

 

功能更新:

 

“在线技术支持”现在更名为“工单”系统。

 优化工单系统的对话体验
工单系统现在支持 上传截图、文件传输等功能



功能示例:(一)截图和附件上传功能



功能示例:(二)图片预览

 

功能示例:(三)多文件传输

 

7

2015

07月28日-2015 更新日志

Leo:发表于2015-07-27

新增功能:

SUBMAIL 邮件编辑器 现在可以使用已创建的邮件作为新邮件的模板(即复制邮件模板功能)



要使用该功能,仅需三步:

一、前往-》邮件-》新建页面,选择 SUBMAIL 编辑器(如图所示)
 


二、填写完邮件标题和发件人后,单击继续按钮,进入模板选择状态(如图所示)

 

三、单击该选项卡中的“从已创建的项目中选择”按钮,即可载入已经创建的邮件项目,双击要选择的邮件项目,即可复制该邮件模板(如图所示)

 

 

7

2015

07月22日-2015 更新日志

Leo:发表于2015-07-21

新增功能:

1. 短信接口开放独立扩展号码,支持上行接口
    现在用户所创建的每一个短信应用都具有独立的扩展号,如应用ID为:10590,则发出的短信号码为 1069xxxxxx10590,并支持上行(上行内容推送需配置 SUBHOOK)。

2. 短信 SUBHOOK
    短信 SUBHOOK 能够实时的推送短信事件,如 API 请求、发送状态、 SMS网关发回的短信回执和短信上行内容到开发者指定的回调 URL,前往-》应用集成-》设置-》短信 SUBHOOK 页面配置短信 SUBHOOK;

3. 触发类邮件与触发类短信发送历史和明细查询功能
    前往-》应用集成-》历史 页面,可以实时查询通过 API 发送的邮件和短信明细,并可按筛选条件返回查询结果。短信发送历史与明细页面可实时查看发送状态和网关发回的回执状态,方便查询每一条短信的具体到达时间;

4. IP 白名单功能
    现在开发者们可以对每个 APPID 设置允许使用的IP白名单,更安全的保护账户使用权限;

 

API 功能更新

……………………

5

2015

邮件与短信API请求与发送限制汇总

Leo:发表于2015-05-20

邮件API

mail/send API

联系人 to 参数:单次请求上限为 5000 个联系人
地址薄 addressbook 参数:单次请求上限为50个地址薄,且所请求的地址薄中包含不超过15万联系人
发件人名称 from_name 参数:50个字符以内
抄送联系人 cc 参数:现在仅能同时抄送5个联系人
密送联系人 bcc 参数:现在仅能同时密送5个联系人
邮件标题 subject 参数:200个字符以内
文本内容 text 参数:5000字符以内(此参数的实际大小受变量机制影响)
HTML内容 html 参数:60KB以内(此参数的实际大小受变量机制影响)
附件 attachments 参数:文件总大小 10MB 以内,且文件数量不超过10个
邮件头指令 headers 参数:完整 JSON 字符串总数不超过500个字符

mail/xsend API

联系人 to 参数:单次请求上限为 5000 个联系人
地址薄 addressbook 参数:单次请求上限为50个地址薄,且所请求的地址薄中包含不超过15万联系人
发件人名称 from_name 参数:50个字符以内
抄送联系人 cc 参数:现在仅能同时抄送5个联系人
密送联系人 bcc 参数:现在仅能同时密送5个联系人
邮件标题 subject 参数:200个字符以内
邮件头指令 headers 参数:完整 JSON 字符串总数不超过500个字符

 

短信 API

message/xsend API

......

4

2015

log/message 短信日志 API (beta) 已上线

Leo:发表于2015-04-05

log/message API 可以方便的查询详细的短信发送日志和状态记录,不仅如此,log/message API 还可以按短信模板、手机号码、发送状态、开始/结束日期等条件筛选日志的返回结果。

API 概览请移步:http://submail.cn/chs/documents/developer/3EX903

PHP 短信日志SDK同时放出DEMO版本,下载地址:SUBMAIL_PHP_SDK_MESSAGE_LOG

要使用短信日志 SDK,请下载后将此包内的lib文件夹内的message.php替换原来开发包中的message.php文件,并将messagelog.php放入lib目录,demo文件夹内 log_message_demo.php 有完整的SDK使用示例。

 

API使用当中如遇BUG或疑问,您可以在此页面下方的提出问题中提出,开发人员会一一解答,或在线支持联系SUBMAIL的工程师

1

2015

1.27 日在线更新日志

Leo:发表于2015-01-27

此次在线更新主要针对推广邮件分析系统做针对性更新

解决的问题:

1:解决了推广邮件超链接分析不能正确显示的问题。

2:在超链接分析系统中筛选去除了机器人的点击次数统计。(一些 ESP 在收到邮件后会对邮件中的超链接进行检查,此前 SUBMAIL 记录该检查点击的次数,并显示在分析报告中,此次更新后,该点击报告被筛选。)

3:解决地理位置报告中的闪退问题。

1

2015

短息 API 自定义签名位置升级完成

Leo:发表于2015-01-19

1.19日在线升级已完成,此次升级更新,允许短信用户自定义短信签名的位置。

触发短信用户现在可以前往 MESSAGE-》设置-》通用页面设置短信签名的显示位置,可以自定义短信签名在正文之前,或在短信正文之后显示签名。完成此设置后,您可以在短信项目页面实时查看签名的显示位置(可能需要您清除浏览器缓存的JS文件)。

当您使用 Message/xsend API 发送触发类短信时,API 将应用您的短信签名设置。

1

2015

SMTP 服务和 WEB API 邮件服务已完成升级的通知

Leo:发表于2015-01-19

此次 SUBMAIL SMTP 服务、SMTP API 、WEB API 针对邮件服务的小幅升级,解决了“代发地址”对用户造成的困扰。 

SUBMAIL 此前在邮件中使用动态回弹地址如 bounce.*.te.ret@submail.cn 和bounce.*.me.ret@submail.cn 处理弹回数据,但因国内一些 ESP 的关系,和一些反垃圾邮件机制的原因,一些 ESP 将此地址作为“代发地址”显示在用户收到的邮件中,造成一些用户的困扰。

 

经过 SUBMAIL 技术部门研究后,决定去除所有通道和 API 的动态弹回地址,解决显示“代发地址”所带来的困扰,现在由 SUBMAIL 发出的触发邮件和推广邮件将不在显示“代发地址”,仅显示用户设置的发件人。

也因此,SUBMAIL 暂时将不能处理所有邮件的弹回数据,我们将在下一次升级中解决此问题。

1

2015

SUBMAIL 短信服务现已支持测试发送

Leo:发表于2015-01-15

感谢所有 SUBMAIL 触发类短信用户的支持,SUBMAIL 已将现有触发通道进行升级,升级后发送速度更快,更稳定。

另外,2015年1月15日后注册的新用户,账户内将在注册时添加10条短信发送许可用于短信发送测试,在您配置完成短信服务后,即可开始使用 SUBMAIL API 来发送测试短信。

2015年15日之前注册的用户,如您需要测试 SUBMAIL 短信,请登入 SUBMAIL 后在此页面 提出申请 http://submail.cn/chs/documents/feedback,我们将实时的向您的账户内添加测试发送许可。

12

2014

[Objective-C] mail/send 接口和 message/xsend 接口使用代码示例

Leo:发表于2014-12-17

[Objective-C] mail/send 接口和 message/xsend 接口使用代码示例

 

引用SDK有几种方式:

  1. 源码引入:直接将所有源码文件引入到工程中
  2. 静态库引入:将所有源码文件引入到新建的静态库工程中,设置输出头文件拷贝,选择需要使用的目标方式编译,找到编译后的.a静态库文件和头文件集;目标工程设置 header search paths,使其能够找到这些头文件集,并引入.a静态库文件

 

使用SDK:

  1. 引用 SDK
  2. Submail/Config/SMConfig.h 中配置 SUBMAIL_MAIL_APPIDSUBMAIL_MESSAGE_SIGNTYPE 的6个参数
  3. 在需要使用 Submail 的地方加入以下代码:#import “Submail.h”

 

以下是调用mail/send接口的使用示例:

#import "MailSendDemo.h"

+ (void)demo {
    SMMailSend *submail = [[SMMailSend alloc] init];
    [submail addTo:@"leo@submail.cn" name:@"leo"];    
    [submail setSender:@"no-reply@submail.cn" name:@"SUBMAIL"];
    submail.subject = @"testSDK";
    submail.text = @"test SDK text";
    submail.html = @"test SDK html";
    [submail send:^(BOOL success, id responseObject) {
        // your code
    }];
}
@end

 

以下是调用message/xsend接口的使用示例:

 

#import "MessageXSendDemo.h"
@implementation MessageXSendDemo

+ (void)demo {
    SMMessageXSend * submail = [[SMMessageXSend alloc] init];
    [submail.aryTo addObject:@"138********"];
    submail.project = @"kZ9Ky3";
    [submail.dictVar setValue:@"198276" forKey:@"code"];
    [submail xSend:^(BOOL success, id responseObject) {
        // your code
    }];
}
@end

 

其他 API 的使用方法类似,请参阅 Objectice-c 开发者文档。 

12

2014

[Swift] mail/send 接口和 message/xsend 接口使用代码示例

Leo:发表于2014-12-17

[Swift] mail/send 接口和 message/xsend 接口使用代码示例

 

在使用 Swift 示例之前,需要手动指定 Submail-Bridging-Header.h 文件的路径,在 Xcode 工程的 Build Settings 中找到 Objective-C Bridging Header 选项,添加“$PROJECT_NAME/Submail/Utils/Submail-Bridging-Header.h”,如图:

 

以下是调用 mail/send 接口的使用示例

 

import Foundation

public class MailXSendDemo {
    public class func demo() {
        var submail = MailXSend(config: MailConfig())
        submail.add_to("leo@submail.cn", "leo")
        submail.set_from("no-reply@submail.cn", "SUBMAIL")
        submail.set_project("wAWzY4")
        submail.add_var("name", "leo")
        submail.add_var("age", "32")
        submail.add_link("developer", "http://submail.cn/chs/developer")
        submail.add_link("store", "http://submail.cn/chs/store")
        submail.add_headers("X-Accept", "zh-cn")
        submail.add_headers("X-Mailer", "leo App")
        submail.xsend()
    }
}

 

首先要定义一个 MailSend 类实例,传入配置类 MailConfig 的实例,其中基础的配置信息可以在 Config.swift 中配置。接下来需要给 MailSend 实例配置收件人地址和发件人地址等,具体的配置参数可以参考 mail/send API 文档。当所有信息配置好后,调用 send 方法即可。

注意:send方法可以添加闭包作为回调函数,如果不添加则默认是nil。

 

以下是 message/xsend 接口的使用示例

import Foundation

public class MessageXSendDemo {
    public class func demo() {
        var submail = MessageXSend(config: MessageConfig())
        submail.add_to("138********")
        submail.set_project("kZ9Ky3")
        submail.add_var("code", "198276")
        submail.xsend()
    }
}

 

首先要定义一个 MessageXSend 类实例,传入配置类 MessageConfig 的实例,其中基础的配置信息可以在 Config.swift 中配置。然后,需要给 MessageXSend 实例配置收件人的手机号和项目标记等信息,具体的配置参数可以参考 message/xsend API 文档。当所有信息配置好后,调用 xsend 方法即可。

注意:xsend 方法可以添加闭包作为回调函数,如果不添加则默认是 nil

其他 API 的使用方法类似,请参阅 SWIFT 开发者文档

 

11

2014

SUBMAIL 域名和 IP 自动预热机制

Leo:发表于2014-11-14

SUBMAIL AUTO WARM UP(Beta)
域名和 IP 自动预热机制



前言


通常,当一个 ESP(邮箱服务提供商)收到新的域名或者 IP 进行邮件发信时,他们将开始对该 IP 或者域名进行监控和信誉度的计算,并且根据域名和 IP 的信誉度来决定给与该对象流量的大小。初始阶段,ESP 会限制入信的流量来达到风险管控的目的(例如当日最大入信额度 10000 封),超过这个流量的邮件可能会直接拒收,甚至有被列入黑名单的风险。

因此,一个新的域名或 IP 在启用或开始进行大量外发邮件之前需要对该域名或 IP 进行前期预热。

 

什么是前期预热?

前期预热指的是一个新 IP 或域名在大量发送邮件之前,先通过逐渐递增发信量来让  ISP 标识并认可新 IP 或域名。

关于什么是前期预热,可参考此篇关于 IP 预热的文章写的非常清楚:(http://zhuanlan.zhihu.com/email/19802487

 

传统预热机制的局限性

事实上,前期预热是一个非常复杂且很难掌控的工作,要对邮件地址薄中的收件人做非常严格的控制。假如你的列表中有 10000 个联系人,其中可能有 3000 是163 邮箱,有 2000 是 QQ 邮箱,如果使用手动预热,你就需要每天对你的发送列表进行手动调整,均衡每个 ESP 的发送量。而当你的邮件地址薄越大时,由于工作量之巨大,你将会发现这是一个几乎不可能完成的任务。

 

一些邮件服务提供商,为了避免这种情况的发生,可能在你使用他们的服务的一段时间内对你的使用信誉开始评估,一开始只是简单的控制出信量,比如说在你启用一个新的域名或 IP 时,你的第一天出信量为 6000,第一天每小时的出信量为 600,随后根据你的信誉评估,逐渐增加出信量。但这并没有从根本上真正解决问题,因为如此的做法并没有把同一邮件列表中各个不同的 ESP 考虑进去,只是简单的进行统一预估,预热的准确性和效率都大大地降低了。

试想,假如你第一天的出信量中有近 50% 的联系人是在同一个域的,这意味着可能有近 60% 的邮件可能会被弹回或拒收,且你下一个阶段的入信流量将会被大幅减少。

 

单纯就预热机制而言,最理想的做法是对每个不同的 ESP 进行单独预热,即点对点的单独预热。例如:你的联系人中可能会有多个不同域,而其中可能有一些联系人的域非常集中,如国内的 QQ 、163、126、新浪,国外的 GMAIL、YAHOO、HOTMAIL 等大型 ESP。事实上大型 ESP 非常多,全球用户过千万级的大型 ESP 可能有成千上万个,面对比较集中的域,你需要严格控制对这些域每天的出信量,而每个 ESP 都有不同的流量规则,如果人工去控制前期预热,将会是一个非常复杂、耗时耗力的工作。

如果你在为前期预热问题而困扰,[SUBMAIL AUTO WARM UP 自动预热功能]将会帮助你解决这些问题。

 

什么是 SUBMAIL AUTO WARM UP 自动预热功能(SAWU)?



[SUBMAIL 自动预热功能 SAWU]是为您解决域名或独立 IP 前期预热等问题的全新解决方案,在你使用 SUBMAIL 邮件服务时(包含触发邮件服务和推广邮件),SUBMAIL AUTO WARM UP 功能将会自动为你添加的新域或独立 IP 进行前期预热。


自动预热机制 


当你对某个 ESP 开始发送邮件时,SAWU 将自动对此 ESP 进行预热。当预热开始后,SAWU 将会根据你对此域的发送情况、频率和发送阶段等进行控制,超过当前 ESP 的最大入信量时,SAWU 将会自动中断邮件发送,并将你在队列中的邮件(仅该 ESP)延迟至下一小时,或隔天进行发送,整个过程无需人工干预 SAWU 将自动完成预热。

 

*对于独立 IP 或多 IP 的用户可以选择启用或禁用 SAWU 功能


SAWU 并不是控制你的出信量,而是针对单个域进行点对点预热。例如:你有一个 100000 的邮件联系人列表,其中每个不同 ESP 的联系人占比不大于该 ESP 当前阶段最大出信量,此队列将不会有任何发送延迟。


整个预热过程视你的收件人的 ESP 不同,会分为不同的阶段,大致可分为 50 个阶段:

例如你的域名 yourdomain.com 或独立 IP 发送至 qq.com 的预热进程大致为:

第1阶段最大: 1000 封,每小时最大:100 封,当前阶段发信量到达 500 封后进入下一阶段

第2阶段最大: 1500 封,每小时最大:200 封,当前阶段发信量到达 500 封后进入下一阶段

第3阶段最大: 2000 封,每小时最大:200 封,当前阶段发信量到达 1000 封后进入下一阶段

第49阶段最大: 300000 封,每小时最大:30000 封

第50阶段最大: 500000 封,每小时最大:50000 封


SUBMAIL AUTO WARM UP 将会根据特定的 ESP 动态调整阶段的发送量。

 
 

使用参考与建议



SUBMAIL AUTO WARM UP 并不能100%的保证你不被 ESP 拒绝,要更好的预热你的域名或 IP 你还需要尽量做到以下几点:


1: 优秀的邮件内容和规范编码

ESP 不仅对你的入信量进行评估,你的邮件内容也是决定你的邮件到达率的重要因素之一。优秀的邮件内容和规范的 HTML 编码,将会加速 ESP 对你发件域和 IP 信任。请在发送你的邮件之前,检查你的邮件代码或将你的邮件 发送至 http://www.mail-tester.com 查看你的邮件得分。

如果你并不精通 HTML 代码,或邮件中的代码规范,你可以使用 SUBMAIL 邮件编辑器来完成你的邮件编辑, SUBMAIL 邮件编辑器将会最大限度提高你的邮件兼容能力和对移动设备的支持。
 

2: 配置独立的触发类(或事务类)邮件域和推广类(EDM、订阅类)邮件域

SUBMAIL 触发邮件服务和推广类邮件服务将都受到 SAWU 机制干预。所以,当你同时使用2个服务时,请将触发邮件域和推广邮件域分开,即需要配置2个发送域名,如你的域名是 yourdomain.com,请为触发邮件域配置一个二级域,如 service.yourdomain.com,再为推广类邮件配置 newsletter.yourdomain.com 域,这样2个服务独立预热、互不影响。

 

3:良好收件人列表

用户主动订阅的邮件和会员邮件类的邮件接收者接受程度较高,收件人活跃程度相对较高,这类邮件往往能产生较好的打开与点击反馈,有利于域名额度的增长和域名信誉度的提升。

预热的收件人要尽量避免无效地址,因为 ESP 对发送较多无效地址的发送者是很不友好的,因为他们觉得你可能在发垃圾邮件,不利于额度增长和域名信誉度的提升的,甚至会降低。




 


 

10

2014

[C#] SMTP 代码示例​ (.net)

Leo:发表于2014-10-26
using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Mail;
using System.Net.Mime;
 
namespace SmtpMail
{
    class Program
    {
        static void Main()
        {
        try
            {
            MailMessage submail = new MailMessage();
            
            // 添加联系人
            submail.To.Add(new MailAddress("leo@submail.cn", "Leo"));
            
            // 设置发件人邮件地址和显示名称
            submail.From = new MailAddress("no-reply@submail.cn", "SUBMAIL");
            
            // 设置邮件内容 text 和 html
            submail.Subject = "testing subject";
            string text = "testing text body";
            string html = @"testing html body";
            submail.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain));
            submail.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html));
            
            // 初始化 smtp 连接 端口号 25 和 587可选
            SmtpClient smtpClient = new SmtpClient("cloud.submail.cn", Convert.ToInt32(587));
            System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("your_app_id", "you_app_key");
            smtpClient.Credentials = credentials;
            
            smtpClient.Send(submail);
            }
        catch (Exception ex)
            {
            Console.WriteLine(ex.Message);
            }
        
        }
    }
}

10

2014

[Ruby] Mail 类使用代码示例

Leo:发表于2014-10-26
require 'mail'
Mail.defaults do
delivery_method :smtp, { :address   => "cloud.submail.cn",
    :port      => 587,
    :domain    => "yourdomain.com",
    :user_name => "your_app_id",
    :password  => "your_app_key",
    :authentication => 'plain',
    :enable_starttls_auto => true }
end
 
mail = Mail.deliver do
to 'leo@submail.cn'
from 'SUBMAIL  '
subject 'testing subject'
text_part do
body 'testing text body'
end
html_part do
content_type 'text/html; charset=UTF-8'
body 'testing html body'
end

© 2014 SUBMAIL All Rights reserved. 保留所有权利

沪ICP备14046074号