Создание учетной записи через CLI

Интерфейс Командной Строки / API

  $ telnet localhost 106

или

  $ nc localhost 106
USER postmaster
 
PASS Pa$$w0rd
 
NOTIMEOUT
 
LISTACCOUNTS
LISTACCOUNTS corpX.un
 
GETACCOUNTSETTINGS user1
GETACCOUNTSETTINGS user1@corpX.un
 
GETACCOUNTDEFAULTS
GETACCOUNTDEFAULTS corpX.un
 
GETACCOUNTEFFECTIVESETTINGS user1
 
GETACCOUNTINFO user1
 
CREATEACCOUNT user2 {Password = "password2";RealName = "Петр Петрович Петров";}
 
QUIT

Программирование диалогов expect

  $ apt install expect
cat cgp_cli.exp
 
#!/usr/bin/expect
 
set cmd [lindex $argv 0];
 
spawn telnet localhost 106
 
expect "200" {
        send "USER postmaster\n"
}
 
expect "300" {
        send "PASS Pa\$\$w0rd\n"
}
 
expect "200" {
        send "$cmd\n\n"
}
 
expect "200" {}
 
sleep 1
send "QUIT\n"
send_user "\n"
exit 0
mail# chmod +x cgp_cli.exp
 
mail# ./cgp_cli.exp 'CREATEACCOUNT user2 {Password = "password2";RealName = "Петр Петрович Петров";}'
 
mail# ./cgp_cli.exp 'GETACCOUNTSETTINGS user2'