Ok. Thanks for your reply.
2011/4/18 Nikos Balkanas <nbalka...@gmail.com> > Hi, > > This is POTS (legacy phone) standard, which is used by SMS for > transmission. CCITT set these calling standards, now maintained by ITU. In > the ITU-T E.164 the general recommendation is for 00 prefix, but several > countries have their own. SMPP just reuses the international format, since > it has to transmit the SMS over SS7. > > BR, > Nikos > ----- Original Message ----- From: Ivan Kurnosov > To: Singularnet > Cc: users@kannel.org > Sent: Monday, April 18, 2011 2:43 AM > Subject: Re: Specification of destination_addr > > > > Yep, I've googled that too, but it is strange for me that there is no any > explicit reference to that document in SMPP specs. > > > On Mon, Apr 18, 2011 at 10:37 AM, Singularnet <singular...@gmail.com> > wrote: > > I belive that the international number format is define in the > recomendation ITU e.164, that should be the definition of that code > > 2011/4/17, Ivan Kurnosov <zer...@zerkms.ru>: > > Hello >> >> For now International (addr = 0x1) numbers are validated with this code: >> >> case GSM_ADDR_TON_INTERNATIONAL: >> /* >> * Checks to perform: >> * 1) assume international number has at least 7 chars >> * 2) the whole source addr consist of digits, exception '+' in >> front >> */ >> if (octstr_len(addr) < 7) { >> /* We consider this as a "non-hard" condition, since there >> "may" >> * be international numbers routable that are < 7 digits. Think >> * of 2 digit country code + 3 digit emergency code. */ >> warning(0, "SMPP[%s]: Mallformed addr `%s', generally expected >> at least 7 digits. ", >> octstr_get_cstr(id), >> octstr_get_cstr(addr)); >> } else if (octstr_get_char(addr, 0) == '+' && >> !octstr_check_range(addr, 1, 256, gw_isdigit)) { >> error(0, "SMPP[%s]: Mallformed addr `%s', expected all digits. >> ", >> octstr_get_cstr(id), >> octstr_get_cstr(addr)); >> reason = SMPP_ESME_RINVSRCADR; >> goto error; >> } else if (octstr_get_char(addr, 0) != '+' && >> !octstr_check_range(addr, 0, 256, gw_isdigit)) { >> error(0, "SMPP[%s]: Mallformed addr `%s', expected all digits. >> ", >> octstr_get_cstr(id), >> octstr_get_cstr(addr)); >> reason = SMPP_ESME_RINVSRCADR; >> goto error; >> } >> /* check if we received leading '00', then remove it*/ >> if (octstr_search(addr, octstr_imm("00"), 0) == 0) >> octstr_delete(addr, 0, 2); >> >> /* international, insert '+' if not already here */ >> if (octstr_get_char(addr, 0) != '+') >> octstr_insert_char(addr, 0, '+'); >> >> break; >> >> >> Could any one give a reference for the international format, which has >> been >> used while this code was written. There is no any in SMPP 3.4 specs. >> >> Thanks. >> >> -- >> With best regards, Ivan Kurnosov >> >> > > -- > Enviado desde mi dispositivo mσvil > > > > > > -- > With best regards, Ivan Kurnosov > -- With best regards, Ivan Kurnosov