UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    [How-To] Record Calls

    Scheduled Pinned Locked Moved Support
    73 Posts 12 Posters 17.5k Views 12 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      This topic has been deleted. Only users with topic management privileges can see it.
      • RayCulpR Offline
        RayCulp @Ian
        last edited by RayCulp

        @Ian In the past with UT16, I used cron jobs to start Syncevolution on a schedule to sync my contacts (address books) with my CardDav server. However, after I updated to UT20 via OTA and performed a hard reset of the OS, the crontab command is no longer found:

        048919fa-485f-4ade-96e5-ffca6947c95a-image.png

        Also, when I search for "cron*", all it finds are the bash tab-completions:

        11364f03-46a4-49ef-966c-d7ffc0178b3d-image.png

        It is also my understanding that the scripts in the "/usr/share/bash-completion/completions" folder are provided by the packages that install the commands and utilities they complete. So this would indicate that cron/crontab was initially present but later removed.

        Happily running Ubuntu Touch on:
        Google Pixel 3a XL (20.04 Stable)

        1 Reply Last reply Reply Quote 0
        • D Offline
          domubpkm
          last edited by

          RC 64 Volla
          screenshot20230417_083503805.png

          RayCulpR 1 Reply Last reply Reply Quote 0
          • RayCulpR Offline
            RayCulp @domubpkm
            last edited by

            @domubpkm Thank you, but I'm confused. Does this mean that cron is indeed available on UT 20.04?

            In any case, I asked about cron in one of the Telegram groups just now, and the recommendation I received was to use systemd timers instead of cron jobs. I hope this helps! 🙂

            Happily running Ubuntu Touch on:
            Google Pixel 3a XL (20.04 Stable)

            1 Reply Last reply Reply Quote 0
            • Br1B Offline
              Br1
              last edited by

              @domubpkm Between ota 25 (xenial) and the RC release there could be many differences ... I will try to adapt call-recorder to Focal OTA-2 Stable, but no promises.

              ^

              • Google Pixel 3a XL
              • Xiaomi MI A2
              D 2 Replies Last reply Reply Quote 3
              • D Offline
                domubpkm @Br1
                last edited by domubpkm

                @Br1 The callrecorder should work for OTA-25. If there is an OTA-26 that fixes boot issues (last 3 RCs), no. Is not it ?

                Edit : I did : anyway, OTA-25 is no longer installable, the dev channel is installed instead (system parameters). So no more callrecorder.

                Edit 2 april 18 : i installed dev 1111 (2023-04-18/2) and callrecorder v 1.01 works ! I stay here until a focal that suits me. 🙂

                1 Reply Last reply Reply Quote 0
                • D Offline
                  domubpkm @Br1
                  last edited by

                  @Br1 said in [How-To] Record Calls:

                  I will try to adapt call-recorder to Focal OTA-2 Stable, but no promises

                  I just hope your work is progressing as you wish, because all of your scripts are great and will enhance focal environment (as they do for xenial).

                  Br1B 1 Reply Last reply Reply Quote 0
                  • Br1B Offline
                    Br1 @domubpkm
                    last edited by

                    @domubpkm said in [How-To] Record Calls:

                    I just hope your work is progressing as you wish, because all of your scripts are great and will enhance focal environment (as they do for xenial).

                    I installed it yesterday, seems to work fine ... a few days of testing 🙂

                    ^

                    • Google Pixel 3a XL
                    • Xiaomi MI A2
                    1 Reply Last reply Reply Quote 1
                    • Br1B Offline
                      Br1
                      last edited by Br1

                      ---- UPDATE OTA-2 Focal ----
                      ---- Stable Channel ----

                      Usual three steps :

                      1 - download callrecorder-ota.2.tar.gz from here : www.spacelinux.it/UTouch/callrecorder-ota.2.tar.gz

                      2 - open file manager, go to Downloads tap callrecorder-ota.2.tar.gz and tap extract archive

                      3 - open terminal, type :

                      sudo Downloads/callrecorder-ota.2/callrec-install
                      

                      and hit enter,

                      type 1 + enter to install

                      type 2 + enter to uninstall

                      and reboot.


                      As in previous versions, install script asks you how many days you want to keep recorded calls, hit enter for default (30 days) if you later decide to change, repeat the installation (in this case reboot not required).

                      Focal required several changes, callrecorder now is a systemd service, to delete older calls there is a systemd user timer .

                      preview of the new version of callrec-install :

                      #!/bin/bash
                      
                      CRSERV=/usr/lib/systemd/system/callrecorder.service ;
                      
                      # Make sure only root can run this script
                      if [ "$(id -u)" != "0" ]; then
                         echo "    Must be run as root, you must prepend sudo !" 1>&2 ; exit 1
                      fi
                      
                      echo -e '\n - Install/uninstall CallRecorder :\n' ;
                      
                      PS3='Please enter your choice : '
                      options=("Install" "Uninstall" "Quit")
                      select opt in "${options[@]}"
                      do
                      	case $opt in
                      	"Install")
                      
                      			#   -------------------- already installed section ------------------------------
                      
                      			if [ -f "$CRSERV" ]; then
                      
                                                              echo -e '\n Recorded calls : auto erase them after' ;
                      
                                                              read -p " how many days ? (hit enter for 30) : " days
                      
                      					# --------------- default days section --------------------------
                      
                      					#if pressed ENTER set default days
                      					if [ ${#days} -eq 0 ];	then days=+30 ;
                      
                      					# remove + for echo message
                      					myString="${days:1}" ; echo -e "\n  - Will be deleted after $myString days. \n" ;
                      
                      					# replaces the third line
                      					sed -i "3s/.*/days=$days/" /home/phablet/.callrec/rec-remove-sh ;
                      
                      					exit 0
                      
                      					else	# -------- custom days section  -------------------------
                      
                      					echo -e "\n  - Will be deleted after $days days. \n" ;
                      
                      					days=+$days ;
                      
                      					# replaces the third line
                      					sed -i "3s/.*/days=$days/" /home/phablet/.callrec/rec-remove-sh ;
                      
                      					exit 0
                      
                      					fi
                      
                      
                      			fi
                      
                      			#   ----------- end already installed -------------------------------------------
                      
                      
                      			# ------------- new install section ---------------------------------------------
                      
                      
                      			# creates 4 directories
                      			mkdir -p /home/phablet/.callrec ;
                      			mkdir -p /home/phablet/MyRec/{saved,} ;
                      			mkdir -p /home/phablet/.cr_Ram ;
                      
                      			cp /home/phablet/Downloads/callrecorder-ota.2/* /home/phablet/.callrec/ ;
                      
                      			# change the working directory
                      			cd /home/phablet/.callrec ;
                      
                      			# mount root in read/write mode
                      			mount -o remount,rw / ;
                      
                      			# copy callrecorder service and enable autostart
                                              cp callrecorder.service /usr/lib/systemd/system/ ; systemctl enable callrecorder > /dev/null 2>&1 ;
                      
                      			# roll back root in read only mode
                      			mount -o remount,ro / ;
                      
                      			# copy rec-remove.service/timer and create simbolic link (as user)
                      			su - phablet -c "cd /home/phablet/.callrec ; cp rec-remove.service rec-remove.timer /home/phablet/.config/systemd/user/ ; ln -s /home/phablet/.config/systemd/user/rec-remove.timer /home/phablet/.config/systemd/user/default.target.wants/rec-remove.timer" ; 
                      
                      
                                                              echo -e '\n Recorded calls : auto erase them after' ;
                      
                                                              read -p " how many days ? (hit enter for 30) : " days
                      
                      						# --------------- default days section ------------------
                      
                      						#if pressed ENTER set default days
                      						if [ ${#days} -eq 0 ];	then days=+30 ;
                      
                      						# remove + for echo message
                      						myString="${days:1}" ; echo -e "\n  - Will be deleted after $myString days. \n" ;
                      
                      						# replaces the third line
                      						sed -i "3s/.*/days=$days/" /home/phablet/.callrec/rec-remove-sh ;
                      
                      						else  # -------- custom days section --------------------
                      
                      						echo -e "\n  - Will be deleted after $days days. \n" ;
                      
                      						days=+$days ;
                      
                      						# replaces the third line
                      						sed -i "3s/.*/days=$days/" /home/phablet/.callrec/rec-remove-sh ;
                      
                      						fi
                      
                      			echo -e '\n Installed, reboot your device !\n' ;
                      
                      			exit 0
                      
                      		;;
                      
                      	"Uninstall")
                      
                      			# check status
                      			if [ ! -f "$CRSERV" ]; then
                      
                      			echo -e '\n CallRecorder is not installed !\n' ; exit 1
                      
                      			else
                      
                      			# mount root in read/write mode
                      			mount -o remount,rw / ;
                      
                      			# stop callrecorder, disable autostart and remove files
                      			systemctl disable --now callrecorder > /dev/null 2>&1 ;
                      			rm $CRSERV ;
                      
                      			# roll back root in read only mode
                      			mount -o remount,ro / ;
                      
                      			# remove all timer files
                      			rm /home/phablet/.config/systemd/user/rec-remove* ;
                      			rm /home/phablet/.config/systemd/user/default.target.wants/rec-remove.timer ;
                      			rm /home/phablet/.local/share/systemd/timers/stamp-rec-remove.timer ;
                      
                      			# delete scripts and remove directories
                      			rm -rf /home/phablet/.callrec/* ; rmdir /home/phablet/.callrec ;
                      			rm -rf /home/phablet/.cr_Ram/* ;
                      
                      			echo -e '\n Uninstalled, reboot your device !\n'
                      
                      			exit 0
                      
                      			fi
                      
                      		;;
                      
                              "Quit")
                      			exit 0
                      		;;
                      			*) echo "invalid option $REPLY"
                      		;;
                          esac
                      done
                      

                      preview of callrecorder service :

                      [Unit]
                      Description=Call Recorder
                      
                      [Service]
                      Type=simple
                      ExecStart=/home/phablet/.callrec/prepare-sh
                      RemainAfterExit=yes
                      
                      [Install]
                      WantedBy=multi-user.target
                      

                      systemd user timer requires 2 files, rec-remove.timer :

                      [Unit]
                      Description=Run every day at 11:00
                      
                      [Timer]
                      OnCalendar=*-*-* 11:00
                      Persistent=true
                      
                      [Install]
                      WantedBy=default.target
                      

                      and rec-remove.service :

                      [Unit]
                      Description=Remove older calls
                      
                      [Service]
                      Type=simple
                      ExecStart=/home/phablet/.callrec/rec-remove-sh
                      
                      [Install]
                      WantedBy=default.target
                      

                      to run daily the script rec-remove-sh :

                      #!/bin/bash
                      #
                      days=+30
                      # delete recordings (except saved directory) older than ... days
                      find /home/phablet/MyRec -type f -not -path '*/saved/*' -mtime $days -exec rm {} \; 2> /dev/null ;
                      

                      . small change, now you can save recorded calls in "saved" folder and will not be deleted

                      . small differences in other scripts (new paths)

                      . as for previous versions callrecorder must be uninstalled before proceeding to ota update.

                      ^

                      • Google Pixel 3a XL
                      • Xiaomi MI A2
                      A D 2 Replies Last reply Reply Quote 1
                      • A Offline
                        ATTESA @Br1
                        last edited by

                        @Br1 I don't know if it is just me, but the download link does not seem to work, I get a Not Found error.

                        Br1B 1 Reply Last reply Reply Quote 0
                        • Br1B Offline
                          Br1 @ATTESA
                          last edited by

                          @ATTESA try direct link : www.spacelinux.it/UTouch/callrecorder-ota.2.tar.gz

                          ^

                          • Google Pixel 3a XL
                          • Xiaomi MI A2
                          1 Reply Last reply Reply Quote 0
                          • D Offline
                            dosolly @Br1
                            last edited by

                            @Br1 Hallo, thanx a lot for your work, but :
                            :~/sudo Downloads/callrecorder-ota.2/callrec-install

                            :~/sudo: callrec-install:command not found

                            Br1B 1 Reply Last reply Reply Quote 0
                            • Br1B Offline
                              Br1 @dosolly
                              last edited by

                              @dosolly
                              On a hunch I did it again and works ... you have extracted it ?

                              in Downloads directory there should be "callrecorder-ota.2" subdirectory that also contains "callrec-install"

                              ^

                              • Google Pixel 3a XL
                              • Xiaomi MI A2
                              D 2 Replies Last reply Reply Quote 0
                              • D Offline
                                dosolly @Br1
                                last edited by

                                @Br1 Thanks for your help, at least the installation worked. Now I have to test it extensively.

                                1 Reply Last reply Reply Quote 0
                                • D Offline
                                  dosolly @Br1
                                  last edited by

                                  @Br1 OK, thx a lot, works now like a charm.

                                  1 Reply Last reply Reply Quote 0
                                  • D Offline
                                    domubpkm
                                    last edited by

                                    @Br1 Hello. Is your OTA-2 work / procedure the same for OTA-3 ? 🙂 Thanks again

                                    Br1B 1 Reply Last reply Reply Quote 0
                                    • Br1B Offline
                                      Br1 @domubpkm
                                      last edited by

                                      @domubpkm no ota 3 update for my device, i cannot test it 😞
                                      yesterday I ordered a google pixel 3a xl ... it will take some time.

                                      ^

                                      • Google Pixel 3a XL
                                      • Xiaomi MI A2
                                      D 1 Reply Last reply Reply Quote 1
                                      • D Offline
                                        domubpkm @Br1
                                        last edited by

                                        @Br1 said in [How-To] Record Calls:

                                        no ota 3 update for my device, i cannot test it
                                        yesterday I ordered a google pixel 3a xl ... it will take some time.

                                        Don't really understand. 🙂 Your current phone is broken / out or the OTA-3 update will come later even if you ordered a new phone ?

                                        Br1B 1 Reply Last reply Reply Quote 0
                                        • Br1B Offline
                                          Br1 @domubpkm
                                          last edited by

                                          @domubpkm from what I understand ota 3 update will be available only for currently supported devices
                                          Xiaomi MI A2 isn't there, it doesn't have a maintainer 😞

                                          ^

                                          • Google Pixel 3a XL
                                          • Xiaomi MI A2
                                          D 2 Replies Last reply Reply Quote 0
                                          • D Offline
                                            domubpkm @Br1
                                            last edited by

                                            @Br1 Okay, and unfortunately for you. I didn't understand why you got OTA-2 and not OTA-3. I will wait for a future feedback about the DNS change on OTA-3, because your procedure has become essential to me, more than VPN on UT ultimately.

                                            1 Reply Last reply Reply Quote 0
                                            • D Offline
                                              domubpkm @Br1
                                              last edited by

                                              This post is deleted!
                                              1 Reply Last reply Reply Quote 0
                                              • First post
                                                Last post