0.3.0 |
|
---|---|
0.2.1 |
|
0.2.0 |
|
0.1.0 |
|
#102 in #step
18KB
206 行
Delta Chat 提供者信息
添加条目
首先检查提供者的文件是否已存在,如果已存在,则跳转到 编辑条目 部分。
将 [提供者名称].md 添加到以下格式中的 _providers 文件夹
---
name: [provider name]
domains: [ email domains of the provider / can also be yaml array when there are multiple ones can contain (€) to mark a premium domain]
credentials: [emailPass | emailAppPass | Oauth] - can also be an array, if multiple are supported availible
status:
state: [OK | PREP | BROKEN] - "PREP" stands for Preparation Steps needed
date: [YYYY-MM]
---
## Comments
[If there are any, but make sure everything regarding preparation is under "## Preparations"]
## Preparations
### Advanced Login Settings [if applicable]
```
[imap and smpt server addresses]
```
[if the provider requires additional steps, describe them here, you may also include images or a video tutorial of the process here]
## status history
[if you change the status, copy the previous here that we can allow for a history]
[has a table format? that we can color code the states]
[just a link to github changelog/history of this file?]
状态选项
状态 | 含义 |
---|---|
OK | 直接使用,无需额外步骤(此例外包括自定义域名电子邮件地址,您可能需要手动指定smtp和imap服务器) |
PREP | 需要准备步骤/ -(需要一些步骤后即可正常工作 - 例如在提供者页面上启用imap/smtp) |
BROKEN | 无法使用 - 无法正常工作。(过于不稳定,也属于此类) |
编辑条目
条目
可选的yaml字体字段
limits:
maxRecipients: number | "Unlimited"
messagesPerDay: number | "Unlimited"
maxFileSize: string | "Unlimited"
registration:
inviteOnly: boolean
PhoneAuthRequired: boolean
PersonalDataRequired: boolean
price: string
示例
---
name: example
website: https://example.com
domains:
- example.com
- example.org
credentials: emailPass | emailAppPass | Oauth
status:
state: OK | PREP | BROKEN
date: YYYY-MM
---
## Comments
This is an example provider
## Preperations
### Advanced Login Settings
```
imap mail.example.com:993
smtp mail.example.com:465
```
用作cargo包
https://crates.io/crates/deltachat-provider-database
用法
extern crate deltachat_provider_database;
use deltachat_provider_database::get_provider_info;
fn main() {
let (provider, _domains) = get_provider_info("example.org").unwrap();
println!("{}", provider.name);
if provider.status.state == deltachat_provider_database::StatusState::PREPARATION {
println!("{}", provider.markdown);
}
}
有关更多信息,请参阅 cargo doc --open
依赖关系
~0.4–1.4MB
~30K SLoC