diff --git a/src/App.vue b/src/App.vue index 24f1048..39dfc34 100644 --- a/src/App.vue +++ b/src/App.vue @@ -99,7 +99,7 @@ langs: ['de', 'en', 'es'], dismissSecs: 5, dismissCountDown: 0, - autoRenewSession: false, + autoRenewSession: true, }; }, methods: { diff --git a/src/api/RepositoryFactory.ts b/src/api/RepositoryFactory.ts index 80ac120..f0cd25b 100644 --- a/src/api/RepositoryFactory.ts +++ b/src/api/RepositoryFactory.ts @@ -8,6 +8,8 @@ import RoomRepository from './roomRepository'; import RecorderRepository from './recorderRepository'; import CommandRepository from './commandRepository'; +import ControlRepository from './controlRepository'; + export default function get(name: string) { switch (name) { @@ -29,6 +31,9 @@ export default function get(name: string) { case 'command': { return CommandRepository; } + case 'control': { + return ControlRepository; + } default: { // statements; break; diff --git a/src/api/controlRepository.ts b/src/api/controlRepository.ts new file mode 100644 index 0000000..07713e6 --- /dev/null +++ b/src/api/controlRepository.ts @@ -0,0 +1,16 @@ +// groupRepository.ts + +// @ts-ignore +import Repository from './Repository'; + +const commandResource = '/control'; + +import {dictEmptyValToNull} from '@/utils'; + +export default { + runRecorderCommand(recorderId: any, commandId: any, parameters: any) { + return Repository.post(`${commandResource}?recorder_id=${recorderId}&command_id=${commandId}`, + {parameters: dictEmptyValToNull(parameters)}); + }, + +}; diff --git a/src/components/Recorder.vue b/src/components/Recorder.vue index 6b79a6f..6123333 100644 --- a/src/components/Recorder.vue +++ b/src/components/Recorder.vue @@ -4,92 +4,217 @@
+{{cmd_params}} +

+
+ + + +
+

+
- ID: {{recorder_id}} - + -

{{recorder.name}}

-

- {{recorder.name}} {{recorder.name}}

-

{{recorder.name}}

+

+ + +  {{recorder.name}} +

-  {{recorder.name}} - - +  {{recorder.model_name ? recorder.model_name : "undefined"}}
+  {{recorder.firmware_version ? recorder.firmware_version : "undefined"}}
+  {{recorder.additional_camera_connected ? "yes" : "no"}}
+  {{recorder.serial_number ? recorder.serial_number : "undefined"}}
+  {{recorder.room ? recorder.room.name : "undefined"}} +

- -
+ {{$t('created_at')}}: {{recorder.created_at}}
+ {{$t('last_time_modified')}}: {{recorder.last_time_modified}}

+

  + {{recorder.offline ? 'The recorder is in offline / maintenance mode' : ''}}

+
-

{{$t('first_name')}}: {{recorder.name}}

-

{{$t('last_name')}}: {{recorder.name}}

+

  + {{recorder.lock_message}}

+
+
+ + + Network + + + + {{$t('ip')}}: {{recorder.ip}}
+ {{$t('mac')}}: {{recorder.mac}}
+ {{$t('network_name')}}: {{recorder.network_name}}
+ {{$t('ssh_port')}}: {{recorder.ssh_port}}
+ {{$t('telnet_port')}}: {{recorder.telnet_port}}
+
+
+
+ + + + Description + + + + {{recorder.description}} + + + + + + + Model / Recorder Adapter Info + + + + {{$t('name')}}: {{recorderModel.name}}
+ {{$t('created_at')}}: {{recorderModel.created_at}}
+ {{$t('last_time_modified')}}: {{recorderModel.last_time_modified ? recorderModel.last_time_modified : 'never'}}
+ {{$t('requires_username')}}: {{recorderModel.requires_username ? 'Yes' : 'No'}}
+ {{$t('requires_password')}}: {{recorderModel.requires_password ? 'Yes' : 'No'}}
+ {{$t('notes')}}: {{recorderModel.notes}}
+
+
+
+ + + + + Commands +  ({{$t('locked')}}) +  ({{$t('offline')}}) + + + + + + +
{{command.name}}
+ + + + {{arg}}: {{a_type}} + + + + +

+ + +  {{cmd_res[command.id].time | moment("HH:mm:ss")}}  - Output: + + {{cmd_res[command.id].output}} + {{cmd_res[command.id].error}} + +

+
+
+ The recorder is either locked or in offline mode – commands are disabled! +
+
+
+
- {{recorder}}