%3 ::xo::Package ::xo::Package initialize reply_to_user require_root_folder ::xo::db::Object ::xo::db::Object delete save save_new update ::xo::Package->::xo::db::Object ::xo::db::apm_parameter ::xo::db::apm_parameter ::xo::db::apm_parameter->::xo::db::Object ::xo::parameter ::xo::parameter ::xo::db::apm_parameter->::xo::parameter ::xo::db::chat_room ::xo::db::chat_room ban_user count_messages create_transcript delete delete_messages flush grant_creator grant_moderator grant_user post_message revoke_moderator revoke_user save_new transcript_messages unban_user ::xo::db::chat_room->::xo::db::Object ::xo::db::chat_transcript ::xo::db::chat_transcript save_new ::xo::db::chat_transcript->::xo::db::Object ::xo::db::CrItem ::xo::db::CrItem delete is_package_root_folder privilege=creator rename save save_new set_live_revision update_attribute_from_slot update_item_index ::xo::db::CrItem->::xo::db::Object ::xo::db::CrCache::Item ::xo::db::CrCache::Item ::xo::db::CrItem->::xo::db::CrCache::Item ::xotcl::Object ::xotcl::Object ::xo::db::Object->::xotcl::Object

Class ::xo::db::chat_room

::xo::db::chat_room[i] create ...

Class Relations

  • class: ::xo::db::Class[i]
  • superclass: ::xo::db::Object[i]

Methods (to be applied on instances)

  • ban_user (scripted, public)

     <instance of xo::db::chat_room[i]> ban_user -party_id party_id 

    Bans specified user from the chat room

    Switches:
    -party_id
    (required)

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::grant permission::grant (public) xo::db::chat_room instproc ban_user xo::db::chat_room instproc ban_user xo::db::chat_room instproc ban_user->permission::grant

    Testcases:
    No testcase defined.
  • count_messages (scripted, public)

     <instance of xo::db::chat_room[i]> count_messages

    Count messages currently persisted for this chat room.

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • create_transcript (scripted, public)

     <instance of xo::db::chat_room[i]> create_transcript \
        [ -pretty_name pretty_name ] [ -description description ] \
        [ -creation_user creation_user ] [ -creation_ip creation_ip ]

    Creates a new transcript of all current chat room messages.

    Switches:
    -pretty_name
    (optional)
    -description
    (optional)
    -creation_user
    (optional)
    -creation_ip
    (optional)
    Returns:
    transcript_id of the new transcript or 0 when no messages were in the chat room.

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • delete (scripted, public)

     <instance of xo::db::chat_room[i]> delete args [ args... ]

    Delete the chat room and all of its transcripts

    Parameters:
    args

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • delete_messages (scripted, public)

     <instance of xo::db::chat_room[i]> delete_messages

    Delete all persisted messages from the chat room.

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • flush (scripted, public)

     <instance of xo::db::chat_room[i]> flush

    Save all currently persisted messages for this chat room as a new transcript and then delete them.

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • grant_creator (scripted, public)

     <instance of xo::db::chat_room[i]> grant_creator

    Grants operative privileges to the chat creator (when available on the chat room object). In detail the permissions to edit, view and delete the chat room and also to create transcripts of it.

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::grant permission::grant (public) xo::db::chat_room instproc grant_creator xo::db::chat_room instproc grant_creator xo::db::chat_room instproc grant_creator->permission::grant

    Testcases:
    No testcase defined.
  • grant_moderator (scripted, public)

     <instance of xo::db::chat_room[i]> grant_moderator \
        -party_id party_id 

    Make specified party the chat room moderator

    Switches:
    -party_id
    (required)

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::grant permission::grant (public) xo::db::chat_room instproc grant_moderator xo::db::chat_room instproc grant_moderator xo::db::chat_room instproc grant_moderator->permission::grant

    Testcases:
    No testcase defined.
  • grant_user (scripted, public)

     <instance of xo::db::chat_room[i]> grant_user -party_id party_id 

    Grants operative privileges to the specified party. In detail, the permission to read and write for the chat room.

    Switches:
    -party_id
    (required)

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::grant permission::grant (public) xo::db::chat_room instproc grant_user xo::db::chat_room instproc grant_user xo::db::chat_room instproc grant_user->permission::grant

    Testcases:
    No testcase defined.
  • post_message (scripted, public)

     <instance of xo::db::chat_room[i]> post_message [ -msg msg ] \
        [ -creation_user creation_user ] [ -creation_ip creation_ip ]

    Post a message in the chat room. This actually means persisting the message in the database, but only if the chat room is configured to be archived.

    Switches:
    -msg
    (optional)
    the message
    -creation_user
    (optional)
    the alleged creation user of the persisted message. Won't be set automatically from the connection
    -creation_ip
    (optional)
    the alleged creation IP of the persisted message. Won't be set automatically from the connection

    Partial Call Graph (max 5 caller/called nodes):
    %3 db_nextval db_nextval (public) xo::db::chat_room instproc post_message xo::db::chat_room instproc post_message xo::db::chat_room instproc post_message->db_nextval

    Testcases:
    No testcase defined.
  • revoke_moderator (scripted, public)

     <instance of xo::db::chat_room[i]> revoke_moderator \
        -party_id party_id 

    Revoke moderation rights on the chat room for specified party

    Switches:
    -party_id
    (required)

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::revoke permission::revoke (public) xo::db::chat_room instproc revoke_moderator xo::db::chat_room instproc revoke_moderator xo::db::chat_room instproc revoke_moderator->permission::revoke

    Testcases:
    No testcase defined.
  • revoke_user (scripted, public)

     <instance of xo::db::chat_room[i]> revoke_user -party_id party_id 

    Revokes operative privileges to the specified party. In detail, the permission to read and write for the chat room.

    Switches:
    -party_id
    (required)

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::revoke permission::revoke (public) xo::db::chat_room instproc revoke_user xo::db::chat_room instproc revoke_user xo::db::chat_room instproc revoke_user->permission::revoke

    Testcases:
    No testcase defined.
  • save_new (scripted, public)

     <instance of xo::db::chat_room[i]> save_new \
        [ -creation_user creation_user ] args [ args... ]

    Create a new chat room and make sure its creator is granted the necessary privileges

    Switches:
    -creation_user
    (optional)
    Parameters:
    args
    Returns:
    new chat room id

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • transcript_messages (scripted, public)

     <instance of xo::db::chat_room[i]> transcript_messages

    Formats the current content of a chat room as a list of messages formatted so they can be displayed or stored in the transcript.

    Returns:
    list of formatted messages

    Partial Call Graph (max 5 caller/called nodes):
    %3

    Testcases:
    No testcase defined.
  • unban_user (scripted, public)

     <instance of xo::db::chat_room[i]> unban_user -party_id party_id 

    Lift ban on specified user from the chat room

    Switches:
    -party_id
    (required)

    Partial Call Graph (max 5 caller/called nodes):
    %3 permission::revoke permission::revoke (public) xo::db::chat_room instproc unban_user xo::db::chat_room instproc unban_user xo::db::chat_room instproc unban_user->permission::revoke

    Testcases:
    No testcase defined.

Variables

::xo::db::chat_room set __default_metaclass ::xotcl::Class
::xo::db::chat_room set __default_superclass ::xotcl::Object
::xo::db::chat_room set abstract_p f
::xo::db::chat_room set auto_save false
::xo::db::chat_room array set db_constraints {pretty_name not_null logout_messages_p \
       {{default true}} archive_p {{default true}} auto_flush_p {{default true}} auto_transcript_p \
       {{default false}} messages_time_window {{default 600}} avatar_p {{default true}} active_p \
       {{default true}} login_messages_p {{default true}}}
::xo::db::chat_room array set db_slot \
       {pretty_name ::xo::db::chat_room::slot::pretty_name description \
       ::xo::db::chat_room::slot::description logout_messages_p \
       ::xo::db::chat_room::slot::logout_messages_p room_id ::xo::db::chat_room::slot::room_id \
       archive_p ::xo::db::chat_room::slot::archive_p auto_flush_p \
       ::xo::db::chat_room::slot::auto_flush_p auto_transcript_p \
       ::xo::db::chat_room::slot::auto_transcript_p messages_time_window \
       ::xo::db::chat_room::slot::messages_time_window avatar_p ::xo::db::chat_room::slot::avatar_p \
       active_p ::xo::db::chat_room::slot::active_p login_messages_p \
       ::xo::db::chat_room::slot::login_messages_p}
::xo::db::chat_room set id_column room_id
::xo::db::chat_room set name_method {}
::xo::db::chat_room set object_type chat_room
::xo::db::chat_room set object_type_key 0000000000110101
::xo::db::chat_room set pretty_name {#chat.Room#}
::xo::db::chat_room set pretty_plural {#chat.Rooms#}
::xo::db::chat_room set security_inherit_p t
::xo::db::chat_room set sql_package_name ::xo::db::chat_room
::xo::db::chat_room set supertype acs_object
::xo::db::chat_room set table_name chat_rooms
::xo::db::chat_room set with_table true