hi,

i am relatively new at this mailing list and i have been reading the daily post 
lately. in a way, it is really informational to what my objective is. 

i am also into this mentioned implementation of the tariff class where in the mobile 
subscriber is billed on the type of data he/she requested. if it is a text sms, i 
could send out a tariff of 1. if it is a logo or ringtone, i could send out a tariff 
of 2. however i am not sure how to do it. ive been looking at your implementation of 
the tariff class and it is located in this files : msg_dcl.c(?), shared.c, smsbox.c 
and smsc_cimd2.c. my requirement is also with the cimd2 protocol. yes, i can read your 
code as it is written in C. but one thing i have difficulty is how to send the tariff 
class when sending the text/logo to the mobile subscriber.

you have mentioned to include 'x-accept-kannel-headers=true' in sms-service group. and 
'cimd2_tariff_class' and 'cimd2_sdesc-paramaters' in sendsms-interface. where is this 
sendsms-interface located? is it the sendsms-user group on smskannel.conf? and how 
could i send a text reply to sendsms with tariff=1 or a logo with tariff=2. should i 
define two sendsms-user groups on the config file? one for tariff=1 and one for 
tariff=2?

kindly pls help me by giving an example on how to write the smskannel.conf and how to 
specifically send a text and logo using  sms push

i appreciate very much your help and to the rest of the members of this mailing list.

thanks.



-----Original Message-----
From: Pekka Ahmavuo 
Subject: Re: CIMD tariff classes 
Date: Fri, 08 Feb 2002 06:08:38 -0800 


Hello Anders,

> 
> I know this has been discussed before, but has anybody taken the effort
> to implement tariff classes for CIMD? If not, I need to do it. 
> 
> (I know this is a CIMD only thing, as almost all other SMSCs don't
> support extra billing information. What would be the right way to
> implement a thing like this? Maybe extending the msg structure, allowing
> it to contain billing information that can be used by all SMSCs... ?)
> 
> Thanks,
> 
> --
> Anders Lindh
> FlyerOne Ltd


from the url: http://www.netland.fi/kannel/gateway-tariff-19-10.tar.gz you can 
find Oct 19th cvs kannel with my tariff class changes. I believe it should be 
relatively easy to update it to the latest cvs. 

Please test it extensively before taking it into production. I have had some 
problems with one installation, and I am not sure if it was because of bugs in 
my code, bugs in the rest of the kannel or if there was something wrong with 
the Linux installation (a Debian development version). 

Let me know if you find any bugs from my code. Fixes are wellcome. Please let 
me know also if you dont have any problems. When I sure enough that my code is 
relatively bug-free I will commit the changes into the cvs. 

>From below you can find some info about my tariff class changes. 

br, 
Pekka Ahmavuo 
Netland Oy 


---------- 

Here is what I have done so far regarding the cimd2 tariff class. 

First some backgrounds: 
Two parameters are involved in setting the billing information, the 
"tariff class" and "service description". (Altough this may 
be specific 
to Finnish operator Radiolnja. Please comment if you know that some other CIMD2 
operator treats he billing info in some other way). Tariff class defines how 
much the message from the application to the mobile costs the receiver 
(i.e. how much the client pays). Tariff class has  predefined integer 
values, for example, SMS with tariff class 4 costs the client 1,42 FIM. 
When the tariff class is set, the service description should be also set 
to zero. If service description set to 1,the message if free to the client 
and a fee is charged from the application. 


Some examples: 

Message from the application to the mobile: 
tariff class: 4 
service description: 0 
=> mobile pays 1.42 FIM 

Message from the application to the mobile: 
tariff class: 4 
service description: 1 
=> application pays 0.60 FIM + VAT 

The implementation: 
I have added cimd2_tariff_class and cimd2_sdesc-paramaters to the 
sendsms-interface and corresponding X-Kannel-CIMD2-Tariff-Class and 
X-Kannel-CIMD2-Service-Description HTTP-headers. Setting the the 
HTTP-headers requires that sms-service group variable 
x-accept-kannel-headers is true. 

If a message with a tariff class is splitted into several SMSs, the 
service  description is set to 1 for other than the first SMS, meaning 
that only the first SMS is billed from the customer and the application 
pays the rest of the SMSs. (For example, the client pays the same fee of 
a picture message regardless if it is split into two or three SMSs.) 

TODO: 
- Should the application be able to set different tariff class/service 
description values for splitted SMSs? 
- Should we add config file variables for setting default tariff 
class/service description values? 


Btw, treating the SMSC specific paramaters like the common paramaters 
leads to a 

quite ugly impelementation. Smsbox.c that was obviously meant to be 
generic becomes now polluted with SMSC specific code. I still think that 
some kind of generic mechnism for adding the SMSC specific paramaters 
would lead to cleaner architecture and would make our lifes easier. Even 
if you think that SMSC specific parameters must be static members of 
Mgs.sms-struct, could you still consider of some kind of hooks for 
function pointers or some other mechanism for separating the SMSC 
specific code from smsbox.c? 




-- 

Surfy! http://www.surfy.com  Great web search, free web email, and $9.95 unlimited 
Internet access










Powered by Outblaze

Reply via email to