Merge branch 'master' into gregoa
[gregoa/zavai.git] / hooks / gsm
index c184c8e4dacee90eec6e5d806765530813118a87..849ad4cd3a036792b0b73dff724adab1bdcd5cb0 100755 (executable)
--- a/hooks/gsm
+++ b/hooks/gsm
@@ -1,12 +1,43 @@
 #!/bin/sh
 
+make_default_conf() {
+       cat > ~/.frameworkd.conf << EOT
+[frameworkd]
+log_to=file
+log_destination=/tmp/frameworkd.log
+
+[ogsmd]
+log_level=INFO
+modemtype = ti_calypso
+ti_calypso_deep_sleep = adaptive
+ti_calypso_dsp_mode = aec+nr
+ti_calypso_muxer = fso-abyss
+EOT
+}
+
 case "$1" in
        # At the start of zavai
        status)
        ;;
+       pre)
+               exec om gsm power 1
+       ;;
+       post)
+               exec om gsm power 0
+       ;;
        # Run, blocking until the process ends
        run)
-               exec sleep 10
+               if [ -x /usr/bin/frameworkd ]
+               then
+                       # Make default config if missing
+                       test -e ~/.frameworkd.conf || make_default_conf
+
+                       # Start frameworkd for GSM services only
+                       exec /usr/bin/frameworkd -s ogsmd > /tmp/zavai-frameworkd.log 2>&1
+               else
+                       # For testing
+                       exec sleep 10
+               fi
        ;;
        *)
                echo "Usage: $0 {run|status}." >&2