RE: question about WTP-SAR
Title: RE: question about WTP-SAR It's not clear from your post what gateway you are talking about and what's the phone. Also tcpdump of the session between the phone and the gw can be useful -Original Message- From: Kang Minfeng-a18629 [mailto:[EMAIL PROTECTED]] Sent: Sunday, February 09, 2003 2:54 PM To: [EMAIL PROTECTED] Subject: (no subject) Hi, List: I have a question about WTP-SAR, it is not about kannel, but maybe some experts here can help me. I develop wap-client on mobile. When I send a Invoke message by WTP-SAR to gateway, I get the abort PDU. Following is the flow: Invoke, SegInvoke, PSN=1 SegInvoke, G, PSN=2 Ack, PSN=2 -SegInvoke, PSN=3 -SegInvoke, PSN=4 -SegInvoke, T, PSN=5 -Abort, Abort Reson = 0xE1(disconnect) I donot know why the gateway send the abort PDU intead of the result PDU, and the abort reason can not tell me more information about it. Can anybody here help me? BRs mfkang
Question
Hi I'm a student for Information Technologie in Switzerland and I use Kannel for a Project. I have a question concerning the SMS- Gateway- Configuration. Is it possible to send all incoming Messages to one specific service indepent of the keyword? Is there any configuration that allow me that? Many thanks for your answer. Greets Simon
Re: Question
Citando Simon Blaettler [EMAIL PROTECTED]: Hi I'm a student for Information Technologie in Switzerland and I use Kannel for a Project. I have a question concerning the SMS- Gateway- Configuration. Is it possible to send all incoming Messages to one specific service indepent of the keyword? Is there any configuration that allow me that? keyword=default Many thanks for your answer. Good luck for your study ;) Greets Simon -- BR/
black/white list question
hallo, I would like to ask, if kannel does automatic filtering of messages send/received to/from the same number. I tried to send few logo one after another to the same number, and after few tries I got: 2003-01-15 10:13:09 send-SMS request failed - Number(s) has/have been denied by white- and/or black-lists. if it is correct, I would like to know, where could I increace these limitations? thanks. regards, Dziugas Baltrunas
Re: WSPMachine destroying question
Implementing timers at wsp level is easiest way to do this. Aarno On Tuesday, January 14, 2003, at 10:20 AM, Vjacheslav Chekushin wrote: Hi, Aarno. Aarno Syvänen wrote: Hi Vjacheslav, On Monday, January 13, 2003, at 03:13 PM, Vjacheslav Chekushin wrote: WSPMachine is destroyed if state=NULL_SESSION But how WSPMachine will be desroyed if client doesn't send disconnect event but simply end his session without any indication (And WSPMachine remains in state CONNECTED). You mean stop wap browsing ? This does not indeed end session, because the client may resume browsing. Disconnecting is a separate event. After browsing you can select from menu something like 'Quit browsing' and user agent correctly sends disconnect event. But I suspect if you simply press HangUp button, UserAgent simply go out without disconnect event. (I checked it at least with some phones). And users mostly end its sessions by this way. So if you have heavy load it becomes the problem. For example our WAP gateway grows approximatly at 100MB every day. So I agree that this is phone problem, but I think kannel must handle it someway. Will WSPMachine be destroyed after some time or it will be stored in WSPMachine list untill we stop WAP gateway? WSPSessionMachine will stay until client disconnects separately, if connection- oriented service is used. I describe it with example: I work with one phone and sequentialy create 3 sessions. But thease sessions has been removed only when I stpopped gateway: 2003-01-10 14:19:40 [0] DEBUG: Waiting for 1 (wap/wsp_session.c:main_thread) to terminate 2003-01-10 14:19:40 [1] DEBUG: Thread 1 (wap/wsp_session.c:main_thread) terminates. 2003-01-10 14:19:40 [0] DEBUG: WSP: 3 session machines left. 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a10388 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a07fd8 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x8209500 You can always use connectionless service, if you for some reason cannot disconnect sessions. Aarno -- Vjacheslav Chekushinmailto:[EMAIL PROTECTED] Latvian Mobile Phone Companyhttp://www.lmt.lv
Re: WSPMachine destroying question
Paul Keogh wrote: I have also seen quite different behaviours from devices and disconnects and agree with what you say. I also suspect that this may cause resource problems with sockets not being closed. what about timeouting the idle conntects?! Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: WSPMachine destroying question
Vjacheslav Chekushin wrote: Ok, if we talk about not closed sockets than there is problem in http library. See in http.c : /* XXX re-implement socket pools, with idle connection killing to save sockets */ Every http request to new host create socket and didn't close it even if remote side did it. There is no any check for it. And only when gateway will try to reuse it, socket will be closed and http will open new socket to this host. It does not close the socket if the client does?! *wondering* So if system has limit for opened socket it will be exceeded sooner or later. Simplest solution for it - periodically check pool and destroy all closed socket. yep, may be a solution. Anybody checked how the Apache guys do this, may be addopted. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: black/white list question
Dziugas Baltrunas wrote: hallo, I would like to ask, if kannel does automatic filtering of messages send/received to/from the same number. I tried to send few logo one after another to the same number, and after few tries I got: 2003-01-15 10:13:09 send-SMS request failed - Number(s) has/have been denied by white- and/or black-lists. AFAIK, you can send messages via sendsms's interface if you specify source address = receiver address. It makes ussually no sense. But you log entry indicates that you have configured to use white/black list denying. Is the receiver address in there? Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: WSPMachine destroying question
Hi Vjacheslav, On Monday, January 13, 2003, at 03:13 PM, Vjacheslav Chekushin wrote: WSPMachine is destroyed if state=NULL_SESSION But how WSPMachine will be desroyed if client doesn't send disconnect event but simply end his session without any indication (And WSPMachine remains in state CONNECTED). You mean stop wap browsing ? This does not indeed end session, because the client may resume browsing. Disconnecting is a separate event. Will WSPMachine be destroyed after some time or it will be stored in WSPMachine list untill we stop WAP gateway? WSPSessionMachine will stay until client disconnects separately, if connection- oriented service is used. I describe it with example: I work with one phone and sequentialy create 3 sessions. But thease sessions has been removed only when I stpopped gateway: 2003-01-10 14:19:40 [0] DEBUG: Waiting for 1 (wap/wsp_session.c:main_thread) to terminate 2003-01-10 14:19:40 [1] DEBUG: Thread 1 (wap/wsp_session.c:main_thread) terminates. 2003-01-10 14:19:40 [0] DEBUG: WSP: 3 session machines left. 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a10388 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a07fd8 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x8209500 You can always use connectionless service, if you for some reason cannot disconnect sessions. Aarno
Re: WSPMachine destroying question
Hi, Aarno. Aarno Syvänen wrote: Hi Vjacheslav, On Monday, January 13, 2003, at 03:13 PM, Vjacheslav Chekushin wrote: WSPMachine is destroyed if state=NULL_SESSION But how WSPMachine will be desroyed if client doesn't send disconnect event but simply end his session without any indication (And WSPMachine remains in state CONNECTED). You mean stop wap browsing ? This does not indeed end session, because the client may resume browsing. Disconnecting is a separate event. After browsing you can select from menu something like 'Quit browsing' and user agent correctly sends disconnect event. But I suspect if you simply press HangUp button, UserAgent simply go out without disconnect event. (I checked it at least with some phones). And users mostly end its sessions by this way. So if you have heavy load it becomes the problem. For example our WAP gateway grows approximatly at 100MB every day. So I agree that this is phone problem, but I think kannel must handle it someway. Will WSPMachine be destroyed after some time or it will be stored in WSPMachine list untill we stop WAP gateway? WSPSessionMachine will stay until client disconnects separately, if connection- oriented service is used. I describe it with example: I work with one phone and sequentialy create 3 sessions. But thease sessions has been removed only when I stpopped gateway: 2003-01-10 14:19:40 [0] DEBUG: Waiting for 1 (wap/wsp_session.c:main_thread) to terminate 2003-01-10 14:19:40 [1] DEBUG: Thread 1 (wap/wsp_session.c:main_thread) terminates. 2003-01-10 14:19:40 [0] DEBUG: WSP: 3 session machines left. 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a10388 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a07fd8 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x8209500 You can always use connectionless service, if you for some reason cannot disconnect sessions. Aarno -- Vjacheslav Chekushinmailto:[EMAIL PROTECTED] Latvian Mobile Phone Companyhttp://www.lmt.lv
RE: WSPMachine destroying question
After browsing you can select from menu something like 'Quit browsing' and user agent correctly sends disconnect event. But I suspect if you simply press HangUp button, UserAgent simply go out without disconnect event. (I checked it at least with some phones). And users mostly end its sessions by this way. So if you have heavy load it becomes the problem. For example our WAP gateway grows approximatly at 100MB every day. So I agree that this is phone problem, but I think kannel must handle it someway. I have also seen quite different behaviours from devices and disconnects and agree with what you say. I also suspect that this may cause resource problems with sockets not being closed.
Re: WSPMachine destroying question
Hi, Paul. Paul Keogh wrote: After browsing you can select from menu something like 'Quit browsing' and user agent correctly sends disconnect event. But I suspect if you simply press HangUp button, UserAgent simply go out without disconnect event. (I checked it at least with some phones). And users mostly end its sessions by this way. So if you have heavy load it becomes the problem. For example our WAP gateway grows approximatly at 100MB every day. So I agree that this is phone problem, but I think kannel must handle it someway. I have also seen quite different behaviours from devices and disconnects and agree with what you say. I also suspect that this may cause resource problems with sockets not being closed. Ok, if we talk about not closed sockets than there is problem in http library. See in http.c : /* XXX re-implement socket pools, with idle connection killing to save sockets */ Every http request to new host create socket and didn't close it even if remote side did it. There is no any check for it. And only when gateway will try to reuse it, socket will be closed and http will open new socket to this host. So if system has limit for opened socket it will be exceeded sooner or later. Simplest solution for it - periodically check pool and destroy all closed socket. -- Vjacheslav Chekushinmailto:[EMAIL PROTECTED] Latvian Mobile Phone Companyhttp://www.lmt.lv
WSPMachine destroying question
Hi, list. May be someone who is familiar with kannel WSP layer may answer to my question. WSPMachine is destroyed if state=NULL_SESSION But how WSPMachine will be desroyed if client doesn't send disconnect event but simply end his session without any indication (And WSPMachine remains in state CONNECTED). Will WSPMachine be destroyed after some time or it will be stored in WSPMachine list untill we stop WAP gateway? I describe it with example: I work with one phone and sequentialy create 3 sessions. But thease sessions has been removed only when I stpopped gateway: 2003-01-10 14:19:40 [0] DEBUG: Waiting for 1 (wap/wsp_session.c:main_thread) to terminate 2003-01-10 14:19:40 [1] DEBUG: Thread 1 (wap/wsp_session.c:main_thread) terminates. 2003-01-10 14:19:40 [0] DEBUG: WSP: 3 session machines left. 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a10388 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a07fd8 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x8209500 -- Vjacheslav Chekushinmailto:[EMAIL PROTECTED] Latvian Mobile Phone Companyhttp://www.lmt.lv
Re: WSPMachine destroying question
Vjacheslav Chekushin wrote: Hi, list. May be someone who is familiar with kannel WSP layer may answer to my question. WSPMachine is destroyed if state=NULL_SESSION But how WSPMachine will be desroyed if client doesn't send disconnect event but simply end his session without any indication (And WSPMachine remains in state CONNECTED). Will WSPMachine be destroyed after some time or it will be stored in WSPMachine list untill we stop WAP gateway? I describe it with example: I work with one phone and sequentialy create 3 sessions. But thease sessions has been removed only when I stpopped gateway: 2003-01-10 14:19:40 [0] DEBUG: Waiting for 1 (wap/wsp_session.c:main_thread) to terminate 2003-01-10 14:19:40 [1] DEBUG: Thread 1 (wap/wsp_session.c:main_thread) terminates. 2003-01-10 14:19:40 [0] DEBUG: WSP: 3 session machines left. 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a10388 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x41a07fd8 2003-01-10 14:19:40 [0] DEBUG: Destroying WSPMachine 0x8209500 I guess Aarno would be a good adress and Ciprian too. Ciprian, are you reading the Kannel's developer mailing list?! If not, you definetly should ;) Stipe [EMAIL PROTECTED] --- Wapme Systems AG Vogelsanger Weg 80 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: m-notification-ind question
What phone are you working with ? Aarno On Monday, November 25, 2002, at 04:47 PM, Alex Judd wrote: I'm seem to be getting very different udh's generated from test_ppg than those from the text m-notification-ind that works. 1. Working udh udh=%06%05%04%0b%84%23%f0 2. Nonworking test_ppg generated UDH(s) [multi-part-message] [udh:12:0B05040B8423F3000301] [udh:12:0B05040B8423F3000302] [udh:12:0B05040B8423F3000303] My SMSC is returning FAILED at trying to deliver the test_ppg generated ones. However, sending a manual created message works fine. Any ideas? Regards Alex
Re: m-notification-ind question
Ericsson T68i The problem was to do with my http smsc setup not supplying a from field to my remote Kannel SMSC, and the remote Kannel SMSC not having a global sender setup. Fixed that now thanks Aarno however I am having trouble with the retrieval of the content that the phone tries to get. Alex - Original Message - From: Aarno Syvänen [EMAIL PROTECTED] To: Alex Judd [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Sent: Tuesday, November 26, 2002 9:23 AM Subject: Re: m-notification-ind question What phone are you working with ? Aarno On Monday, November 25, 2002, at 04:47 PM, Alex Judd wrote: I'm seem to be getting very different udh's generated from test_ppg than those from the text m-notification-ind that works. 1. Working udh udh=%06%05%04%0b%84%23%f0 2. Nonworking test_ppg generated UDH(s) [multi-part-message] [udh:12:0B05040B8423F3000301] [udh:12:0B05040B8423F3000302] [udh:12:0B05040B8423F3000303] My SMSC is returning FAILED at trying to deliver the test_ppg generated ones. However, sending a manual created message works fine. Any ideas? Regards Alex
m-notification-ind question
I'm seem to be getting very different udh's generated from test_ppg than those from the text m-notification-ind that works. 1. Working udh udh=%06%05%04%0b%84%23%f0 2. Nonworking test_ppg generated UDH(s) [multi-part-message] [udh:12:0B05040B8423F3000301] [udh:12:0B05040B8423F3000302] [udh:12:0B05040B8423F3000303] My SMSC is returning FAILED at trying to deliver the test_ppg generated ones. However, sending a manual created message works fine. Any ideas? Regards Alex
cimd2 question again (smsc_cimd2.c)
hello, i'm writing again about the problem about CIMD2. SMSC reports with error 310 as follows: 2002-11-18 20:32:29 [5] DEBUG: boxc_receiver: sms received 2002-11-18 20:32:29 [8] DEBUG: smscconn_sender (CIMD2:10.110.16.12:9971:m1372): sending message 2002-11-18 20:32:29 [8] ERROR: CIMD2 Submit message response contained error message: 2002-11-18 20:32:29 [8] ERROR: code 310: Incorrect status report request parameter usage this is a code fragment from smsc_cimd2.c, and Richard Braakman reported, that it has been added after he stopped developing kannel. /* Explicitly ask not to get status reports. * If we do not do this, the server's default might be to * send status reports in some cases, and we don't do anything * with those reports anyway. */ /* ask for the delivery reports if needed*/ if (msg-sms.dlr_mask 0x03) { packet_add_int_parm(packet, P_STATUS_REPORT_REQUEST, 14); } else packet_add_int_parm(packet, P_STATUS_REPORT_REQUEST, 0); so it seems, that if i add dlrmask=3 to the url (11 11), it would request status report, and it won't, if dlrmask is empty, it would not. but both variants report with error 310 from the SMSC. i took a look to the specification of the CIMD2 and there are all aviable status report requests listed. so maybe it depends on the CIMD2 exact version? if I only get a bit information, I would try to write a patch. i'm using kannel-1.2.0 under Debian. regards, Dziugas Baltrunas
Re: send-sms interface - followup question
I've been looking at the code in sendms_req_handle() (smsbox.c). Is it possible that in some instances, the return str is empty on success? I think that might account for the error I got earlier... for that instance should that happen in your opinion? Stipe [EMAIL PROTECTED] --- Wapme Systems AG Vogelsanger Weg 80 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
send-sms interface - followup question
Hi, I've been looking at the code in sendms_req_handle() (smsbox.c). Is it possible that in some instances, the return str is empty on success? I think that might account for the error I got earlier... Please help Thanks __ Do You Yahoo!? Everything you'll ever need on one web page from News and Sport to Email and Music Charts http://uk.my.yahoo.com
Re: SAR question
Can I get information about SAR for kannel WAPgw. There is exists at least 1 SAR implementation (can be found on the list as patch). I think Kannel must support SAR. So why this patch don't applied to CVS. How it can be quicken? If there is another SAR implementation (I heard about it, but didn't see it) why it is not applied to CVS? The other SAR patch is property of Wapme and it takes time to make that free and combine the patches. Anyway, I have the latest public SAR patch available and will apply it. What I wanted (and most of the developers agreed with that roadmap) is to release 1.2.1 before starting the patch orgy. It's not only SAR that is pending, smsbox routing is too and various other patches. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Vogelsanger Weg 80 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: i want to ask some question
we use kannel_1.2.0 and running in the redhat 7.0 pc we use sony_ecrssion mms phone send data to wap gatway ,the first invoke wtp pdu is0a0b,wap gateway send ack wtp pdu is 1c8b 6100... and phone re ack wtp pdu is 1c0b 6100... ,then wap gatway re send result wtp pdu is 168b i want to ask that why phone send a invoke wtp pdu which need sar ,but could success commuication with wapgateway by no sar trachsaction identifier verification? i think this time ,the phone send invoke wtp pdu 'T and G not 10,but 11 . to me honest, I didn't get the questions :) But Kannel has currently no SAR support in its WAP layer, so don't expect things to work. This will change soon. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Vogelsanger Weg 80 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
list_consume question
Hi all, In the list_produce() function reallocs the memory size to make room for the new incoming sms. However in the list_consume() function, the delete_item_from_list() does not realloc the memory size after the message has been read. Could someone tell me where the size of the list is shrinked again? Thanks Martin
RE: Question on posting WAP209 binary data from a Nokia 7650
Title: RE: Question on posting WAP209 binary data from a Nokia 7650 Hello Aarno! Got any news on your progress in SAR? Igor -Original Message- From: Aarno Syvanen [mailto:[EMAIL PROTECTED]] Sent: Friday, August 02, 2002 8:43 AM To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: Re: Question on posting WAP209 binary data from a Nokia 7650 [EMAIL PROTECTED] kirjoittaa torstaina, 1. elokuuta 2002, kello 18:25: Good Day, I have started using your WAP Server with our MMS Relay / Server prototype a few days ago. I am testing with both a Nokia 9210 and a 7650. The 9210 works fine, but I encountered problems with the 7650, as described below. Sending small text messages works fine, but we encounter problems when we try to send larger image and / or sound attachments with the 7650. The content seems to arrive at the MMS Server / Relay truncated. The WAP Server never posts more than 1261 bytes to the MMS Server prototype. Problem is that Kannel misses WTP SAR (reassembly, more properly). But I start coding it today, so stay tuned ! Aarno
Re: Question on posting WAP209 binary data from a Nokia 7650
[EMAIL PROTECTED] kirjoittaa torstaina, 1. elokuuta 2002, kello 18:25: Good Day, I have started using your WAP Server with our MMS Relay / Server prototype a few days ago. I am testing with both a Nokia 9210 and a 7650. The 9210 works fine, but I encountered problems with the 7650, as described below. Sending small text messages works fine, but we encounter problems when we try to send larger image and / or sound attachments with the 7650. The content seems to arrive at the MMS Server / Relay truncated. The WAP Server never posts more than 1261 bytes to the MMS Server prototype. Problem is that Kannel misses WTP SAR (reassembly, more properly). But I start coding it today, so stay tuned ! Aarno
question about the latest kannel
re I'm still using kannel 1.1.4 with my own patches and modifications. However, a number of problems seems to bew solved now with 1.1.6 so I'm thinking about upgrade. I've monitored the list sometimes, but not constantly, so if the question is answered in the list - please forgive me. but, the question is: does the 1.1.6 allow starting of the bearerbox with some/all smsc connections failing? if yes - great. if no - why? regards, kaido
RE: question about the latest kannel
Are you using EMI2? 1.1.4 didn't allow bearerbox to start if some emi2 smsc falied, but on version 1.1.6 you can, using retry=yes on the smsc group. Angel Fradejas Mediafusión España, S.A. [EMAIL PROTECTED] www.mediafusion.es Tel. +34 91 252 32 00 Fax +34 91 572 27 08 -Mensaje original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]En nombre de Kaido Karner Enviado el: jueves 27 de junio de 2002 11:36 Para: [EMAIL PROTECTED] Asunto: question about the latest kannel re I'm still using kannel 1.1.4 with my own patches and modifications. However, a number of problems seems to bew solved now with 1.1.6 so I'm thinking about upgrade. I've monitored the list sometimes, but not constantly, so if the question is answered in the list - please forgive me. but, the question is: does the 1.1.6 allow starting of the bearerbox with some/all smsc connections failing? if yes - great. if no - why? regards, kaido
Re: %b parameter question
On Tue, 2002-06-04 at 18:44, Avner Sternheim wrote: Hi all, I've encountered a problem while using %b parameter in the SMS-service section in the configuration file, while using this option I can't redirect the message to different URL, since the Kannel can't read the the keyword (the first word in the message) that according to it the Kannel redirect the message. Is there a known fix ? workaround ? another paramter ? There might be some kind of bug. Kannel looks for how many %s (or %k,%r,%a) exists to know how many words should be present to use that service. If you only use %b, it might now work. (Sorry, I'm now too tired to look at the code). You could try to use catch-all = true in service config, or else just use url = http://...?text=%araw=%b. That one works with me.
%b parameter question
Hi all, I've encountered a problem while using %b parameter in the SMS-service section in the configuration file, while using this option I can't redirect the message to different URL, since the Kannel can't read the the keyword (the first word in the message) that according to it the Kannel redirect the message. Is there a known fix ? workaround ? another paramter ? Regards Avner Sternheim P.S. I need the %b since I get data messages in GET mode -Original Message- From: Andreas Fink [SMTP:[EMAIL PROTECTED]] Sent: â 04 éåðé 2002 17:54 To: Avner Sternheim Cc: [EMAIL PROTECTED] Subject: Re: few Kannel daemons on the same server Has someone encountered problems whilte trying to run more than one kannel daemons on the same machine ? Is there any limit on the numbers accroding to Kannel ? No real limits. just have to make sure you dont run into any conflicts like same logfile name or same tcp port etc. On the other hand, there's no real reason to run multiple ones as you can combine the function of multiple ones into one. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: question regarding the configuration implementation
Harrie Hazewinkel wrote: HI all, Maybe someone could help me out in order to confirm how I think the configuration file is hanndled. I believe this is the scheme: A programm 1- opens the configuration file 2- reads it as a huge octet_string 3- splits is into a list of lines (octet_string) 4- parser the all lines of the list which could be a- a comment line (ignore) b- an include line (which inserts the to be included as a list of lines again steps 1,2,3) c- processes a lines (splits is at the '=', makes a name value pair and adds it in a dictionary) (NOW ALL CONFFILE READING IS DONE) 5- initializes the needed process a- it starts for looking of groups in the dictionary b- depending on the group it looks for parameters. yep, that's the way it does. I was wondering if someone could tell me the reason why putting it in a dictionary first as a very general configuration representation and later search into it for only those parts needed?? I'm not sure, but is the dictionary needed for faster lookups later when the groups are needed. Another question I have is why one would have all configuration tokens known to each process and depending on the process totally ignore it?? The main reason is maybe that this way a single configuration file can be used for all, but I guess there is more. Hmm, I didn't understand the question Harrie. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: CVS usage question??
Harrie Hazewinkel wrote: --On Wednesday, May 29, 2002 5:41 PM +0200 Angel Fradejas [EMAIL PROTECTED] wrote: Maybe line-feed format has been changed from unix-like to dos-like. This could happen if you use Windows based tools to edit, etc. that could be it, see also my other email in which I mentioned the '^M'. However, I noticed also that many files have a '^M' at the end. So what would we prefer? If you use WinCVS 1.2 (like I do) please make sure of 2 things: a) you set the flag inside WinCVS to checkout in UNIX line ending mode b) use an editor which is capable of opening, processing and re-saving again files in UNIX line ending mode, I use WinEdit 2000. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Re: question regarding the configuration implementation
--On Friday, May 31, 2002 9:38 AM +0200 Stipe Tolj [EMAIL PROTECTED] wrote: Harrie Hazewinkel wrote: I was wondering if someone could tell me the reason why putting it in a dictionary first as a very general configuration representation and later search into it for only those parts needed?? I'm not sure, but is the dictionary needed for faster lookups later when the groups are needed. OK, but what is fast, you only do this at startup. :-) The thing I merely was wondering of is why a 2 step phase. First loading it all in the process and that as a second phase look into the values of it. See also below. Another question I have is why one would have all configuration tokens known to each process and depending on the process totally ignore it?? The main reason is maybe that this way a single configuration file can be used for all, but I guess there is more. Hmm, I didn't understand the question Harrie. I will explain it again. The cfg.def, cfg.c and cfg.h file in the gwlib are the core of the configuration handling. All tokens are known there. Those who are not will cause an error while reading the configuration file. All others are put into a list/dictionary for later use. The later use by the process is just to call the ones it needs from the list/dictionary. All others are basically ignored. One could make it like this. Each process only knows those tokens it will use. All other tokens will generate an error. This as oppose to read all possible tokens of any of the processes and just ignore those not used by that process. Therefore, my question 'why should each process know all possible tokens for all processes of the package and those not needed being ignored by the process'?? I believe this is done so only one configuration file is needed for the complete system (bearebox and wap/smsbox). Howevr, this would make a more module system problematic, since not all processes need the same module and thus do not know all the same tokens. Hope this explains it better. Harrie Internet Management Consulting mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/
RE: CVS usage question??
--On Wednesday, May 29, 2002 5:54 PM +0300 Oded Arbel [EMAIL PROTECTED] wrote: It's possible, if your editing tool reformats tabs and removes spare spaces and such. try to diff all the changes agains the current cvs, and then edit the diffs and remove everything that isn't requires for the patch. then you can checkout from the CVS again, apply the diffs you've edited and commit. The problem is ( I believe) that I do not see any difference with a cvs diff. Except for those files I edited, but they show up all on the list with cvs commit. Could it be a problem that I have seen files with a ^M that are somehow changes by cvs?? Alternatively, one can do a 'cvs up' to update and just see which files are modified. That all looks OK to me. Alternativly you can either switch to another code editor, or - commit all the files anyway and hope that your editor will not change any more files. I use 'vi'. Harrie Internet Management Consulting mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/
RE: CVS usage question??
--On Wednesday, May 29, 2002 5:41 PM +0200 Angel Fradejas [EMAIL PROTECTED] wrote: Maybe line-feed format has been changed from unix-like to dos-like. This could happen if you use Windows based tools to edit, etc. that could be it, see also my other email in which I mentioned the '^M'. However, I noticed also that many files have a '^M' at the end. So what would we prefer? Angel. -Mensaje original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]En nombre de Oded Arbel Enviado el: miércoles 29 de mayo de 2002 16:54 Para: Harrie Hazewinkel; dev-kannel Asunto: RE: CVS usage question?? It's possible, if your editing tool reformats tabs and removes spare spaces and such. try to diff all the changes agains the current cvs, and then edit the diffs and remove everything that isn't requires for the patch. then you can checkout from the CVS again, apply the diffs you've edited and commit. Alternativly you can either switch to another code editor, or - commit all the files anyway and hope that your editor will not change any more files. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] (972)-67-340014 (972)-9-9581711 (ext: 116) ::.. Was it Ritchie or Thompson who said about X: Sometimes, when you fill a vacuum, it still sucks? -Original Message- From: Harrie Hazewinkel [mailto:[EMAIL PROTECTED]] Sent: Wednesday, May 29, 2002 2:29 PM To: dev-kannel Subject: CVS usage question?? HI all, I wanted to commit changes in the gw directory. Although, only 5 of the many files were changed. But in the 'cvs commit' it showed almost all files to be chnaged. Has anyone seen it before?? Harrie Internet Management Consulting mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/ Harrie Internet Management Consulting mailto: [EMAIL PROTECTED] http://www.lisanza.net/
CVS usage question??
HI all, I wanted to commit changes in the gw directory. Although, only 5 of the many files were changed. But in the 'cvs commit' it showed almost all files to be chnaged. Has anyone seen it before?? Harrie Internet Management Consulting mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/
RE: CVS usage question??
It's possible, if your editing tool reformats tabs and removes spare spaces and such. try to diff all the changes agains the current cvs, and then edit the diffs and remove everything that isn't requires for the patch. then you can checkout from the CVS again, apply the diffs you've edited and commit. Alternativly you can either switch to another code editor, or - commit all the files anyway and hope that your editor will not change any more files. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] (972)-67-340014 (972)-9-9581711 (ext: 116) ::.. Was it Ritchie or Thompson who said about X: Sometimes, when you fill a vacuum, it still sucks? -Original Message- From: Harrie Hazewinkel [mailto:[EMAIL PROTECTED]] Sent: Wednesday, May 29, 2002 2:29 PM To: dev-kannel Subject: CVS usage question?? HI all, I wanted to commit changes in the gw directory. Although, only 5 of the many files were changed. But in the 'cvs commit' it showed almost all files to be chnaged. Has anyone seen it before?? Harrie Internet Management Consulting mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/
RE: CVS usage question??
Maybe line-feed format has been changed from unix-like to dos-like. This could happen if you use Windows based tools to edit, etc. Angel. -Mensaje original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]En nombre de Oded Arbel Enviado el: miércoles 29 de mayo de 2002 16:54 Para: Harrie Hazewinkel; dev-kannel Asunto: RE: CVS usage question?? It's possible, if your editing tool reformats tabs and removes spare spaces and such. try to diff all the changes agains the current cvs, and then edit the diffs and remove everything that isn't requires for the patch. then you can checkout from the CVS again, apply the diffs you've edited and commit. Alternativly you can either switch to another code editor, or - commit all the files anyway and hope that your editor will not change any more files. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] (972)-67-340014 (972)-9-9581711 (ext: 116) ::.. Was it Ritchie or Thompson who said about X: Sometimes, when you fill a vacuum, it still sucks? -Original Message- From: Harrie Hazewinkel [mailto:[EMAIL PROTECTED]] Sent: Wednesday, May 29, 2002 2:29 PM To: dev-kannel Subject: CVS usage question?? HI all, I wanted to commit changes in the gw directory. Although, only 5 of the many files were changed. But in the 'cvs commit' it showed almost all files to be chnaged. Has anyone seen it before?? Harrie Internet Management Consulting mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/
question regarding the configuration implementation
HI all, Maybe someone could help me out in order to confirm how I think the configuration file is hanndled. I believe this is the scheme: A programm 1- opens the configuration file 2- reads it as a huge octet_string 3- splits is into a list of lines (octet_string) 4- parser the all lines of the list which could be a- a comment line (ignore) b- an include line (which inserts the to be included as a list of lines again steps 1,2,3) c- processes a lines (splits is at the '=', makes a name value pair and adds it in a dictionary) (NOW ALL CONFFILE READING IS DONE) 5- initializes the needed process a- it starts for looking of groups in the dictionary b- depending on the group it looks for parameters. I was wondering if someone could tell me the reason why putting it in a dictionary first as a very general configuration representation and later search into it for only those parts needed?? Another question I have is why one would have all configuration tokens known to each process and depending on the process totally ignore it?? The main reason is maybe that this way a single configuration file can be used for all, but I guess there is more. I merely ask this on how to handle module specific configuration parts for that module API I was talking of last week. Any help is appreciated, Harrie Internet Management Consulting tel: +39-3474932300 mailto:[EMAIL PROTECTED]http ://www.mod-snmp.com/
make question (MacOS X)
Here's a question for the make gurus among us. I want to have Kannel compile by default on MacOS X. The needed changes are minimal but on the other hand a bit tricky to automate. Here's what I do: 1st: replace ar rc $libname $files with libtool -static -o $libname $files The more trickier thing are the following lines: wmlscriptsrcs = $(wildcard wmlscript/*.[cy]) wmlscriptobjs = $(wmlscriptsrcs:.c=.o) $(wmlscriptsrcs:.y=.o) The problem here is that libtool then tries to add non existing files or files with no binary content to the library and fails. As we dont need those files in the archive I've tried to use: wmlscriptsrcs = $(wildcard wmlscript/*.[cy]) wmlscriptobjs = $(wildcard wmlscript/*.o) instead. This fails with libtool: file: wmlscript/wmlsc.o defines symbol: _main libtool: file: wmlscript/wmlsdasm.o defines symbol: _main this also occurs with libgw.a because main is defined twice (once in bearerbox and one in smsbox). Basically we should not include the *.o files which contain the main routines into the libgw.a (by the way, do we need libgw.a at all?). The workaround is to do wmlscriptobjs = all the .o files. Does anyone have a nicer macro to do this? -- Andreas Fink Global Networks Inc. -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address:Global Networks Inc, Schwarzwaldallee 16, 4058 Basel, Switzerland Web: http://www.global-networks.ch/ e-mail: [EMAIL PROTECTED] -- Member of the GSM Association
Re: make question (MacOS X)
Oded Arbel wrote: Have nNot the faintest idea of how to solve the problems you described, but just one comment - shouldn't we use libtool also on Linux and any OS that have it (I think Solaris doesn't have a proper libtool) ? yes, in fact we should switch to a later autoconf build system. But this requires re-arrangement of the source tree and the Makefile templates. If someone is interested in doing this on a proto basis, please grep yourself the autoook-1.3 documentation and see what you can do. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Question on wap_push_pap_mime.c- Extension Headers
This module contains the pass_extension_headers() function, the purpose of which is to valid the structure of extension headers in the Push message. However, the function contains the line of code - if ((octstr_case_search(*body_part, octstr_imm(Content), 0)) 0) goto end; which fails completely if the message body actually contains the word 'Content'. Why is this check necessary at all - at this point the message could contain a mixture of WAP header extensions, User header extensions and non-normative Internet header extensions - so what's the point in looking for a specific keyword ? Also, on a related note, the pass_data_headers() function looks for headers of type Content-Transfer-Encoding, Content-ID and Content-Description. These are not listed among the generic headers in 6.2.1 (WAP-145-PushMessage), so why are they expected ? Paul Keogh ANAM Wireless Internet Solutions http://www.anam.com +353 1 284 7555 (wired) +353 86 234 6047 (wireless) Castle Yard, Saint Patrick's Road, Dalkey, County Dublin, Ireland
Re: Question on wap_push_pap_mime.c- Extension Headers
Paul Keogh wrote: This module contains the pass_extension_headers() function, the purpose of which is to valid the structure of extension headers in the Push message. However, the function contains the line of code - if ((octstr_case_search(*body_part, octstr_imm(Content), 0)) 0) goto end; which fails completely if the message body actually contains the word 'Content'. Yep. We must parse this properly. Why is this check necessary at all - at this point the message could contain a mixture of WAP header extensions, User header extensions and non-normative Internet header extensions - so what's the point in looking for a specific keyword ? These are multipart part headers. Also, on a related note, the pass_data_headers() function looks for headers of type Content-Transfer-Encoding, Content-ID and Content-Description. These are not listed among the generic headers in 6.2.1 (WAP-145-PushMessage), so why are they expected ? I wanted parser to parse a general multipart message (which is actually a requirement). Aarno
Question
We have developed a SMSC and also implemented SMPP 3.4 protocol. Now, we want to use kannel as a WAP Gateway. In test process, first, we initiate SMSC and then according to configuration needed for kannel, we run BearerBox and then WAP box. Bearerbox send a BIND_TRASMITTER and BIND_RECEIVER message and SMSC responses correctly (I mean it responses with BIND_TRANSMITTER_RESP and BIND_RECEIVER_RESP packets). But when we send a SMS Message (according to GSM requirements), it doesn't answer correctly and responses a GENERICK_NACK packet. I think everything is correct, but I don't know what is wrong. Whould you please let me know what is the problem? --- Masoomeh Rudafshani Computer Eng. Dept. Sharif Univ. of Tech. Tehran, Iran http://ce.sharif.ac.ir/~rudafsha [EMAIL PROTECTED] [EMAIL PROTECTED] ---
SMSC question
Can any one of the Kannel experts let me know which GSM modem and SMSC protocol are stable for sending binary message (push notification and etc.) Thanks in advance Stone Zhang Tel +44 (0)20 8214 5045 Fax +44 (0)20 8214 3178 Mobile 07939 750 782 NOTICE AND DISCLAIMER: This email (including attachments) is confidential. If you have received this email in error please notify the sender immediately and delete this email from your system without copying or disseminating it or placing any reliance upon its contents. We cannot accept liability for any breaches of confidence arising through use of email. Any opinions expressed in this email (including attachments) are those of the author and do not necessarily reflect our opinions. We will not accept responsibility for any commitments made by our employees outside the scope of our business. We do not warrant the accuracy or completeness of such information.
Re: Question on sending push messages to Nokia Toolkit
Andrejus Chaliapinas wrote: Ok guys, after checking wap_push_pap_compiler.c source, I've found that you need IPv4 as part of client address and not IPV4 as it's written in v1.1.6 developer's docs chapter 'Using Nokia Toolkit as a part of a developing environment'. I think this is at least a misfeature, if not a bug. Parsing xml document values should be case insensitive. I will make a correction. Thanks for spotting this. Aarno
Re: Question on sending push messages to Nokia Toolkit
Aarno Syvänen wrote: Stipe Tolj wrote: Aarno, I not aware if we currently have any smsc-id routing in PPG module?! I don't think so. So messages get routed randomly or to the first available smsc? Yes, you are rigth. This is another misfeature. I try find time to add routing. Ok, I'll put this to STATUS meanwhile. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
Question on sending push messages to Nokia Toolkit
Hi, Currently I'm evaluating Kannel v1.1.6. I'm trying to send push message to Nokia Toolkit while using this pap file: ?xml version=1.0? !DOCTYPE pap PUBLIC -//WAPFORUM//DTD PAP//EN http://www.wapforum.org/DTD/pap_1.0.dtd; pap push-message push-id=[EMAIL PROTECTED] deliver-before-timestamp=2002-09-28T06:45:00Z deliver-after-timestamp=2002-02-28T06:45:00Z progress-notes-requested=false address address-value=[EMAIL PROTECTED] /address quality-of-service priority=low delivery-method=unconfirmed network-required=true network=GSM bearer-required=true bearer=CSD /quality-of-service /push-message /pap In WAP box I could see these messages after issuing test_ppg command: 2002-04-02 19:28:55 [13] DEBUG: HTTP: Creating HTTPClient for `127.0.0.1'. 2002-04-02 19:28:55 [15] INFO: PPG: Accept request /cgi-bin/wap-push.cgi from 127.0.0.1 2002-04-02 19:28:55 [15] DEBUG: PPG: http_read_thread: pap multipart accepted 2002-04-02 19:28:55 [15] DEBUG: PAP COMPILER: a bearer not registered by wina 2002-04-02 19:28:55 [15] DEBUG: PAP COMPILER: wrong address type in the client address 2002-04-02 19:28:55 [15] WARNING: illegal client address 2002-04-02 19:28:55 [15] DEBUG: PPG: send_bad_message_response: telling pi 2002-04-02 19:28:55 [15] DEBUG: HTTP: Resetting HTTPClient for `127.0.0.1'. 2002-04-02 19:28:55 [15] WARNING: PPG: pap control entity erroneous, the request unacceptable 2002-04-02 19:28:55 [12] DEBUG: HTTP: Destroying HTTPClient area 0x82296d8. 2002-04-02 19:28:55 [12] DEBUG: HTTP: Destroying HTTPClient for `127.0.0.1'. Do I need any special configuration for CSD bearer to be present in pushkannel.conf (which is used to start bearerbox/wapbox)? Why client address is illegal? Thank you, Andrejus __ Do You Yahoo!? Yahoo! Tax Center - online filing with TurboTax http://http://taxes.yahoo.com/
Re: Question on sending push messages to Nokia Toolkit
Andrejus Chaliapinas wrote: Ok guys, after checking wap_push_pap_compiler.c source, I've found that you need IPv4 as part of client address and not IPV4 as it's written in v1.1.6 developer's docs chapter 'Using Nokia Toolkit as a part of a developing environment'. Now small question - Nokia Toolkit by deafault listen for connection-less mode on port 2948. Do I need to provide this port to bearebox somehow? No, I don't think so. It should be a conventional port number that has been assigned to that application. Aarno, any comments from your side? Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
RE: OpenSSL question
-Original Message- From: Stipe Tolj [mailto:[EMAIL PROTECTED]] Sent: Thursday, March 14, 2002 12:06 AM Cc: Kannel-devel (E-mail) Subject: Re: OpenSSL question Oded Arbel wrote: Hi list. A question about SSL - I'm trying to establish a connection (using gwlib HTTPs support) to an HTTPS server, which unfortunatly is not responding well. whenever the server doesnot complete the SSL handshake, the HTTP connection gets stuck in SSL_connect. I was wanted to know if there's possibly a way to set a time out on http connections, so the would properly fail after not completing for a long time ? so you are trying to use the HTTP client side via SSL within Kannel, right? right. Jörg did most of the client side SSL coding. But AFAIK timeouts should be possible. I wanted to know how to do it :-) I tried to use SSL_CTX_set_timeout(), but it didn't help. SSL_SESSION_set_timeout() wants a session state construct which I don't know where to get from. and the OpenSSL docs say that I can use non-blocking IO if I wish, but doing that I would have to rewrite too much of conn.c, and I don't know enough about neither SSL nor conn.c to do that in any decent amount of time - so I was looking for any kind of help available :-) Is it the case that the SSL-enabled HTTP server works sometimes and sometimes not? I guess it's not a Apache+mod_ssl installation?! :)) Yes - it's a BEA WebLogic, and it's not my server - so I can't do much about it. also the people running that server are not very forthcoming when it comes to helping out with that kind of problems. Oh well, back to the old drawing board ;- -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Capt'n! The spellchecker kinna take this abuse!
RE: charset question (Greek)
-Original Message- From: Bruno David Rodrigues [mailto:[EMAIL PROTECTED]] Sent: Thursday, March 14, 2002 1:32 AM To: [EMAIL PROTECTED] Subject: Re: charset question (Greek) I vote and offer me to do the work to always use utf-8 inside kannel, do the recoding in smsbox to accept other codings at http (app - smsbox) (like now, the text=..charset=iso-8859-1 or defining the charset in http post) and probably defining a default charset to smsbox-app, like my mo-recode, to simplify applications (if possible, recode to iso8859-1, for example). Then, smsc_* code should know which charset to use and know how to split the message. But I guess it's better to do a release of kannel and start to think in a new archictecture, using the modularity that have been spoken. There's some issues I've been thinking to new architecture, like having a sms_router process, some smsc_* processes that connects to it, informing its capabilities (like sms lenght and accepted charsets), and have smsbox (http process) connecting to it and inform what services does it provide. Or having a monolith process. And have kill -HUP reload the configuration. Well, maybe I'm just rambling because of the lack of sleep :) I just got up this morning , after a full-night's sleep (haven't got many of those lately :-) and I like all of those idea. but maybe that's just because I'm a non-conformist bastard.. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Or, as Dr. Pepper once wrote, Stoning non conformists is part of science. Stoning conformists is also part of science. Only those theories that can stand up to a merciless barrage of stones deserve consideration. It is the creationist habit of throwing marshmallows that we find annoying.
RE: Another coding question.
Sorry - couldn't find mo_recode in urltrans.c. what I did was simply search the string for bytes that have the MSB set and if any found - code to UCS2. the down side is that this way I will code to UCS2 in cases where ISO-8859-8 will do, which will surely break keyword matching. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] I am afraid that as death becomes less certain, taxes will get worse. -- Mary Smith -Original Message- From: Bruno David Rodrigues [mailto:[EMAIL PROTECTED]] Sent: Tuesday, March 12, 2002 10:44 PM To: Oded Arbel; Kannel-devel (E-mail) Subject: Re: Another coding question. I've done the lamer way. I'm searching for # text and if present, fall back to ucs2 That's somewhere in urltrans.c, check for mo_recode - Original Message - From: Oded Arbel [EMAIL PROTECTED] To: Kannel-devel (E-mail) [EMAIL PROTECTED] Sent: Monday, March 11, 2002 5:45 PM Subject: Another coding question. Hi list. in a follow up to my last coding question : when receiving the UTF-8 encoded text, what I wanted to do is to try to encode it to 7 bit ASCII, if not successful (have chars that need more then 7 bit, i.e. high iso-8859-8 chars) I will then try to encode to ISO-8859-8 and if that does not succeed (message probably has unicode characters that are not part of iso-8859-8) I will then encode to UCS-2. Now the problem is that when I try to encode to ASCII or ISO-8859-8, encoding always succeed, and unicode characters get translated into HTML entities (for example #1505;). is there a way to stop it from doing that and simply fail the conversion ? I remember something similar to this discussed on the list, but the mail archive search refused to help me locate it (didn't like me entering weird characters, like ;-) -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] The cynics are right nine times out of ten. -- Henry Louis Mencken
RE: charset question (Greek)
I don't know much about most SMSC drivers, but AT* converts to GSM 03.38 (through iso-8869-1 . this can easily be fixed). I did notice that the way recoding is handled in Kannel (all of it - including modules) is very confused and messy. we need to come up with a clear design for that - answering these questions : 1. Using what character set do messages arive to smsbox/wapbox/mmsbox ? 2. Do the boxes do recoding ? 3. Using which character set do messages get sent to the bearerbox ? 4. Does the bearebox do recoding ? 5. Using which character set do messages arrive in the modules ? 6. Should the modules do recoding (except for driver-specific issues) ? 7. How does the coding member of the Msg* structure relate to the character set of the message ? 8. All the above questions for the MO path. 9. Which encodings do Kannel need to support internally ? 10. Using which encoding should keyword matching be done ? I would really like to see a clear design work on that. I agree with you in the sense that current recoding is messy. I would suggest that recoding doesnt occur at all unless its necessary. This means that every SMSC driver would need to be aware of all coding types and recode once from source to target if needed. Thins like UTF16-iso-gsm should not occur as it is not lossless. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: Encoding in Kannel (was: charset question (Greek))
Oded Arbel wrote: -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Wednesday, March 13, 2002 11:23 AM To: Oded Arbel Cc: [EMAIL PROTECTED] Subject: RE: charset question (Greek) 1. Using what character set do messages arive to smsbox/wapbox/mmsbox ? 2. Do the boxes do recoding ? 3. Using which character set do messages get sent to the bearerbox ? 4. Does the bearebox do recoding ? 5. Using which character set do messages arrive in the modules ? 6. Should the modules do recoding (except for driver-specific issues) ? 7. How does the coding member of the Msg* structure relate to the character set of the message ? 8. All the above questions for the MO path. 9. Which encodings do Kannel need to support internally ? 10. Using which encoding should keyword matching be done ? I would really like to see a clear design work on that. I agree with you in the sense that current recoding is messy. I would suggest that recoding doesnt occur at all unless its necessary. This means that every SMSC driver would need to be aware of all coding types and recode once from source to target if needed. Thins like UTF16-iso-gsm should not occur as it is not lossless. I'd like to opt for recoding to some unicode format, as early as possible, do everything internally with unicode, and let the modules recode to what ever they thing is most efficient. we should supply some functions and/or hints in the msg structure to help modules determine which encoding would cause the least amount of data loss. UTF-16 or UCS2 are good for that, also UTF-8. note that UTF-16 != UCS2 I think that we should remember that XML *requires* UTF-8. Quite many apps are based on XML documents. If we use other Kannel internal encoding, either Kannel or app using XML must recode again. Aarno
RE: Encoding in Kannel (was: charset question (Greek))
How do the application tell Kannel which encoding the MT is in ? it uses a query string parameter to send the encoding, right ? well - just add another encoding binary (if it's not already there), which would cause recoding not to occur. Doing anything text-oriented in unicode would allow us much greater freedom in anything text related : for example - keyword matching. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] I will quote the truth where ever I find it. -- Richard Bach -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Wednesday, March 13, 2002 12:41 PM To: Oded Arbel Subject: Re: Encoding in Kannel (was: charset question (Greek)) I'd like to opt for recoding to some unicode format, as early as possible, do everything internally with unicode, and let the modules recode to what ever they thing is most efficient. we should supply some functions and/or hints in the msg structure to help modules determine which encoding would cause the least amount of data loss. UTF-16 or UCS2 are good for that, also UTF-8. note that UTF-16 != UCS2 (!!) I would definitively vote against this. Unicode is built for text. Lots of people using kannel use it for binary content like pictures or ringtones. There's no coding for binary in Unicode and frankly it doesnt make sense. My view would be to leave the coding in what it was on input and recode it only on request. This means Kannel will transport the data along as far as possible in the original coding. This will make one more thing obvious, we need to split SMS in bearerbox, not SMSBox. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: charset question (Greek)
On Wed, Mar 13, 2002 at 10:22:40AM +0100, Andreas Fink wrote: I would suggest that recoding doesnt occur at all unless its necessary. This means that every SMSC driver would need to be aware of all coding types and recode once from source to target if needed. Unfortunately you can't do sms-split right without knowing the target character set. Probably the smsbox will have to convert to the specified data coding (such as GSM charset) before splitting. This might mean that the SMSC driver then has to convert back to iso-latin-1 or something in order to satisfy the SMSC protocol. A related problem is that the smsbox might not always know what the maximum sms size is. Historically it is predictable, but it seems that for example SMPP is in the process of dropping these size limits. This might mean that the real solution is to push sms splitting all the way to the SMSC drivers, and provide library functions to avoid duplicated code. But that means that the SMSC drivers would have to know about smsbox configurations such as split-chars and headers and footers... It might simplify delivery notification, though, if an sms isn't split until the last moment. On the other hand it might mean passing huge messages through the system because max-messages isn't applied until the last step. -- Richard Braakman Will write free software for money. See http://www.xs4all.nl/~dark/resume.html
Re: charset question (Greek)
On Wed, Mar 13, 2002 at 10:22:40AM +0100, Andreas Fink wrote: I would suggest that recoding doesnt occur at all unless its necessary. This means that every SMSC driver would need to be aware of all coding types and recode once from source to target if needed. Unfortunately you can't do sms-split right without knowing the target character set. Probably the smsbox will have to convert to the specified data coding (such as GSM charset) before splitting. This might mean that the SMSC driver then has to convert back to iso-latin-1 or something in order to satisfy the SMSC protocol. A related problem is that the smsbox might not always know what the maximum sms size is. Historically it is predictable, but it seems that for example SMPP is in the process of dropping these size limits. This might mean that the real solution is to push sms splitting all the way to the SMSC drivers, and provide library functions to avoid duplicated code. But that means that the SMSC drivers would have to know about smsbox configurations such as split-chars and headers and footers... It might simplify delivery notification, though, if an sms isn't split until the last moment. On the other hand it might mean passing huge messages through the system because max-messages isn't applied until the last step. I see. headers footers is a problem in this. Another way would be to carry the SMS always in binary format around. This means the format actually used on the over the air. This is more or less the binary version of the PDU format of the AT interface. In this case, the SMSC driver would simply do things like encoding the data in hex or so. For EMI it woudl split off the UDH, for AT it would work as is and for SMPP its pretty similar. this would also work for HTTP interface for kannel-kannel (providing coding / charset are set correctly). Any SMSC types however who dont take binary format as input would be a problem then (some content gateway recently added could be a problem). If we cant code something in GSM binary format, we cant send it to a phone so its THE common format. However the question is also what happens to non GSM networks in this case. Are there any issues there maybe? The advantage of this solution is that there is much less processing power needed in bearerbox and the cpu intensive tasks would be done in SMSBox which can be load shared easily. Also routing can work more efficiently as you would never have to think about recoding. The binary format is as close to GSM as it can be so every SMS protocol should be supportable. Comments? -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: charset question (Greek)
-Original Message- From: Andreas Fink To: Richard Braakman Cc: [EMAIL PROTECTED] Sent: 3/13/02 12:51 PM Subject: Re: charset question (Greek) Another way would be to carry the SMS always in binary format around. This means the format actually used on the over the air. This is more or less the binary version of the PDU format of the AT interface. In this case, the SMSC driver would simply do things like encoding the data in hex or so. For EMI it woudl split off the UDH, for AT it would work as is and for SMPP its pretty similar. this would also work for HTTP interface for kannel-kannel (providing coding / charset are set correctly). Any SMSC types however who dont take binary format as input would be a problem then (some content gateway recently added could be a problem). If we cant code something in GSM binary format, we cant send it to a phone so its THE common format. However the question is also what happens to non GSM networks in this case. Are there any issues there maybe? I know of a SMS reseller in Taiwan where they use a proprietary gateway to connect to the SMSC of the network operator. This gateway wants the SMS text to be in BIG5 encoding. Your proposal would make support for such a setup very hard. Regards Jörg
RE: charset question (Greek)
-Original Message- From: Andreas Fink To: Richard Braakman Cc: [EMAIL PROTECTED] Sent: 3/13/02 12:51 PM Subject: Re: charset question (Greek) Another way would be to carry the SMS always in binary format around. This means the format actually used on the over the air. This is more or less the binary version of the PDU format of the AT interface. In this case, the SMSC driver would simply do things like encoding the data in hex or so. For EMI it woudl split off the UDH, for AT it would work as is and for SMPP its pretty similar. this would also work for HTTP interface for kannel-kannel (providing coding / charset are set correctly). Any SMSC types however who dont take binary format as input would be a problem then (some content gateway recently added could be a problem). If we cant code something in GSM binary format, we cant send it to a phone so its THE common format. However the question is also what happens to non GSM networks in this case. Are there any issues there maybe? I know of a SMS reseller in Taiwan where they use a proprietary gateway to connect to the SMSC of the network operator. This gateway wants the SMS text to be in BIG5 encoding. Your proposal would make support for such a setup very hard. That's true but on the other hand kannel doesnt support this proprietary gateway yet. Even to make it work the way it works today is difficult. What would be needed would be GSM binary format - BIG5. Not that difficult. Its either Unicode payload which should be relatively easy or its latin1 which I dont know how it fits into BIG5 (I'm not very familiar with BIG5) or its binary which probably isnt supported by that gateway then. Thats the same kind of conversions currently done. The proprietary gateway then does the reverse conversion back to GSM binary format so it should be transparent. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: charset question (Greek)
Another way would be to carry the SMS always in binary format around. This means the format actually used on the over the air. This is more or less the binary version of the PDU format of the AT interface. In this case, the SMSC driver would simply do things like encoding the data in hex or so. For EMI it woudl split off the UDH, for AT it would work as is and for SMPP its pretty similar. this would also work for HTTP interface for kannel-kannel (providing coding / charset are set correctly). Any SMSC types however who dont take binary format as input would be a problem then (some content gateway recently added could be a problem). If we cant code something in GSM binary format, we cant send it to a phone so its THE common format. However the question is also what happens to non GSM networks in this case. Are there any issues there maybe? The advantage of this solution is that there is much less processing power needed in bearerbox and the cpu intensive tasks would be done in SMSBox which can be load shared easily. Also routing can work more efficiently as you would never have to think about recoding. The binary format is as close to GSM as it can be so every SMS protocol should be supportable. Comments? That would be bad - I'm currently working with two (different) SMSC protocols that both use some sort of text for transfer : weirdly encoded ASCII or utf-8. if you lug the messages around in binary, whenever a non-standard SMSC protocol comes along you'll have to do lotsa recoding in the module itself. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] You're not who you are, you're only what other people think of you. -- Fishizm
RE: charset question (Greek)
The advantage of this solution is that there is much less processing power needed in bearerbox and the cpu intensive tasks would be done in SMSBox which can be load shared easily. Also routing can work more efficiently as you would never have to think about recoding. The binary format is as close to GSM as it can be so every SMS protocol should be supportable. Comments? That would be bad - I'm currently working with two (different) SMSC protocols that both use some sort of text for transfer : weirdly encoded ASCII or utf-8. if you lug the messages around in binary, whenever a non-standard SMSC protocol comes along you'll have to do lotsa recoding in the module itself. A library function would be sufficient to handle this. So its not lots of recoding. We do lots of recoding already in kannel for no reason. And it makes current kannel non transparent which I consider pretty bad way to go. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: charset question (Greek)
I aggree with you that the current code is rather messy. We need just two cases: text and binary. Text should be in unicode while binary messages should be left alone. Then the the SMSC drivers could convert text messages into their local encoding, perform required splitting (with common infrastructure) and send the messages. Regards Jörg -Original Message- From: Andreas Fink To: Oded Arbel Cc: [EMAIL PROTECTED] Sent: 3/13/02 2:19 PM Subject: RE: charset question (Greek) A library function would be sufficient to handle this. So its not lots of recoding. We do lots of recoding already in kannel for no reason. And it makes current kannel non transparent which I consider pretty bad way to go.
RE: charset question (Greek)
-Original Message- That would be bad - I'm currently working with two (different) SMSC protocols that both use some sort of text for transfer : weirdly encoded ASCII or utf-8. if you lug the messages around in binary, whenever a non-standard SMSC protocol comes along you'll have to do lotsa recoding in the module itself. A library function would be sufficient to handle this. So its not lots of recoding. We do lots of recoding already in kannel for no reason. And it makes current kannel non transparent which I consider pretty bad way to go. That's true too. but I don't see how working with binary data internally (recoding to binary on entry, converting from binary to text whenever some processing needs to be done - and then back to binary, converting to driver-specific format at the end) is better then using unicode internally (recoding to unicode if needed at entrance, using common routines for processing, recoding to driver-specific format at the end). Also - you have to consider MMS gateways which are bound to use some kind of text oriented transports like XML over something (you can't fight he power of hype ;-) -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] If you are a fatalist, what can you do about it? -- Ann Edwards-Duff
RE: charset question (Greek)
I aggree with you that the current code is rather messy. We need just two cases: text and binary. Text should be in unicode while binary messages should be left alone. Then the the SMSC drivers could convert text messages into their local encoding, perform required splitting (with common infrastructure) and send the messages. unicode and binary sounds ok to me. however it comes back to the issue that we need recoding routines everywhere. Is a greek unicode text now to be sent as unicode or as GSM alphabeth? is a text suitable for ISO8859-1? how about characters which exist in multiple unicode character tables? how to do pattern matching? It aint easy, lots of things to think of. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: charset question (Greek)
I aggree with you that the current code is rather messy. We need just two cases: text and binary. Text should be in unicode while binary messages should be left alone. Then the the SMSC drivers could convert text messages into their local encoding, perform required splitting (with common infrastructure) and send the messages. ... and is an incoming SMS now binary or unicode? what if we have an SMSC which supports ascii text but not binary or unicode? how do we decide at routing if input=unicode or input=binary but containing clean 7 bit text? -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: charset question (Greek)
-Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Wednesday, March 13, 2002 3:43 PM To: J?rg Pommnitz Cc: [EMAIL PROTECTED] Subject: RE: charset question (Greek) I aggree with you that the current code is rather messy. We need just two cases: text and binary. Text should be in unicode while binary messages should be left alone. Then the the SMSC drivers could convert text messages into their local encoding, perform required splitting (with common infrastructure) and send the messages. unicode and binary sounds ok to me. however it comes back to the issue that we need recoding routines everywhere. Is a greek unicode text now to be sent as unicode or as GSM alphabeth? That's the driver's place to decide - a configuration option? is a text suitable for ISO8859-1? Library functions should help decide the best encoding to use how about characters which exist in multiple unicode character tables? What's that ? AFAIK - each language has it's own non-duplicated space in the unicode table. how to do pattern matching? Just store whatever needs matching in unicde too. It aint easy, lots of things to think of. right . ain't that fun ? :-) -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Too much of everything is just enough.
RE: charset question (Greek)
Is a greek unicode text now to be sent as unicode or as GSM alphabeth? Common infrastructure: provide conversion from Unicode to GSM 7bit (including Greek). Drivers can override the common fucntion to use whatever their corresponding SMSC requires. is a text suitable for ISO8859-1? This is something we cannot decide. Where would you place the limit? Is a single character that is out of range enough? Or 25%? how about characters which exist in multiple unicode character tables? I don't understand this. Where is the problem? (I know that the ASCII characters appear multiple times in Unicode as part of the ISO8859 encodings). how to do pattern matching? We could use UTF-8 to encode Unicode and use the normal ANSI-C string operations. ... and is an incoming SMS now binary or unicode? This is a task for the SMSC driver. In the common case this is what the DCS tells you. what if we have an SMSC which supports ascii text but not binary or unicode? Don't use it for Unicode or binary messages. We cannot prevent stupidity in Kannel. how do we decide at routing if input=unicode or input=binary but containing clean 7 bit text? We know the original character set (e.g. from the content-type for POST and the charset CGI parameter for GET). What I envision is something like this struct smsc_msg_ops { int (*unicode_to_smsc)(Msg *); int (*split_message)(Msg *); }; Then we could do: ...at initialization... SMSCenter *smsc; struct smsc_ops ops; ops = default_ops (); smsc = smscenter_construct(ops); ...at runtime... smsc-msg_ops-unicode_to_smsc(msg); smsc-msg_ops-split_message(msg); smsc-delivermsg (msg); This is a very rough darft, but you get the idea. Regards Jörg
RE: charset question (Greek)
What's that ? AFAIK - each language has it's own non-duplicated space in the unicode table. well in theory this should be the case and it probably is for non european languages but for historical reasons there are some duplications. examples: ä (German umlaut a) iso8859-1: E4 unicode:00E4 or 0061 + 0308 (a + ¨) -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: charset question (Greek)
On Wed, Mar 13, 2002 at 12:51:08PM +0100, Andreas Fink wrote: The advantage of this solution is that there is much less processing power needed in bearerbox and the cpu intensive tasks would be done in SMSBox which can be load shared easily. Also routing can work more efficiently as you would never have to think about recoding. The binary format is as close to GSM as it can be so every SMS protocol should be supportable. Hmm... I think one of the problems is that some SMSC protocols try to work around the limitations of the GSM SMS encoding. For example, SMPP has a special encoding for WAP datagrams, and it seems to be trying to become a generic datagram service. I think we can no longer assume that there is a GSM network behind every SMSC. I expect that SMS over GPRS will be much more flexible than SMS over GSM. -- Richard Braakman Will write free software for money. See http://www.xs4all.nl/~dark/resume.html
Re: charset question (Greek)
- Original Message - From: Richard Braakman [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, March 13, 2002 11:11 AM Subject: Re: charset question (Greek) On Wed, Mar 13, 2002 at 10:22:40AM +0100, Andreas Fink wrote: I would suggest that recoding doesnt occur at all unless its necessary. This means that every SMSC driver would need to be aware of all coding types and recode once from source to target if needed. Unfortunately you can't do sms-split right without knowing the target character set. Probably the smsbox will have to convert to the specified data coding (such as GSM charset) before splitting. This might mean that the SMSC driver then has to convert back to iso-latin-1 or something in order to satisfy the SMSC protocol. A related problem is that the smsbox might not always know what the maximum sms size is. Historically it is predictable, but it seems that for example SMPP is in the process of dropping these size limits. This might mean that the real solution is to push sms splitting all the way to the SMSC drivers, and provide library functions to avoid duplicated code. But that means that the SMSC drivers would have to know about smsbox configurations such as split-chars and headers and footers... It might simplify delivery notification, though, if an sms isn't split until the last moment. On the other hand it might mean passing huge messages through the system because max-messages isn't applied until the last step. I vote and offer me to do the work to always use utf-8 inside kannel, do the recoding in smsbox to accept other codings at http (app - smsbox) (like now, the text=..charset=iso-8859-1 or defining the charset in http post) and probably defining a default charset to smsbox-app, like my mo-recode, to simplify applications (if possible, recode to iso8859-1, for example). Then, smsc_* code should know which charset to use and know how to split the message. But I guess it's better to do a release of kannel and start to think in a new archictecture, using the modularity that have been spoken. There's some issues I've been thinking to new architecture, like having a sms_router process, some smsc_* processes that connects to it, informing its capabilities (like sms lenght and accepted charsets), and have smsbox (http process) connecting to it and inform what services does it provide. Or having a monolith process. And have kill -HUP reload the configuration. Well, maybe I'm just rambling because of the lack of sleep :) -- Richard Braakman Will write free software for money. See http://www.xs4all.nl/~dark/resume.html
Re: charset question (Greek)
Because SMS with unicode contains only 70 characters. (That is why I do not like Unicode, at least.) Andreas, is coding of greek chars with GSM default alphabet standardised any way ? aarno Oded Arbel wrote: Haven't got a good answer, but another question : why don't you want to use unicode ? -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Let others praise ancient times; I am glad I was born in these. -- Ovid (43 B.C. - A.D. 18) -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Monday, March 11, 2002 5:55 PM To: [EMAIL PROTECTED] Subject: charset question (Greek) I got a simple question for once. We got coding = iso-8859-1, UTF16BE supported. What I need to specify is the GSM Default alphabeth. Or in other words I want to tell Kannel that my input is already correctly encoded. What do I need to do for that? I need this for supporting greek characters but without using unicode. This seems to be done on some phones by using additional characters out of the GSM default alphabeth but they are not part of ISO-8859-1 but of ISO-8859-5. So using iso8859-1 is not a good choice for inputting those characters. GSM Default Alphabeth would be. Anyone? -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: charset question (Greek)
Because SMS with unicode contains only 70 characters. (That is why I do not like Unicode, at least.) Andreas, is coding of greek chars with GSM default alphabet standardised any way ? Dont know really but the code I was referred to was: http://www.dreamfabric.com/sms/default_alphabet.html My approach would be to do a ISO8859-1 mapping to GSM alphabeth and a ISO8859-5 mapping to GSM alphabeth. However current SMSC code does only use ISO8859-1 all the way. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: charset question (Greek)
My experience solving this problem on a wider scale with european SMS is to simply go to UTF8 for any imput stream you know, can guess, or have hard configured an input charset for - and do the same for any stream which you know, have configured or can announce an output charset for. This often requires access to a bit of info on the phone. The first is non-trivial -as there are language dependencies (i.e. Consider, say, Dutch and German and ASCII approximation - the u\: in German is closer to an 'u' and a 'u' in german closer to an 'eu' - but the opposite is true for other langauges - so you want to know from what language to what language you are gooing. See the CCC api for examples). The latter, outgoing mapping, is non-trivial too - i.e. which to choose when you have a choise and will result in nasty heuristics based on language and initial set. But usually you get away when you strictly stay in latin-X space, Asian space, etc - it is when you mix, say, arabic with latin that you get in trouble. But in the end you have utf8 mapping throughout your system - with clearly defined tuning points; and esp. the output tuning point is in the right place - where the operator has a chance to get it right. Dw. -- Dirk-Willem van Gulik / [EMAIL PROTECTED] On Tue, 12 Mar 2002, Aarno [iso-8859-1] Syvänen wrote: Because SMS with unicode contains only 70 characters. (That is why I do not like Unicode, at least.) Andreas, is coding of greek chars with GSM default alphabet standardised any way ? aarno Oded Arbel wrote: Haven't got a good answer, but another question : why don't you want to use unicode ? -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Let others praise ancient times; I am glad I was born in these. -- Ovid (43 B.C. - A.D. 18) -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Monday, March 11, 2002 5:55 PM To: [EMAIL PROTECTED] Subject: charset question (Greek) I got a simple question for once. We got coding = iso-8859-1, UTF16BE supported. What I need to specify is the GSM Default alphabeth. Or in other words I want to tell Kannel that my input is already correctly encoded. What do I need to do for that? I need this for supporting greek characters but without using unicode. This seems to be done on some phones by using additional characters out of the GSM default alphabeth but they are not part of ISO-8859-1 but of ISO-8859-5. So using iso8859-1 is not a good choice for inputting those characters. GSM Default Alphabeth would be. Anyone? -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
OpenSSL question
Hi list. A question about SSL - I'm trying to establish a connection (using gwlib HTTPs support) to an HTTPS server, which unfortunatly is not responding well. whenever the server doesnot complete the SSL handshake, the HTTP connection gets stuck in SSL_connect. I was wanted to know if there's possibly a way to set a time out on http connections, so the would properly fail after not completing for a long time ? -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Famous Last Words 294-Well, if I remember correctly, it's AC 7, 3+1 HD, 1d8 damage. Hmm... scribble scribble I should defeat him around the 4th round and still have about 12.5 hit points left. Ok, Let's rock!
Re: charset question (Greek)
Can't you do a get like ...coding=1text=insert utf-8 herecharset=utf-8 kannel should convert your chars to iso-8859-1 and then to gsm alphabet and send the 7bit message correctly I know it works (or worked?) because I've sent every gsm_alphabet to my mobile to test it (and then discovered that the version of my 6210 - and only mine - doesn't know about [ and ]) - Original Message - From: Andreas Fink [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, March 11, 2002 3:54 PM Subject: charset question (Greek) I got a simple question for once. We got coding = iso-8859-1, UTF16BE supported. What I need to specify is the GSM Default alphabeth. Or in other words I want to tell Kannel that my input is already correctly encoded. What do I need to do for that? I need this for supporting greek characters but without using unicode. This seems to be done on some phones by using additional characters out of the GSM default alphabeth but they are not part of ISO-8859-1 but of ISO-8859-5. So using iso8859-1 is not a good choice for inputting those characters. GSM Default Alphabeth would be. Anyone? -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: Another coding question.
I've done the lamer way. I'm searching for # text and if present, fall back to ucs2 That's somewhere in urltrans.c, check for mo_recode - Original Message - From: Oded Arbel [EMAIL PROTECTED] To: Kannel-devel (E-mail) [EMAIL PROTECTED] Sent: Monday, March 11, 2002 5:45 PM Subject: Another coding question. Hi list. in a follow up to my last coding question : when receiving the UTF-8 encoded text, what I wanted to do is to try to encode it to 7 bit ASCII, if not successful (have chars that need more then 7 bit, i.e. high iso-8859-8 chars) I will then try to encode to ISO-8859-8 and if that does not succeed (message probably has unicode characters that are not part of iso-8859-8) I will then encode to UCS-2. Now the problem is that when I try to encode to ASCII or ISO-8859-8, encoding always succeed, and unicode characters get translated into HTML entities (for example #1505;). is there a way to stop it from doing that and simply fail the conversion ? I remember something similar to this discussed on the list, but the mail archive search refused to help me locate it (didn't like me entering weird characters, like ;-) -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] The cynics are right nine times out of ten. -- Henry Louis Mencken
Re: charset question (Greek)
Can't you do a get like ...coding=1text=insert utf-8 herecharset=utf-8 kannel should convert your chars to iso-8859-1 and then to gsm alphabet and send the 7bit message correctly No. iso-8859-1 does NOT contain the greek characters needed. They exist in the extended gsm alphabeth but not in iso. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
encoding question
Hi list. While trying to write an SMSC module for SOAP access, I've encountered this interesting dilema (somewhat related to issues recently discussed on the list) : the messages received and sent are encoded in UTF-8 - now, when converting from the XML format to the Msg* format, should I re-encode to UCS2 or leave it as UTF-8 (in which case, we should have UTF-8 as another encoding #define in sms.h) ? -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Don't wash electrical appliances while their still connected to the mains.
RE: charset question (Greek)
Haven't got a good answer, but another question : why don't you want to use unicode ? -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Let others praise ancient times; I am glad I was born in these. -- Ovid (43 B.C. - A.D. 18) -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Monday, March 11, 2002 5:55 PM To: [EMAIL PROTECTED] Subject: charset question (Greek) I got a simple question for once. We got coding = iso-8859-1, UTF16BE supported. What I need to specify is the GSM Default alphabeth. Or in other words I want to tell Kannel that my input is already correctly encoded. What do I need to do for that? I need this for supporting greek characters but without using unicode. This seems to be done on some phones by using additional characters out of the GSM default alphabeth but they are not part of ISO-8859-1 but of ISO-8859-5. So using iso8859-1 is not a good choice for inputting those characters. GSM Default Alphabeth would be. Anyone? -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: Another coding question.
Well it is an issue in this case, since the incoming MO is _always_ coded in UTF-8, so I must decide myself if I want to recode it to iso-8859-1 or to UTF-16 (UCS-2, whatever). I guess I will have to scan the string mysels for utf-8 characters, code to UCS2 if I find any or to 7 bit ASCII if I don't. that should take care of most cases. I don't mind this solution (except that it's a bit more work for me - but I've got more keyboard milage just from this discussion alone), but the keyword matching is still open - take into consideration the following cases, and please tell me if you think that Kannel can handle these well - currently. I think that all of them will fail keyword matching : 1. keyword has high iso-8859-1 chars (acented chars) and message is encoded in UCS2 (only ascii chars). 2. keyword is ASCII only and message is encoded in UCS2 (has some unicode chars). 3. keyword must contain non-english chars and message is encoded in whatever. -- Oded Arbel m-Wise Inc. [EMAIL PROTECTED] Truth will out this morning. (Which may really mess things up.) -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Monday, March 11, 2002 8:07 PM To: Oded Arbel Subject: RE: Another coding question. No, because I don't bother with keywords - I just want the message out. well then leave it as UTF16 if its UTF16 and ISO-8859-1 if its that. I dont see the problem as the recoding discussion was only occuring once the keyword matching was an issue. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
quick and simple question
it guess this is a yes or no question does kannel support SMSC-originated enquire_link ?
RE: A DLR question
Hi Andrea. About the DLRs - it's really bothering me, so I would appreciate it if you could please notify me of your findings. I still think that all DLRs should be handled by dlr.c - though I admit that doing dlr_add() and then dlr_find() right on top of that is not nice. maybe we should have a dlr_create(), or have dlr_add() also generate a new Msg* . in the mean time, I submit my patch against dlr.c (don't remember if I've done it already), and I hope you will consider it for CVS. TIA Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- No Operation Plan ever survives initial contact. -- Finagle's Military Laws n°117 -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Tuesday, February 19, 2002 11:38 AM To: Oded Arbel Subject: RE: A DLR question -Original Message- Well, actually.. that's what I'm doing :-/ . So, to rephrase my question - how do I create a DLR on an SMSC_FAIL or SMSC_SUCCESS, w/o calling dlr_add/dlr_find ? from looking at emi2, that's exactly what's happening - first it does dlr_add (for SMSC_*) and later does dlr_find on them. of course, it makes much more sense how it happens in the emi2 code, then in my code where I call dlr_add only to call dlr_find in the next statement. 8 and 16 are generated in EMI driver and never passed on to dlr.c. The message is internally generated and passed back to bearerbox/smsbox and is not generated by dlr_find (it cant find those messages ever). Well - from reading the emi2 sources (couldn't find anything about DLR in emi), it seems to me that the driver does generate the SMSC_* DLRs by using dlr_add/dlr_find, and here's the code snippets : yes its emi2 only. I think we can start dropping the old emi driver. No real use for it anymore. if (msg-sms.dlr_mask 0x18) { snip dlr_add(octstr_get_cstr(conn-id), octstr_get_cstr(ts), octstr_get_cstr(emimsg-fields[E50_ADC]), octstr_get_cstr(msg-sms.service), octstr_get_cstr(msg-sms.dlr_url), msg-sms.dlr_mask); (0x18 being, of course, SMSC_FAIL and SMSC_SUCCESS) and then : dlrmsg = dlr_find(octstr_get_cstr(conn-id), octstr_get_cstr(ts), /* timestamp */ octstr_get_cstr(origmsg-sms.receiver), /* destination */ (octstr_get_char(emimsg-fields[0], 0) == 'A' ? DLR_SMSC_SUCCESS : DLR_SMSC_FAIL)); Youre right. This however is completely wrong in my eyes. it should report values DLR_SUCCESS (0x01) and DLR_FAIL (0x02). I take a deeper look into this as there's a bug to be fixed. I would really appreciate it if you can point me to where exactly the EMI driver generates the SMSC_* DLRs internally, as in my current implementation the generation of those DLRs is done calling dlr_add and immediately dlr_find, which as you stated - is not the best approach ;-) Hmm. go back a few revisions before the send loop was changed and you'll find it.
Re: General Question
Hi guys, Have you all guys, a general status about phones that works with Kannel (as client not SMSC)? yes, all phones which support SMS today. This is 99.999% of the GSM phones. Even my oldest phone back in 1992 did support GSM SMS. I've noticed that some phones have some trouble, ex. Siemens S35. (UP Browser WAP) WAP is a completely different story. Using WAP, there's no SMSC involved. I've also noticed that some OTA configuration will not work. (Siemens S35 ) Nokia do not recieve any OTA mesg. . Thats even another different story as those are binary messages and they are module dependent. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: A DLR question
-Original Message- Well, actually.. that's what I'm doing :-/ . So, to rephrase my question - how do I create a DLR on an SMSC_FAIL or SMSC_SUCCESS, w/o calling dlr_add/dlr_find ? from looking at emi2, that's exactly what's happening - first it does dlr_add (for SMSC_*) and later does dlr_find on them. of course, it makes much more sense how it happens in the emi2 code, then in my code where I call dlr_add only to call dlr_find in the next statement. 8 and 16 are generated in EMI driver and never passed on to dlr.c. The message is internally generated and passed back to bearerbox/smsbox and is not generated by dlr_find (it cant find those messages ever). Well - from reading the emi2 sources (couldn't find anything about DLR in emi), it seems to me that the driver does generate the SMSC_* DLRs by using dlr_add/dlr_find, and here's the code snippets : if (msg-sms.dlr_mask 0x18) { snip dlr_add(octstr_get_cstr(conn-id), octstr_get_cstr(ts), octstr_get_cstr(emimsg-fields[E50_ADC]), octstr_get_cstr(msg-sms.service), octstr_get_cstr(msg-sms.dlr_url), msg-sms.dlr_mask); (0x18 being, of course, SMSC_FAIL and SMSC_SUCCESS) and then : dlrmsg = dlr_find(octstr_get_cstr(conn-id), octstr_get_cstr(ts), /* timestamp */ octstr_get_cstr(origmsg-sms.receiver), /* destination */ (octstr_get_char(emimsg-fields[0], 0) == 'A' ? DLR_SMSC_SUCCESS : DLR_SMSC_FAIL)); I would really appreciate it if you can point me to where exactly the EMI driver generates the SMSC_* DLRs internally, as in my current implementation the generation of those DLRs is done calling dlr_add and immediately dlr_find, which as you stated - is not the best approach ;-) Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- Work is of two kinds: first, altering the position of matter at or near the earth's surface relatively to other matter; second, telling other people to do so. The first kind is unpleasant and ill-paid, the second is pleasant and highly paid. -- Bertrand Russell
Re: A DLR question
Hi list. I've got into some problems trying to implement DLRs for a module I'm writing. Kannel supports five DLR typs : accepted, rejected, buffered, accpeted by the SMSC and rejected by the SMSC. now I assume that the DLR entry should persist until a final state is achieved, that is - rejection (any which) or accepted, but the DLR delete logic, as I see in the source files is like this : if((typ DLR_BUFFERED) ((dlr_mask DLR_SUCCESS) || (dlr_mask DLR_FAIL))) { // don't delete } else { // delete } that means that if I try to send DLR on anything except buffered - the DLR for that message will be lost. I don't think this is correct, as I am also implementing the SMSC_* type DLRs, and when a SMSC_SUCCESS is sent, I don't want the DLR to be deleted. The issue here is that the code in dlr.c does NOT deal with SMSC_* type of DLRs. They are done directly in the driver. dlr.c does only handle messages which need to be stored a refrence ID temporarely. Example: - you send a message with full dlr enabled over EMI. - EMI code sends message to SMSC and generates SMSC_SUCCESS if SMSC sends ACK or SMSC_FAIL if SMSC sends NACK. - if it was ACK, it wil then call dlr.c functions to add the SMSC message ID to the databse. When the SMSC comes back with delivered or failed (note: this is not accepted or rejected but delivered to the phone or rejected due to wrong number, not reachable and expired or similar), the dlr.c code gets called again to get the corresponding URL back to be called by passing the reference number originally received in the ACK. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: A DLR question
why not ? I think it would make more sense to have all the DLR processing in the same place, otherwise - how do I generate a DLR for SMSC_SUCCESS or SMSC_FAIL w/o calling dlr_find ? and if I call dlr_find - it will delete the DLR status so it will not find it when I get another status report for that message (for example, after sending back DLR_SMSC_SUCCESS, I want to send DLR_SUCCESS or DLR_FAIL). Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- And remember kids, Cheese is Murder! -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] The issue here is that the code in dlr.c does NOT deal with SMSC_* type of DLRs. They are done directly in the driver. dlr.c does only handle messages which need to be stored a refrence ID temporarely. Example: - you send a message with full dlr enabled over EMI. - EMI code sends message to SMSC and generates SMSC_SUCCESS if SMSC sends ACK or SMSC_FAIL if SMSC sends NACK. - if it was ACK, it wil then call dlr.c functions to add the SMSC message ID to the databse. When the SMSC comes back with delivered or failed (note: this is not accepted or rejected but delivered to the phone or rejected due to wrong number, not reachable and expired or similar), the dlr.c code gets called again to get the corresponding URL back to be called by passing the reference number originally received in the ACK.
Kannel Development question(s)
Hey guys, I'm doing some research and testing here, and have been using kannel for a while now to act as our SMSC using sms modems. All is well so far, but i started using SMPPSim to test the smpp features of kannel as we're going to have to link to some carriers' smscs now. Ive found that in kannel 1.1.15 the smpp stuff crashes half the time with an octstr line, and I noticed a patch for it in the cvs version, but Im not too comfortable using cvs in production (as you might imagine!) I also noticed that the last packaged release (1.1.15) was a LONG time ago. Do you guys plan on releasing a new version of kannel soon? Would you reccomend even using kannel for production as it stands right now? We need to move pretty quick and I need to find out whether or not Kannel will be featured and stable enough to put into LARGE scale production, linking with various carriers SMSC's, or whether I should seek out a commercial program. Please be honest, I dont want to end up in a huge mess :) I was considering looking to Alligata, or is it even worth it? Just looking for some honest feedback from you guys here. My company also entertained the idea of paying for kannel development, but we need someone in the Vancouver, BC, Canada area as we need face-to-face consulting from time to time on it. :/ -ANY- feedback would be GREATLY appreciated. Ive got to find a full solution soon. Good work so far on Kannel though, guys, its been great to me so far =)
RE: A question about PDU encoding in smsc_at2
Hi list. sorry about that last post - thinking about it, it doesn't seem to me like the right solution : yea, it works, but it doesn't address the wider issue which Andreas Fink mentioned. So, for your inspection, I submit this larger patch, which I hope solves the particular problem Andreas Fink talked about, and as a side effect, helps me with a cleaner solution to the problem with AT2. this patch is against current CVS, and it's a bit large - so I'll try to explain : to sms.c/.h I added a function called sms_msgdata_len() to which you can pass a Msg struct and get the number of actual septets or octets this message will contain after encoding (based on the message's coding). I then changed smsc_at2.c to use that function to intialize len in at2_pdu_encode() to the right value, no matter what encoding the msg will be delivered. then to the real problem at hand : to shared.c I added the function extract_msgdata_part_by_coding() which is a wapper for extract_msgdata_part() that will make sure that if the message is 7 bit coded and contains 'escaped' characters, it will cut the message to the right size. I then proceeded to change sms_split() to use the two new functions. I hope this will help, and have a nice day :-) Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- Trifles make perfection, and perfection is no trifle. -- Michelangelo -Original Message- From: Oded Arbel Sent: Tuesday, January 15, 2002 12:29 PM To: Andreas Fink Cc: [EMAIL PROTECTED] Subject: RE: A question about PDU encoding in smsc_at2 Thank you all for the responses.. I couldn't find where messages get split in smsc_at2 , from my tests it appears that messages get truncated and not split - but I can't figure out where that happens. anyway - this small patch will convert to gsm 7 bit alphabet early, before the length computations, and does solve the escape sequences problem for me. the usual warnings - Works For Me(tm), YMMV, etc'. Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- Some say life is hell and death an escape, others say heaven awaits us in the world beyond, but either way I need a new pair of shoes. -- Privateer. -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Monday, January 14, 2002 6:38 PM To: Oded Arbel Cc: [EMAIL PROTECTED] Subject: RE: A question about PDU encoding in smsc_at2 This is not exactly what I had in mind - (a) as this kind of string would get translated by kannel to '?' as ESC will be translated directly to '?'. (b) the GSM standards _currently_ do define the ESC sequences as valid. I'm not really worried about current standard support in phone (as newer phones would surely conform to the current standards), but more with standard support within Kannel. and my question is (again) - which do you think is the correct implementation, Kannel's counting only actual characters, or Siemens M20's counting every septet ? P.S tests show that some phones just silently ignore the escape sequences (showing the character after the ESC - the triangle bracket), for example - the Nokia 33, and some show the intended result - the square bracket, for example - the Nokia 71. Oded Arbel m-Wise Inc. [EMAIL PROTECTED] What I can tell from EMI usage, the escape sequence stuff is slightly broken. I got customers sending \n in their text (because they've forgotton to replace it with linefeed). In kannel this translates the \ to two characters. The problem here is that it increses the size of the text and this AFTER the message has been split. The result of that is that we will end up with SMS being longer than 160 characters. So while you take a look into this, think about this fact. The final header has to be the number of octets of the SMS after escape sequences have been applied. The escape stuff is something done in the phone and the SMSC never cares about it. For the SMSC its just a stream of bytes. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink gw.patch Description: gw.patch
RE: A question about PDU encoding in smsc_at2
Ok, this is where I have some problems : looking just at at2_pdu_encode(), I think the UDH never gets converted to 7 bit chars, but always remains as 8 bit chars. another question that is probably not related : on my Siemens M20, whenever I send a SM (using at2) which contains characters which should be 'escaped' acording to the GSM charset (for example - the square brackets which I like to use), the modem rejects the message with error 304 invalid PDU mode parameter. I found out that if I encode the message length byte (UDL) in the PDU to cound 'escaped' characters as 2 chars (one for the char and one for the ESC), the modem accepts the message. Does that sounds reasonable ? do other modems count escaped chars as one char ? is it a bug in the modem ? From the GSM documentation I could understand that the UDL should count GSM 7 bit characters, but from the siemens documentation I got two quote - from the 'Developer's Guide : SMS with the SMS PDU-mode' : The UDL field gives an integer representation of the number of characters within the User Data field to follow but from the M20 manual (in german) : UDL (user DATA length) value must agree exact with the byte length of the string. When I recieve a message, the UDL field indicates the number of septets (counting ESC as a char) in the message. Do you think that the M20 doesn't follow the GSM standard here ? Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- What's in it doesn't count - it's the presntation that matters. -- Fishizm -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Monday, January 14, 2002 9:19 AM To: Oded Arbel Subject: RE: A question about PDU encoding in smsc_at2 oh - I get it : the UDH is already encoded correctly using the right DCS before the call to at2_pdu_encode(), and then at2_pdu_encode() only needs to translate the bitstream to hex strings, and in the length computation it computes how many septets are in the already encoded bit stream - right ? Im not sure if thats the case. However at the end, the UDH must contain the number of final octets. so at2_pdu_encode will most probably call the 7 to 8 bit conversion but calculate the length for the udh before that. The routine was copied out of previous at driver without any changes (meaning it always worked but I didnt write it). -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: A question about PDU encoding in smsc_at2
(for example - the square brackets which I like to use), the modem rejects the message with error 304 invalid PDU mode parameter. Well, this will probably hurt you, but I'm afraid square brackets are not part of GSM character set. At least I didn't see them there.
RE: A question about PDU encoding in smsc_at2
-Original Message- From: Alexei Pashkovsky [mailto:[EMAIL PROTECTED]] Sent: Monday, January 14, 2002 5:09 PM To: Oded Arbel Cc: Kannel-devel (E-mail) Subject: Re: A question about PDU encoding in smsc_at2 (for example - the square brackets which I like to use), the modem rejects the message with error 304 invalid PDU mode parameter. Well, this will probably hurt you, but I'm afraid square brackets are not part of GSM character set. At least I didn't see them there. I'm sorry too, but square brackets are part of the GSM 03.38 alphabet, according to this : http://www.dreamfabric.com/sms/default_alphabet.html or you can get the official document from http://pda.etsi.org/pda/home.asp?wki_id=6821 Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- This is my SIG. There are many like it, but this one is mine.
Re: A question about PDU encoding in smsc_at2
Alexei Pashkovsky wrote: (for example - the square brackets which I like to use), the modem rejects the message with error 304 invalid PDU mode parameter. Well, this will probably hurt you, but I'm afraid square brackets are not part of GSM character set. At least I didn't see them there. There *is* a way, however. IIRC the sequence ESC- or ESC- will work, ie: %1b%3c and %1b%3e See a recent revision of GSM 3.38 for the gory details of this and a few other escape sequences, including the Euro sign (%1b%65). Keep in mind that this will look pretty stupid on many handsets, including relatively advanced models like the Motorola Accompli 008. David WHITE CONNECT AUSTRIA
RE: A question about PDU encoding in smsc_at2
This is not exactly what I had in mind - (a) as this kind of string would get translated by kannel to '?' as ESC will be translated directly to '?'. (b) the GSM standards _currently_ do define the ESC sequences as valid. I'm not really worried about current standard support in phone (as newer phones would surely conform to the current standards), but more with standard support within Kannel. and my question is (again) - which do you think is the correct implementation, Kannel's counting only actual characters, or Siemens M20's counting every septet ? P.S tests show that some phones just silently ignore the escape sequences (showing the character after the ESC - the triangle bracket), for example - the Nokia 33, and some show the intended result - the square bracket, for example - the Nokia 71. Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- As long as you do not move you can still choose any direction. -Original Message- From: Dave White [mailto:[EMAIL PROTECTED]] Sent: Monday, January 14, 2002 5:26 PM To: Kannel-devel (E-mail) Subject: Re: A question about PDU encoding in smsc_at2 Alexei Pashkovsky wrote: (for example - the square brackets which I like to use), the modem rejects the message with error 304 invalid PDU mode parameter. Well, this will probably hurt you, but I'm afraid square brackets are not part of GSM character set. At least I didn't see them there. There *is* a way, however. IIRC the sequence ESC- or ESC- will work, ie: %1b%3c and %1b%3e See a recent revision of GSM 3.38 for the gory details of this and a few other escape sequences, including the Euro sign (%1b%65). Keep in mind that this will look pretty stupid on many handsets, including relatively advanced models like the Motorola Accompli 008. David WHITE CONNECT AUSTRIA
RE: A question about PDU encoding in smsc_at2
This is not exactly what I had in mind - (a) as this kind of string would get translated by kannel to '?' as ESC will be translated directly to '?'. (b) the GSM standards _currently_ do define the ESC sequences as valid. I'm not really worried about current standard support in phone (as newer phones would surely conform to the current standards), but more with standard support within Kannel. and my question is (again) - which do you think is the correct implementation, Kannel's counting only actual characters, or Siemens M20's counting every septet ? P.S tests show that some phones just silently ignore the escape sequences (showing the character after the ESC - the triangle bracket), for example - the Nokia 33, and some show the intended result - the square bracket, for example - the Nokia 71. Oded Arbel m-Wise Inc. [EMAIL PROTECTED] What I can tell from EMI usage, the escape sequence stuff is slightly broken. I got customers sending \n in their text (because they've forgotton to replace it with linefeed). In kannel this translates the \ to two characters. The problem here is that it increses the size of the text and this AFTER the message has been split. The result of that is that we will end up with SMS being longer than 160 characters. So while you take a look into this, think about this fact. The final header has to be the number of octets of the SMS after escape sequences have been applied. The escape stuff is something done in the phone and the SMSC never cares about it. For the SMSC its just a stream of bytes. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
RE: A question about PDU encoding in smsc_at2
oh - I get it : the UDH is already encoded correctly using the right DCS before the call to at2_pdu_encode(), and then at2_pdu_encode() only needs to translate the bitstream to hex strings, and in the length computation it computes how many septets are in the already encoded bit stream - right ? Oded Arbel m-Wise Inc. [EMAIL PROTECTED] -- Don't ever take a fence down until you know why it was put up. -- Robert Frost -Original Message- From: Andreas Fink [mailto:[EMAIL PROTECTED]] Sent: Sunday, January 13, 2002 6:56 PM To: Oded Arbel Cc: [EMAIL PROTECTED] Subject: Re: A question about PDU encoding in smsc_at2 Hi list. I was wandering about this part from smsc_at2.c : snip if(octstr_len(msg-sms.udhdata)) { if (msg-sms.coding == DC_8BIT || msg-sms.coding == DC_UCS2) { len += octstr_len(msg-sms.udhdata); } else { /* The reason we branch here is because UDH data length is determined in septets if we are in GSM coding, otherwise it's in octets. Adding 6 will ensure that for an octet length of 0, we get septet length 0, and for octet length 1 we get septet length 2.*/ len += (((8*octstr_len(msg-sms.udhdata)) + 6)/7); } } /snip if adds the length of the UDH differently for 7 bit then to 8 bit encoding (as per the message coding) snip /* udh */ if(octstr_len(msg-sms.udhdata)) { pos += at2_encode8bituncompressed(msg-sms.udhdata, pdu[pos]); } /snip and then always code the UDH as 8 bit.. is that OK The final data is always octets (8bit). If the source data is 7 bit, then its packet into octets of 8 bit. This means if you have 7 bit data you need 7/8 less the spac on the output. Take a look at the corresponding ITU spec. -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
Re: Two part question!
group = sms-service keyword = pay file = C:/phpdev/www/mobile/samp1.php?sec_para=%sthr_para=%sphone=%p am I missing something! yes you are missing that the file directive is used to output the content of a static file. I guess you want to do some PHP magic and get that output to the phone via SMS?! You'll have to use a HTTP server in that case and address it acordingly with a URL, i.e. url = http://yourmachine/sample.php?...; Second question for me to learn more about OTA, SMS and about downloading ring tones, graphics elements to a phone, what documentation or sites should I use to get a full understanding. Please review the mailing list archives, there have been a lot of contribution to that issues. Stipe [EMAIL PROTECTED] --- Wapme Systems AG Münsterstr. 248 40470 Düsseldorf Tel: +49-211-74845-0 Fax: +49-211-74845-299 E-Mail: [EMAIL PROTECTED] Internet: http://www.wapme-systems.de --- wapme.net - wherever you are
AW: Two part question!
I think it highly unlikely that C:/phpdev/www/mobile/samp1.php?sec_para=%sthr_para=%sphone=%p is a valid filename. If you want to get the output of the PHP script, you have to put it into an environment that will run it for you (normally a HTTP server). In this case you have to use a URL to access it. Regards Jörg -Ursprüngliche Nachricht- Von: Torbjorn Zetterlund [mailto:[EMAIL PROTECTED]] Gesendet am: Donnerstag, 10. Januar 2002 17:34 An: [EMAIL PROTECTED]; [EMAIL PROTECTED] Betreff: Two part question! Hi, I have a two part question, first I am trying to send an sms message to the kannel which should read a file and return the content. I do not receive the file content back to me, my config looks like # # Mobile payment confirmation # group = sms-service keyword = pay file = C:/phpdev/www/mobile/samp1.php?sec_para=%sthr_para=%sphone=%p am I missing something! Second question for me to learn more about OTA, SMS and about downloading ring tones, graphics elements to a phone, what documentation or sites should I use to get a full understanding. TZ Torbjorn Zetterlund VP, Mobile Commerce CertaPay Inc. [t] 416-777-5081 - Direct [f] 416-360-7121 [e] [EMAIL PROTECTED]
Question regarding charset_processing in smsbox.c
Hi List, I'm trying to find my way through this function. Somehow this looks broken to me: If we request that the final SMS is in GSM 7bit encoding, than this function can return inconsistent results: if the body is already in ISO-8859-1, than the resulting body will be in ISO-8859-1 as well (no transformation). If the original body is in something else, than the code will transform it into UTF-8 and return this. There used to be a transformation to ISO-8859-1, but this is currently commented out. Why? Regards Jörg
Siemens M20 question
I was upgrading the firmware on my M20 which was working fine, however the power was accidentally disconnected during the upgrade, which I know is one of the worst things that can happen when doing something like this. If I try and re-perform the upgrade the PCLoader application is telling me that there is no sync from the module? Does this mean that my 20 is destined to never work again or is there a way of fixing this? Any help would be most appreciated!
Re: question about smsc_AT2
Title: Re: question about smsc_AT2 hello, i ask you this question some days ago but i never got a clear answer here it is again, i would like to use smsc_at2 file but i amnot sure which file to update to tell kannel that i want to use at2 and not at could you please tell me which file it is? thanks 1. you need latest CVS version of kannel 2. you simply need to change the driver name from at to at2. Thats basically all. 3. its documented in the CVS version of the manual (its a bit hard to find it on the wepage, the URL is http://www.kannel.3glab.org/download/kannel-userguide-snapshot/userguide.html) -- Andreas Fink Fink-Consulting -- Tel: +41-61-6932730 Fax: +41-61-6932729 Mobile: +41-79-2457333 Address: A. Fink, Schwarzwaldallee 16, 4058 Basel, Switzerland E-Mail: [EMAIL PROTECTED] Homepage: http://www.finkconsulting.com -- Something urgent? Try http://www.smsrelay.com/ Nickname afink
A question on SMPP
Hello friends, I am new to this mailing list, hope you accept me in your group :-) I have a question about SMPP protocol. What does leading spaces mean in SMPP specification? The other question is about priorit_flag field in SUBMIT_SM. What does it mean? Should we maintain a list of messages for each source address? If yes, how can we manage these lists and how can we select a message from these lists? In no, how can we have support of priority? Thanks a lot, Hamid.