accel-ppp.conf
Code: Select all
[JSON]
service-json=x.x.x.x:port
allow-from=x.x.x.x/x
Code: Select all
[JSON]
service-json=x.x.x.x:port
allow-from=x.x.x.x/x
Code: Select all
root@dev:~# accel-cmd show sessions
ifname | username | calling-sid | ip | type | comp | state | uptime
--------+----------+-------------------+--------------+------+------+--------+----------
ipoe7 | | 00:0c:29:e3:86:f5 | 100.64.0.255 | ipoe | | active | 12:37:39
ipoe5 | | 00:0c:29:e3:86:f5 | 100.64.0.52 | ipoe | | active | 00:09:43
ipoe1 | | 00:0c:29:e3:86:f5 | 100.64.0.53 | ipoe | | active | 00:08:56
ipoe9 | | 00:0c:29:e3:86:f5 | 100.64.0.82 | ipoe | | active | 00:07:48
ipoe3 | | 00:0c:29:e3:86:f5 | 100.64.0.55 | ipoe | | active | 00:03:24
ipoe4 | | 00:0c:29:e3:86:f5 | 100.64.0.70 | ipoe | | active | 00:03:02
ipoe6 | | 00:0c:29:e3:86:f5 | 100.64.0.75 | ipoe | | active | 00:02:51
ipoe0 | | 00:0c:29:e3:86:f5 | 100.64.0.72 | ipoe | | active | 00:02:28
ipoe2 | | 00:0c:29:e3:86:f5 | 100.64.0.88 | ipoe | | active | 00:02:22
Code: Select all
GET /terminate/ifname/ipoe7
GET /terminate/calling-sid/00:0c:29:e3:86:f5
GET /terminate_hard/ip/100.64.0.255
Code: Select all
ifname | username | ip | ip6 | ip6-dp | calling-sid | called-sid | sid | comp | rx-bytes-raw | tx-bytes-raw | rx-pkts | tx-pkts | uptime-raw
--------+----------+--------------+-----+--------+-------------------+------------+------------------+------+--------------+--------------+---------+---------+------------
ipoe7 | | 100.64.0.255 | | | 00:0c:29:e3:86:f5 | ens224.18 | 0818e4d4d40ff231 | | 33456 | 33848 | 102 | 132 | 54800
ipoe3 | | 100.64.0.95 | | | 00:0c:29:e3:86:f5 | ens224.10 | 0818e4d4d40ff973 | | 0 | 1016 | 0 | 12 | 134
ipoe4 | | 100.64.0.53 | | | 00:0c:29:e3:86:f5 | ens224.14 | 0818e4d4d40ff974 | | 0 | 960 | 0 | 11 | 124
Code: Select all
[
{
"ifname": "ipoe7",
"username": " ",
"ip": "100.64.0.255",
"ip6": "",
"ip6-dp": "",
"calling-sid": "00:0c:29:e3:86:f5",
"called-sid": "ens224.18",
"sid": "0818e4d4d40ff231",
"comp": "",
"rx-bytes-raw": "33456",
"tx-bytes-raw": "33848",
"rx-pkts": "102",
"tx-pkts": "132",
"type": "ipoe",
"state": "active",
"uptime-raw": "54800"
},
{
"ifname": "ipoe3",
"username": " ",
"ip": "100.64.0.255",
"ip6": "",
"ip6-dp": "",
"calling-sid": "00:0c:29:e3:86:f5",
"called-sid": "ens224.10",
"sid": "0818e4d4d40ff973",
"comp": "",
"rx-bytes-raw": "0",
"tx-bytes-raw": "1016",
"rx-pkts": "0",
"tx-pkts": "12",
"type": "ipoe",
"state": "active",
"uptime-raw": "134"
},
{
"ifname": "ipoe4",
"username": " ",
"ip": "100.64.0.255",
"ip6": "",
"ip6-dp": "",
"calling-sid": "00:0c:29:e3:86:f5",
"called-sid": "ens224.14",
"sid": "0818e4d4d40ff974",
"comp": "",
"rx-bytes-raw": "0",
"tx-bytes-raw": "960",
"rx-pkts": "0",
"tx-pkts": "11",
"type": "ipoe",
"state": "active",
"uptime-raw": "124"
}
]
*Использует только один метод для передачи данных — обычно POST для HTTP и SEND в случае использования Web Sockets
*Механизм передачи и содержимое запроса полностью независимы. Все ошибки, предупреждения и данные передаются в теле запроса, в формате JSON
*Используется лишь один код ответа, чтобы подтвердить успешную передачу, обычно это 200 ОК
*Механизм передачи и содержимое ответа полностью независимы. Все ошибки, предупреждения и данные передаются в теле ответа, в формате JSON
*Гораздо проще дебажить, ведь все данные находятся в одном месте в легко-читаемом формате JSON
*Легко перенести на любой канал связи, например, HTTP/S, WebSockets, XMPP, telnet, SFTP, SCP, or SSH