experience_permissions_denied
event
Event syntax
experience_permissions_denied(key agent_id,// UUID of the avatar who denied or was blocked from granting permissions.integer reason// XP_ERROR_* error constant describing why permissions were denied. Values: ExperienceError
) { … }This event may be generated in many cases:
- In response to a call to
llRequestExperiencePermissionsif any of the following is true: - The agent does not respond to the experience permission dialog. This will happen after a long delay if the agent is running a viewer which doesn’t understand the request or if the agent has blocked the object.
- The agent selects “Block Experience” in the experience permission dialog.
- The agent has previously blocked the experience through another experience permission dialog or through the experience profile.
- An attachment is asking for permission from an agent other than its owner.
- The experience cannot run on the region because it is blocked or exceeds the maturity rating of the region.
- The experience can no longer run:
- The script has moved to a region where the experience cannot run because it is blocked or it exceeds the maturity rating of the region.
- The script has moved to a parcel where it is blocked or not allowed.
- The agent has blocked the experience from the experience profile.
- The agent has moved to a parcel where the experience cannot run.
The agent has denied experience permission or generated under other cases.
experience_permissions_denied(key agent_id, integer reason){
}Specification
Section titled “Specification”| LSL Constant | Message returned via llGetExperienceErrorMessage | Description | |
|---|---|---|---|
XP_ERROR_NONE | 0 | no error | No error was detected. |
XP_ERROR_THROTTLED | 1 | exceeded throttle | The call failed due to too many recent calls. |
XP_ERROR_EXPERIENCES_DISABLED | 2 | experiences are disabled | The region currently has experiences disabled. |
XP_ERROR_INVALID_PARAMETERS | 3 | invalid parameters | One of the string arguments was too big to fit in the key-value store. |
XP_ERROR_NOT_PERMITTED | 4 | operation not permitted | Experience permissions were denied by the user. |
XP_ERROR_NO_EXPERIENCE | 5 | script not associated with an experience | This script is not associated with an experience. |
XP_ERROR_NOT_FOUND | 6 | not found | The sim was unable to verify the validity of the experience. Retrying after a short wait is advised. |
XP_ERROR_INVALID_EXPERIENCE | 7 | invalid experience | The script is associated with an experience that no longer exists. |
XP_ERROR_EXPERIENCE_DISABLED | 8 | experience is disabled | The experience owner has temporarily disabled the experience. |
XP_ERROR_EXPERIENCE_SUSPENDED | 9 | experience is suspended | The experience has been suspended by Linden Lab customer support. |
XP_ERROR_UNKNOWN_ERROR | 10 | unknown error | An unknown error not covered by any of the other predetermined error states. |
XP_ERROR_QUOTA_EXCEEDED | 11 | experience data quota exceeded | An attempt to write data to the key-value store failed due to the data quota being met. |
XP_ERROR_STORE_DISABLED | 12 | key-value store is disabled | They key-value store is currently disabled on this region. |
XP_ERROR_STORAGE_EXCEPTION | 13 | key-value store communication failed | Unable to communicate with the key-value store, or attempted to create key that already exists |
XP_ERROR_KEY_NOT_FOUND | 14 | key doesn’t exist | They requested key does not exist. |
XP_ERROR_RETRY_UPDATE | 15 | retry update | A checked update failed due to an out of date request. |
XP_ERROR_MATURITY_EXCEEDED | 16 | experience content rating too high | The content rating of the experience exceeds that of the region. |
XP_ERROR_NOT_PERMITTED_LAND | 17 | not allowed to run on this land | The experience is blocked or not enabled for this land. |
XP_ERROR_REQUEST_PERM_TIMEOUT | 18 | experience permissions request timed out | The request for experience permissions was ignored. |
Examples
Section titled “Examples”Example 1
13 collapsed lines
// Simple experience watcherstring denied_region = "";string experience_name = "";
default{ state_entry(){ llRequestExperiencePermissions(llGetOwner(), ""); experience_name = llList2String(llGetExperienceDetails(NULL_KEY), 0); }
experience_permissions(key agent){ denied_region=""; llOwnerSay("in "+ experience_name); }
experience_permissions_denied(key agent, integer reason){ denied_region = llGetRegionName( ); llOwnerSay("out "+ experience_name);
}
changed(integer what){5 collapsed lines
if(denied_region != "" && denied_region != llGetRegionName()){ llRequestExperiencePermissions(llGetOwner(), ""); } }}See also
Section titled “See also”Functions
Section titled “Functions”Events
Section titled “Events”Original wiki source
Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.