blob: 11e6984e7d258830db147036cbc259f2decc2500 [file] [log] [blame]
Daniele Moro134b8d62020-01-14 11:32:05 -08001option name = "dt-workflow-driver";
2option app_label = "dt-workflow-driver";
3
4message DtWorkflowDriverService (Service){
5 option verbose_name = "DtWorkflowDriver Service";
6 option kind = "control";
7 option description = "Service that manages the PPPoE subscriber workflow";
8}
9
10message DtWorkflowDriverServiceInstance (ServiceInstance){
11 option owner_class_name = "DtWorkflowDriverService";
12 option verbose_name = "DtWorkflowDriver Service Instance";
13 option description = "Workflow settings for a particular ONU Device";
14 option policy_implemented = "True";
15
16 required string serial_number = 2 [
17 help_text = "Serial number of ONU",
18 max_length = 256,
19 tosca_key=True,
20 unique = True];
21 required string authentication_state = 3 [
22 help_text = "Subscriber authentication state",
23 choices = "(('AWAITING', 'Awaiting'), ('STARTED', 'Started'), ('APPROVED', 'Approved'), ('DENIED', 'Denied'), )",
24 default = "AWAITING",
25 feedback_state = True,
26 max_length = 50];
27 required string of_dpid = 4 [
28 help_text = "OLT Openflow ID",
29 max_length = 256];
30 required int32 uni_port_id = 5 [
31 help_text = "ONU UNI port ID"];
32 required string admin_onu_state = 6 [
33 help_text = "ONU administrative state",
34 choices = "(('AWAITING', 'Awaiting'), ('ENABLED', 'Enabled'), ('DISABLED', 'Disabled'))",
35 default = "AWAITING",
36 feedback_state = True,
37 max_length = 256];
38 optional string status_message = 7 [
39 help_text = "Status text of current state machine state",
40 default = "",
41 max_length = 256];
42 required string pppoe_state = 8 [
43 help_text = "State of the subscriber PPPoE session",
44 max_length = 256,
45 default = "AWAITING",
46 choices = "(('AWAITING', 'Awaiting'), ('INITIATED', 'Initiated'), ('CONNECTED', 'Connected'), ('DISCONNECTED', 'Disconnected'))",
47 feedback_state = True];
48 optional string pppoe_session_id = 9 [
49 help_text = "Subscriber PPPoE session ID",
50 feedback_state = True,
51 max_length = 20];
52 required string ipcp_state = 10 [
53 help_text = "State of the IPCP protocol for IP address assignment",
54 max_length = 256,
55 default = "AWAITING",
56 choices = "(('AWAITING', 'Awaiting'), ('CONF_ACK', 'Ack'), ('CONF_REQUEST', 'Requested'))",
57 feedback_state = True];
58 optional string ip_address = 11 [
59 help_text = "Subscriber IP address, learned from IPCP",
60 feedback_state = True,
61 max_length = 20];
62 optional string mac_address = 12 [
63 help_text = "Subscriber MAC address",
64 feedback_state = True,
65 max_length = 20];
66 required string oper_onu_status = 13 [
67 help_text = "ONU operational state",
68 choices = "(('AWAITING', 'Awaiting'), ('ENABLED', 'Enabled'), ('DISABLED', 'Disabled'))",
69 default = "AWAITING",
70 feedback_state = True,
71 max_length = 256];
72}
73
74message DtWorkflowDriverWhiteListEntry (XOSBase) {
75 option verbose_name = "ONU Whitelist";
76 option plural = "dtworkflowdriverwhitelistentries";
77 option description = "White list entry that permits an ONU with a particular serial number on a particular OLT and PON";
78 option policy_implemented = "True";
79
80 required manytoone owner->DtWorkflowDriverService:whitelist_entries = 1:1001 [
81 help_text = "DtWorkflowDriverService that owns this white list entry",
82 db_index = True,
83 tosca_key = True];
84 required string serial_number = 2 [
85 help_text = "ONU Serial Number",
86 max_length = 256,
87 tosca_key = True,
88 unique_with = "owner"];
89 required int32 pon_port_id = 3 [
90 help_text = "PON Port on which this ONU is expected to show up"];
91 required string device_id = 4 [
92 help_text = "OLT Device (logical device id) on which this ONU is expected to show up",
93 max_length = 54];
94}