Command line (console) via SSH protocol: различия между версиями

Материал из База знаний VINTEO
 
(не показано 19 промежуточных версий этого же участника)
Строка 17: Строка 17:
 
  || a mandatory string argument, if it contains spaces, it must be passed in quotes
 
  || a mandatory string argument, if it contains spaces, it must be passed in quotes
 
|}
 
|}
 +
'''Examples'''
 +
{| class="wikitable"
 +
|-
 +
! Task !! Use case
 +
|-
 +
| Get information about the microphone status || mute get <participant>
 +
response: mute <participant> <on/off>
 +
|-
 +
| Enable/disable the microphone (bool) || mute <on/off>
 +
mute <participant> <on/off>
 +
|-
 +
| Get information about the camera status || video get <participant>
 +
response: video <participant> <on/off>
 +
|-
 +
| Enable/disable self camera (bool) || video get <on/off>
 +
video get <participant> <on/off>
 +
|-
 +
| Get the list of available cameras || camera list
 +
response: camera {"cameras":[{"format":"YUYV","fps":"30","height":"1080","id":"00-00 Eco Capture Dual HDMI M.2","name":"00-00 Eco Capture Dual HDMI M.2","path":"/dev/video0","role":"main&presentation","width":"1920"},{"format":"YUYV","fps":"30","height":"1080","id":"00-01 Eco Capture Dual HDMI M.2","name":"00-01 Eco Capture Dual HDMI M.2","path":"/dev/video1","role":"not_set","width":"1920"}]}
 +
|-
 +
| sends ICMP ECHO_REQUEST packets to a network host; || ping <ip address>
 +
|-
 +
| outputs a packet route trace to the network host; || traceroute <ip address>
 +
|-
 +
| clears the console screen; || clear
 +
|-
 +
| a list of available commands; || help
 +
|-
 +
| command line exit; || exit
 +
|-
 +
|}
 +
 +
The example of the camera parameters request command
 +
 +
<source lang="bash">
 +
camera info "ImagePlus_UHD_Media_20200924173"
 +
    Format: MJPG
 +
      Size: 1920x1080
 +
        Interval: 30*
 +
        Interval: 25
 +
        Interval: 20
 +
    Format: H264
 +
      Size: 1920x1080
 +
        Interval: 30*
 +
        Interval: 25
 +
        Interval: 20
 +
    Format: HEVC
 +
      Size: 1920x1080
 +
        Interval: 30*
 +
        Interval: 25
 +
        Interval: 20
 +
OK
 +
</source>
 +
 +
{| class="wikitable"
 +
|-
 +
|Set a camera role || camera set <id> <role> [<width>] [<height>] [<fps>] [<format>] OK<br>
 +
camera set "UHD_Media" main&presentation
 +
response: camera OK
 +
|-
 +
|Move a camera || camera move <up|down|left|right|zoom+|zoom-|stop> [<step>]
 +
("step" argument stops the camera after one movement step without sending the "stop" command)
 +
response: camera move left OK
 +
|-
 +
|Save a camera preset || camera preset set <number>
 +
response: camera preset set 1 OK
 +
|-
 +
|Save a preset with a camera movement || camera preset go <number>
 +
response: camera preset go 2 OK
 +
|-
 +
|Request a contacts list || addrbook all
 +
response: addrbook all [{"id":8,"name":"Alex","number":"10.1.0.10","status":"0","type":"auto"}]
 +
|-
 +
|Add a contact || addrbook add <”name”> <number> <type>
 +
response: addrbook add OK
 +
|-
 +
|Change a contact || addrbook edit <id> <”name”> <number> <type>
 +
response: addrbook edit OK
 +
|-
 +
|Delete a contact || addrbook remove <id>
 +
response: addrbook remove 8 OK
 +
|-
 +
|Make a call || dial manual <number> [<speed>][<resolution>][<type>][<fps>]
 +
response: dial auto 10.0.0.1 OK
 +
|-
 +
|Finish a call || hangup all
 +
response: hangup all OK
 +
|-
 +
|Disconnect a participant || hangup <participant>
 +
response: hangup Alex OK
 +
|-
 +
|Accept an incoming call || accept <id>
 +
<id> - may be a temporary ID assigned to a caller displayed in a command line, a.g.: [event] call-incoming FqEWhO4E333RIebFGlMHvsrK SIP SIP/1004 connection transfer
 +
response: accept FqEWhO4E333RIebFGlMHvsrK OK
 +
|-
 +
|Reject an incoming call || decline <id> <description>
 +
response: decline 8 <description> OK
 +
|}
 +
 +
<source lang="json">
 +
callinfo
 +
response: callinfo
 +
{
 +
  "abonents": [
 +
    {
 +
      "Audio": "1",
 +
      "Participant": "terminalendpoint",
 +
      "Video": "1",
 +
      "Watermark": ""
 +
    }
 +
  ],
 +
  "time": 0
 +
}
 +
 +
OK
 +
</source>
 +
 +
{| class="wikitable"
 +
|-
 +
| Request current layout state || mosaic <get>
 +
response: mosaic <auto/single/multi>
 +
|-
 +
| Change a layout  || mosaic <auto|single|multi>
 +
response: mosaic <auto/single/multi>
 +
|-
 +
| Request an audio resource info || audio <get> <sink|source>
 +
response: audio {"default":"alsa_output.pci-0000_00_1f.3.analog-stereo","devices":[{"description":"Built-in Audio Analog Stereo ALC897 Analog","name":"alsa_output.pci-0000_00_1f.3.analog-stereo","plughw":"0,0"},{"description":"LG HDR 4K HDMI 0","name":"alsa_output.TERMINAL_HDMI_DEV_3","plughw":"0,3"}]}
 +
|-
 +
| Set an input/output audio device || audio <set> <sink|source>
 +
<index> - device index starts from 0 (i.e. 0 - main, 1 - additional)
 +
response: audio OK
 +
|-
 +
| Request an audio volume level || audio volume <sink|source> <get> <name>
 +
response: audio volume sink get <name> <volume>
 +
|-
 +
| Change an audio volume level || audio volume <sink|source> <set> <name> <volume>
 +
response: audio volume sink set <name> <volume> OK
 +
|-
 +
| Send remote control actions || Remote control default buttons: call, volume+, volume-, zoom+, zoom-, home, Return ("OK" button or "Enter"), back, BackSpace, save, power, pc, far, layout, mute.
 +
Example command: button home
 +
Response: button home ok
 +
xdotool button codes:
 +
Example command: button key Return
 +
Response: button key Return OK
 +
|-
 +
| Request the "Do Not Desturb" mode info || dnd <get>
 +
Response:  dnd <on/off>
 +
|-
 +
| Enable the "Do Not Desturb" mode || dnd <on/off>
 +
Response:  dnd <on/off>
 +
|-
 +
| Send the DTMF-code || dtmf <1/2/3/4/5/6/7/8/9/0/*/#>
 +
Response: dtmf <1/2/3/4/5/6/7/8/9/0/*/#> OK
 +
|-
 +
| Request call history || history
 +
Response: history [{"caller_id":"","date":"1675257795","id":"656","incoming":0,"name":"","number":"192.168.80.253","time":"18","type":"auto"},{"caller_id":"","date":"1675254864","id":"655","incoming":0,"name":"","number":"192.168.80.253","time":"1905","type":"auto"}]
 +
|-
 +
| Shutdown a terminal || shutdown
 +
Response: shutdown OK
 +
|-
 +
| Reboot a terminal || reboot
 +
Response: reboot OK
 +
|-
 +
| Show available commands || help
 +
Response: <commnads list>
 +
|-
 +
| Display logs || log <terminal|volumeapp|updater|asterisk|mcu>
 +
Response: log <log file content>
 +
|-
 +
| Get connection params to syslog server || log syslog-get-params
 +
|-
 +
| Set connection params to syslog server || log syslog-set-params 
 +
|-
 +
| Request terminal firmware information || updates show-last
 +
Response: updates 2.9.7.1
 +
|-
 +
| Set local path to an update file || updates set-path <path>
 +
Response: updates OK
 +
|-
 +
| Set URL path to an update file || updates set-path-url <path>
 +
Response: updates OK
 +
|-
 +
| Start an update process || updates start
 +
Response: updates OK
 +
|-
 +
| Request registration status || registration
 +
Response: registration
 +
{"":[{"enable":"1","ip":"127.0.0.1:1720|TCP|-|-|no","login/password":"0","registration":"0","status":"off","type":"H.323"},{"enable":"1","ip":"127.0.0.1:5060|UDP|port|yes|no","login/password":"0","registration":"0","status":"off","type":"SIP"}]}
 +
|-
 +
| Disable autoanswer || autoanswer off
 +
Response: autoanswer off
 +
|-
 +
| Enable autoanswer time || autoanswer on <time(1-30 second)>
 +
Response: autoanswer on
 +
|-
 +
| Request terminal language || lang get
 +
Response: lang ru
 +
|-
 +
| Set terminal language || Текст ячейки
 +
|-
 +
| Текст ячейки || lang set <en|ru>
 +
Response: lang <en/ru>
 +
|}
 +
 +
Terminal event messages
 +
# call-begin visibly: 1 – starting a video call
 +
# call-end visibly: 1 - ending a video call
 +
# call-incoming visibly: 1 – an incoming call notification
 +
# call-outcoming visibly: 1 – an outgoing call notification
 +
# call-outcoming-state visibly: 1 - an outgoing call status
 +
# mute-set visibly: 1 - changing the mute state in the call
 +
# video-set - changing a camera state in the call
 +
# audio-volume-set-source - changing the audio input volume
 +
# audio-volume-set-sink - changing the audio output volume
 +
 +
'''Subscribe to an event'''
 +
 +
events subscribe call-end
 +
 +
Response: events subscribe call-end OK
 +
 +
'''Unsubscribe from an event'''
 +
 +
events unsubscribe call-end
 +
Response: events unsubscribe call-end OK
 +
 +
'''Example of an incoming call with answer and end of a call'''
 +
 +
[event] call-incoming id type description caller_id
 +
 +
[event] call-incoming CIVn19KuvxbX11JwmX80q7wOZ9xp36DsZclK3kfSPxMkrqi6u4uM79gXYGxpP96u9GM370UcExQe88fO SIP SIP/192.168.80.222-e477f640 alexandr
 +
 +
[event] call-begin
 +
 +
[event] call-end

Текущая версия на 16:02, 6 сентября 2024

Command line (console) via SSH protocol

Terminal command line

You can connect to the terminal via SSH protocol and control it with text commands in console mode. Login and password for SSH access is the same as for access to the web-interface.

The following command descriptions are valid starting with terminal version 2.9.2.

Command structure

mute <id> <on/off> [<participant>] <”name”>
keyword mandatory argument, a user must specify its value mandatory argument, which possesses only the specified set of values optional argument, a user can specify it if necessary;

If it’s not specified, command affects only a terminal

a mandatory string argument, if it contains spaces, it must be passed in quotes

Examples

Task Use case
Get information about the microphone status mute get <participant>

response: mute <participant> <on/off>

Enable/disable the microphone (bool) mute <on/off>

mute <participant> <on/off>

Get information about the camera status video get <participant>

response: video <participant> <on/off>

Enable/disable self camera (bool) video get <on/off>

video get <participant> <on/off>

Get the list of available cameras camera list

response: camera {"cameras":[{"format":"YUYV","fps":"30","height":"1080","id":"00-00 Eco Capture Dual HDMI M.2","name":"00-00 Eco Capture Dual HDMI M.2","path":"/dev/video0","role":"main&presentation","width":"1920"},{"format":"YUYV","fps":"30","height":"1080","id":"00-01 Eco Capture Dual HDMI M.2","name":"00-01 Eco Capture Dual HDMI M.2","path":"/dev/video1","role":"not_set","width":"1920"}]}

sends ICMP ECHO_REQUEST packets to a network host; ping <ip address>
outputs a packet route trace to the network host; traceroute <ip address>
clears the console screen; clear
a list of available commands; help
command line exit; exit

The example of the camera parameters request command

camera info "ImagePlus_UHD_Media_20200924173"
     Format: MJPG
      Size: 1920x1080
         Interval: 30*
         Interval: 25
         Interval: 20
     Format: H264
      Size: 1920x1080
         Interval: 30*
         Interval: 25
         Interval: 20
     Format: HEVC
      Size: 1920x1080
         Interval: 30*
         Interval: 25
         Interval: 20
OK
Set a camera role camera set <id> <role> [<width>] [<height>] [<fps>] [<format>] OK

camera set "UHD_Media" main&presentation response: camera OK

Move a camera down|left|right|zoom+|zoom-|stop> [<step>]

("step" argument stops the camera after one movement step without sending the "stop" command) response: camera move left OK

Save a camera preset camera preset set <number>

response: camera preset set 1 OK

Save a preset with a camera movement camera preset go <number>

response: camera preset go 2 OK

Request a contacts list addrbook all

response: addrbook all [{"id":8,"name":"Alex","number":"10.1.0.10","status":"0","type":"auto"}]

Add a contact addrbook add <”name”> <number> <type>

response: addrbook add OK

Change a contact addrbook edit <id> <”name”> <number> <type>

response: addrbook edit OK

Delete a contact addrbook remove <id>

response: addrbook remove 8 OK

Make a call dial manual <number> [<speed>][<resolution>][<type>][<fps>]

response: dial auto 10.0.0.1 OK

Finish a call hangup all

response: hangup all OK

Disconnect a participant hangup <participant>

response: hangup Alex OK

Accept an incoming call accept <id>

<id> - may be a temporary ID assigned to a caller displayed in a command line, a.g.: [event] call-incoming FqEWhO4E333RIebFGlMHvsrK SIP SIP/1004 connection transfer response: accept FqEWhO4E333RIebFGlMHvsrK OK

Reject an incoming call decline <id> <description>

response: decline 8 <description> OK

callinfo
response: callinfo 
{
  "abonents": [
    {
      "Audio": "1",
      "Participant": "terminalendpoint",
      "Video": "1",
      "Watermark": ""
    }
  ],
  "time": 0
}
 
OK
Request current layout state mosaic <get>

response: mosaic <auto/single/multi>

Change a layout single|multi>

response: mosaic <auto/single/multi>

Request an audio resource info source>

response: audio {"default":"alsa_output.pci-0000_00_1f.3.analog-stereo","devices":[{"description":"Built-in Audio Analog Stereo ALC897 Analog","name":"alsa_output.pci-0000_00_1f.3.analog-stereo","plughw":"0,0"},{"description":"LG HDR 4K HDMI 0","name":"alsa_output.TERMINAL_HDMI_DEV_3","plughw":"0,3"}]}

Set an input/output audio device source>

<index> - device index starts from 0 (i.e. 0 - main, 1 - additional) response: audio OK

Request an audio volume level source> <get> <name>

response: audio volume sink get <name> <volume>

Change an audio volume level source> <set> <name> <volume>

response: audio volume sink set <name> <volume> OK

Send remote control actions Remote control default buttons: call, volume+, volume-, zoom+, zoom-, home, Return ("OK" button or "Enter"), back, BackSpace, save, power, pc, far, layout, mute.

Example command: button home Response: button home ok xdotool button codes: Example command: button key Return Response: button key Return OK

Request the "Do Not Desturb" mode info dnd <get>

Response: dnd <on/off>

Enable the "Do Not Desturb" mode dnd <on/off>

Response: dnd <on/off>

Send the DTMF-code dtmf <1/2/3/4/5/6/7/8/9/0/*/#>

Response: dtmf <1/2/3/4/5/6/7/8/9/0/*/#> OK

Request call history history

Response: history [{"caller_id":"","date":"1675257795","id":"656","incoming":0,"name":"","number":"192.168.80.253","time":"18","type":"auto"},{"caller_id":"","date":"1675254864","id":"655","incoming":0,"name":"","number":"192.168.80.253","time":"1905","type":"auto"}]

Shutdown a terminal shutdown

Response: shutdown OK

Reboot a terminal reboot

Response: reboot OK

Show available commands help

Response: <commnads list>

Display logs volumeapp|updater|asterisk|mcu>

Response: log <log file content>

Get connection params to syslog server log syslog-get-params
Set connection params to syslog server log syslog-set-params
Request terminal firmware information updates show-last

Response: updates 2.9.7.1

Set local path to an update file updates set-path <path>

Response: updates OK

Set URL path to an update file updates set-path-url <path>

Response: updates OK

Start an update process updates start

Response: updates OK

Request registration status registration

Response: registration {"":[{"enable":"1","ip":"127.0.0.1:1720|TCP|-|-|no","login/password":"0","registration":"0","status":"off","type":"H.323"},{"enable":"1","ip":"127.0.0.1:5060|UDP|port|yes|no","login/password":"0","registration":"0","status":"off","type":"SIP"}]}

Disable autoanswer autoanswer off

Response: autoanswer off

Enable autoanswer time autoanswer on <time(1-30 second)>

Response: autoanswer on

Request terminal language lang get

Response: lang ru

Set terminal language Текст ячейки
Текст ячейки ru>

Response: lang <en/ru>

Terminal event messages

  1. call-begin visibly: 1 – starting a video call
  2. call-end visibly: 1 - ending a video call
  3. call-incoming visibly: 1 – an incoming call notification
  4. call-outcoming visibly: 1 – an outgoing call notification
  5. call-outcoming-state visibly: 1 - an outgoing call status
  6. mute-set visibly: 1 - changing the mute state in the call
  7. video-set - changing a camera state in the call
  8. audio-volume-set-source - changing the audio input volume
  9. audio-volume-set-sink - changing the audio output volume

Subscribe to an event

events subscribe call-end

Response: events subscribe call-end OK

Unsubscribe from an event

events unsubscribe call-end Response: events unsubscribe call-end OK

Example of an incoming call with answer and end of a call

[event] call-incoming id type description caller_id

[event] call-incoming CIVn19KuvxbX11JwmX80q7wOZ9xp36DsZclK3kfSPxMkrqi6u4uM79gXYGxpP96u9GM370UcExQe88fO SIP SIP/192.168.80.222-e477f640 alexandr

[event] call-begin

[event] call-end