Category:OSSL Functions

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m (Moved this link to the right place (In Additional Resources))
 
(232 intermediate revisions by 15 users not shown)
Line 1: Line 1:
== Current OSSL Functions Implemented  ==
+
<div style="background-color:#FFA500; padding:10px; padding-bottom:5px; border: 1px #FF544F solid">
 +
This information is relative to (almost) the last OpenSimulator Development version. In some cases it may not apply to older versions.
 +
</div>
  
Updated OSSL Functions as of OpenSim DEV 0.7.4 r/21068 17th November, 2012
+
== OSSL function permissions ==
<br /><br />
+
Several OSSL functions have execution permission control to prevent abusive or dangerous use.
'''!''' Partial Update December.10.2010 With commits of this date some functions have been corrected to use standard ossl conventions. The previous are tagged as deprecated with their replacement shown. The deprecated functions will advise you with a msg that they have been deprecated and to use new osFunction name instead. Further Updates are needed to complete existing list of osFunctions.
+
  
Special Note: Some Functions as shown use '''"double"''' as a Value instead of '''"float" '''these vary for purposes of accuracy as shown Below.  
+
This is controlled by files osslDefaultEnable.ini and osslEnable.ini, by default in folder bin/config-include<br>
 +
The use logic of these two files is identical to OpenSimDefaults.ini and OpenSim.ini
  
(Float is short for "floating point", and just means a number with a point something on the end.)
+
Older OpenSimulator versions only used file osslEnable.ini.<br>
 +
Some older OpenSimulator versions had checks for all OSSLfunctions.<br>
 +
That made no sense for many functions, so now many are always allowed wasting no time on useless checks.<br>
  
The difference between the two is in the size of the numbers that they can hold. For float, you can have up to 7 digits in your number. For doubles, you can have up to 16 digits. To be more precise, here's the official size: ( float: 1.5 × 10-45 to 3.4 × 1038 ) ( double: 5.0 × 10-324 to 1.7 × 10308 )
+
For details about these permissions, please read file OpenSimDefaults.ini
  
Note that some function takes doubles as arguments but may be internally down-casted to floats.
+
= osslDefaultEnable.ini =
 +
This file contains the defaults for OSSL execution permissions set by OpenSimulator dev team.<br>
 +
Instead of changing defaults defined in code, the OpenSimulator dev team may decide to just make changes in this file.<br>
 +
This file was not present on older OpenSimulator versions.<br>
 +
If you need to change permissions, copy the respective entry to osslEnable.ini and modify there.<br>
  
Each of these functions has an threat level associated to it. See [[Threat level]] for more information and an overview of each function's level.
+
= osslEnable.ini =
 +
This file contains the local overrides for OSSL permissions.<br>
 +
It is read after osslDefaultEnable.ini, and any entry on it replaces the old one.<br>
 +
This file is not provided on code packages, an osslEnable.ini.example is.<br>
 +
At first time setup, you will need to copy the example file to osslEnable.ini and then edit it for your needs, using osslDefaults.ini as reference.<br>
 +
This was the only file used on older OpenSimulator versions.
 +
 
 +
 
 +
== Current OSSL Functions Implemented  ==
  
 
=== Avatars ===
 
=== Avatars ===
 
{{multicol}}
 
{{multicol}}
*[[osGetAgentIP]]  
+
*[[osAddAgentToGroup]]
*[[osGetAgents]]
+
*[[osAgentSaveAppearance]]
*[[osGetAvatarList]]  
+
 
*[[osAvatarName2Key]]
 
*[[osAvatarName2Key]]
 
*[[osAvatarPlayAnimation]]  
 
*[[osAvatarPlayAnimation]]  
 
*[[osAvatarStopAnimation]]  
 
*[[osAvatarStopAnimation]]  
*[[osAgentSaveAppearance]]
 
*[[osOwnerSaveAppearance]]
 
*[[osTeleportAgent]]
 
*[[osTeleportOwner]]
 
*[[osKickAvatar]]
 
 
*[[osCauseDamage]]  
 
*[[osCauseDamage]]  
 
*[[osCauseHealing]]
 
*[[osCauseHealing]]
{{multicol-break}}
+
*[[osDetectedCountry]]
*[[osGetHealth]]
+
*[[osDropAttachment]]
*[[osInviteToGroup]]
+
*[[osDropAttachmentAt]]
 
*[[osEjectFromGroup]]
 
*[[osEjectFromGroup]]
 
*[[osForceAttachToAvatar]]
 
*[[osForceAttachToAvatar]]
Line 38: Line 48:
 
*[[osForceAttachToOtherAvatarFromInventory]]
 
*[[osForceAttachToOtherAvatarFromInventory]]
 
*[[osForceDetachFromAvatar]]
 
*[[osForceDetachFromAvatar]]
*[[osGetNumberOfAttachments]]
 
*[[osDropAttachment]]
 
*[[osDropAttachmentAt]]
 
 
*[[osForceDropAttachment]]
 
*[[osForceDropAttachment]]
 
*[[osForceDropAttachmentAt]]
 
*[[osForceDropAttachmentAt]]
 +
*[[osForceOtherSit]]
 +
*[[osGetAgentIP]]
 +
*[[osGetAgents]]
 +
{{multicol-break}}
 +
*[[osGetAgentCountry]] {{new}}
 +
*[[osGetAvatarHomeURI]]
 +
*[[osGetAvatarList]]
 +
*[[osGetGender]]
 +
*[[osGetHealRate]]
 +
*[[osGetHealth]]
 +
*[[osGetNumberOfAttachments]]
 +
*[[osGrantScriptPermissions]]
 +
*[[osInviteToGroup]]
 +
*[[osKickAvatar]]
 +
*[[osOwnerSaveAppearance]]
 +
*[[osRevokeScriptPermissions]]
 +
*[[osSetHealRate]]
 +
*[[osSetHealth]]
 +
*[[osSetOwnerSpeed]]
 +
*[[osSetSpeed]]
 +
*[[osLocalTeleportAgent]] {{E}}
 +
*[[osTeleportAgent]]
 +
*[[osTeleportOwner]]
 +
*[[osReplaceAgentEnvironment]] {{new}}
 
{{multicol-end}}
 
{{multicol-end}}
  
 
=== NPCs ===
 
=== NPCs ===
 
{{multicol}}
 
{{multicol}}
 +
*[[osIsNpc]]
 
*[[osNpcCreate]]
 
*[[osNpcCreate]]
 +
*[[osGetNpcList]]
 
*[[osNpcGetPos]]
 
*[[osNpcGetPos]]
 
*[[osNpcGetRot]]
 
*[[osNpcGetRot]]
Line 54: Line 87:
 
*[[osNpcMoveTo]]
 
*[[osNpcMoveTo]]
 
*[[osNpcMoveToTarget]]
 
*[[osNpcMoveToTarget]]
 +
*[[osNpcPlayAnimation]]
 
*[[osNpcRemove]]
 
*[[osNpcRemove]]
 
*[[osNpcSaveAppearance]]
 
*[[osNpcSaveAppearance]]
 +
{{multicol-break}}
 
*[[osNpcSay]]
 
*[[osNpcSay]]
*[[osNpcSay (with channel)]]
+
*[[osNpcSayTo]]
{{multicol-break}}
+
*[[osNpcSetProfileAbout]]
 +
*[[osNpcSetProfileImage]]
 
*[[osNpcSetRot]]
 
*[[osNpcSetRot]]
 
*[[osNpcShout]]
 
*[[osNpcShout]]
Line 64: Line 100:
 
*[[osNpcStand]]
 
*[[osNpcStand]]
 
*[[osNpcStopMoveToTarget]]
 
*[[osNpcStopMoveToTarget]]
*[[osIsNpc]]
 
*[[osNpcPlayAnimation]]
 
 
*[[osNpcStopAnimation]]
 
*[[osNpcStopAnimation]]
 
*[[osNpcTouch]]
 
*[[osNpcTouch]]
Line 71: Line 105:
 
{{multicol-end}}
 
{{multicol-end}}
  
=== Prim Manipulations ===
+
=== Prim ===
*[[osGetPrimitiveParams]]  
+
{{multicol}}
*[[osGetLinkPrimitiveParams]]  
+
*[[osClearInertia]]
*[[osSetPrimitiveParams]]  
+
*[[osClearObjectAnimations]] {{new}}
*[[osSetProjectionParams]]  
+
*[[osDie]]
*[[osSetSpeed]]  
+
*[[osForceBreakAllLinks]]
*[[osMessageObject]]
+
*[[osForceBreakLink]]  
 +
*[[osForceCreateLink]]
 +
*[[osGetInertiaData]]
 +
*[[osGetInventoryItemKey]]
 +
*[[osGetInventoryName]]
 
*[[osGetInventoryDesc]]
 
*[[osGetInventoryDesc]]
 +
*[[osGetInventoryLastOwner]]
 +
*[[osGetLastChangedEventKey]]
 +
*[[osGetLinkNumber]]
 +
*[[osGetLinkPrimitiveParams]]
 +
*[[osGetPrimitiveParams]]
 
*[[osGetRezzingObject]]
 
*[[osGetRezzingObject]]
*[[osIsUUID]]
+
*[[osGetSitActiveRange]] {{new}}
 +
*[[osGetLinkSitActiveRange]] {{new}}
 +
{{multicol-break}}
 +
*[[osGetStandTarget]] {{new}}
 +
*[[osGetLinkStandTarget]] {{new}}
 
*[[osListenRegex]]
 
*[[osListenRegex]]
 
*[[osMessageAttachments]]
 
*[[osMessageAttachments]]
 +
*[[osMessageObject]]
 +
*[[osSetInertia]]
 +
*[[osSetInertiaAsBox]]
 +
*[[osSetInertiaAsCylinder]]
 +
*[[osSetInertiaAsSphere]]
 +
*[[osSetPrimitiveParams]]
 +
*[[osSetProjectionParams]]
 +
*[[osSetSitActiveRange]] {{new}}
 +
*[[osSetLinkSitActiveRange]] {{new}}
 +
*[[osSetStandTarget]] {{new}}
 +
*[[osSetLinkStandTarget]] {{new}}
 +
*[[osTeleportObject]]
 +
*[[osVolumeDetect]]
 +
{{multicol-end}}
  
=== Prim Drawings ===
+
=== Prim Drawing / Dynamic Texture ===
 
{{multicol}}
 
{{multicol}}
*[[osMovePen]]  
+
*[[osDrawEllipse]]
*[[osDrawLine]]  
+
*[[osDrawFilledEllipse]]
*[[osDrawText]]  
+
*[[osDrawFilledPolygon]]
*[[osDrawEllipse]]  
+
*[[osDrawFilledRectangle]]
*[[osDrawRectangle]]  
+
*[[osDrawImage]]
*[[osDrawFilledRectangle]]  
+
*[[osDrawLine]]
*[[osDrawPolygon]]  
+
*[[osDrawPolygon]]
*[[osDrawFilledPolygon]]  
+
*[[osDrawRectangle]]
*[[osDrawImage]]  
+
*[[osDrawResetTransform]]
 +
*[[osDrawRotationTransform]]
 +
*[[osDrawScaleTransform]]
 +
*[[osDrawText]]
 +
*[[osDrawTranslationTransform]]
 
{{multicol-break}}
 
{{multicol-break}}
*[[osGetDrawStringSize]]  
+
*[[osGetDrawStringSize]]
*[[osSetFontName]]  
+
*[[osMovePen]]
*[[osSetFontSize]]  
+
*[[osSetFontName]]
*[[osSetPenSize]]
+
*[[osSetFontSize]]
*[[osSetPenColor]]  
+
 
*[[osSetPenCap]]
 
*[[osSetPenCap]]
 +
*[[osSetPenColor]]
 +
*[[osSetPenSize]]
 +
*[[osSetDynamicTextureData]] {{new}}
 +
*[[osSetDynamicTextureDataFace]] {{new}}
 +
*[[osSetDynamicTextureDataBlend]] {{new}}
 +
*[[osSetDynamicTextureDataBlendFace]]
 +
*[[osSetDynamicTextureURL]] {{new}}
 +
*[[osSetDynamicTextureURLBlend]] {{new}}
 +
*[[osSetDynamicTextureURLBlendFace]] {{new}}
 
{{multicol-end}}
 
{{multicol-end}}
  
=== Dynamic Textures ===
+
=== Notecard ===
*[[osSetDynamicTextureData]]
+
*[[osSetDynamicTextureDataBlend]]
+
*[[osSetDynamicTextureDataBlendFace]]
+
*[[osSetDynamicTextureURL]]
+
*[[osSetDynamicTextureURLBlend]]
+
*[[osSetDynamicTextureURLBlendFace]]
+
 
+
=== Notecards ===
+
*[[osMakeNotecard]]
+
 
*[[osGetNotecard]]  
 
*[[osGetNotecard]]  
 
*[[osGetNotecardLine]]  
 
*[[osGetNotecardLine]]  
*[[osGetNumberOfNotecardLines]]  
+
*[[osGetNumberOfNotecardLines]]
 +
*[[osMakeNotecard]]
 +
 
 +
=== Sound ===
 +
{{multicol}}
 +
*[[osAdjustSoundVolume]]
 +
*[[osCollisionSound]]
 +
*[[osLoopSound]]
 +
*[[osLoopSoundMaster]]
 +
*[[osLoopSoundSlave]]
 +
*[[osPlaySound]]
 +
{{multicol-break}}
 +
*[[osPlaySoundSlave]]
 +
*[[osPreloadSound]]
 +
*[[osSetSoundRadius]]
 +
*[[osStopSound]]
 +
*[[osTriggerSound]]
 +
*[[osTriggerSoundLimited]]
 +
{{multicol-end}}
 +
 
 +
=== HTTP ===
 +
*[[osRequestSecureURL]]
 +
*[[osRequestURL]]
 +
*[[osSetContentType]]
  
=== Parcels ===
+
=== Parcel ===
 
*[[osParcelJoin]]  
 
*[[osParcelJoin]]  
 
*[[osParcelSubdivide]]  
 
*[[osParcelSubdivide]]  
 +
*[[osGetParcelDwell]]
 
*[[osSetParcelDetails]]
 
*[[osSetParcelDetails]]
  
=== Terrains ===
+
=== Terrain ===
 
*[[osGetTerrainHeight]]  
 
*[[osGetTerrainHeight]]  
 
*[[osSetTerrainHeight]]  
 
*[[osSetTerrainHeight]]  
*[[osTerrainFlush]]
 
 
*[[osSetTerrainTexture]]
 
*[[osSetTerrainTexture]]
 
*[[osSetTerrainTextureHeight]]
 
*[[osSetTerrainTextureHeight]]
 +
*[[osTerrainFlush]]
  
=== WindLights ===
+
=== Region / Parcel Environment ===
 
{{multicol}}
 
{{multicol}}
*[[osSetRegionWaterHeight]]
 
*[[osSetRegionSunSettings]]
 
*[[osSetEstateSunSettings]]
 
 
*[[osGetCurrentSunHour]]  
 
*[[osGetCurrentSunHour]]  
*[[osGetSunParam]]  
+
*[[osGetApparentTime]] {{new}}
*[[osSetSunParam]]  
+
*[[osGetApparentTimeString]] {{new}}
{{multicol-break}}
+
*[[osGetApparentRegionTime]] {{new}}
*[[osWindActiveModelPluginName]]  
+
*[[osGetApparentRegionTimeString]] {{new}}
 +
 
 
*[[osGetWindParam]]  
 
*[[osGetWindParam]]  
 +
{{multicol-break}}
 +
*[[osSetRegionWaterHeight]]
 
*[[osSetWindParam]]
 
*[[osSetWindParam]]
 +
*[[osWindActiveModelPluginName]]
 +
*[[osReplaceParcelEnvironment]] {{new}}
 +
*[[osReplaceRegionEnvironment]] {{new}}
 +
*[[osResetEnvironment]] {{new}}
 
{{multicol-end}}
 
{{multicol-end}}
  
=== Grid Information ===
+
=== Grid / Region Information ===
 
{{multicol}}
 
{{multicol}}
 +
*[[osCheckODE]]
 +
*[[osGetGridCustom]]
 +
*[[osGetGridGatekeeperURI]]
 +
*[[osGetGridHomeURI]]
 +
*[[osGetGridLoginURI]]
 
*[[osGetGridName]]  
 
*[[osGetGridName]]  
 
*[[osGetGridNick]]  
 
*[[osGetGridNick]]  
*[[osGetGridLoginURI]]
+
*[[osGetMapTexture]]  
*[[osGetGridHomeURI]]
+
*[[osGetPhysicsEngineName]]
*[[osGetGridGatekeeperURI]]
+
*[[osGetPhysicsEngineType]]
*[[osGetGridCustom]]
+
*[[osGetScriptEngineName]]
+
*[[osGetSimulatorVersion]]
+
*[[osGetSimulatorMemory]]  
+
 
{{multicol-break}}
 
{{multicol-break}}
*[[osGetMapTexture]]
 
 
*[[osGetRegionMapTexture]]  
 
*[[osGetRegionMapTexture]]  
 +
*[[osGetRegionSize]]
 
*[[osGetRegionStats]]  
 
*[[osGetRegionStats]]  
 +
*[[osGetScriptEngineName]]
 +
*[[osGetSimulatorMemory]]
 +
*[[osGetSimulatorMemoryKB]]
 +
*[[osGetSimulatorVersion]]
 
*[[osLoadedCreationDate]]  
 
*[[osLoadedCreationDate]]  
 +
*[[osLoadedCreationID]]
 
*[[osLoadedCreationTime]]  
 
*[[osLoadedCreationTime]]  
*[[osLoadedCreationID]]
 
 
{{multicol-end}}
 
{{multicol-end}}
  
 
=== Administration ===
 
=== Administration ===
*[[osRegionNotice]]  
+
*[[osConsoleCommand]]
 +
*[[osRegionNotice]]
 
*[[osRegionRestart]]  
 
*[[osRegionRestart]]  
*[[osConsoleCommand]]
 
 
*[[osSetParcelMediaURL]]  
 
*[[osSetParcelMediaURL]]  
*[[osSetPrimFloatOnWater]]
+
*[[osSetParcelMusicURL]] {{new}}
 
*[[osSetParcelSIPAddress]]
 
*[[osSetParcelSIPAddress]]
 +
*[[osSetPrimFloatOnWater]]
 +
 +
=== Script ===
 +
*[[osResetAllScripts]]
 +
 +
=== String Manipulation ===
 +
{{multicol}}
 +
* [[osFormatString]]
 +
* [[osMatchString]]
 +
* [[osRegexIsMatch]]
 +
* [[osReplaceString]]
 +
* [[osStringSubString]]
 +
* [[osStringStartsWith]]
 +
{{multicol-break}}
 +
* [[osStringEndsWith]]
 +
* [[osStringIndexOf]]
 +
* [[osStringLastIndexOf]]
 +
* [[osStringRemove]]
 +
* [[osStringReplace]]
 +
{{multicol-end}}
  
 
=== Misc ===
 
=== Misc ===
 
{{multicol}}
 
{{multicol}}
*[[osSetStateEvents]]  
+
*[[osAngleBetween]]
*[[osList2Double]]  
+
*[[osApproxEquals]]
 +
*[[osGetPSTWallclock]]
 +
*[[osIsUUID]]
 +
*[[osIsNotValidNumber]]
 
*[[osKey2Name]]  
 
*[[osKey2Name]]  
*[[osFormatString]]
+
*[[osList2Double]]  
*[[osMatchString]]
+
*[[osUnixTimeToTimestamp]]
+
*[[osParseJSON]]
+
{{multicol-break}}
+
*[[osParseJSONNew]]
+
 
*[[osMax]]
 
*[[osMax]]
 
*[[osMin]]
 
*[[osMin]]
*[[osRegexIsMatch]]
+
{{multicol-break}}
*[[osReplaceString]]
+
*[[osRound]]
*[[osSetContentType]]
+
*[[osSlerp]]
 +
*[[osUnixTimeToTimestamp]]  
 +
*[[osVecDistSquare]]
 +
*[[osVecMagSquare]]
 
{{multicol-end}}
 
{{multicol-end}}
  
Line 197: Line 315:
 
*[[osTerrainGetHeight|<strike>osTerrainGetHeight</strike>]] - Use [[osGetTerrainHeight]]  
 
*[[osTerrainGetHeight|<strike>osTerrainGetHeight</strike>]] - Use [[osGetTerrainHeight]]  
 
*[[osTerrainSetHeight|<strike>osTerrainSetHeight</strike>]] - Use [[osSetTerrainHeight]]
 
*[[osTerrainSetHeight|<strike>osTerrainSetHeight</strike>]] - Use [[osSetTerrainHeight]]
 +
*<strike>osWindParamGet</strike> - Use [[osGetWindParam]]
 +
*<strike>osWindParamSet</strike> - Use [[osSetWindParam]]
 +
*[[osGetSunParam]]
 +
*[[osSetEstateSunSettings]]
 +
*[[osSetRegionSunSettings]]
 +
*[[osSetSunParam]]
  
 
== See Also  ==
 
== See Also  ==
Line 221: Line 345:
 
** [[OSSL Script Library/ModSendCommand|modSendCommand()]]
 
** [[OSSL Script Library/ModSendCommand|modSendCommand()]]
 
** [[OSSL Script Library/ModInvoke|Custom functions using modInvoke()]]
 
** [[OSSL Script Library/ModInvoke|Custom functions using modInvoke()]]
 +
 +
* NPC
 +
** [[Appearance_Formats|Appearance Notecard Format]]
  
 
[[Category:OSSL]]
 
[[Category:OSSL]]

Latest revision as of 05:28, 22 November 2020

This information is relative to (almost) the last OpenSimulator Development version. In some cases it may not apply to older versions.

Contents

[edit] OSSL function permissions

Several OSSL functions have execution permission control to prevent abusive or dangerous use.

This is controlled by files osslDefaultEnable.ini and osslEnable.ini, by default in folder bin/config-include
The use logic of these two files is identical to OpenSimDefaults.ini and OpenSim.ini

Older OpenSimulator versions only used file osslEnable.ini.
Some older OpenSimulator versions had checks for all OSSLfunctions.
That made no sense for many functions, so now many are always allowed wasting no time on useless checks.

For details about these permissions, please read file OpenSimDefaults.ini

[edit] osslDefaultEnable.ini

This file contains the defaults for OSSL execution permissions set by OpenSimulator dev team.
Instead of changing defaults defined in code, the OpenSimulator dev team may decide to just make changes in this file.
This file was not present on older OpenSimulator versions.
If you need to change permissions, copy the respective entry to osslEnable.ini and modify there.

[edit] osslEnable.ini

This file contains the local overrides for OSSL permissions.
It is read after osslDefaultEnable.ini, and any entry on it replaces the old one.
This file is not provided on code packages, an osslEnable.ini.example is.
At first time setup, you will need to copy the example file to osslEnable.ini and then edit it for your needs, using osslDefaults.ini as reference.
This was the only file used on older OpenSimulator versions.


[edit] Current OSSL Functions Implemented

[edit] Avatars

[edit] NPCs

[edit] Prim

[edit] Prim Drawing / Dynamic Texture

[edit] Notecard

[edit] Sound

[edit] HTTP

[edit] Parcel

[edit] Terrain

[edit] Region / Parcel Environment

[edit] Grid / Region Information

[edit] Administration

[edit] Script

[edit] String Manipulation

[edit] Misc

[edit] Deprecated

[edit] See Also

Pages in category "OSSL Functions"

The following 200 pages are in this category, out of 227 total.

(previous 200) (next 200)

L

O

O cont.

O cont.

(previous 200) (next 200)
Personal tools
General
About This Wiki