userman

Index Home Arana > Arana Architecture > Arana Daemons > userman

UserManager Application

This application allows a user to manage their experience in the Arana world. The user may create and manage PC's and worlds. This is the user's home base for navigating the Arana Website; the user enters various applications from here ([[setting]], mapedit, hexedit, storyedit, market, etc.).

Commhub.ini Configuration

UserManager reads these attributes that originate from the [commhub.ini] file:

Keyword

Value

domains

Comma separated list of user domains allowed.  Each user belongs to a domain (application ecosystem).  User ids must be unique within a domain.  Each domain has its own settings.

domain.default

The default user domain.  For example:  arana

domain.apps

A comma separated list of app names.  The user will be presented with only these apps/tiles that they may run.  For example: hexedit,mapedit,storyedit,marketplace,console

domain.admin

(not sure)

domain.profile

(not sure)

arana.newpc.rulesets

Allowed D&D rulesets understood by the various apps that mey be used to create a new PC.

arana.newpc.ruleset.races

A comma separated list of allowed races for creating a new PC.

arana.newpc.ruleset.classes

A comma separated list of allowed classes for creating a new PC.

arana.newpc.ruleset.alignments

A comma separated list of allowed alignments for creating a new PC.


The UI for userman displays these menu headings and options to the user.

My_Account

PC

Feedback

Apps

This choices under this menu are dynamically created, based upon the user's configured domain.

Messages Received and Processed

Messages Received and Processed

Specific Messages

MsgTag

Description

userstart

Hotspots

newworld

newrole

first

viewpossessions

we're getting a callback from a possession tab (see Setting app)

newpc.cancel

newpc.review

newset.cancel

newset.save

newset.end

newset.accept

newset.reject

newset.ignore

newset.equip

market.exit

userman.newcpc

userman.newgpc

user response to button for Create PC

User Responses

userman.doneprofile

userman.cancelprofile


User Response Messages

MsgTag

Description

pickcampaign

pickrole

pickgpc

userman.store

userman.addr1

userman.addr2

userman.city

userman.state

userman.zip

userman.country

userman.phone

userman.taxid

userman.joininvite

userman.campaignupdates

userman.arananews

userman.promotions

userman.birthmonth

userman.birthyear

userman.handle

userman.from

userman.passwd

userman.passwd2

userman.visible

newset.setname

newset.setmaxpcs

newset.rollmethod

newset.setrerolls

newset.setmulticlass

newset.setalignments

newset.setrerollhp25

newset.setraceadj

newset.setinvites

newset.inviteintro

newset.setyear

newset.setreign

newset.setprevreign

newset.setprevdur

newset.setreverse

userman.resetpw2

needs work - make sure user is an operator or admin before calling this

we don't want someone hyjacking a form to create new users

userman.adduser

needs work - make sure user is an operator or admin before calling this

we don't want someone hyjacking a form to create new users

newset.ruleset

callback setup in drawRuleSetSelector()

response to querySelection()

newset.race

callback setup in drawRaceSelector()

response to querySelection()

newpc.ruleset

callback setup in drawRuleSetSelector()

response to querySelection()

newpc.campaign

newpc.name

newpc.title

newpc.strength

newpc.strength-percent

newpc.intelligence

newpc.wisdom

newpc.dexterity

newpc.constitution

newpc.charisma

newpc.class

callback setup in drawClassSelector()

response to querySelection()

newpc.race

newpc.alignment

callback setup in drawAlignmentSelector()

response to querySelection()

newpc.deity

newpc.hp

newpc.level

newpc.money

newpc.Secondary_Skill1

newpc.Secondary_Skill2

newpc.birthday

newpc.birthmonth

newpc.age

newpc.weapon

callback setup in drawWeaponSelectors()

response to querySelection()

newpc.descr

newpc.notes

////////////////// feedback

feedback.submit

feedback.cancel

////////////////// RPC calls


Menu

MsgTag

Description

My Account - > Profile

userman.profile

My Account - > Store

userman.store

My Account - > Notifications

userman.notifications

My Account - > Security

userman.security

My Account - > Logout

userman.logout

PC - > Edit

userman.pcedit

PC - > Character Sheet (Concise)

userman.charsheet.brief

PC - > Character Sheet (Full)

userman.charsheet.full

PC - > Delete

userman.pcdelete

Feedback - > Report Bug

userman.bug

Feedback - > Suggest Feature

userman.feature

Feedback - > Send Comment

userman.comment


API Messages

MsgTag

Description

viewhome

Start a user session on the home screen.

device - the end-user's device

appname - the name of the new app to run

@return true if successfully sent

SEQUENCE userman_viewhome 50

userman <- msg "device", label= "viewhome";

END if successfully sent

settings

Tell userman to dislay user settings.

device - the end-user's device

@return true if successfully sent

SEQUENCE userman_settings 50

userman <- msg "device", label= "settings";

END

syssettings

Tell userman to dislay system settings.

device - the end-user's device

@return true if successfully sent

SEQUENCE userman_syssettings 50

userman <- msg "device", label= "syssettings";

END

viewnews

Refresh the news feed for the identified user. Call this after you have posted news for that user.

user_id - the User id

@return true if successfully sent

feedback

Draw feedback dialog box for the user.

device - the end-user's device

feedbackType - must be one of: bug, feature, comment

region - display region area where feedback dialog box can be displayed

@return true if successfully sent

feedback.submit

Send a feedback form response to Userman, which handles it.

device - end user's device

cbdata - the data associated with the action

@return true if successfully sent

feedback.cancel

Send a feedback form response to Userman, which handles it.

device - end user's device

@return true if successfully sent

setapp

Switch the user from their currently running MAE application to the new application named.

device - the end-user's device

appname - the name of the new app to run

@return true if successfully sent

user.request

Send an email to the identified user, asking them to confirm their e-mail address.

name - The name of the user

email - The e-mail address of the user

terms - the terms version that the user accepted

sessionId - the user's session id

confirmationId - (future use) the confirmation id

@return Resulting data from the call.  Use RemoteService::getError(result) to get any error; if no error, then call worked.

user.confirmuser

The new user is confirming that they received the e-mail we sent to them.

name - The name of the user

email - The e-mail address of the user

terms - the terms version that the user accepted

sessionId - the user's session id

confirmationId - (future use) the confirmation id

@return Resulting data from the call.  Use RemoteService::getError(result) to get any error; if no error, then call worked.

user.resetpw

User is requesting their password to be reset.

email - (required) The e-mail address of the user

ipaddr - (optional) The IP address where the user is requesting

requestor - (optional) the name of the user requesting the reset

@return Resulting data from the call.  Use RemoteService::getError(result) to get any error; if no error, then call worked.