Parcourir la source

docs: document the services which jitsi meet can consume

* new documentation for the services which jitsi meet can consume for conference mapping to dial-in numbers

* attempted markdown link for swagger file from documentation file
master
Aaron van Meerten il y a 7 ans
Parent
révision
cd910e3074
2 fichiers modifiés avec 152 ajouts et 0 suppressions
  1. 5
    0
      doc/cloud-api.md
  2. 147
    0
      doc/cloud-api.swagger

+ 5
- 0
doc/cloud-api.md Voir le fichier

@@ -0,0 +1,5 @@
1
+# Jitsi Meet Cloud API
2
+
3
+The Jitsi Meet Cloud API is a specification for services which can support the integration of Jitsi Meet into other applications, for mapping conferences for dial-in support, and for supporting directory search and user invitations to conferences.
4
+
5
+The swagger for these services is provided in [cloud-api.swagger](cloud-api.swagger) in this same repository and directory.

+ 147
- 0
doc/cloud-api.swagger Voir le fichier

@@ -0,0 +1,147 @@
1
+swagger: "2.0"
2
+info:
3
+  description: "Documents the REST calls used by Jitsi Meet to integrate with other services"
4
+  version: "1.0.0"
5
+  title: "Swagger Video"
6
+  termsOfService: "https://jitsi.org/CloudAPITOS/"
7
+  contact:
8
+    email: "team@jitsi.org"
9
+host: "jitsi-api.jitsi.org"
10
+basePath: "/"
11
+tags:
12
+- name: "conferenceMapper"
13
+  description: "Conference to ID Mapper"
14
+  externalDocs:
15
+    description: "Conference API Details"
16
+    url: "https://jitsi.org/CloudAPI"
17
+- name: "phoneNumberList"
18
+  description: "List of dial-in numbers"
19
+schemes:
20
+  - "https"
21
+paths:
22
+  /conferenceMapper:
23
+    get:
24
+      tags:
25
+      - "conferenceMapper"
26
+      summary: "Create or retrieve conference ID mapping"
27
+      description: "When called with a conference, creates a new ID and both stores and returns the result.  When called with an ID, returns the mapping if previously created."
28
+      operationId: "GETconferenceMapper"
29
+      consumes:
30
+      - "application/json"
31
+      produces:
32
+      - "application/json"
33
+      parameters:
34
+      - in: "query"
35
+        name: "conference"
36
+        type: "string"
37
+        format: "JID"
38
+        description: "Full JID (room@conference.server.domain) for the conference to create or return existing conference mapping.  Used preferentially over all other input parameters (search by conference)"
39
+      - in: "query"
40
+        name: "id"
41
+        type: "number"
42
+        description: "ID to search for existing conference mapping.  Only used when provided alone (search by ID)"
43
+      responses:
44
+        200:
45
+          description: "mapping search performed"
46
+          schema:
47
+            $ref: "#/definitions/ConferenceMapperDetails"
48
+        405:
49
+          description: "Invalid input"
50
+    post:
51
+      tags:
52
+      - "conferenceMapper"
53
+      summary: "Create or retrieve conference ID mapping"
54
+      description: "When called with a conference, creates a new ID and both stores and returns the result.  When called with an ID, returns the mapping if previously created."
55
+      operationId: "POSTconferenceMapper"
56
+      consumes:
57
+      - "application/json"
58
+      produces:
59
+      - "application/json"
60
+      parameters:
61
+      - in: "body"
62
+        name: "body"
63
+        description: "Conference Mapper Request"
64
+        required: true
65
+        schema:
66
+          $ref: "#/definitions/ConferenceMapperRequest"
67
+      responses:
68
+        200:
69
+          description: "mapping search performed"
70
+          schema:
71
+            $ref: "#/definitions/ConferenceMapperDetails"
72
+        405:
73
+          description: "Invalid input"
74
+ 
75
+  /phoneNumberList:
76
+    get:
77
+      tags:
78
+      - "phoneNumberList"
79
+      summary: "Returns a list phone numbers by country"
80
+      description: "Used to populate the Share The Link section of jitsi-meet"
81
+      operationId: "phoneNumberList"
82
+      produces:
83
+      - "application/json"
84
+      responses:
85
+        200:
86
+          description: "successful operation"
87
+          schema:
88
+            $ref: "#/definitions/PhoneNumberList"
89
+securityDefinitions:
90
+  token:
91
+    type: "apiKey"
92
+    name: "token"
93
+    in: "query"
94
+  Bearer:
95
+    type: "apiKey"
96
+    name: "Authorization"
97
+    in: "header"
98
+definitions:
99
+ 
100
+  ConferenceMapperRequest:
101
+    description: "Request to create or find a conference mapping"
102
+    type: "object"
103
+    properties:
104
+      id:
105
+        type: "number"
106
+        description: "ID to search for existing conference mapping.  Only used when provided alone (search by ID)"
107
+      conference:
108
+        type: "string"
109
+        format: "JID"
110
+        description: "Full JID (room@conference.server.domain) for the conference to create or return existing conference mapping.  Used preferentially over all other input parameters (search by conference)"
111
+      room:
112
+        type: "string"
113
+        description: "Room part of the conference.  Required if 'conference' is not provided.  Used to generate a 'conference' value (search by conference)"
114
+      domain:
115
+        type: "string"
116
+        description: "Domain part of the conference.  Used if 'conference' is not provided.  Defaults to domain of the API endpoint.   Used to generate a 'conference' value (search by conference)"
117
+ 
118
+  ConferenceMapperDetails:
119
+    description: "Conference mapping between conference JID and numeric ID"
120
+    type: "object"
121
+    properties:
122
+      id:
123
+        type: "number"
124
+        description: "Unique ID mapped to conference"
125
+      conference:
126
+        type: "string"
127
+        format: "JID"
128
+        description: "Full JID for the conference OR boolean false if no conference was found (search by ID)"
129
+ 
130
+  PhoneNumberList:
131
+    type: "object"
132
+    properties:
133
+      numbersEnabled:
134
+        type: "boolean"
135
+        description: "Control flag for Jitsi Meet user interface.  Must be set to true for Jitsi Meet to display phone-in UI elements"
136
+      numbers:
137
+        type: "object"
138
+        description: "Keys are Country Names, each value is an array of phone numbers"
139
+        additionalProperties:
140
+          type: "array"
141
+          items:
142
+            type: "string"
143
+            format: "phone"
144
+ 
145
+externalDocs:
146
+  description: "Find out more about the Jitsi Cloud API"
147
+  url: "https://jitsi.org/CloudAPI"

Chargement…
Annuler
Enregistrer