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

Reply via email to