✨ feat(tsl-api-reference): expand API and module coverage
This commit is contained in:
@@ -6,21 +6,35 @@
|
||||
|
||||
用于连接 SMTP 服务器并发送邮件的内置对象
|
||||
|
||||
<!-- tags: Object SMTP 邮件发送 对象 实例 邮件 POP3 IMAP -->
|
||||
<!-- tags: Object SMTP 邮件发送 对象 实例 邮件 POP3 IMAP 创建 生成 构造函数 实例化 new -->
|
||||
|
||||
### `create(host)`
|
||||
下列范例使用本机 `127.0.0.1:42125` 的无认证临时 SMTP 测试服务
|
||||
|
||||
邮件地址使用保留的 `.test` 域名,不会投递到公网邮箱
|
||||
|
||||
### `create()`
|
||||
|
||||
声明:function
|
||||
|
||||
创建 SMTP 实例
|
||||
无参数构造函数。创建 SMTP 实例,连接参数由实例属性设置
|
||||
|
||||
<!-- tags: Object SMTP 邮件发送 创建 生成 对象 实例 邮件 POP3 IMAP -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `host` | string | 可选。字符串类型。如果指定了Host参数,会自动从SMTP配置文件里获取其他相应参数,并自动连接 |
|
||||
### `create(host)`
|
||||
|
||||
声明:function
|
||||
|
||||
构造函数。按 host 配置名称读取连接参数并自动连接服务器
|
||||
|
||||
<!-- tags: Object SMTP 邮件发送 创建 生成 对象 实例 邮件 POP3 IMAP -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------ | ------ | ------------------------------------------------------- |
|
||||
| `host` | string | SMTP 配置名称。指定后从配置文件读取服务器参数并自动连接 |
|
||||
|
||||
### `connect()`
|
||||
|
||||
@@ -37,10 +51,14 @@
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj:= CreateObject("smtp") ;
|
||||
obj.Host := 'smtp.tinysoft.com.cn' ;
|
||||
obj := new SMTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
obj.connect();
|
||||
return 1;
|
||||
echo 1;
|
||||
obj.disconnect();
|
||||
// 输出:1
|
||||
```
|
||||
|
||||
### `disconnect()`
|
||||
@@ -58,11 +76,14 @@ return 1;
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj:= CreateObject("smtp") ;
|
||||
obj.Host := 'smtp.tinysoft.com.cn' ;
|
||||
obj := new SMTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
obj.connect();
|
||||
obj.disconnect();
|
||||
return 1;
|
||||
echo 1;
|
||||
// 输出:1
|
||||
```
|
||||
|
||||
### `disconnectNotifyPeer()`
|
||||
@@ -80,11 +101,14 @@ return 1;
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj:= CreateObject("smtp") ;
|
||||
obj.Host := 'smtp.tinysoft.com.cn' ;
|
||||
obj := new SMTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
obj.connect();
|
||||
obj.DisconnectNotifyPeer();
|
||||
return 1;
|
||||
obj.disconnectNotifyPeer();
|
||||
echo 1;
|
||||
// 输出:1
|
||||
```
|
||||
|
||||
### `expand(username)`
|
||||
@@ -97,8 +121,8 @@ return 1;
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---------- | ------ | ------------------------ |
|
||||
| `username` | string | 字符串类型,展开的用户名 |
|
||||
|
||||
返回:string
|
||||
@@ -119,43 +143,36 @@ return 1;
|
||||
|
||||
声明:function
|
||||
|
||||
发送邮件。暂时不支持
|
||||
创建并发送一封纯文本邮件
|
||||
|
||||
<!-- tags: Object SMTP 邮件发送 发送 提交 对象 实例 邮件 POP3 IMAP -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `a_host` | string | 字符串类型,服务器主机名或者地址 |
|
||||
| `a_subject` | string | 字符串类型,标题 |
|
||||
| `a_to` | string | 接受者邮件地址 |
|
||||
| `a_from` | string | 来源邮件地址 |
|
||||
| `a_text` | string | 发送的邮件的内容 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ------ | -------------------------------- |
|
||||
| `a_host` | string | 字符串类型,服务器主机名或者地址 |
|
||||
| `a_subject` | string | 字符串类型,标题 |
|
||||
| `a_to` | string | 接受者邮件地址 |
|
||||
| `a_from` | string | 来源邮件地址 |
|
||||
| `a_text` | string | 发送的邮件的内容 |
|
||||
|
||||
返回:any
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("smtp");
|
||||
obj.UserName := 'username'; //邮箱账号
|
||||
obj.Password := 'password'; //邮箱密码
|
||||
obj.Host := 'smtp.tinysoft.com.cn'; //smtp地址
|
||||
obj.port := 25; //端口
|
||||
obj.connect();
|
||||
try
|
||||
mailHost:='smtp.tinysoft.com.cn'; //邮件服务器地址
|
||||
mailSubject:="SendMailTest"; //邮件标题
|
||||
mailBody := "test"; //邮件内容
|
||||
mailSender := "username@tinysoft.com.cn"; //邮件发送人邮箱
|
||||
mailRecipients := " Recipients@qq.com"; //邮件接收人邮箱
|
||||
obj.QuickSend(mailHost,mailSubject,mailRecipients,mailSender,mailBody);
|
||||
except
|
||||
echo '\r\n邮件错误信息',obj.LastCmdResult();
|
||||
return echo '\r\n邮件发送失败:',ExceptObject.errinfo;
|
||||
end;
|
||||
return 1;
|
||||
obj := new SMTP();
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
echo obj.quickSend(
|
||||
"127.0.0.1",
|
||||
"TSL quick test",
|
||||
"recipient@example.test",
|
||||
"sender@example.test",
|
||||
"test body"
|
||||
), "\n";
|
||||
// 输出:1
|
||||
```
|
||||
|
||||
### `send(message)`
|
||||
@@ -168,8 +185,8 @@ return 1;
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------- | ------- | ------------------------------- |
|
||||
| `message` | mailmsg | MailMsg对象,需要发送的邮件内容 |
|
||||
|
||||
返回:any
|
||||
@@ -177,25 +194,19 @@ return 1;
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj:= CreateObject("smtp") ;
|
||||
obj.UserName := 'username' ; //邮箱账号
|
||||
obj.Password := 'password'; //邮箱密码
|
||||
obj.Host := 'smtp.tinysoft.com.cn' ; //smtp地址
|
||||
obj.port:=25; //端口
|
||||
obj := new SMTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
obj.connect();
|
||||
//设置mailmsg对象
|
||||
msg := CreateObject("MailMsg");
|
||||
msg.subject := "SendMailTest"; //邮件标题
|
||||
msg.body := "test"; //邮件内容
|
||||
msg.Sender := "username@tinysoft.com.cn"; //邮件发送人邮箱
|
||||
msg.Recipients :=" Recipients @qq.com";//邮件接收人邮箱
|
||||
try
|
||||
obj.send(msg);
|
||||
except
|
||||
echo '\r\n邮件错误信息',obj.LastCmdResult();
|
||||
return echo '\r\n邮件发送失败:',ExceptObject.errinfo;
|
||||
end;
|
||||
return 1;
|
||||
msg := new MailMsg();
|
||||
msg.subject := "TSL send test";
|
||||
msg.body := "test body";
|
||||
msg.sender := "sender@example.test";
|
||||
msg.recipients := "recipient@example.test";
|
||||
echo obj.send(msg), "\n";
|
||||
obj.disconnect();
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `sendCmd(cmd, cmd_result, ret_code)`
|
||||
@@ -208,38 +219,40 @@ return 1;
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `cmd` | string | 字符串类型,发送的命令 |
|
||||
| `cmd_result` | string | 可选。返回的结果串 |
|
||||
| `ret_code` | string | 可选。返回的代码串 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------ | ------ | ---------------------- |
|
||||
| `cmd` | string | 字符串类型,发送的命令 |
|
||||
| `cmd_result` | string | 可选。返回的结果串 |
|
||||
| `ret_code` | string | 可选。返回的代码串 |
|
||||
|
||||
返回:boolean
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
//发送HELO命令。
|
||||
obj:= CreateObject("smtp") ;
|
||||
obj.Host := 'smtp.tinysoft.com.cn' ;
|
||||
obj := new SMTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
obj.connect();
|
||||
obj.sendcmd("HELO smtp.tinysoft.com.cn\r\n",r,c);
|
||||
return r;
|
||||
//结果:665518 Hello smtp.tinysoft.com.cn [ip], pleased to meet you.
|
||||
obj.sendCmd("HELO 127.0.0.1\r\n", cmd_result, ret_code);
|
||||
echo cmd_result;
|
||||
obj.disconnect();
|
||||
// 输出:localhost
|
||||
```
|
||||
|
||||
### `verify(username)`
|
||||
|
||||
声明:function
|
||||
|
||||
验证用户名。验证用户名。用户名是否存在当前服务器中,注:smtp服务器可禁止此功能
|
||||
向 SMTP 服务器查询指定邮件地址是否可接收邮件,服务器可以禁用该功能
|
||||
|
||||
<!-- tags: Object SMTP 邮件发送 对象 实例 邮件 POP3 IMAP -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---------- | ------ | ------------------------ |
|
||||
| `username` | string | 字符串类型,验证的用户名 |
|
||||
|
||||
返回:string
|
||||
@@ -247,16 +260,14 @@ return r;
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj:= CreateObject("smtp","test") ;
|
||||
obj.Host := 'smtp.tinysoft.com.cn' ;
|
||||
obj.port:=25;
|
||||
try
|
||||
username:="username@tinysoft.com.cn";
|
||||
return obj.verify(username);
|
||||
except
|
||||
return echo ExceptObject.errinfo;
|
||||
end;
|
||||
//结果:username < username@tinysoft.com.cn>
|
||||
obj := new SMTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42125;
|
||||
obj.useTLS := false;
|
||||
obj.connect();
|
||||
echo obj.verify("recipient@example.test");
|
||||
obj.disconnect();
|
||||
// 输出:recipient@example.test <recipient@example.test>
|
||||
```
|
||||
|
||||
### `Authenticate`
|
||||
|
||||
Reference in New Issue
Block a user