ConciergeModule

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Configuration)
(updated for new OpenSimDefaults.ini info and full options table)
Line 4: Line 4:
 
The ConciergeModule is an optional region module that tries to provide "concierge services" for online meetings and events.
 
The ConciergeModule is an optional region module that tries to provide "concierge services" for online meetings and events.
  
== Current functionality ==
+
== Region Administrators ==
 
+
The Concierge Module currently:
it currently  
+
* can send a welcome message to each avatar entering the region
 
+
* announces to every avatar in the region when a new avatar enters or leaves the region
* keeps an attendee list of avatars in a concierged region
+
* keeps an attendee list of avatars in a region
* announces to every avatar in a concierged region when a new avatar enters the region or someone leaves the region
+
 
* can post the attendee list to an outside broker whenever the attendee list changes
 
* can post the attendee list to an outside broker whenever the attendee list changes
* can send a welcome message to each avatar entering the region
 
  
The ConciergeModule can in addition replace OpenSim's normal Chat module and "amplify" speech in a concierged region so that it is "audible" region-wide (whispering will still be range limited).
+
=== Default Configuration ===
 
+
== Planned functionality ==
+
 
+
We have several ideas on extending ConciergeModule further:
+
 
+
* allow each participant to have meeting notes send by email
+
* post meeting notes to the broker
+
* allow "/jeeves please..." style commands (instead of using private channels)
+
* have an OAR file POSTed capturing the current state of the meeting space
+
* grant and revoke group membership and permissions (once group and permission system is more evolved)
+
 
+
== Configuration ==
+
 
+
''TBD''
+
  
 +
The OpenSimDefaults.ini file contains the following configuration items which can be copied to OpenSim.ini and modified to get started using the Concierge module:
 +
<source lang="ini">
 
[Concierge]
 
[Concierge]
     enabled = true
+
    ; Enable concierge module
 +
    ; Default is false
 +
     enabled = false
 +
 
 
     ; name of the concierge
 
     ; name of the concierge
     whoami = "Region Say"
+
     whoami = "jeeves"
  
 
     ; password for updating the welcome message templates via XmlRpc
 
     ; password for updating the welcome message templates via XmlRpc
     password = test
+
     password = SECRET
  
     ; regex specifying for which regions concierge service is desired;
+
     ; regex specifying for which regions concierge service is desired; if
     ; if empty, then for all
+
     ; empty, then for all
     ;regions = "^MeetingSpace-"
+
     regions = "^MeetingSpace-"
    regions = ""
+
  
 
     ; for each region that matches the regions regexp you can provide
 
     ; for each region that matches the regions regexp you can provide
Line 47: Line 35:
 
     ; {1} is replaced with the name of the region
 
     ; {1} is replaced with the name of the region
 
     ; {2} is replaced with the name of the concierge (whoami variable above)
 
     ; {2} is replaced with the name of the concierge (whoami variable above)
     welcomes = "/welcome/{0}"
+
 
 +
     welcomes = /path/to/welcome/template/directory
  
 
     ; Concierge can send attendee lists to an event broker whenever an
 
     ; Concierge can send attendee lists to an event broker whenever an
Line 54: Line 43:
 
     ; {0} is replaced with the region's name
 
     ; {0} is replaced with the region's name
 
     ; {1} is replaced with the region's UUID
 
     ; {1} is replaced with the region's UUID
     ;broker = "http://broker.place.com/{1}"
+
     broker = "http://broker.place.com/{1}"
    ;broker = "http://broker.place.com/{0}"
+
</source>
  
 +
=== Full Configuration ===
 +
 +
{| class="wikitable"
 +
! Keyword
 +
! Default Value
 +
! Description
 +
|-
 +
| enabled
 +
| false
 +
| Enable concierge module
 +
|-
 +
| concierge_channel
 +
| 42
 +
| private chatr channel number for concierge commands
 +
|-
 +
| whoami
 +
| conferencier
 +
| name of the concierge
 +
|-
 +
| welcomes
 +
| null
 +
| path to optional welcome message template files using format substitution: {0} avatarname , {1} region name, {2} whoami concierge name
 +
|-
 +
| announce_entering
 +
| {0} enters {1} (now {2} visitors in this region)
 +
| avatar arriving message using format substitution: {0} avatar name, {1} region name, {2} number of avatars
 +
|-
 +
| announce_leaving
 +
| {0} leaves {1} (back to {2} visitors in this region)
 +
| avatar leaving message using format substitution: {0} avatar name, {1} region name, {2} number of avatars
 +
|-
 +
| password
 +
| Empty string
 +
| password for updating the welcome message templates via XmlRpc
 +
|-
 +
| broker
 +
| Empty string
 +
| The URL where avatar counts and lists will be sent.
 +
|-
 +
| broker_timeout
 +
| 300
 +
| Number of seconds to timeout a broker post request
 +
|-
 +
| regions
 +
| null
 +
| A regular expression list of region names to provide Concierge service to
 +
|-
 +
|}
 +
 +
=== Chat Amplification ===
 +
The ConciergeModule can also replace OpenSim's normal Chat module and "amplify" speech in a region so that it is heard region-wide.
 +
 +
When used like this, whispering will still be range limited.
 +
 +
There is not a specific OpenSim.ini configuration option for this.
 +
 +
It will be enabled depending on the combination of chat and concierge enabled options.
 +
 +
If [Chat] enabled = true, then the Concierge chat override will be disabled.
 +
 +
If [Chat] enable = false, then the Concierge chat override will become active.
 +
 +
=== Welcomes ===
 +
If you create a directory for it, and configure that in the welcomes option, you can create specific welcome message templates for regions, avatars, or both.
 +
 +
=== Concierge Chat Commands ===
 +
You can update welcome message templates by sending a message to the concierge private channel:
 +
 +
  /42 password <password> region <regionname> welcome <new welcome template>
 +
 +
=== Broker Messages ===
 +
The broker feature will format an XML message and send it to the broker URL defined in your configuration.
 +
 +
The broker message is sent with the HTTP POST method.
 +
 +
The broker message content type is: text/xml
 +
 +
The broker message User Agent will be: OpenSim.Concierge
 +
 +
Example XML message:
 +
<source lang="xml">
 +
<avatars count="{0}" region_name="{1}" region_uuid="{2}" timestamp="{3}">
 +
    <avatar name="{0}" uuid="{1}" />
 +
</avatars>
 +
</source>
 +
 +
=== Helper Script ===
 +
You will need an external helper script in order to capture and act on the broker data.
 +
 +
Have the script configured at the broker URL before starting your region, otherwise each avatar arriving will generate an error stack trace in red on your console when the broken URL is unreachable.
 +
 +
== Feature Requests ==
 +
Your help is needed to extend the Concierge Module further!
 +
 +
Additional feature requests for the Concierge Module include:
 +
* a default sample Concierge broker script, such as a PHP to parse the XML message and write a log file.
 +
* allow each participant to have meeting notes send by email
 +
* post meeting notes to the broker
 +
* allow "/jeeves please..." style commands (instead of using private channels)
 +
* have an OAR file POSTed capturing the current state of the meeting space
 +
* grant and revoke group membership and permissions (once group and permission system is more evolved)
  
 
[[Category:Modules]]
 
[[Category:Modules]]

Revision as of 15:32, 10 February 2013


The ConciergeModule is an optional region module that tries to provide "concierge services" for online meetings and events.

Region Administrators

The Concierge Module currently:

  • can send a welcome message to each avatar entering the region
  • announces to every avatar in the region when a new avatar enters or leaves the region
  • keeps an attendee list of avatars in a region
  • can post the attendee list to an outside broker whenever the attendee list changes

Default Configuration

The OpenSimDefaults.ini file contains the following configuration items which can be copied to OpenSim.ini and modified to get started using the Concierge module:

[Concierge]
    ; Enable concierge module
    ; Default is false
    enabled = false
 
    ; name of the concierge
    whoami = "jeeves"
 
    ; password for updating the welcome message templates via XmlRpc
    password = SECRET
 
    ; regex specifying for which regions concierge service is desired; if
    ; empty, then for all
    regions = "^MeetingSpace-"
 
    ; for each region that matches the regions regexp you can provide
    ; (optionally) a welcome template using format substitution:
    ; {0} is replaced with the name of the avatar entering the region
    ; {1} is replaced with the name of the region
    ; {2} is replaced with the name of the concierge (whoami variable above)
 
    welcomes = /path/to/welcome/template/directory
 
    ; Concierge can send attendee lists to an event broker whenever an
    ; avatar enters or leaves a concierged region. the URL is subject
    ; to format substitution:
    ; {0} is replaced with the region's name
    ; {1} is replaced with the region's UUID
    broker = "http://broker.place.com/{1}"

Full Configuration

Keyword Default Value Description
enabled false Enable concierge module
concierge_channel 42 private chatr channel number for concierge commands
whoami conferencier name of the concierge
welcomes null path to optional welcome message template files using format substitution: {0} avatarname , {1} region name, {2} whoami concierge name
announce_entering {0} enters {1} (now {2} visitors in this region) avatar arriving message using format substitution: {0} avatar name, {1} region name, {2} number of avatars
announce_leaving {0} leaves {1} (back to {2} visitors in this region) avatar leaving message using format substitution: {0} avatar name, {1} region name, {2} number of avatars
password Empty string password for updating the welcome message templates via XmlRpc
broker Empty string The URL where avatar counts and lists will be sent.
broker_timeout 300 Number of seconds to timeout a broker post request
regions null A regular expression list of region names to provide Concierge service to

Chat Amplification

The ConciergeModule can also replace OpenSim's normal Chat module and "amplify" speech in a region so that it is heard region-wide.

When used like this, whispering will still be range limited.

There is not a specific OpenSim.ini configuration option for this.

It will be enabled depending on the combination of chat and concierge enabled options.

If [Chat] enabled = true, then the Concierge chat override will be disabled.

If [Chat] enable = false, then the Concierge chat override will become active.

Welcomes

If you create a directory for it, and configure that in the welcomes option, you can create specific welcome message templates for regions, avatars, or both.

Concierge Chat Commands

You can update welcome message templates by sending a message to the concierge private channel:

 /42 password <password> region <regionname> welcome <new welcome template>

Broker Messages

The broker feature will format an XML message and send it to the broker URL defined in your configuration.

The broker message is sent with the HTTP POST method.

The broker message content type is: text/xml

The broker message User Agent will be: OpenSim.Concierge

Example XML message:

<avatars count="{0}" region_name="{1}" region_uuid="{2}" timestamp="{3}">
    <avatar name="{0}" uuid="{1}" />
</avatars>

Helper Script

You will need an external helper script in order to capture and act on the broker data.

Have the script configured at the broker URL before starting your region, otherwise each avatar arriving will generate an error stack trace in red on your console when the broken URL is unreachable.

Feature Requests

Your help is needed to extend the Concierge Module further!

Additional feature requests for the Concierge Module include:

  • a default sample Concierge broker script, such as a PHP to parse the XML message and write a log file.
  • allow each participant to have meeting notes send by email
  • post meeting notes to the broker
  • allow "/jeeves please..." style commands (instead of using private channels)
  • have an OAR file POSTed capturing the current state of the meeting space
  • grant and revoke group membership and permissions (once group and permission system is more evolved)
Personal tools
General
About This Wiki