Skip to content

Instantly share code, notes, and snippets.

@dynax60
Created June 8, 2021 09:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dynax60/bd11e788f552fa7de6a11c73afef1ca1 to your computer and use it in GitHub Desktop.
Save dynax60/bd11e788f552fa7de6a11c73afef1ca1 to your computer and use it in GitHub Desktop.
Kannel MT
smsc2_rout() -> smscconn_usable()
http://doxygen.kannel.org/d3/d05/smscconn_8c.html#aeaca8fdaf047fab86a82ed5890c4ecc3
Смотрим список живых каналов.
1. Канал не подходит, если (ret=-1):
- есть allowed-smsc-id, а в сообщении smsc-id не определён или он не был найден
- есть denied-smsc-id, и он полностью совпадает с smsc-id из сообщения
- есть allowed-smsc-id-regex, но в сообщении нет smsc-id или он не совпадает с тем что в сообщении
- есть denied-smsc-id-regex и он совпадает с smsc-id из сообщения
- есть allowed-prefix и dst не попадает в него (при этом нет запрещающего denied-prefix)
(Kannel пробегается по всем prefix-ам, разделитель `;')
prefix=111;222 num=1111 - true
prefix=111; num=111 - true
prefix=111; num=11 - false
- есть allowed-prefix-regex и dst попадает в него (при этом нет denied-prefix-regex)
- есть denied-prefix и в нём найден dst (при этом нет allowed-prefix)
- есть denied-prefix-regex и dst найдён в нём (при этом нет allowed-prefix-regex)
- есть allowed-prefix и denied-prefix, при этом dst не найден в allowed-prefix и найден в denied-prefix
- есть allowed-prefix-regex и denied-prefix-regex, при этом dst не найден в allowed-prefix-regex и найаден в denied-prefix-regex
2. Канал подходит и считается предподчтительным, если (ret=1):
- есть preferred-smsc-id и smsc-id определён в сообщении и был найден в preferred-smsc-id
- есть preferred-prefix и префикс dst совпадает с ним
- есть preferred-prefix-regex и dst матчится в preferred-prefix-regex
3. Остальных считаем что также подходят для отправки. Приоритет ниже чем у предподчительных. (ret=0)
best_preferred (1) > best_ok (не -1, не 1) > reject (Cannot find SMSCConn for message to <dst>, rejected.)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment