I have to write the patch for docs... not too much time lately.

On 11/5/07, Alvaro Cornejo <[EMAIL PROTECTED]> wrote:
>
> Hi
>
> Does this patch was commited to cvs??
>
> Regards
>
> On 9/27/07, Alejandro Guerrieri <[EMAIL PROTECTED]> wrote:
> > Alex,
> >
> > Didn't document it yet since it wasn't clear if it would make into CVS.
> >
> > I'll do it right away and post it here.
> >
> > Regards,
> >
> > Alejandro
> >
> > On 9/27/07, Alexander Malysh <[EMAIL PROTECTED]> wrote:
> > > Hi again,
> > >
> > > as I wrote patch looks good but I don't see userguide changes in the
> > > patch :) Please update userguide and I will apply this patch if no
> > > objections there.
> > >
> > > Alejandro Guerrieri wrote:
> > >
> > > > Did anyone reviewed this patch?
> > > >
> > > > On 9/7/07, Alejandro Guerrieri <[EMAIL PROTECTED]>
> wrote:
> > > >> The original condition was commented:
> > > >>
> > > >> +    if (/*user == NULL || pass == NULL ||*/ /* we don't need this
> > > >> anymore */
> > > >> +       octstr_compare(user, conndata->username) != 0 ||
> > > >> +           octstr_compare(pass, conndata->password) != 0) {
> > > >> +               error(0, "HTTP[%s]: Authorization failure",
> > > >>
> > > >> The piece of code you're referencing it's before the original (now
> > > >> commented) evaluation. The purpose is to truly make user and
> password
> > > >> optionals.
> > > >>
> > > >> And yes, you're absolutely right, it should be "||" to avoid
> > > >> octstr_compare on an undefined value.
> > > >>
> > > >> Thanks for pointing this out. I've uploaded a new patch here:
> > > >>
> > > >>
> http://www.magicom-bcn.net/kannel/full-mo-http-params-20070907.patch
> > > >>
> > > >> Regards,
> > > >>
> > > >> Alejandro
> > > >>
> > > >>
> > > >> On 9/7/07, Vincent CHAVANIS <[EMAIL PROTECTED]> wrote:
> > > >> > Hi alejandro,
> > > >> >
> > > >> > I'm wondering why this condition has been changed
> > > >> >
> > > >> > if (user == NULL || pass == NULL) {
> > > >> > user = octstr_create("");
> > > >> > pass = octstr_create("");
> > > >> > }
> > > >> >
> > > >> > into:
> > > >> >
> > > >> > if (user == NULL && pass == NULL) {
> > > >> > user = octstr_create("");
> > > >> > pass = octstr_create("");
> > > >> > }
> > > >> >
> > > >> > I think that we need to check both of these values.
> > > >> > if user = blah and password = NULL
> > > >> > we will do octstr_compare with password and this is not safe.
> > > >> >
> > > >> > Vincent.
> > > >> >
> > > >> > --
> > > >> > Telemaque - 06560 SOPHIA-ANTIPOLIS - (FR)
> > > >> > Service Technique/Reseau - NOC
> > > >> > Developpement SMS/MMS/Kiosques
> > > >> > http://www.telemaque.fr/
> > > >> > [EMAIL PROTECTED]
> > > >> > Tel : +33 4 92 90 99 84 (fax 9142)
> > > >> > ----- Original Message -----
> > > >> > From: "Alejandro Guerrieri" <[EMAIL PROTECTED]>
> > > >> > To: "Alexander Malysh" <[EMAIL PROTECTED]>
> > > >> > Cc: <[EMAIL PROTECTED]>
> > > >> > Sent: Thursday, September 06, 2007 10:31 PM
> > > >> > Subject: Re: [PATCH] Support for MO parameters on 'generic' HTTP
> SMSC -
> > > >> > Secondrevision
> > > >> >
> > > >> >
> > > >> > > Done,
> > > >> > > Done,
> > > >> > >
> > > >> > > New version of the patch, using generic_receive_sms() instead
> of
> > > >> > > kannel_receive_sms()
> > > >> > >
> > > >> > >
> http://www.magicom-bcn.net/kannel/full-mo-http-params-20070906.patch
> > > >> > >
> > > >> > > Regards,
> > > >> > >
> > > >> > > Alejandro
> > > >> > >
> > > >> > > On 9/6/07, Alexander Malysh <[EMAIL PROTECTED]> wrote:
> > > >> > >> Hi,
> > > >> > >>
> > > >> > >> please doesn't change kannel http mode. Please define new MO
> > > >> > >> function for generic HTTP mode instead.
> > > >> > >>
> > > >> > >> Alejandro Guerrieri wrote:
> > > >> > >>
> > > >> > >> > Hi,
> > > >> > >> >
> > > >> > >> > I've improved my patch and added extra flexibility. Now it's
> > > >> > >> > possible to implement full clickatell functionality
> (including
> > > >> > >> > DLR's) by properly configure the 'generic' http smsc.
> > > >> > >> >
> > > >> > >> > The patch is available here:
> > > >> > >> >
> > > >> > >> >
> http://magicom-bcn.net/kannel/full-mo-http-params-20070905.patch
> > > >> > >> >
> > > >> > >> > The patch allows for this new parameters on config:
> > > >> > >> >
> > > >> > >> > * This parameters allows to rename the proper MO parameters
> to
> > > >> > >> > whatever you like:
> > > >> > >> >
> > > >> > >> > mo-from
> > > >> > >> > mo-to
> > > >> > >> > mo-text
> > > >> > >> > mo-udh
> > > >> > >> > mo-account
> > > >> > >> > mo-binfo
> > > >> > >> > mo-dlr-url
> > > >> > >> > mo-dlr-mid
> > > >> > >> > mo-flash
> > > >> > >> > mo-mclass
> > > >> > >> > mo-mwi
> > > >> > >> > mo-coding
> > > >> > >> > mo-validity
> > > >> > >> > mo-deferred
> > > >> > >> > mo-dlr-mask
> > > >> > >> > mo-dlr-stat -> this special one allows you to rename the
> > > >> > >> > message_id being returned by an external dlr confirmation,
> such as
> > > >> > >> > clickatell's "status" parameter.
> > > >> > >> >
> > > >> > >> > For example, setting mo-from = whatever, then the "from"
> parameter
> > > >> > >> > will be renamed "whatever".
> > > >> > >> >
> > > >> > >> > * This allows you to rename the return string the http
> generic
> > > >> > >> > smsc returns:
> > > >> > >> >
> > > >> > >> > mo-ret-accepted
> > > >> > >> > mo-ret-denied
> > > >> > >> > mo-ret-unknown-dlr
> > > >> > >> > mo-ret-missing-args
> > > >> > >> > mo-ret-udh-mismatch
> > > >> > >> > mo-ret-udh-long
> > > >> > >> > mo-ret-auth-failed
> > > >> > >> > mo-ret-dlr-accepted
> > > >> > >> > mo-ret-dlr-denied
> > > >> > >> >
> > > >> > >> > For example, the mo-ret-accpeted allows you to change the
> "Sent."
> > > >> > >> > text you get for anything else.
> > > >> > >> >
> > > >> > >> > Now comes the "new" features:
> > > >> > >> >
> > > >> > >> > id-from-reply -> When you send an MT message to an external
> http
> > > >> > >> > smsc and you ask for a DLR, kannel "invents" a message_id.
> This
> > > >> > >> > parameters allows you to get that message id from the
> external
> > > >> > >> > source, effectively enabling the use of DLR's with
> clickatell. You
> > > >> > >> > must fill this field with the text expected _before_ the
> > > >> > >> > message_id. In the case of clickatell that's "ID:". So, if
> you get
> > > >> > >> > "ID:12345678" the message_id will be "12345678".
> > > >> > >> >
> > > >> > >> > err-from-reply -> Same thing but for error id's.
> > > >> > >> >
> > > >> > >> > This 3 parameters allows you to map different external
> statuses to
> > > >> > >> > kannel dlr statuses:
> > > >> > >> >
> > > >> > >> > dlr-success-regex -> maps to DLR_SUCCESS (0x08)
> > > >> > >> > dlr-permfail-regex -> maps to DLR_BUFFERED (0x04)
> > > >> > >> > dlr-tempfail-regex -> maps to DLR_FAILED (0x02)
> > > >> > >> >
> > > >> > >> > So, to implement clickatell's connectivity for MT and DLR's,
> you
> > > >> > >> > just need to configure like this:
> > > >> > >> >
> > > >> > >> > group = smsc
> > > >> > >> > smsc = http
> > > >> > >> > system-type = generic
> > > >> > >> > smsc-id = clicka
> > > >> > >> > allowed-smsc-id = clicka
> > > >> > >> > port = 15000
> > > >> > >> > send-url =
> > > >> > >>
> > > > "
> https://api.clickatell.com/http/sendmsg?to=%p&from=%P&text=%b&api_id=NNNNNN&user=XXXXXX&password=PPPPPP&callback=3&deliv_ack=3&req_feat=8192
> "
> > > >> > >> > status-success-regex = "ID" status-permfail-regex = "ERR"
> > > >> > >> > status-tempfail-regex = "TEMP"
> > > >> > >> > mo-dlr-mid = apiMsgId
> > > >> > >> > mo-dlr-stat = status
> > > >> > >> > id-from-reply = "ID:"
> > > >> > >> > err-from-reply = "ERR:"
> > > >> > >> > dlr-success-regex ="(004|008)"
> > > >> > >> > dlr-permfail-regex = "(001|005|006|007|009|010)"
> > > >> > >> > dlr-tempfail-regex ="(002|003|011)"
> > > >> > >> >
> > > >> > >> > I'll explain a little more:
> > > >> > >> >
> > > >> > >> > send-url points to the clickatell http api. A few parameters
> are
> > > >> > >> > hardcoded, like api_id, user/pass, etc.
> > > >> > >> > status-*-regex (current kannel functionality) is used to
> detect
> > > >> > >> > whether the message was accepted by clickatell's api.
> > > >> > >> >
> > > >> > >> > mo-dlr-* is used to map the DLR parameters to kannel's own.
> > > >> > >> >
> > > >> > >> > id/err-from-reply is used to fetch the message/error id on
> MT from
> > > >> > >> > clickatell's http response. This is mandatory for DLR's
> only.
> > > >> > >> >
> > > >> > >> > dlr-*-regex is used to map the different possible responses
> to
> > > >> > >> > different kannel DLR status. So, if kannel responds with
> "004" or
> > > >> > >> > "008" a DLR Success will be sent (0x08 for Kannel).
> > > >> > >> >
> > > >> > >> > I don't have  a two-way account for clickatell, so I
> couldn't test
> > > >> > >> > the MO part, but it should be as simple as to map the proper
> > > >> > >> > parameters by configuring mo-* parameters and maybe mapping
> some
> > > >> > >> > mo-ret-* strings also.
> > > >> > >> >
> > > >> > >> > Last by not least, the goal of this patch wasn't to replace
> the
> > > >> > >> > clickatell interface, but to provide a generic mean to
> implement
> > > >> > >> > other SMSC's without writing source code and recompiling.
> The
> > > >> > >> > clickatell example was just that, an example of the
> capabilities
> > > >> > >> > being added.
> > > >> > >> >
> > > >> > >> > I'd happily try to model other http smsc's (even extending
> the
> > > >> > >> > patch to accomodate extra flexibility), just drop me a line
> in
> > > >> > >> > private and send me docs about it.
> > > >> > >> >
> > > >> > >> > Regards,
> > > >> > >>
> > > >> > >> --
> > > >> > >> Thanks,
> > > >> > >> Alex
> > > >> > >>
> > > >> > >>
> > > >> > >>
> > > >> > >
> > > >> > >
> > > >> > > --
> > > >> > > Alejandro Guerrieri
> > > >> > > Magicom
> > > >> > > http://www.magicom-bcn.net/
> > > >> > > LinkedIn: http://www.linkedin.com/in/aguerrieri
> > > >> > >
> > > >> > >
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> > > >>
> > > >>
> > > >> --
> > > >> Alejandro Guerrieri
> > > >> Magicom
> > > >> http://www.magicom-bcn.net/
> > > >> LinkedIn: http://www.linkedin.com/in/aguerrieri
> > > >>
> > > >
> > > >
> > >
> > > --
> > > Thanks,
> > > Alex
> > >
> > >
> > >
> >
> >
> > --
> > Alejandro Guerrieri
> > Magicom
> > http://www.magicom-bcn.net/
> > LinkedIn: http://www.linkedin.com/in/aguerrieri
> >
> >
>
>
> --
>
> |-----------------------------------------------------------------------------------------------------------------|
> Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier
> celular y
> Nextel en México y en mas de 180 paises. Use aplicaciones 2 vias via
> SMS y GPRS online
>               Visitenos en www.smsglobal.com.mx y www.pravcom.com
>



-- 
Alejandro Guerrieri
Magicom
http://www.magicom-bcn.net/
LinkedIn: http://www.linkedin.com/in/aguerrieri

Reply via email to