多租户更改
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
# theCard: Person/Topic Description Format
|
||||
|
||||
Tinode uses `theCard` to store and transmit descriptions of people and topics. The format is conceptually similar to [vCard](https://www.rfc-editor.org/rfc/rfc6350.txt) 3.0.
|
||||
|
||||
When `JSON` is used to represent `theCard` data, it does it differently than [jCard](https://tools.ietf.org/html/rfc7095). `theCard` and `jCard` are incompatible. The main difference is that `theCard` uses objects to represent logically related data while `jCard` uses ordered arrays.
|
||||
|
||||
`theCard` is structured as an object:
|
||||
|
||||
```js
|
||||
{
|
||||
fn: "John Doe", // string, formatted name of the person or topic.
|
||||
photo: { // object, avatar photo; either 'data' or 'ref' must be present, all other fields are optional.
|
||||
type: "jpeg", // string, MIME type but with 'image/' dropped.
|
||||
data: "Rt53jUU...iVBORw0KGgoA==", // string, base64-encoded binary image data
|
||||
ref: "https://api.tinode.co/file/s/abcdef12345.jpg", // string, URL of the image.
|
||||
width: 512, // integer, image width in pixels.
|
||||
height: 512, // integer, image height in pixels.
|
||||
size: 123456 // integer, image size in bytes.
|
||||
},
|
||||
note: "Some notes", // string, description of a person or a topic.
|
||||
//
|
||||
// None of the following fields are implemented by any known client:
|
||||
//
|
||||
n: { // object, person's structured name.
|
||||
surname: "Miner", // surname or last or family name.
|
||||
given: "Coal", // first or given name.
|
||||
additional: "Diamond", // additional name, such as middle name or patronymic.
|
||||
prefix: "Dr.", // prefix, such as honorary title or gender designation.
|
||||
suffix: "Jr.", // suffix, such as 'Jr' or 'II'.
|
||||
},
|
||||
org: { // object, organization the person or topic belongs to.
|
||||
fn: "Most Evil Corp", // string, formatted name of the organisation.
|
||||
title: "CEO", // string, person's job title at the organisation.
|
||||
},
|
||||
comm: [ // array of objects defining means of communication with the the person or topic.
|
||||
{
|
||||
des: ["home", "voice"], // contact designation, optional.
|
||||
proto: "tel", // communication protocol, required
|
||||
value: "+17025551234" // phone number.
|
||||
},
|
||||
{
|
||||
des: ["work"],
|
||||
proto: "email",
|
||||
value: "alice@example.com", // email address
|
||||
},
|
||||
{
|
||||
des: ["other"],
|
||||
proto: "tinode",
|
||||
value: "tinode:topic/usrRkDVe0PYDOo", // tinode ID URI, may include server address.
|
||||
},
|
||||
{
|
||||
proto: "http", // should be used for either http or https website addresses.
|
||||
value: "https://tinode.co", // actual address of a website.
|
||||
}, ...
|
||||
],
|
||||
bday: { // object, person's birthday.
|
||||
y: 1970, // integer, year
|
||||
m: 1, // integer, month 1..12
|
||||
d: 15 // integer, day 1..31
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
All fields are optional. Tinode clients currently use only `fn`, `photo`, `org`, `note`, `comm` fields. If other fields are needed in the future, then they will be adopted from the correspondent [vCard](https://www.rfc-editor.org/rfc/rfc6350.txt) fields.
|
||||
|
||||
Reference in New Issue
Block a user