On Wed, Nov 25, 2015 at 4:12 PM, Holger Freyther <holger(a)freyther.de> wrote:
On 25 Nov 2015, at 14:07, sergey kostanbaev
<sergey.kostanbaev(a)gmail.com>
wrote:
Yes, initially I thought about using SMPP for USSD. But it looked really
complicated since only few external SMPP libraries have support of USSD and
most of that few are in C#/Java/etc. Moreover I didn't have any working
software for USSD over SMPP to test interoperability with.
Hmm. We try to follow standard protocol when they exist. E.g. with "GSUP"
the decision was
that we have a good SS7 MAP stack (with high amount of tests and Q.787
conformance) and
doing that in C at the time didn't look like an economic choice.
Do you remember how USSD is mapped to SMPP?
Yeah I have a description but wasn't able to test it in a real
environment. I
need to dig in my archives. I'll let you know.
So I decided to use GPRS SUP socket as a simple
transport to send
MAP-like messages. Workflow of this SUP is very simple and
basically it
forwards SS messages with little modifications.
But why GPRS SUP then? E.g. it would be enough for you to use OAP (that
just adds a very
simple way for authentication)? Which of the existing GSUP messages do
you use?
Well may be I wrongly used GPRS SUP as a description. I used none of GPRS
SUP
messages. I used the ability to send messages over "TCP" (TCP +
header) socket. Such code of a socket was in GSUP. I added
GPRS_GSUP_MSGT_USSD_MAP constant to not pollute and distinguish that
messages. It can b done on a raw socket, but I just reused GSUP socket
wrapper. May be this was confusing.
holger