109 lines
5.5 KiB
XML
Executable File
109 lines
5.5 KiB
XML
Executable File
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
<service namespace="Messaging" abbreviation="MSG" procNames="Messaging" exerciseDependency="Global" groups="Core" prio="3">
|
|
<rcs>
|
|
<Id Id="$Id$"/>
|
|
<HeadURL HeadURL="$HeadURL$"/>
|
|
<Author Author="$Author$"/>
|
|
</rcs>
|
|
<operatorRights offset="21">
|
|
<guiPlugin name="Messaging" offset="1">
|
|
<operatorRightGroup name="Messages" description="Edit and Send Operator and OC Messages">
|
|
<operatorRight right="MessagesShow" value="1" description="Show (own) Messages"/>
|
|
<operatorRight right="MessagesSend" value="2" description="Edit and Send Operator Messages"/>
|
|
<operatorRight right="MessagesSendOc" value="3" description="Send Messages to O/C"/>
|
|
</operatorRightGroup>
|
|
</guiPlugin>
|
|
</operatorRights>
|
|
<tables>
|
|
<table name="address_type">
|
|
<column name="id" datatype="integer" isPrimaryKey="1">
|
|
<sequence start="1" increment="1"/>
|
|
</column>
|
|
<column name="name" datatype="text"/>
|
|
</table>
|
|
<table name="msg_message_operator_data">
|
|
<column name="id" datatype="integer" isPrimaryKey="1">
|
|
<sequence start="1" increment="1"/>
|
|
</column>
|
|
<column name="time_stamp" datatype="bigint"/>
|
|
<column name="sender_id" datatype="integer" default="1"/>
|
|
<column name="recipient_id" datatype="integer"/>
|
|
<column name="exercise_id" datatype="integer"/>
|
|
<column name="is_read" datatype="boolean"/>
|
|
<column name="is_send" datatype="boolean"/>
|
|
<column name="is_deleted" datatype="boolean"/>
|
|
<column name="subject" datatype="text"/>
|
|
<column name="message" datatype="text"/>
|
|
<column name="sender_text" datatype="text"/>
|
|
<column name="recipient_text" datatype="text"/>
|
|
<column name="recipient_type" datatype="integer" isForeignKey="1"/>
|
|
<column name="sender_type" datatype="integer" isForeignKey="1"/>
|
|
<column name="corresponding_outbox_message_id" datatype="integer" default="0"/>
|
|
<constraint name="UQ_msg_message_data_id" type="unique">
|
|
<column name="id"/>
|
|
</constraint>
|
|
<constraint name="IDX_msg_message_operator_is_deleted" type="index">
|
|
<column name="is_deleted"/>
|
|
</constraint>
|
|
<foreignKey name="FK_msg_message_operator_data_address_type_recv">
|
|
<source table="msg_message_operator_data" column="recipient_type"/>
|
|
<destination table="address_type" column="id"/>
|
|
</foreignKey>
|
|
<foreignKey name="FK_msg_message_operator_data_address_type_send">
|
|
<source table="msg_message_operator_data" column="sender_type"/>
|
|
<destination table="address_type" column="id"/>
|
|
</foreignKey>
|
|
</table>
|
|
</tables>
|
|
<views/>
|
|
<dbServiceStructs>
|
|
<serviceStruct name="MsgMessageData" table="msg_message_operator_data"/>
|
|
<table name="msg_message_operator_data"/>
|
|
</dbServiceStructs>
|
|
<topicTypes>
|
|
<topicType name="CreateOperatorMessageRequest">
|
|
<column name="recipientIds" idlType="sequence<long>" comment="Dependent on recipientType: - OperatorId, - ParticipantId"/>
|
|
<column name="exerciseId" idlType="long"/>
|
|
<column name="senderId" idlType="long" comment="Dependent on senderType: - OperatorId, - ParticipantId (or EqId?)"/>
|
|
<column name="subject" idlType="string"/>
|
|
<column name="message" idlType="string" comment="Shall be empty if Receiver is Non-O/C Participant. Not optional though."/>
|
|
<column name="senderType" idlType="AddressType"/>
|
|
<column name="recipientType" idlType="AddressType"/>
|
|
</topicType>
|
|
<topicType name="ModifyOperatorMessageRequest">
|
|
<column name="id" idlType="long" isKey="1"/>
|
|
<column name="isRead" idlType="boolean"/>
|
|
<column name="isSend" idlType="boolean"/>
|
|
<column name="isDeleted" idlType="boolean"/>
|
|
</topicType>
|
|
<topicType name="OperatorMessage" isDataObject="1" autosubscribe="1" routeToClient="1" routeToServer="0" routeInReplay="0">
|
|
<column name="id" idlType="long" isKey="1"/>
|
|
<column name="senderId" idlType="long"/>
|
|
<column name="recipientId" idlType="long"/>
|
|
<column name="exerciseId" idlType="long"/>
|
|
<column name="subject" idlType="string"/>
|
|
<column name="message" idlType="string"/>
|
|
<column name="isRead" idlType="boolean"/>
|
|
<column name="isSend" idlType="boolean"/>
|
|
<column name="isDeleted" idlType="boolean"/>
|
|
<column name="senderText" idlType="string"/>
|
|
<column name="recipientText" idlType="string"/>
|
|
<column name="senderType" idlType="AddressType"/>
|
|
<column name="recipientType" idlType="AddressType"/>
|
|
<column name="correspondingOutboxMessageId" idlType="long"/>
|
|
<column name="timeStamp" idlType="long long"/>
|
|
</topicType>
|
|
</topicTypes>
|
|
<functionTopics>
|
|
<functionTopic name="ModifyOperatorMessage" requestTopicType="ModifyOperatorMessageRequest" replyTopicType="Core::FunctionReply" requestTopicName="ModifyOperatorMessageRequest" replyTopicName="ModifyOperatorMessageReply" routeInReplay="0"/>
|
|
<functionTopic name="CreateOperatorMessage" requestTopicType="CreateOperatorMessageRequest" replyTopicType="Core::FunctionReply" requestTopicName="CreateOperatorMessageRequest" replyTopicName="CreateOperatorMessageReply" routeInReplay="0"/>
|
|
</functionTopics>
|
|
<enumerations>
|
|
<enumeration name="AddressType" table="address_type">
|
|
<attribute key="Operator" value="1"/>
|
|
<attribute key="ObserverController" value="2"/>
|
|
<attribute key="Participant" value="3"/>
|
|
</enumeration>
|
|
</enumerations>
|
|
</service>
|