Daniele Moro | 134b8d6 | 2020-01-14 11:32:05 -0800 | [diff] [blame] | 1 | option name = "dt-workflow-driver"; |
| 2 | option app_label = "dt-workflow-driver"; |
| 3 | |
| 4 | message DtWorkflowDriverService (Service){ |
| 5 | option verbose_name = "DtWorkflowDriver Service"; |
| 6 | option kind = "control"; |
| 7 | option description = "Service that manages the PPPoE subscriber workflow"; |
| 8 | } |
| 9 | |
| 10 | message 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 | |
| 74 | message 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 | } |