First I would like to thank you for all the help that was given. So to try to help others with the same challenge, I post here my configurations, a brief summary of the troubles I faced and how I got them solved.
OBJECTIVE To be able to receive sms and mms thru a GSM/GPRS modem (MM1 over the Operator MMSC), and store the media with the highest quality possible. WHAT I NEEDED TO INTALL In order of installation: 1. curl-7.19.6 I first tried the libcurl4-gnutls-dev package that was in my repository (I'm doing this over an Ubuntu distro), but with it mmsbox would shutdown right after startup without any error message. 2. Getting the source code from kannel 1.4.3 Not any problem that I know about the 1.4.0 version that is stated on Mbuni's user guide - I haven't tested yet, but for what I need the latest version of kannel works perfectly. 3. mBuni from CVS You need the latest build (at least at October 1,2009) since you need to be able to build the extra library that the mbuni1.4.0 does not include. 4. ppp software I am using pppd for my connection to the operator, but I guess any other should work COMMANDS YOU NEED TO RUN bearerbox <kannel_config> smsbox <kannel_config> wapbox <kannel_config> sudo mmsbox <mmsbox_config> The only thing you should remember to do is run bearerbox first, since it runs and hosts several services that the other processes will connect to. At the moment I am not sure if the wapbox is needed but I still run it. ABOUT GETTING HIGH QUALITY ON MMS IMAGES If you use the configuration I am posting below you will get mms from the operator at the lowest quality a phone can receive mms. To receive any picture larger than 2-3Kb, I added a line of code in "mbuni/extras/mmsbox-mm1/mmsbox_mm1.c" adding the User-agent of a Nokia 5800 that fit my requirements. h = curl_slist_append(h, "User-Agent: Mozilla/5.0 (SymbianOS/9.4; U;Series60/5.0 Nokia5800d-1/52.50.2008.24; Profile/MIDP-2.1Configuration/CLDC-1.1 ) AppleWebKit/413 (KHTML, like Gecko) Safari/413"); This is after line 613. This probably a good set-up that would be nice to stay in configuration file. MY CONFIG FILES CONNECTING TO THE OPERATOR You will need to tell your ppp software how to connect to your operator Whit pppd I am able to simply do the command 'pppd call gprs' whit this Configuration: >>> file /etc/ppp/peers/gprs /dev/ttyS0 # put you device here 115200 # set your modem spped here connect 'chat -vf /home/user/ppp/chat/start-gprs' #defaultroute #replacedefaultroute usepeerdns debug # login name to use in this conection name <your APN login> user <your APN login> <<< end /etc/ppp/peers/gprs >>> start /home/user/ppp/chat/start-gprs ABORT 'BUSY' ABORT 'NO CARRIER' ABORT 'ERROR' '' AT OK AT+CGDCONT=1,"IP","<your MMS APN>" OK ATDT*99***1# <<< end /home/user/ppp/chat/start-gprs >>> file /etc/ppp/chap-secrets Secrets for authentication using CHAP # client server secret IP addresses <your APN login> * <your APN password> <<< end /etc/ppp/chap-secrets Note that only if you run mbuni on a computer disconnected from any other network you will need to route the connection to the right interface. You can uncomment the replacedefaultroute on the file "/etc/ppp/peers/gprs" but you will lose connections to IP that aren't statically routed. In my case, my operator uses a private network with ip 10.xxx.xxx.xxx and I use the interface ppp0, so the simplest config was this: Add to file /etc/ppp/ip-up # Route rules /sbin/route add -net 10.0.0.0 netmask 255.0.0.0 dev ppp0 MBUNI MMSBOX CONFIG >>> start <mmsbox_config> group = core log-file = /etc/mbuni/log/mmsbox.log access-log = /etc/mbuni/log/mmsbox-access.log log-level = 0 group = mbuni storage-directory = /home/user/storage max-send-threads = 5 maximum-send-attempts = 50 default-message-expiry = 360000 queue-run-interval = 5 send-attempt-back-off = 300 sendmms-port = 13052 content-adaptation = false # Sample conf for MMSBox using a modem (MM1) group = mmsc id = modem type = custom custom-settings = "smsc-on=lynx -dump 'http://localhost:13001/start-smsc?password=<kannel admin pass>&smsc=<your smsc id>;smsc-off=lynx -dump 'http://localhost:13001/stop-smsc? password=<kannel admin pass>&smsc=<your smsc id>';gprs-on= pppd call gprs;gprs-pid=cat /var/run/ppp0.pid|head -1;port=8181;mmsc-url=<your APN MMS url>;proxy=<YOUR APN MMS GATEWAY>:<your APN MMS port>;msisdn=<your phone mumber - without 00>" mmsc-library = /usr/local/lib/libmmsbox_mm1.so # The custom-settings is the most important part of mbuni to the mm1 over #the operator mmsc, so here goes a brief summary # smsc-on and sms-off are the http commands that mbuni uses to tell kannel #to take/hand over the model gms when he need it, so make sure you have lynx #or any other alternative software # #gprs-on is the command to activate the pppd connection to the operator, and #the gprs-pid the command to get the pid from the interface that is making #the connection, so mbuni can disconnect from the #operator # #port is the port where mbuni is listening for data from kannel, so make #sure this port is the same that you input in you sms-service in kannel # #also make sure you got libmmsbox_mm1.so built and you give the right path group = mms-service name = fullmessage post-url = <your service to handle MMS> catch-all = true #text = "Vamos la ver se funca" #file = /home/user/yourpass.jpg http-post-parameters=images[]=%i&text=%t # I am only sending the images part(%i) of the message, and the text (%t), check mbuni documentation for more options suppress-reply=true accept-x-mbuni-headers = true keyword =test group = send-mms-user username = <your user for send> password = <yous pass for send> faked-sender = 100 KANNEL CONFIG >>>start <kannel_config> #--------------------------------------------- # CORE group = core admin-port = 13001 wapbox-port = 13002 admin-password = <kannel admin pass> smsbox-port = 13005 wdp-interface-name = "*" log-file = "bearerbox.log" log-level = 0 #--------------------------------------------- # SMSC CONNECTIONS # group = smsc smsc = at modemtype = auto device = /dev/ttyS0 #your device speed = 115200 smsc-id = <you smsc id> #could be anything, just for Identification on logs and mbuni my-number = 00351968675336 log-file = "smsc.log" sim-buffering = true #--------------------------------------------- # SMSBOX SETUP # group = smsbox bearerbox-host = localhost sendsms-port = 13013 global-sender = <your sim number> log-file = "smsbox.log" log-level = 1 #--------------------------------------------- # SEND-SMS USERS # group = sendsms-user username = <user for send> password = <pass for send> concatenation = true max-messages = 10 #--------------------------------------------- # SERVICES # I have two services, one to handle sms that come from normal sms #users # and another service that redirects wap-push sms from my Operator #MMSC number # to Mbuni # group = sms-service keyword-regex =.* catch-all = true get-url = <service to handle MMS> denied-prefix = "<OPERATOR MMSC number>" max-messages = 0 concatenation = true group = sms-service keyword = default catch-all = true get-url = http://localhost:8181/?text=%b # kannel sends the binary data from the message(%b) to mbuni denied-prefix = "<income sms accepted>" max-messages = 0 concatenation = true include = "/etc/kannel/wapbox.conf" include = "/etc/kannel/modems.conf" <<< end <kannel_config> >>> start /etc/kannel/wapbox.conf group = wapbox bearerbox-host = localhost log-file = "/home/user/log/wapbox.log" access-log = "/tmp/wapaccess.log" log-level = 0 syslog-level = none timer-freq = 10 map-url = "http://mmsc/* http://localhost:8181/*" # <<< end /etc/kannel/wapbox.conf >>> start /etc/kannel/modems.conf group = modems id = generic name = "Generic Modem" group = modems id = mtx-h15 detect-string = "SIEMENS" detect-string2 = "MC35i" name = "MTX-H15" init-string = "AT+CNMI=3,1,2,0,1" # options differ from modem to modem, look in you gsm modem at commands manual speed = 115200 <<< end /etc/kannel/modems.conf _______________________________________________ Users mailing list Users@mbuni.org http://lists.mbuni.org/mailman/listinfo/users