-
Notifications
You must be signed in to change notification settings - Fork 0
/
schema.gql
99 lines (82 loc) · 1.95 KB
/
schema.gql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
type Candidate {
candidate: String
sdpMLineIndex: Int
sdpMid: String
usernameFragment: String
}
input CandidateInput {
candidate: String
sdpMLineIndex: Int
sdpMid: String
usernameFragment: String
}
enum CandidateType {
CALLEE
CALLER
}
type ChatMessage {
message: String!
roomUuid: String!
sender: String!
}
scalar Date
type Mutation {
addIceCandidates(candidateType: CandidateType!, iceCandidates: [CandidateInput!]!, offerSdp: String!, roomUuid: String!): Boolean!
createRoom(name: String!): Room!
sendMessage(message: String!, roomUuid: String!, sender: String!): String!
sendOfferAnswer(answer: OfferInput!, offerSdp: String!, roomUuid: String!): Boolean!
sendUserOffer(offer: OfferInput!, roomUuid: String!, userUuid: String!): Boolean!
"""Mutation to trigger subscription serverStatus !"""
testSubscription: Boolean! @deprecated(reason: "Use only for testing")
}
type Offer {
sdp: String
type: RTCSdpType!
}
input OfferInput {
sdp: String
type: RTCSdpType!
}
type ParticiantAction {
action: Offer!
participant: Participant!
}
type Participant {
uuid: String!
}
type Query {
isAlive: Boolean!
joinRoom(roomUuid: String!, userUuid: String!): Boolean
ping: String!
}
enum RTCSdpType {
answer
offer
pranswer
rollback
}
type Room {
uuid: String!
}
type Subscription {
isConnectionReady: Boolean!
"""
Subscription to server status, trigger using mutation `testSubscription`
"""
serverStatus: Float! @deprecated(reason: "Use only for testing")
subscribeToAnswers(
"""Offer sdp"""
offerSdp: String!
"""Room uuid"""
roomUuid: String!
): Offer!
subscribeToCandidate(candidateType: CandidateType!, offerSdp: String!, roomUuid: String!): [Candidate!]!
subscribeToMessages(roomUuid: String!): ChatMessage!
subscribeToOffers(
"""Room uuid"""
roomUuid: String!
"""User uuid"""
userUuid: String!
): Offer!
subscribeToParticipants(roomUuid: String!): Participant!
}