The interface to access session functionality on Xbox One.
Other related reference items 
|   | custom_property_json ( session_id, custom_property_key ) : integer 
Start an asynchronous request for getting a custom property of the session.
 | 
| session_id : | integer | Id of the session. | 
| custom_property_key : | string | The json property to retrieve | 
| integer | Session lookup id, used to reference this session job in the lua interfaces. | 
|   | custom_property_json_result ( session_lookup_id ) : string | 
| session_lookup_id : | integer | Id of the session lookup to get status for. returned by [stingray.MultiplayerSession.custom_properties_json()] | 
| string | Returns the json string of the property or null. | 
|   | custom_property_json_status ( session_lookup_id ) : integer | 
| session_lookup_id : | integer | Id of the session lookup to get status for. | 
| integer | Returns the status of the session lookup started with [stingray.MultiplayerSession.custom_properties_json()]. May be any of the SessionJobStatus(network.xbl.work_status) constants. | 
|   | delete_smartmatch_ticket ( session_id, hopper_name, ticket_id ) 
Starts the asynchronous job of deleting a SmartMatch matchmaking.
 | 
| session_id : | integer | Id of the session. | 
| hopper_name : | string | Name of the hopper to delete. | 
| ticket_id : | string | Ticket ID returned by start_smartmatch_result. | 
| This function does not return any values. | 
Other related reference items 
|   | free_custom_property_json ( session_lookup_id ) 
Frees the resources beloging to the asynchronous task started with [stingray.MultiplayerSession.custom_properties_json()].
 | 
| session_lookup_id : | integer | Id of the session lookup to be freed. | 
| This function does not return any values. | 
Note that the result can only be freed when [stingray.MultiplayerSession.free_custom_property_json_status()] returns stingray.SessionJobStatus.COMPLETE or stingray.SessionJobStatus.FAILED.
|   | group_id ( session_id ) : integer | 
| session_id : | integer | Id of the session to get session group id for. | 
| integer | SessionGroupId of the session group the supplied session belongs to. | 
|   | has_session_changed ( session_id ) : boolean 
Returns if the session have changed since last time called. 
 | 
| session_id : | integer | Id of the session to set keywords for. | 
| boolean | True if the session have changed. | 
Note that this change might not be visible.
|   | host_peer ( session_id ) : string? | 
| session_id : | integer | Id of the session to get host for. | 
| string? | PeerId of the host. If there is no host nil will be returned. The ? notation indicates that this type is optional: there may be zero or one instances of it. | 
|   | keywords ( session_id ) : string[] | 
| session_id : | integer | Id of the session to get keywords for. | 
| string[] | List of session keywords The [] notation indicates that this type is an array: a table in which the keys of the members are sequential integers, and the value of each element is an instance of the type shown. | 
|   | leave ( session_id ) 
This will start the asynchronous job of leaving the supplied session. 
 | 
| session_id : | integer | Id of the session to leave. | 
| This function does not return any values. | 
When stingray.MultiplayerSession.status() returns stingray.MultiplayerSession.SHUTDOWN it is safe to free the session with stingray.Network.free_multiplayer_session().
Other related reference items 
|   | members ( session_id ) : session_member[] | 
| session_id : | integer | Id of the session from where to get member list. | 
| List of members in the session The [] notation indicates that this type is an array: a table in which the keys of the members are sequential integers, and the value of each element is an instance of the type shown. | 
|   | session_id_to_uri ( session_id ) : string | 
| session_id : | string | Session id to retrieve the uri from | 
| string | Session uri | 
|   | session_uri_to_description ( session_uri ) : string, string | 
| session_uri : | string | Session uri | 
| string | Session name | 
| string | Session template name | 
|   | set_closed ( session_id, closed ) 
Set the value asynchronously, simply ensure that the session is ready prior to call this function.
 | 
| session_id : | integer | Id of the session. | 
| closed : | boolean | New closed state | 
| This function does not return any values. | 
|   | set_current_user_member_custom_property_json ( session_id, custom_property_key, custom_property_json ) 
Set the value asynchronously, simply ensure that the session is ready prior to calling this function.
 | 
| session_id : | integer | Id of the session. | 
| custom_property_key : | string | The json property to set | 
| custom_property_json : | string | A string with the json value of the key | 
| This function does not return any values. | 
|   | set_custom_property_json ( session_id, custom_property_key, custom_property_json ) 
Set the value asynchronously, simply ensure that the session is ready prior to call this function.
 | 
| session_id : | integer | Id of the session. | 
| custom_property_key : | string | The json property to set | 
| custom_property_json : | string | A string with the json value of the key | 
| This function does not return any values. | 
|   | set_keywords ( user_id, session_id, session_keywords ) 
Starts the asynchronous job of setting session keywords. 
 | 
| user_id : | integer | Id of the user to set keywords for. | 
| session_id : | integer | Id of the session to set keywords for. | 
| session_keywords : | string[]? | Optional table of string representing keywords for the session. Strings must not be empty and at most made of 63 characters. The [] notation indicates that this type is an array: a table in which the keys of the members are sequential integers, and the value of each element is an instance of the type shown. The ? notation indicates that this type is optional: there may be zero or one instances of it. | 
| This function does not return any values. | 
You can track the status of the session with stingray.MultiplayerSession.status(). If session_keywords isn't supplied then the keywords will be set to an empty array.
|   | smartmatch_result ( session_id ) : string, string, number 
Returns the session found with SmartMatch matchmaking.
 | 
| session_id : | integer | Id of the session. | 
| string | Name of the matched session. | 
| string | Session template name of the matched session. | 
| number | Typical wait time returned by SmartMatch. | 
|   | smartmatch_status ( session_id ) : integer 
Returns the current SmartMatch status.
 | 
| session_id : | integer | Id of the session. | 
| integer | Status of the SmartMatch matchmaking. Will be one of the stingray.SmartMatchStatus constants. | 
Other related reference items 
|   | start_smartmatch ( session_id, hopper_name, timeout, preserve_mode, ticket_attributes_json ) 
Starts the asynchronous job of creating a SmartMatch matchmaking ticket.
 | 
| session_id : | integer | Id of the session. | 
| hopper_name : | string | Name of the hopper to use for SmartMatch. | 
| timeout : | number | SmartMatch timeout. | 
| preserve_mode : | integer | Preserve mode for SmartMatch. Must be one of the stingray.PreserveSessionMode constants. | 
| ticket_attributes_json : | string? | Optional json string with SmartMatch ticket attributes. The ? notation indicates that this type is optional: there may be zero or one instances of it. | 
| This function does not return any values. | 
When the job is completed you can get the result from starting the ticket with start_smartmatch_result.
You can track the matchmaking status on the session with smartmatch_status.
Use delete_smartmatch_ticket to cancel the matchmaking or to delete the ticket when finished.
|   | start_smartmatch_result ( session_id ) : string, number 
Returns the result from starting the matchmaking ticket.
 | 
| session_id : | integer | Id of the session. | 
| string | Ticket ID of the SmartMatch matchmaking ticket. | 
| number | Estimated waiting time returned by SmartMatch. | 
Other related reference items 
|   | status ( session_id ) : integer | 
| session_id : | integer | Id of the session to get status for. | 
| integer | Current status of the session. May be any of the SessionStatus constants. | 
Other related reference items 
Describes the current status of the session.
May be returned by calls to stingray.MultiplayerSession.status().
|   | BROKEN : integer 
An error occurred during an asynchronous job.
 | 
|   | READY : integer 
The session is idle and can be interacted with.
 | 
Other related reference items 
|   | SHUTDOWN : integer 
The session has completed its asynchronous shutdown tasks and is waiting to be freed.
 | 
Other related reference items 
|   | WORKING : integer 
The session is waiting for an asynchronous job to be completed.
 |