Re: [PATCH] SMSC cluster

Alexander Malysh <[email protected]> Tue, 9 Jul 2019 09:51:16 +0200
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>
--Apple-Mail=_30D449FA-EE9E-4997-B390-8F9D047D3F7E
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hi,

just fixed CIMD2 DLR handling to use smsc-id instead of name.

Thanks,
Alex

> Am 28.06.2019 um 10:18 schrieb Lamasuta, Franck, Vodafone Automotive =
<[email protected]>:
>=20
> Hi,
> =20
> I think it is not flexible enough to rely on smsc-id to manage the =
pending DLRs.
> We use already the status endpoint provided by Kannel to monitor the =
binds and trigger alerts.
> But we want to know which path (bind) a MO-SMS took and store this in =
our database. Then we can use this info to draw charts with the =
throughput of each bind on different time periods and to detect issues.
> =20
> Another solution to keep this flexibility would be to add an optional =
config parameter (something like pending-dlr-id). If it is not defined =
then smsc-id would be used as a fallback (to be compatible with current =
behavior).
> What do you think?
> =20
> Regards,
> Franck
> =20
> =20
> From: Alexander Malysh <[email protected]> On Behalf Of Alexander =
Malysh
> Sent: vendredi 28 juin 2019 09:43
> To: Alejandro Guerrieri <[email protected]>
> Cc: Lamasuta, Franck, Vodafone Automotive =
<[email protected]>; [email protected]
> Subject: Re: [PATCH] SMSC cluster
> =20
> Hi,
> =20
> I=E2=80=99m agree with Alejandro. For SMPP we don=E2=80=99t need such =
patch but for the CIMD2 we have to fix it to conn->id if it=E2=80=99s =
not used
> there.
> =20
> Thanks,
> Alex
> =20
>=20
>=20
> Am 26.06.2019 um 15:13 schrieb Alejandro Guerrieri =
<[email protected] <mailto:[email protected]>>:
> =20
> Franck,
> =20
> Thank you for clarifying.
> =20
> Regarding SMPP, you are using your application to indirectly diagnose =
problem with your binds. Kannel has a status endpoint that you can use =
to monitor the bind status directly instead of "bubbling-up" the problem =
to your application layer.
>=20
> You have a point on CIMD2, though iMHO that is a "bug" in Kannel: all =
connectors should use the same naming strategy. I don't know how likely =
is the scenario of having multi-protocol binds sharing SMS traffic, but =
in Kannel's current state it is the only case where this patch would =
make a difference. In my opinion, the right answer is to make the naming =
convention consistent so DLR's can be resolved across different =
protocols.
> =20
> Regards,
> =20
> Alejandro
> =20
> On Wed, Jun 26, 2019 at 4:11 AM Lamasuta, Franck, Vodafone Automotive =
<[email protected] <mailto:[email protected]>> =
wrote:
> Hi Alejandro,
> =20
> I know we could use identical smsc-ids but=E2=80=A6
> =20
> 1) It does not work for CIMD2 because dlr_add() and dlr_find() are =
called with conn->name which is built with the IP and port.
> =20
> 2) It could work with SMPP (because dlr_add() and dlr_find() are =
called with conn->id) but=E2=80=A6
> When a MO-SMS is received, the smsc-id is assigned to the message and =
forwarded to our back-end by smsbox.
> We use this id to monitor the incoming traffic on each bind and detect =
issues (e.g. when the MO-SMS rate is below a threshold).
> With identical smsc-ids, we could have an issue on one of the binds =
(with the bind still up) and not be able to detect it. Therefore we do =
prefer to have different smsc-ids.
>=20
> The patch only uses smsc-username which is (AFAIK) always the same =
with multiple binds.
> It is more flexible in my opinion.
> =20
> Regards,
> Franck
> =20
> =20
> From: Alejandro Guerrieri <[email protected] =
<mailto:[email protected]>>=20
> Sent: mercredi 26 juin 2019 00:27
> To: Lamasuta, Franck, Vodafone Automotive =
<[email protected] <mailto:[email protected]>>
> Cc: [email protected] <mailto:[email protected]>
> Subject: Re: [PATCH] SMSC cluster
> =20
> I'm curious why do you even need this patch? You could use the same =
smsc-id on both and assign different smsc-admin-id values to manage each =
bind separately (e.g. start/stop). If by any reason you'd want to send =
over a specific bind, you could use different allowed-smsc-id's as well.
> =20
> Regards,
> =20
> Alejandro
> =20
> On Tue, Jun 25, 2019 at 12:20 PM Lamasuta, Franck, Vodafone Automotive =
<[email protected] <mailto:[email protected]>> =
wrote:
> Hi list,
> =20
> We have implemented many patches along the way and I can finally take =
some time to submit them.
> They are running on our staging and production platforms since years =
for the oldest ones.
> I will submit them one by one in the next days/weeks.
> Let=E2=80=99s start with the first one=E2=80=A6   J
> =20
> This patch allows Kannel to retrieve a pending DLRs in its database =
when 2 (or more) SMSC binds are established (with different IPs and/or =
ports).
> It is required when a MT-SMS is submitted to SMSC A and its DLR is =
sent back by SMSC B.
> Done for CIMD2 and SMPP.
> =20
> Example of configuration where the patch is required:
> =20
> #
> # Primary server
> #
> group =3D smsc
> smsc =3D cimd2
> smsc-id =3D SMSC-A
> host =3D 123.1.2.3
> port =3D 6001
> smsc-username =3D user
> smsc-password =3D xxxxxxxx
> allowed-smsc-id =3D id1
> preferred-smsc-id =3D id1
> =20
> #
> # Secondary server
> #
> group =3D smsc
> smsc =3D cimd2
> smsc-id =3D SMSC-B
> host =3D 123.1.2.3
> port =3D 6002
> smsc-username =3D user
> smsc-password =3D xxxxxxxx
> allowed-smsc-id =3D id1
> =20
> =20
> Regards,
> Franck
> =20


--Apple-Mail=_30D449FA-EE9E-4997-B390-8F9D047D3F7E
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" =
class=3D"">Hi,<div class=3D""><br class=3D""></div><div class=3D"">just =
fixed CIMD2 DLR handling to use smsc-id instead of name.</div><div =
class=3D""><br class=3D""></div><div class=3D"">Thanks,</div><div =
class=3D"">Alex<br class=3D""><div><br class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D"">Am 28.06.2019 um 10:18 schrieb =
Lamasuta, Franck, Vodafone Automotive &lt;<a =
href=3D"mailto:[email protected]" =
class=3D"">[email protected]</a>&gt;:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div =
class=3D"WordSection1" style=3D"page: WordSection1; caret-color: rgb(0, =
0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;"><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">Hi,<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0cm 0cm =
0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">I think it is not =
flexible enough to rely on smsc-id to manage the pending DLRs.<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">We use already the =
status endpoint provided by Kannel to monitor the binds and trigger =
alerts.<o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm =
0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">But we want to know =
which path (bind) a MO-SMS took and store this in our database. Then we =
can use this info to draw charts with the throughput of each bind on =
different time periods and to detect issues.<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0cm 0cm =
0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">Another solution to =
keep this flexibility would be to add an optional config parameter =
(something like pending-dlr-id). If it is not defined then smsc-id would =
be used as a fallback (to be compatible with current behavior).<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">What do you think?<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0cm 0cm =
0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">Regards,<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">Franck<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><o:p class=3D"">&nbsp;</o:p></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><o:p class=3D"">&nbsp;</o:p></div><div class=3D""><div =
style=3D"border-style: solid none none; border-top-width: 1pt; =
border-top-color: rgb(225, 225, 225); padding: 3pt 0cm 0cm;" =
class=3D""><div style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;" class=3D""><b =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif;" class=3D"">From:</span></b><span style=3D"font-size: 11pt; =
font-family: Calibri, sans-serif;" class=3D""><span =
class=3D"Apple-converted-space">&nbsp;</span>Alexander Malysh &lt;<a =
href=3D"mailto:[email protected]" =
class=3D"">[email protected]</a>&gt;<span =
class=3D"Apple-converted-space">&nbsp;</span><b class=3D"">On Behalf =
Of<span class=3D"Apple-converted-space">&nbsp;</span></b>Alexander =
Malysh<br class=3D""><b class=3D"">Sent:</b><span =
class=3D"Apple-converted-space">&nbsp;</span>vendredi 28 juin 2019 =
09:43<br class=3D""><b class=3D"">To:</b><span =
class=3D"Apple-converted-space">&nbsp;</span>Alejandro Guerrieri &lt;<a =
href=3D"mailto:[email protected]" =
class=3D"">[email protected]</a>&gt;<br class=3D""><b =
class=3D"">Cc:</b><span =
class=3D"Apple-converted-space">&nbsp;</span>Lamasuta, Franck, Vodafone =
Automotive &lt;<a href=3D"mailto:[email protected]" =
class=3D"">[email protected]</a>&gt;; <a =
href=3D"mailto:[email protected]" class=3D"">[email protected]</a><br =
class=3D""><b class=3D"">Subject:</b><span =
class=3D"Apple-converted-space">&nbsp;</span>Re: [PATCH] SMSC =
cluster<o:p class=3D""></o:p></span></div></div></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D"">Hi,<o:p class=3D""></o:p></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D"">I=E2=80=99m agree with Alejandro. For =
SMPP we don=E2=80=99t need such patch but for the CIMD2 we have to fix =
it to conn-&gt;id if it=E2=80=99s not used<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D"">there.<o:p class=3D""></o:p></div></div><div =
class=3D""><div style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D"">Thanks,<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D"">Alex<o:p class=3D""></o:p></div></div><div =
class=3D""><div style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></div></div><div class=3D""><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><br class=3D""><br =
class=3D""><o:p class=3D""></o:p></div><blockquote style=3D"margin-top: =
5pt; margin-bottom: 5pt;" class=3D""><div class=3D""><div style=3D"margin:=
 0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D"">Am 26.06.2019 um 15:13 schrieb Alejandro =
Guerrieri &lt;<a href=3D"mailto:[email protected]" =
style=3D"color: purple; text-decoration: underline;" =
class=3D"">[email protected]</a>&gt;:<o:p =
class=3D""></o:p></div></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><o:p class=3D"">&nbsp;</o:p></div><div class=3D""><div =
class=3D""><div style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;" class=3D""><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D"">Franck,<o:p class=3D""></o:p></span></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Thank you for =
clarifying.<o:p class=3D""></o:p></span></div></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Regarding SMPP, you =
are using your application to indirectly diagnose problem with your =
binds. Kannel has a status endpoint that you can use to monitor the bind =
status directly instead of "bubbling-up" the problem to your application =
layer.<o:p class=3D""></o:p></span></div></div><div class=3D""><div =
class=3D""><div style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;" class=3D""><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><br class=3D"">You have a point on CIMD2, though iMHO that is =
a "bug" in Kannel: all connectors should use the same naming strategy. I =
don't know how likely is the scenario of having multi-protocol binds =
sharing SMS traffic, but in Kannel's current state it is the only case =
where this patch would make a difference. In my opinion, the right =
answer is to make the naming convention consistent so DLR's can be =
resolved across different protocols.<o:p =
class=3D""></o:p></span></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div></div></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Regards,<o:p =
class=3D""></o:p></span></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div></div><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Alejandro<o:p =
class=3D""></o:p></span></div></div></div><div style=3D"margin: 0cm 0cm =
0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><o:p class=3D"">&nbsp;</o:p></div><div class=3D""><div =
class=3D""><div style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;" class=3D""><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D"">On Wed, Jun 26, 2019 at 4:11 AM Lamasuta, Franck, Vodafone =
Automotive &lt;<a href=3D"mailto:[email protected]" =
style=3D"color: purple; text-decoration: underline;" =
class=3D"">[email protected]</a>&gt; wrote:<o:p =
class=3D""></o:p></span></div></div><blockquote style=3D"border-style: =
none none none solid; border-left-width: 1pt; border-left-color: =
rgb(204, 204, 204); padding: 0cm 0cm 0cm 6pt; margin-left: 4.8pt; =
margin-right: 0cm;" class=3D""><div class=3D""><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" =
class=3D"">Hi Alejandro,</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">&nbsp;</span><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">I know we could use =
identical smsc-ids but=E2=80=A6</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">&nbsp;</span><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">1) It does not work for =
CIMD2 because dlr_add() and dlr_find() are called with conn-&gt;name =
which is built with the IP and port.</span><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">&nbsp;</span><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">2) It could work with =
SMPP (because dlr_add() and dlr_find() are called with conn-&gt;id) =
but=E2=80=A6<br class=3D"">When a MO-SMS is received, the smsc-id is =
assigned to the message and forwarded to our back-end by smsbox.<br =
class=3D"">We use this id to monitor the incoming traffic on each bind =
and detect issues (e.g. when the MO-SMS rate is below a =
threshold).</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><p =
class=3D"MsoNormal" style=3D"margin: 0cm 0cm 12pt; font-size: 12pt; =
font-family: &quot;Times New Roman&quot;, serif;"><span =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif; color: =
rgb(31, 73, 125);" class=3D"">With identical smsc-ids, we could have an =
issue on one of the binds (with the bind still up) and not be able to =
detect it. Therefore we do prefer to have different =
smsc-ids.</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></p><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" =
class=3D"">The patch only uses smsc-username which is (AFAIK) always the =
same with multiple binds.</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 11pt; font-family: Calibri, =
sans-serif; color: rgb(31, 73, 125);" class=3D"">It is more flexible in =
my opinion.</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" =
class=3D"">&nbsp;</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" =
class=3D"">Regards,</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" =
class=3D"">Franck</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" =
class=3D"">&nbsp;</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><b class=3D""><span style=3D"font-size: 11pt; font-family: =
Calibri, sans-serif;" class=3D"">From:</span></b><span =
class=3D"apple-converted-space"><span style=3D"font-size: 11pt; =
font-family: Calibri, sans-serif;" class=3D"">&nbsp;</span></span><span =
style=3D"font-size: 11pt; font-family: Calibri, sans-serif;" =
class=3D"">Alejandro Guerrieri &lt;<a =
href=3D"mailto:[email protected]" target=3D"_blank" =
style=3D"color: purple; text-decoration: underline;" =
class=3D"">[email protected]</a>&gt;<span =
class=3D"apple-converted-space">&nbsp;</span><br class=3D""><b =
class=3D"">Sent:</b><span =
class=3D"apple-converted-space">&nbsp;</span>mercredi 26 juin 2019 =
00:27<br class=3D""><b class=3D"">To:</b><span =
class=3D"apple-converted-space">&nbsp;</span>Lamasuta, Franck, Vodafone =
Automotive &lt;<a href=3D"mailto:[email protected]" =
target=3D"_blank" style=3D"color: purple; text-decoration: underline;" =
class=3D"">[email protected]</a>&gt;<br class=3D""><b =
class=3D"">Cc:</b><span class=3D"apple-converted-space">&nbsp;</span><a =
href=3D"mailto:[email protected]" target=3D"_blank" style=3D"color: =
purple; text-decoration: underline;" class=3D"">[email protected]</a><br =
class=3D""><b class=3D"">Subject:</b><span =
class=3D"apple-converted-space">&nbsp;</span>Re: [PATCH] SMSC =
cluster</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div><div class=3D""><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D"">I'm curious why do you even need this =
patch? You could use the same smsc-id on both and assign different =
smsc-admin-id values to manage each bind separately (e.g. start/stop). =
If by any reason you'd want to send over a specific bind, you could use =
different allowed-smsc-id's as well.<o:p =
class=3D""></o:p></span></div><div class=3D""><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D"">Regards,<o:p =
class=3D""></o:p></span></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div></div><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D"">Alejandro<o:p =
class=3D""></o:p></span></div></div></div></div><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div><div class=3D""><div class=3D""><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">On Tue, Jun 25, =
2019 at 12:20 PM Lamasuta, Franck, Vodafone Automotive &lt;<a =
href=3D"mailto:[email protected]" target=3D"_blank" =
style=3D"color: purple; text-decoration: underline;" =
class=3D"">[email protected]</a>&gt; wrote:<o:p =
class=3D""></o:p></span></div></div><blockquote style=3D"border-style: =
none none none solid; border-left-width: 1pt; border-left-color: =
rgb(204, 204, 204); padding: 0cm 0cm 0cm 6pt; margin: 5pt 0cm 5pt =
4.8pt;" class=3D""><div class=3D""><div class=3D""><div style=3D"margin: =
0cm 0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New =
Roman&quot;, serif;" class=3D""><span lang=3D"FR" style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Hi =
list,</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span lang=3D"FR" =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D"">&nbsp;</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">We have implemented =
many patches along the way and I can finally take some time to submit =
them.<br class=3D"">They are running on our staging and production =
platforms since years for the oldest ones.<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">I will submit them one by one in the next =
days/weeks.<o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D"">Let=E2=80=99s start with the first =
one=E2=80=A6&nbsp;&nbsp;<span =
class=3D"apple-converted-space">&nbsp;</span></span><span =
style=3D"font-size: 9pt; font-family: Wingdings;" class=3D"">J</span><span=
 style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">This patch allows Kannel to retrieve a pending =
DLRs in its database when 2 (or more) SMSC binds are established (with =
different IPs and/or ports).<o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">It is required when =
a MT-SMS is submitted to SMSC A and its DLR is sent back by SMSC B.<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">Done for CIMD2 and SMPP.<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">&nbsp;<o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Example of =
configuration where the patch is required:<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">&nbsp;<o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">#</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D""># Primary server</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">#</span><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 9pt; font-family: =
&quot;Courier New&quot;; color: rgb(68, 114, 196);" class=3D"">group =3D =
smsc</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">smsc =3D cimd2</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">smsc-id =3D =
SMSC-A</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">host =3D 123.1.2.3</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">port =3D =
6001</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">smsc-username =3D user</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">smsc-password =3D =
xxxxxxxx</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">allowed-smsc-id =3D id1</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">preferred-smsc-id =3D =
id1</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">&nbsp;</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">#</span><span style=3D"font-size: 9pt; font-family: =
Helvetica, sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div=
 style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D""># Secondary server</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">#</span><span =
style=3D"font-size: 9pt; font-family: Helvetica, sans-serif;" =
class=3D""><o:p class=3D""></o:p></span></div><div style=3D"margin: 0cm =
0cm 0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><span style=3D"font-size: 9pt; font-family: =
&quot;Courier New&quot;; color: rgb(68, 114, 196);" class=3D"">group =3D =
smsc</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">smsc =3D cimd2</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">smsc-id =3D =
SMSC-B</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">host =3D 123.1.2.3</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">port =3D =
6002</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">smsc-username =3D user</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: &quot;Courier =
New&quot;; color: rgb(68, 114, 196);" class=3D"">smsc-password =3D =
xxxxxxxx</span><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: &quot;Courier New&quot;; color: rgb(68, 114, 196);" =
class=3D"">allowed-smsc-id =3D id1</span><span style=3D"font-size: 9pt; =
font-family: Helvetica, sans-serif;" class=3D""><o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">&nbsp;<o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">&nbsp;<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0cm 0cm 0.0001pt; =
font-size: 12pt; font-family: &quot;Times New Roman&quot;, serif;" =
class=3D""><span style=3D"font-size: 9pt; font-family: Helvetica, =
sans-serif;" class=3D"">Regards,<o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: =
&quot;Times New Roman&quot;, serif;" class=3D""><span style=3D"font-size: =
9pt; font-family: Helvetica, sans-serif;" class=3D"">Franck<o:p =
class=3D""></o:p></span></div></div></div></blockquote></div></div></div><=
/blockquote></div></div></blockquote></div><div style=3D"margin: 0cm 0cm =
0.0001pt; font-size: 12pt; font-family: &quot;Times New Roman&quot;, =
serif;" class=3D""><o:p class=3D"">&nbsp;</o:p></div></div></div><style =
class=3D"">ul[class*=3D'mb-extra__public-links'], =
ul[class*=3D'mb-note__public-links'], ul[class*=3D'mb-task__public-links']=
 { display: none !important; }</style></div></blockquote></div><br =
class=3D""></div></body></html>=

--Apple-Mail=_30D449FA-EE9E-4997-B390-8F9D047D3F7E--