Attempt to using Nakama as replacement of Low-Level ENet
This commit is contained in:
@@ -0,0 +1,1396 @@
|
||||
### Code generated by codegen/main.go. DO NOT EDIT. ###
|
||||
|
||||
extends RefCounted
|
||||
class_name SatoriAPI
|
||||
|
||||
# Log out a session, invalidate a refresh token, or log out all sessions/refresh tokens for a user.
|
||||
class ApiAuthenticateLogoutRequest extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"refresh_token": {"name": "_refresh_token", "type": TYPE_STRING, "required": false},
|
||||
"token": {"name": "_token", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Refresh token to invalidate.
|
||||
var _refresh_token
|
||||
var refresh_token : String:
|
||||
get:
|
||||
return "" if not _refresh_token is String else String(_refresh_token)
|
||||
|
||||
# Session token to log out.
|
||||
var _token
|
||||
var token : String:
|
||||
get:
|
||||
return "" if not _token is String else String(_token)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiAuthenticateLogoutRequest:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiAuthenticateLogoutRequest", p_dict), ApiAuthenticateLogoutRequest) as ApiAuthenticateLogoutRequest
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "refresh_token: %s, " % _refresh_token
|
||||
output += "token: %s, " % _token
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# Authenticate against the server with a refresh token.
|
||||
class ApiAuthenticateRefreshRequest extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"refresh_token": {"name": "_refresh_token", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Refresh token.
|
||||
var _refresh_token
|
||||
var refresh_token : String:
|
||||
get:
|
||||
return "" if not _refresh_token is String else String(_refresh_token)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiAuthenticateRefreshRequest:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiAuthenticateRefreshRequest", p_dict), ApiAuthenticateRefreshRequest) as ApiAuthenticateRefreshRequest
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "refresh_token: %s, " % _refresh_token
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
#
|
||||
class ApiAuthenticateRequest extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"custom": {"name": "_custom", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"default": {"name": "_default", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"id": {"name": "_id", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Optional custom properties to update with this call.
|
||||
# If not set, properties are left as they are on the server.
|
||||
var _custom
|
||||
var custom : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _custom is Dictionary else _custom.duplicate()
|
||||
|
||||
# Optional default properties to update with this call.
|
||||
# If not set, properties are left as they are on the server.
|
||||
var _default
|
||||
var default : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _default is Dictionary else _default.duplicate()
|
||||
|
||||
# Identity ID. Must be between eight and 128 characters (inclusive).
|
||||
# Must be an alphanumeric string with only underscores and hyphens allowed.
|
||||
var _id
|
||||
var id : String:
|
||||
get:
|
||||
return "" if not _id is String else String(_id)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiAuthenticateRequest:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiAuthenticateRequest", p_dict), ApiAuthenticateRequest) as ApiAuthenticateRequest
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
if typeof(_custom) == TYPE_DICTIONARY:
|
||||
for k in _custom:
|
||||
map_string += "{%s=%s}, " % [k, _custom[k]]
|
||||
output += "custom: [%s], " % map_string
|
||||
map_string = ""
|
||||
if typeof(_default) == TYPE_DICTIONARY:
|
||||
for k in _default:
|
||||
map_string += "{%s=%s}, " % [k, _default[k]]
|
||||
output += "default: [%s], " % map_string
|
||||
map_string = ""
|
||||
output += "id: %s, " % _id
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# A single event. Usually, but not necessarily, part of a batch.
|
||||
class ApiEvent extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"id": {"name": "_id", "type": TYPE_STRING, "required": false},
|
||||
"metadata": {"name": "_metadata", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"name": {"name": "_name", "type": TYPE_STRING, "required": false},
|
||||
"timestamp": {"name": "_timestamp", "type": TYPE_STRING, "required": false},
|
||||
"value": {"name": "_value", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Optional event ID assigned by the client, used to de-duplicate in retransmission scenarios.
|
||||
# If not supplied the server will assign a randomly generated unique event identifier.
|
||||
var _id
|
||||
var id : String:
|
||||
get:
|
||||
return "" if not _id is String else String(_id)
|
||||
|
||||
# Event metadata, if any.
|
||||
var _metadata
|
||||
var metadata : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _metadata is Dictionary else _metadata.duplicate()
|
||||
|
||||
# Event name.
|
||||
var _name
|
||||
var name : String:
|
||||
get:
|
||||
return "" if not _name is String else String(_name)
|
||||
|
||||
# The time when the event was triggered on the producer side.
|
||||
var _timestamp
|
||||
var timestamp : String:
|
||||
get:
|
||||
return "" if not _timestamp is String else String(_timestamp)
|
||||
|
||||
# Optional value.
|
||||
var _value
|
||||
var value : String:
|
||||
get:
|
||||
return "" if not _value is String else String(_value)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiEvent:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiEvent", p_dict), ApiEvent) as ApiEvent
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "id: %s, " % _id
|
||||
if typeof(_metadata) == TYPE_DICTIONARY:
|
||||
for k in _metadata:
|
||||
map_string += "{%s=%s}, " % [k, _metadata[k]]
|
||||
output += "metadata: [%s], " % map_string
|
||||
map_string = ""
|
||||
output += "name: %s, " % _name
|
||||
output += "timestamp: %s, " % _timestamp
|
||||
output += "value: %s, " % _value
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
#
|
||||
class ApiEventRequest extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"events": {"name": "_events", "type": TYPE_ARRAY, "required": false, "content": TYPE_DICTIONARY},
|
||||
}
|
||||
|
||||
# Some number of events produced by a client.
|
||||
var _events
|
||||
var events : Array:
|
||||
get:
|
||||
return Array() if not _events is Array else Array(_events)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiEventRequest:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiEventRequest", p_dict), ApiEventRequest) as ApiEventRequest
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "events: %s, " % [_events]
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# An experiment that this user is partaking.
|
||||
class ApiExperiment extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"name": {"name": "_name", "type": TYPE_STRING, "required": false},
|
||||
"value": {"name": "_value", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
#
|
||||
var _name
|
||||
var name : String:
|
||||
get:
|
||||
return "" if not _name is String else String(_name)
|
||||
|
||||
# Value associated with this Experiment.
|
||||
var _value
|
||||
var value : String:
|
||||
get:
|
||||
return "" if not _value is String else String(_value)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiExperiment:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiExperiment", p_dict), ApiExperiment) as ApiExperiment
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "name: %s, " % _name
|
||||
output += "value: %s, " % _value
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# All experiments that this identity is involved with.
|
||||
class ApiExperimentList extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"experiments": {"name": "_experiments", "type": TYPE_ARRAY, "required": false, "content": TYPE_DICTIONARY},
|
||||
}
|
||||
|
||||
# All experiments for this identity.
|
||||
var _experiments
|
||||
var experiments : Array:
|
||||
get:
|
||||
return Array() if not _experiments is Array else Array(_experiments)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiExperimentList:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiExperimentList", p_dict), ApiExperimentList) as ApiExperimentList
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "experiments: %s, " % [_experiments]
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# Feature flag available to the identity.
|
||||
class ApiFlag extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"condition_changed": {"name": "_condition_changed", "type": TYPE_BOOL, "required": false},
|
||||
"name": {"name": "_name", "type": TYPE_STRING, "required": false},
|
||||
"value": {"name": "_value", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Whether the value for this flag has conditionally changed from the default state.
|
||||
var _condition_changed
|
||||
var condition_changed : bool:
|
||||
get:
|
||||
return false if not _condition_changed is bool else bool(_condition_changed)
|
||||
|
||||
#
|
||||
var _name
|
||||
var name : String:
|
||||
get:
|
||||
return "" if not _name is String else String(_name)
|
||||
|
||||
# Value associated with this flag.
|
||||
var _value
|
||||
var value : String:
|
||||
get:
|
||||
return "" if not _value is String else String(_value)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiFlag:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiFlag", p_dict), ApiFlag) as ApiFlag
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "condition_changed: %s, " % _condition_changed
|
||||
output += "name: %s, " % _name
|
||||
output += "value: %s, " % _value
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
#
|
||||
class ApiFlagList extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"flags": {"name": "_flags", "type": TYPE_ARRAY, "required": false, "content": TYPE_DICTIONARY},
|
||||
}
|
||||
|
||||
#
|
||||
var _flags
|
||||
var flags : Array:
|
||||
get:
|
||||
return Array() if not _flags is Array else Array(_flags)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiFlagList:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiFlagList", p_dict), ApiFlagList) as ApiFlagList
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "flags: %s, " % [_flags]
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# A response containing all the messages for an identity.
|
||||
class ApiGetMessageListResponse extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"cacheable_cursor": {"name": "_cacheable_cursor", "type": TYPE_STRING, "required": false},
|
||||
"messages": {"name": "_messages", "type": TYPE_ARRAY, "required": false, "content": TYPE_DICTIONARY},
|
||||
"next_cursor": {"name": "_next_cursor", "type": TYPE_STRING, "required": false},
|
||||
"prev_cursor": {"name": "_prev_cursor", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Cacheable cursor to list newer messages. Durable and designed to be stored, unlike next/prev cursors.
|
||||
var _cacheable_cursor
|
||||
var cacheable_cursor : String:
|
||||
get:
|
||||
return "" if not _cacheable_cursor is String else String(_cacheable_cursor)
|
||||
|
||||
# The list of messages.
|
||||
var _messages
|
||||
var messages : Array:
|
||||
get:
|
||||
return Array() if not _messages is Array else Array(_messages)
|
||||
|
||||
# The cursor to send when retrieving the next page, if any.
|
||||
var _next_cursor
|
||||
var next_cursor : String:
|
||||
get:
|
||||
return "" if not _next_cursor is String else String(_next_cursor)
|
||||
|
||||
# The cursor to send when retrieving the previous page, if any.
|
||||
var _prev_cursor
|
||||
var prev_cursor : String:
|
||||
get:
|
||||
return "" if not _prev_cursor is String else String(_prev_cursor)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiGetMessageListResponse:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiGetMessageListResponse", p_dict), ApiGetMessageListResponse) as ApiGetMessageListResponse
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "cacheable_cursor: %s, " % _cacheable_cursor
|
||||
output += "messages: %s, " % [_messages]
|
||||
output += "next_cursor: %s, " % _next_cursor
|
||||
output += "prev_cursor: %s, " % _prev_cursor
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# Enrich/replace the current session with a new ID.
|
||||
class ApiIdentifyRequest extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"custom": {"name": "_custom", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"default": {"name": "_default", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"id": {"name": "_id", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Optional custom properties to update with this call.
|
||||
# If not set, properties are left as they are on the server.
|
||||
var _custom
|
||||
var custom : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _custom is Dictionary else _custom.duplicate()
|
||||
|
||||
# Optional default properties to update with this call.
|
||||
# If not set, properties are left as they are on the server.
|
||||
var _default
|
||||
var default : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _default is Dictionary else _default.duplicate()
|
||||
|
||||
# Identity ID to enrich the current session and return a new session. Old session will no longer be usable.
|
||||
var _id
|
||||
var id : String:
|
||||
get:
|
||||
return "" if not _id is String else String(_id)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiIdentifyRequest:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiIdentifyRequest", p_dict), ApiIdentifyRequest) as ApiIdentifyRequest
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
if typeof(_custom) == TYPE_DICTIONARY:
|
||||
for k in _custom:
|
||||
map_string += "{%s=%s}, " % [k, _custom[k]]
|
||||
output += "custom: [%s], " % map_string
|
||||
map_string = ""
|
||||
if typeof(_default) == TYPE_DICTIONARY:
|
||||
for k in _default:
|
||||
map_string += "{%s=%s}, " % [k, _default[k]]
|
||||
output += "default: [%s], " % map_string
|
||||
map_string = ""
|
||||
output += "id: %s, " % _id
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# A single live event.
|
||||
class ApiLiveEvent extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"active_end_time_sec": {"name": "_active_end_time_sec", "type": TYPE_STRING, "required": false},
|
||||
"active_start_time_sec": {"name": "_active_start_time_sec", "type": TYPE_STRING, "required": false},
|
||||
"description": {"name": "_description", "type": TYPE_STRING, "required": false},
|
||||
"id": {"name": "_id", "type": TYPE_STRING, "required": false},
|
||||
"name": {"name": "_name", "type": TYPE_STRING, "required": false},
|
||||
"value": {"name": "_value", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# End time of current event run.
|
||||
var _active_end_time_sec
|
||||
var active_end_time_sec : String:
|
||||
get:
|
||||
return "" if not _active_end_time_sec is String else String(_active_end_time_sec)
|
||||
|
||||
# Start time of current event run.
|
||||
var _active_start_time_sec
|
||||
var active_start_time_sec : String:
|
||||
get:
|
||||
return "" if not _active_start_time_sec is String else String(_active_start_time_sec)
|
||||
|
||||
# Description.
|
||||
var _description
|
||||
var description : String:
|
||||
get:
|
||||
return "" if not _description is String else String(_description)
|
||||
|
||||
# The live event identifier.
|
||||
var _id
|
||||
var id : String:
|
||||
get:
|
||||
return "" if not _id is String else String(_id)
|
||||
|
||||
# Name.
|
||||
var _name
|
||||
var name : String:
|
||||
get:
|
||||
return "" if not _name is String else String(_name)
|
||||
|
||||
# Event value.
|
||||
var _value
|
||||
var value : String:
|
||||
get:
|
||||
return "" if not _value is String else String(_value)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiLiveEvent:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiLiveEvent", p_dict), ApiLiveEvent) as ApiLiveEvent
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "active_end_time_sec: %s, " % _active_end_time_sec
|
||||
output += "active_start_time_sec: %s, " % _active_start_time_sec
|
||||
output += "description: %s, " % _description
|
||||
output += "id: %s, " % _id
|
||||
output += "name: %s, " % _name
|
||||
output += "value: %s, " % _value
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# List of Live events.
|
||||
class ApiLiveEventList extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"live_events": {"name": "_live_events", "type": TYPE_ARRAY, "required": false, "content": TYPE_DICTIONARY},
|
||||
}
|
||||
|
||||
# Live events.
|
||||
var _live_events
|
||||
var live_events : Array:
|
||||
get:
|
||||
return Array() if not _live_events is Array else Array(_live_events)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiLiveEventList:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiLiveEventList", p_dict), ApiLiveEventList) as ApiLiveEventList
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "live_events: %s, " % [_live_events]
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# A scheduled message.
|
||||
class ApiMessage extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"consume_time": {"name": "_consume_time", "type": TYPE_STRING, "required": false},
|
||||
"create_time": {"name": "_create_time", "type": TYPE_STRING, "required": false},
|
||||
"metadata": {"name": "_metadata", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"read_time": {"name": "_read_time", "type": TYPE_STRING, "required": false},
|
||||
"schedule_id": {"name": "_schedule_id", "type": TYPE_STRING, "required": false},
|
||||
"send_time": {"name": "_send_time", "type": TYPE_STRING, "required": false},
|
||||
"text": {"name": "_text", "type": TYPE_STRING, "required": false},
|
||||
"update_time": {"name": "_update_time", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# The time the message was consumed by the identity.
|
||||
var _consume_time
|
||||
var consume_time : String:
|
||||
get:
|
||||
return "" if not _consume_time is String else String(_consume_time)
|
||||
|
||||
# The time the message was created.
|
||||
var _create_time
|
||||
var create_time : String:
|
||||
get:
|
||||
return "" if not _create_time is String else String(_create_time)
|
||||
|
||||
# A key-value pairs of metadata.
|
||||
var _metadata
|
||||
var metadata : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _metadata is Dictionary else _metadata.duplicate()
|
||||
|
||||
# The time the message was read by the client.
|
||||
var _read_time
|
||||
var read_time : String:
|
||||
get:
|
||||
return "" if not _read_time is String else String(_read_time)
|
||||
|
||||
# The identifier of the schedule.
|
||||
var _schedule_id
|
||||
var schedule_id : String:
|
||||
get:
|
||||
return "" if not _schedule_id is String else String(_schedule_id)
|
||||
|
||||
# The send time for the message.
|
||||
var _send_time
|
||||
var send_time : String:
|
||||
get:
|
||||
return "" if not _send_time is String else String(_send_time)
|
||||
|
||||
# The message's text.
|
||||
var _text
|
||||
var text : String:
|
||||
get:
|
||||
return "" if not _text is String else String(_text)
|
||||
|
||||
# The time the message was updated.
|
||||
var _update_time
|
||||
var update_time : String:
|
||||
get:
|
||||
return "" if not _update_time is String else String(_update_time)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiMessage:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiMessage", p_dict), ApiMessage) as ApiMessage
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "consume_time: %s, " % _consume_time
|
||||
output += "create_time: %s, " % _create_time
|
||||
if typeof(_metadata) == TYPE_DICTIONARY:
|
||||
for k in _metadata:
|
||||
map_string += "{%s=%s}, " % [k, _metadata[k]]
|
||||
output += "metadata: [%s], " % map_string
|
||||
map_string = ""
|
||||
output += "read_time: %s, " % _read_time
|
||||
output += "schedule_id: %s, " % _schedule_id
|
||||
output += "send_time: %s, " % _send_time
|
||||
output += "text: %s, " % _text
|
||||
output += "update_time: %s, " % _update_time
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# Properties associated with an identity.
|
||||
class ApiProperties extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"computed": {"name": "_computed", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"custom": {"name": "_custom", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"default": {"name": "_default", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
}
|
||||
|
||||
# Event computed properties.
|
||||
var _computed
|
||||
var computed : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _computed is Dictionary else _computed.duplicate()
|
||||
|
||||
# Event custom properties.
|
||||
var _custom
|
||||
var custom : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _custom is Dictionary else _custom.duplicate()
|
||||
|
||||
# Event default properties.
|
||||
var _default
|
||||
var default : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _default is Dictionary else _default.duplicate()
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiProperties:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiProperties", p_dict), ApiProperties) as ApiProperties
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
if typeof(_computed) == TYPE_DICTIONARY:
|
||||
for k in _computed:
|
||||
map_string += "{%s=%s}, " % [k, _computed[k]]
|
||||
output += "computed: [%s], " % map_string
|
||||
map_string = ""
|
||||
if typeof(_custom) == TYPE_DICTIONARY:
|
||||
for k in _custom:
|
||||
map_string += "{%s=%s}, " % [k, _custom[k]]
|
||||
output += "custom: [%s], " % map_string
|
||||
map_string = ""
|
||||
if typeof(_default) == TYPE_DICTIONARY:
|
||||
for k in _default:
|
||||
map_string += "{%s=%s}, " % [k, _default[k]]
|
||||
output += "default: [%s], " % map_string
|
||||
map_string = ""
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# A session.
|
||||
class ApiSession extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"properties": {"name": "_properties", "type": "ApiProperties", "required": false},
|
||||
"refresh_token": {"name": "_refresh_token", "type": TYPE_STRING, "required": false},
|
||||
"token": {"name": "_token", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
# Properties associated with this identity.
|
||||
var _properties
|
||||
var properties : ApiProperties:
|
||||
get:
|
||||
return _properties as ApiProperties
|
||||
|
||||
# Refresh token.
|
||||
var _refresh_token
|
||||
var refresh_token : String:
|
||||
get:
|
||||
return "" if not _refresh_token is String else String(_refresh_token)
|
||||
|
||||
# Token credential.
|
||||
var _token
|
||||
var token : String:
|
||||
get:
|
||||
return "" if not _token is String else String(_token)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiSession:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiSession", p_dict), ApiSession) as ApiSession
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "properties: %s, " % _properties
|
||||
output += "refresh_token: %s, " % _refresh_token
|
||||
output += "token: %s, " % _token
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# Update Properties associated with this identity.
|
||||
class ApiUpdatePropertiesRequest extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"custom": {"name": "_custom", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"default": {"name": "_default", "type": TYPE_DICTIONARY, "required": false, "content": TYPE_STRING},
|
||||
"recompute": {"name": "_recompute", "type": TYPE_BOOL, "required": false},
|
||||
}
|
||||
|
||||
# Event custom properties.
|
||||
var _custom
|
||||
var custom : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _custom is Dictionary else _custom.duplicate()
|
||||
|
||||
# Event default properties.
|
||||
var _default
|
||||
var default : Dictionary:
|
||||
get:
|
||||
return Dictionary() if not _default is Dictionary else _default.duplicate()
|
||||
|
||||
# Informs the server to recompute the audience membership of the identity.
|
||||
var _recompute
|
||||
var recompute : bool:
|
||||
get:
|
||||
return false if not _recompute is bool else bool(_recompute)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ApiUpdatePropertiesRequest:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ApiUpdatePropertiesRequest", p_dict), ApiUpdatePropertiesRequest) as ApiUpdatePropertiesRequest
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
if typeof(_custom) == TYPE_DICTIONARY:
|
||||
for k in _custom:
|
||||
map_string += "{%s=%s}, " % [k, _custom[k]]
|
||||
output += "custom: [%s], " % map_string
|
||||
map_string = ""
|
||||
if typeof(_default) == TYPE_DICTIONARY:
|
||||
for k in _default:
|
||||
map_string += "{%s=%s}, " % [k, _default[k]]
|
||||
output += "default: [%s], " % map_string
|
||||
map_string = ""
|
||||
output += "recompute: %s, " % _recompute
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
#
|
||||
class ProtobufAny extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"type": {"name": "_type", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
#
|
||||
var _type
|
||||
var type : String:
|
||||
get:
|
||||
return "" if not _type is String else String(_type)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> ProtobufAny:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "ProtobufAny", p_dict), ProtobufAny) as ProtobufAny
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "type: %s, " % _type
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
#
|
||||
class RpcStatus extends SatoriAsyncResult:
|
||||
|
||||
const _SCHEMA = {
|
||||
"code": {"name": "_code", "type": TYPE_INT, "required": false},
|
||||
"details": {"name": "_details", "type": TYPE_ARRAY, "required": false, "content": TYPE_DICTIONARY},
|
||||
"message": {"name": "_message", "type": TYPE_STRING, "required": false},
|
||||
}
|
||||
|
||||
#
|
||||
var _code
|
||||
var code : int:
|
||||
get:
|
||||
return 0 if not _code is int else int(_code)
|
||||
|
||||
#
|
||||
var _details
|
||||
var details : Array:
|
||||
get:
|
||||
return Array() if not _details is Array else Array(_details)
|
||||
|
||||
#
|
||||
var _message
|
||||
var message : String:
|
||||
get:
|
||||
return "" if not _message is String else String(_message)
|
||||
|
||||
func _init(p_exception = null):
|
||||
super(p_exception)
|
||||
|
||||
static func create(p_ns : GDScript, p_dict : Dictionary) -> RpcStatus:
|
||||
return _safe_ret(SatoriSerializer.deserialize(p_ns, "RpcStatus", p_dict), RpcStatus) as RpcStatus
|
||||
|
||||
func serialize() -> Dictionary:
|
||||
return SatoriSerializer.serialize(self)
|
||||
|
||||
func _to_string() -> String:
|
||||
if is_exception():
|
||||
return get_exception()._to_string()
|
||||
var output : String = ""
|
||||
var map_string : String = ""
|
||||
output += "code: %s, " % _code
|
||||
output += "details: %s, " % [_details]
|
||||
output += "message: %s, " % _message
|
||||
output += map_string
|
||||
return output
|
||||
|
||||
# The low level client for the Satori API.
|
||||
class ApiClient extends RefCounted:
|
||||
|
||||
var _base_uri : String
|
||||
|
||||
var _http_adapter
|
||||
var _namespace : GDScript
|
||||
var _server_key : String
|
||||
var auto_refresh := true
|
||||
var auto_refresh_time := 300
|
||||
|
||||
var auto_retry : bool:
|
||||
set(p_value):
|
||||
_http_adapter.auto_retry = p_value
|
||||
get:
|
||||
return _http_adapter.auto_retry
|
||||
|
||||
var auto_retry_count : int:
|
||||
set(p_value):
|
||||
_http_adapter.auto_retry_count = p_value
|
||||
get:
|
||||
return _http_adapter.auto_retry_count
|
||||
|
||||
var auto_retry_backoff_base : int:
|
||||
set(p_value):
|
||||
_http_adapter.auto_retry_backoff_base = p_value
|
||||
get:
|
||||
return _http_adapter.auto_retry_backoff_base
|
||||
|
||||
var last_cancel_token:
|
||||
get:
|
||||
return _http_adapter.get_last_token()
|
||||
|
||||
func _init(p_base_uri : String, p_http_adapter, p_namespace : GDScript, p_server_key : String, p_timeout : int = 10):
|
||||
_base_uri = p_base_uri
|
||||
_http_adapter = p_http_adapter
|
||||
_http_adapter.timeout = p_timeout
|
||||
_namespace = p_namespace
|
||||
_server_key = p_server_key
|
||||
|
||||
|
||||
func _refresh_session(p_session : SatoriSession):
|
||||
if auto_refresh and p_session.is_valid() and p_session.refresh_token and not p_session.is_refresh_expired() and p_session.would_expire_in(auto_refresh_time):
|
||||
var request = ApiAuthenticateRefreshRequest.new()
|
||||
request._token = p_session.refresh_token
|
||||
return await authenticate_refresh_async(_server_key, "", request)
|
||||
return null
|
||||
|
||||
func cancel_request(p_token):
|
||||
if p_token:
|
||||
_http_adapter.cancel_request(p_token)
|
||||
|
||||
# A healthcheck which load balancers can use to check the service.
|
||||
func healthcheck_async(
|
||||
p_session : SatoriSession
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/healthcheck"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# A readycheck which load balancers can use to check the service.
|
||||
func readycheck_async(
|
||||
p_session : SatoriSession
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/readycheck"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# Authenticate against the server.
|
||||
func authenticate_async(
|
||||
p_basic_auth_username : String
|
||||
, p_basic_auth_password : String
|
||||
, p_body : ApiAuthenticateRequest
|
||||
) -> ApiSession:
|
||||
var urlpath : String = "/v1/authenticate"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "POST"
|
||||
var headers = {}
|
||||
var credentials = Marshalls.utf8_to_base64(p_basic_auth_username + ":" + p_basic_auth_password)
|
||||
var header = "Basic %s" % credentials
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiSession.new(result)
|
||||
var out : ApiSession = SatoriSerializer.deserialize(_namespace, "ApiSession", result)
|
||||
return out
|
||||
|
||||
# Log out a session, invalidate a refresh token, or log out all sessions/refresh tokens for a user.
|
||||
func authenticate_logout_async(
|
||||
p_session : SatoriSession
|
||||
, p_body : ApiAuthenticateLogoutRequest
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/authenticate/logout"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "POST"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# Refresh a user's session using a refresh token retrieved from a previous authentication request.
|
||||
func authenticate_refresh_async(
|
||||
p_basic_auth_username : String
|
||||
, p_basic_auth_password : String
|
||||
, p_body : ApiAuthenticateRefreshRequest
|
||||
) -> ApiSession:
|
||||
var urlpath : String = "/v1/authenticate/refresh"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "POST"
|
||||
var headers = {}
|
||||
var credentials = Marshalls.utf8_to_base64(p_basic_auth_username + ":" + p_basic_auth_password)
|
||||
var header = "Basic %s" % credentials
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiSession.new(result)
|
||||
var out : ApiSession = SatoriSerializer.deserialize(_namespace, "ApiSession", result)
|
||||
return out
|
||||
|
||||
# Publish an event for this session.
|
||||
func event_async(
|
||||
p_session : SatoriSession
|
||||
, p_body : ApiEventRequest
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/event"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "POST"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# Get or list all available experiments for this identity.
|
||||
func get_experiments_async(
|
||||
p_session : SatoriSession
|
||||
, p_names = null # : array
|
||||
) -> ApiExperimentList:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return ApiExperimentList.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/experiment"
|
||||
var query_params = ""
|
||||
if p_names != null:
|
||||
for elem in p_names:
|
||||
query_params += "names=%s&" % elem
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiExperimentList.new(result)
|
||||
var out : ApiExperimentList = SatoriSerializer.deserialize(_namespace, "ApiExperimentList", result)
|
||||
return out
|
||||
|
||||
# List all available flags for this identity.
|
||||
func get_flags_async(
|
||||
p_bearer_token : String
|
||||
, p_names = null # : array
|
||||
) -> ApiFlagList:
|
||||
var urlpath : String = "/v1/flag"
|
||||
var query_params = ""
|
||||
if p_names != null:
|
||||
for elem in p_names:
|
||||
query_params += "names=%s&" % elem
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
if (p_bearer_token):
|
||||
var header = "Bearer %s" % p_bearer_token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiFlagList.new(result)
|
||||
var out : ApiFlagList = SatoriSerializer.deserialize(_namespace, "ApiFlagList", result)
|
||||
return out
|
||||
|
||||
# Enrich/replace the current session with new identifier.
|
||||
func identify_async(
|
||||
p_session : SatoriSession
|
||||
, p_body : ApiIdentifyRequest
|
||||
) -> ApiSession:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return ApiSession.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/identify"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "PUT"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiSession.new(result)
|
||||
var out : ApiSession = SatoriSerializer.deserialize(_namespace, "ApiSession", result)
|
||||
return out
|
||||
|
||||
# Delete the caller's identity and associated data.
|
||||
func delete_identity_async(
|
||||
p_session : SatoriSession
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/identity"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "DELETE"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# List available live events.
|
||||
func get_live_events_async(
|
||||
p_session : SatoriSession
|
||||
, p_names = null # : array
|
||||
) -> ApiLiveEventList:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return ApiLiveEventList.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/live-event"
|
||||
var query_params = ""
|
||||
if p_names != null:
|
||||
for elem in p_names:
|
||||
query_params += "names=%s&" % elem
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiLiveEventList.new(result)
|
||||
var out : ApiLiveEventList = SatoriSerializer.deserialize(_namespace, "ApiLiveEventList", result)
|
||||
return out
|
||||
|
||||
# Get the list of messages for the identity.
|
||||
func get_message_list_async(
|
||||
p_session : SatoriSession
|
||||
, p_limit = null # : integer
|
||||
, p_forward = null # : boolean
|
||||
, p_cursor = null # : string
|
||||
) -> ApiGetMessageListResponse:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return ApiGetMessageListResponse.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/message"
|
||||
var query_params = ""
|
||||
if p_limit != null:
|
||||
query_params += "limit=%d&" % p_limit
|
||||
if p_forward != null:
|
||||
query_params += "forward=%s&" % str(bool(p_forward)).to_lower()
|
||||
if p_cursor != null:
|
||||
query_params += "cursor=%s&" % SatoriSerializer.escape_http(p_cursor)
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiGetMessageListResponse.new(result)
|
||||
var out : ApiGetMessageListResponse = SatoriSerializer.deserialize(_namespace, "ApiGetMessageListResponse", result)
|
||||
return out
|
||||
|
||||
# Deletes a message for an identity.
|
||||
func delete_message_async(
|
||||
p_session : SatoriSession
|
||||
, p_id : String
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/message/{id}"
|
||||
urlpath = urlpath.replace("{id}", SatoriSerializer.escape_http(p_id))
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "DELETE"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# Updates a message for an identity.
|
||||
func update_message_async(
|
||||
p_session : SatoriSession
|
||||
, p_id : String
|
||||
, p_body :
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/message/{id}"
|
||||
urlpath = urlpath.replace("{id}", SatoriSerializer.escape_http(p_id))
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "PUT"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
|
||||
# List properties associated with this identity.
|
||||
func list_properties_async(
|
||||
p_session : SatoriSession
|
||||
) -> ApiProperties:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return ApiProperties.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/properties"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "GET"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return ApiProperties.new(result)
|
||||
var out : ApiProperties = SatoriSerializer.deserialize(_namespace, "ApiProperties", result)
|
||||
return out
|
||||
|
||||
# Update identity properties.
|
||||
func update_properties_async(
|
||||
p_session : SatoriSession
|
||||
, p_body : ApiUpdatePropertiesRequest
|
||||
) -> SatoriAsyncResult:
|
||||
var try_refresh = await _refresh_session(p_session)
|
||||
if try_refresh != null:
|
||||
if try_refresh.is_exception():
|
||||
return SatoriAsyncResult.new(try_refresh.get_exception())
|
||||
await p_session.refresh(try_refresh)
|
||||
var urlpath : String = "/v1/properties"
|
||||
var query_params = ""
|
||||
var uri = "%s%s%s" % [_base_uri, urlpath, "?" + query_params if query_params else ""]
|
||||
var method = "PUT"
|
||||
var headers = {}
|
||||
var header = "Bearer %s" % p_session.token
|
||||
headers["Authorization"] = header
|
||||
|
||||
var content : PackedByteArray = PackedByteArray()
|
||||
content = JSON.stringify(p_body.serialize()).to_utf8_buffer()
|
||||
|
||||
var result = await _http_adapter.send_async(method, uri, headers, content)
|
||||
if result is SatoriException:
|
||||
return SatoriAsyncResult.new(result)
|
||||
return SatoriAsyncResult.new()
|
||||
Reference in New Issue
Block a user